@rolatech/angular-comment 17.1.0 → 17.2.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/esm2022/lib/components/comment-action/comment-action.component.mjs +16 -27
- package/esm2022/lib/components/comment-item/comment-item.component.mjs +10 -9
- package/esm2022/lib/components/comment-replies/comment-replies.component.mjs +15 -25
- package/esm2022/lib/components/comments/comments.component.mjs +9 -16
- package/esm2022/lib/components/comments-header/comments-header.component.mjs +17 -29
- package/esm2022/lib/components/reply-item/reply-item.component.mjs +13 -15
- package/esm2022/lib/interfaces/comment.interface.mjs +1 -1
- package/esm2022/lib/services/comment.service.mjs +10 -8
- package/fesm2022/rolatech-angular-comment.mjs +77 -116
- package/fesm2022/rolatech-angular-comment.mjs.map +1 -1
- package/lib/components/comment-action/comment-action.component.d.ts +6 -7
- package/lib/components/comment-item/comment-item.component.d.ts +5 -4
- package/lib/components/comment-replies/comment-replies.component.d.ts +6 -7
- package/lib/components/comments/comments.component.d.ts +2 -2
- package/lib/components/comments-header/comments-header.component.d.ts +5 -6
- package/lib/components/reply-item/reply-item.component.d.ts +5 -4
- package/lib/interfaces/comment.interface.d.ts +2 -2
- package/lib/services/comment.service.d.ts +3 -4
- package/package.json +1 -1
- package/themes/_default.scss +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, inject, input, output } from '@angular/core';
|
|
2
2
|
import { AngularCommonModule } from '@rolatech/angular-common';
|
|
3
3
|
import { MatButtonModule } from '@angular/material/button';
|
|
4
4
|
import { MatIconModule } from '@angular/material/icon';
|
|
@@ -17,10 +17,11 @@ import * as i7 from "@angular/material/progress-spinner";
|
|
|
17
17
|
export class CommentActionComponent {
|
|
18
18
|
constructor() {
|
|
19
19
|
this.commentService = inject(CommentService);
|
|
20
|
-
this.placeholder = '请输入回复内容';
|
|
21
|
-
this.
|
|
22
|
-
this.
|
|
23
|
-
this.
|
|
20
|
+
this.placeholder = input('请输入回复内容');
|
|
21
|
+
this.data = input.required();
|
|
22
|
+
this.reply = output();
|
|
23
|
+
this.thumbsUp = output();
|
|
24
|
+
this.thumbsDown = output();
|
|
24
25
|
this.show = false;
|
|
25
26
|
this.content = '';
|
|
26
27
|
this.loading = false;
|
|
@@ -32,12 +33,10 @@ export class CommentActionComponent {
|
|
|
32
33
|
onReply() {
|
|
33
34
|
this.loading = true;
|
|
34
35
|
this.reply.emit(this.content);
|
|
35
|
-
this.commentService.onCommentLoading.subscribe({
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
this.content = '';
|
|
40
|
-
},
|
|
36
|
+
this.commentService.onCommentLoading.subscribe((res) => {
|
|
37
|
+
this.loading = res;
|
|
38
|
+
this.show = false;
|
|
39
|
+
this.content = '';
|
|
41
40
|
});
|
|
42
41
|
}
|
|
43
42
|
onThumbsUp() {
|
|
@@ -46,21 +45,11 @@ export class CommentActionComponent {
|
|
|
46
45
|
onThumbsDown() {
|
|
47
46
|
this.thumbsDown.emit();
|
|
48
47
|
}
|
|
49
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
50
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
49
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: CommentActionComponent, isStandalone: true, selector: "rolatech-comment-action", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { reply: "reply", thumbsUp: "thumbsUp", thumbsDown: "thumbsDown" }, ngImport: i0, template: "<div>\n <div class=\"flex items-center -ml-2\">\n <button class=\"w-8 h-8 p-1 hover:bg-gray-200 rounded-full\" (click)=\"onThumbsUp()\">\n <mat-icon [color]=\"data().like ? 'primary' : ''\">thumb_up</mat-icon>\n </button>\n @if (data().thumbsUpCount > 0) {\n <span class=\"text-sm opacity-80\">{{ data().thumbsUpCount }}</span>\n }\n <button class=\"w-8 h-8 p-1 hover:bg-gray-200 rounded-full\" (click)=\"onThumbsDown()\">\n <mat-icon [color]=\"data().dislike ? 'primary' : ''\">thumb_down</mat-icon>\n </button>\n @if (data().thumbsDownCount > 0) {\n <span class=\"text-sm opacity-80\">{{ data().thumbsDownCount }}</span>\n }\n\n <button mat-button (click)=\"show = true\" class=\"w-8 h-8\">\u56DE\u590D</button>\n </div>\n <div>\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n } @else {\n @if (show) {\n <mat-form-field>\n <textarea\n matInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n cdkAutosizeMaxRows=\"8\"\n [placeholder]=\"placeholder()\"\n [(ngModel)]=\"content\"\n (focus)=\"show = true\"\n ></textarea>\n </mat-form-field>\n <div class=\"flex justify-end items-center gap-2 pr-2\">\n <button mat-button (click)=\"onCancel()\">\u53D6\u6D88</button>\n <button mat-flat-button color=\"primary\" (click)=\"onReply()\">\n <span class=\"text-white\">\u56DE\u590D</span>\n </button>\n </div>\n }\n }\n </div>\n</div>\n", styles: ["mat-icon{transform:scale(.8)}mat-form-field{width:100%}textarea:focus{outline:none;box-shadow:none}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] }); }
|
|
51
50
|
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentActionComponent, decorators: [{
|
|
53
52
|
type: Component,
|
|
54
|
-
args: [{ selector: 'rolatech-comment-action', standalone: true, imports: [AngularCommonModule, MatButtonModule, MatIconModule, MatFormFieldModule, MatInputModule, MatProgressSpinnerModule], template: "<div>\n <div class=\"flex items-center -ml-2\">\n <button class=\"w-8 h-8 p-1 hover:bg-gray-200 rounded-full\" (click)=\"onThumbsUp()\">\n <mat-icon [color]=\"data.like ? 'primary' : ''\">thumb_up</mat-icon>\n </button>\n @if (data.thumbsUpCount > 0) {\n <span class=\"text-sm opacity-80\">{{ data.thumbsUpCount }}</span>\n }\n <button class=\"w-8 h-8 p-1 hover:bg-gray-200 rounded-full\" (click)=\"onThumbsDown()\">\n <mat-icon [color]=\"data.dislike ? 'primary' : ''\">thumb_down</mat-icon>\n </button>\n @if (data.thumbsDownCount > 0) {\n <span class=\"text-sm opacity-80\">{{ data.thumbsDownCount }}</span>\n }\n\n <button mat-button (click)=\"show = true\" class=\"w-8 h-8\">\u56DE\u590D</button>\n </div>\n <div>\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n } @else {\n @if (show) {\n <mat-form-field>\n <textarea\n matInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n cdkAutosizeMaxRows=\"8\"\n [placeholder]=\"placeholder\"\n [(ngModel)]=\"content\"\n (focus)=\"show = true\"\n ></textarea>\n </mat-form-field>\n <div class=\"flex justify-end items-center gap-2 pr-2\">\n <button mat-button (click)=\"onCancel()\">\u53D6\u6D88</button>\n <button mat-flat-button color=\"primary\" (click)=\"onReply()\">\n <span class=\"text-white\">\u56DE\u590D</span>\n </button>\n </div>\n }\n }\n </div>\n</div>\n", styles: ["mat-icon{transform:scale(.8)}mat-form-field{width:100%}textarea:focus{outline:none;box-shadow:none}\n"] }]
|
|
55
|
-
}]
|
|
56
|
-
|
|
57
|
-
}], data: [{
|
|
58
|
-
type: Input
|
|
59
|
-
}], reply: [{
|
|
60
|
-
type: Output
|
|
61
|
-
}], thumbsUp: [{
|
|
62
|
-
type: Output
|
|
63
|
-
}], thumbsDown: [{
|
|
64
|
-
type: Output
|
|
65
|
-
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1hY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1lbnQtYWN0aW9uL2NvbW1lbnQtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LWFjdGlvbi9jb21tZW50LWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQVVoRCxNQUFNLE9BQU8sc0JBQXNCO0lBUG5DO1FBUUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0IsZ0JBQVcsR0FBRyxTQUFTLENBQUM7UUFFdkIsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDbkMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDbkMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFL0MsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFHLEtBQUssQ0FBQztLQXVCakI7SUFyQkMsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1lBQzdDLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNaLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO2dCQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztnQkFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDcEIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ0QsWUFBWTtRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQzs4R0FoQ1Usc0JBQXNCO2tHQUF0QixzQkFBc0Isc05DakJuQyxpcURBOENBLDhKRGpDWSxtQkFBbUIsOG1CQUFFLGVBQWUsMk5BQUUsYUFBYSxtTEFBRSxrQkFBa0IseU9BQUUsY0FBYyx5a0JBQUUsd0JBQXdCOzsyRkFJaEgsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLHlCQUF5QixjQUN2QixJQUFJLFdBQ1AsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSx3QkFBd0IsQ0FBQzs4QkFNbkgsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFuZ3VsYXJDb21tb25Nb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29tbWVudCwgUmVwbHkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtY29tbWVudC1hY3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQW5ndWxhckNvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tbWVudC1hY3Rpb24uY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDb21tZW50QWN0aW9uQ29tcG9uZW50IHtcbiAgY29tbWVudFNlcnZpY2UgPSBpbmplY3QoQ29tbWVudFNlcnZpY2UpO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICfor7fovpPlhaXlm57lpI3lhoXlrrknO1xuICBASW5wdXQoKSBkYXRhITogQ29tbWVudCB8IFJlcGx5O1xuICBAT3V0cHV0KCkgcmVwbHkgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHRodW1ic1VwID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSB0aHVtYnNEb3duID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgc2hvdyA9IGZhbHNlO1xuICBjb250ZW50OiBzdHJpbmcgPSAnJztcbiAgbG9hZGluZyA9IGZhbHNlO1xuXG4gIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuY29udGVudCA9ICcnO1xuICB9XG4gIG9uUmVwbHkoKSB7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnJlcGx5LmVtaXQodGhpcy5jb250ZW50KTtcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLm9uQ29tbWVudExvYWRpbmcuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXMpID0+IHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gcmVzO1xuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jb250ZW50ID0gJyc7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIG9uVGh1bWJzVXAoKSB7XG4gICAgdGhpcy50aHVtYnNVcC5lbWl0KCk7XG4gIH1cbiAgb25UaHVtYnNEb3duKCkge1xuICAgIHRoaXMudGh1bWJzRG93bi5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXY+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciAtbWwtMlwiPlxuICAgIDxidXR0b24gY2xhc3M9XCJ3LTggaC04IHAtMSBob3ZlcjpiZy1ncmF5LTIwMCByb3VuZGVkLWZ1bGxcIiAoY2xpY2spPVwib25UaHVtYnNVcCgpXCI+XG4gICAgICA8bWF0LWljb24gW2NvbG9yXT1cImRhdGEubGlrZSA/ICdwcmltYXJ5JyA6ICcnXCI+dGh1bWJfdXA8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIEBpZiAoZGF0YS50aHVtYnNVcENvdW50ID4gMCkge1xuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIG9wYWNpdHktODBcIj57eyBkYXRhLnRodW1ic1VwQ291bnQgfX08L3NwYW4+XG4gICAgfVxuICAgIDxidXR0b24gY2xhc3M9XCJ3LTggaC04IHAtMSBob3ZlcjpiZy1ncmF5LTIwMCByb3VuZGVkLWZ1bGxcIiAoY2xpY2spPVwib25UaHVtYnNEb3duKClcIj5cbiAgICAgIDxtYXQtaWNvbiBbY29sb3JdPVwiZGF0YS5kaXNsaWtlID8gJ3ByaW1hcnknIDogJydcIj50aHVtYl9kb3duPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICBAaWYgKGRhdGEudGh1bWJzRG93bkNvdW50ID4gMCkge1xuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIG9wYWNpdHktODBcIj57eyBkYXRhLnRodW1ic0Rvd25Db3VudCB9fTwvc3Bhbj5cbiAgICB9XG5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cInNob3cgPSB0cnVlXCIgY2xhc3M9XCJ3LTggaC04XCI+5Zue5aSNPC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2PlxuICAgIEBpZiAobG9hZGluZykge1xuICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtMjBcIj5cbiAgICAgICAgPG1hdC1zcGlubmVyIGRpYW1ldGVyPVwiMzJcIj48L21hdC1zcGlubmVyPlxuICAgICAgPC9kaXY+XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaWYgKHNob3cpIHtcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIGNka1RleHRhcmVhQXV0b3NpemVcbiAgICAgICAgICAgICNhdXRvc2l6ZT1cImNka1RleHRhcmVhQXV0b3NpemVcIlxuICAgICAgICAgICAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMVwiXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1heFJvd3M9XCI4XCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRcIlxuICAgICAgICAgICAgKGZvY3VzKT1cInNob3cgPSB0cnVlXCJcbiAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdhcC0yIHByLTJcIj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cIm9uQ2FuY2VsKClcIj7lj5bmtog8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwib25SZXBseSgpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtd2hpdGVcIj7lm57lpI08L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIH1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
53
|
+
args: [{ selector: 'rolatech-comment-action', standalone: true, imports: [AngularCommonModule, MatButtonModule, MatIconModule, MatFormFieldModule, MatInputModule, MatProgressSpinnerModule], template: "<div>\n <div class=\"flex items-center -ml-2\">\n <button class=\"w-8 h-8 p-1 hover:bg-gray-200 rounded-full\" (click)=\"onThumbsUp()\">\n <mat-icon [color]=\"data().like ? 'primary' : ''\">thumb_up</mat-icon>\n </button>\n @if (data().thumbsUpCount > 0) {\n <span class=\"text-sm opacity-80\">{{ data().thumbsUpCount }}</span>\n }\n <button class=\"w-8 h-8 p-1 hover:bg-gray-200 rounded-full\" (click)=\"onThumbsDown()\">\n <mat-icon [color]=\"data().dislike ? 'primary' : ''\">thumb_down</mat-icon>\n </button>\n @if (data().thumbsDownCount > 0) {\n <span class=\"text-sm opacity-80\">{{ data().thumbsDownCount }}</span>\n }\n\n <button mat-button (click)=\"show = true\" class=\"w-8 h-8\">\u56DE\u590D</button>\n </div>\n <div>\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n } @else {\n @if (show) {\n <mat-form-field>\n <textarea\n matInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n cdkAutosizeMaxRows=\"8\"\n [placeholder]=\"placeholder()\"\n [(ngModel)]=\"content\"\n (focus)=\"show = true\"\n ></textarea>\n </mat-form-field>\n <div class=\"flex justify-end items-center gap-2 pr-2\">\n <button mat-button (click)=\"onCancel()\">\u53D6\u6D88</button>\n <button mat-flat-button color=\"primary\" (click)=\"onReply()\">\n <span class=\"text-white\">\u56DE\u590D</span>\n </button>\n </div>\n }\n }\n </div>\n</div>\n", styles: ["mat-icon{transform:scale(.8)}mat-form-field{width:100%}textarea:focus{outline:none;box-shadow:none}\n"] }]
|
|
54
|
+
}] });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1hY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1lbnQtYWN0aW9uL2NvbW1lbnQtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LWFjdGlvbi9jb21tZW50LWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBVWhELE1BQU0sT0FBTyxzQkFBc0I7SUFQbkM7UUFRRSxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4QyxnQkFBVyxHQUFHLEtBQUssQ0FBUyxTQUFTLENBQUMsQ0FBQztRQUN2QyxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBbUIsQ0FBQztRQUN6QyxVQUFLLEdBQUcsTUFBTSxFQUFVLENBQUM7UUFDekIsYUFBUSxHQUFHLE1BQU0sRUFBUSxDQUFDO1FBQzFCLGVBQVUsR0FBRyxNQUFNLEVBQVEsQ0FBQztRQUU1QixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLFlBQU8sR0FBRyxLQUFLLENBQUM7S0FxQmpCO0lBbkJDLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBQ0QsT0FBTztRQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1lBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFVBQVU7UUFDUixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDOzhHQTlCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiwwYUNqQm5DLCtxREE4Q0EsOEpEakNZLG1CQUFtQiw4bUJBQUUsZUFBZSwyTkFBRSxhQUFhLG1MQUFFLGtCQUFrQix5T0FBRSxjQUFjLHlrQkFBRSx3QkFBd0I7OzJGQUloSCxzQkFBc0I7a0JBUGxDLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFuZ3VsYXJDb21tb25Nb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29tbWVudCwgUmVwbHkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtY29tbWVudC1hY3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQW5ndWxhckNvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tbWVudC1hY3Rpb24uY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDb21tZW50QWN0aW9uQ29tcG9uZW50IHtcbiAgY29tbWVudFNlcnZpY2UgPSBpbmplY3QoQ29tbWVudFNlcnZpY2UpO1xuICBwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oJ+ivt+i+k+WFpeWbnuWkjeWGheWuuScpO1xuICBkYXRhID0gaW5wdXQucmVxdWlyZWQ8Q29tbWVudCB8IFJlcGx5PigpO1xuICByZXBseSA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHRodW1ic1VwID0gb3V0cHV0PHZvaWQ+KCk7XG4gIHRodW1ic0Rvd24gPSBvdXRwdXQ8dm9pZD4oKTtcblxuICBzaG93ID0gZmFsc2U7XG4gIGNvbnRlbnQgPSAnJztcbiAgbG9hZGluZyA9IGZhbHNlO1xuXG4gIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuY29udGVudCA9ICcnO1xuICB9XG4gIG9uUmVwbHkoKSB7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnJlcGx5LmVtaXQodGhpcy5jb250ZW50KTtcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLm9uQ29tbWVudExvYWRpbmcuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IHJlcztcbiAgICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgICAgdGhpcy5jb250ZW50ID0gJyc7XG4gICAgfSk7XG4gIH1cbiAgb25UaHVtYnNVcCgpIHtcbiAgICB0aGlzLnRodW1ic1VwLmVtaXQoKTtcbiAgfVxuICBvblRodW1ic0Rvd24oKSB7XG4gICAgdGhpcy50aHVtYnNEb3duLmVtaXQoKTtcbiAgfVxufVxuIiwiPGRpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIC1tbC0yXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInctOCBoLTggcC0xIGhvdmVyOmJnLWdyYXktMjAwIHJvdW5kZWQtZnVsbFwiIChjbGljayk9XCJvblRodW1ic1VwKClcIj5cbiAgICAgIDxtYXQtaWNvbiBbY29sb3JdPVwiZGF0YSgpLmxpa2UgPyAncHJpbWFyeScgOiAnJ1wiPnRodW1iX3VwPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICBAaWYgKGRhdGEoKS50aHVtYnNVcENvdW50ID4gMCkge1xuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIG9wYWNpdHktODBcIj57eyBkYXRhKCkudGh1bWJzVXBDb3VudCB9fTwvc3Bhbj5cbiAgICB9XG4gICAgPGJ1dHRvbiBjbGFzcz1cInctOCBoLTggcC0xIGhvdmVyOmJnLWdyYXktMjAwIHJvdW5kZWQtZnVsbFwiIChjbGljayk9XCJvblRodW1ic0Rvd24oKVwiPlxuICAgICAgPG1hdC1pY29uIFtjb2xvcl09XCJkYXRhKCkuZGlzbGlrZSA/ICdwcmltYXJ5JyA6ICcnXCI+dGh1bWJfZG93bjwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG4gICAgQGlmIChkYXRhKCkudGh1bWJzRG93bkNvdW50ID4gMCkge1xuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIG9wYWNpdHktODBcIj57eyBkYXRhKCkudGh1bWJzRG93bkNvdW50IH19PC9zcGFuPlxuICAgIH1cblxuICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwic2hvdyA9IHRydWVcIiBjbGFzcz1cInctOCBoLThcIj7lm57lpI08L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXY+XG4gICAgQGlmIChsb2FkaW5nKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgaC0yMFwiPlxuICAgICAgICA8bWF0LXNwaW5uZXIgZGlhbWV0ZXI9XCIzMlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICA8L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpZiAoc2hvdykge1xuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxuICAgICAgICAgICAgI2F1dG9zaXplPVwiY2RrVGV4dGFyZWFBdXRvc2l6ZVwiXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCIxXCJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWF4Um93cz1cIjhcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb250ZW50XCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJzaG93ID0gdHJ1ZVwiXG4gICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktZW5kIGl0ZW1zLWNlbnRlciBnYXAtMiBwci0yXCI+XG4gICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJvbkNhbmNlbCgpXCI+5Y+W5raIPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uUmVwbHkoKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXdoaXRlXCI+5Zue5aSNPC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICB9XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, effect, inject, input } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { MatButtonModule } from '@angular/material/button';
|
|
4
4
|
import { MatIconModule } from '@angular/material/icon';
|
|
@@ -17,9 +17,12 @@ import * as i3 from "@angular/material/menu";
|
|
|
17
17
|
export class CommentItemComponent {
|
|
18
18
|
constructor() {
|
|
19
19
|
this.commentService = inject(CommentService);
|
|
20
|
+
this.item = input.required();
|
|
20
21
|
this.show = false;
|
|
21
22
|
this.loading = false;
|
|
22
|
-
|
|
23
|
+
effect(() => {
|
|
24
|
+
this.comment = this.item();
|
|
25
|
+
});
|
|
23
26
|
}
|
|
24
27
|
ngOnInit() {
|
|
25
28
|
// this.countRepliesByCommentId(this.comment.id!);
|
|
@@ -84,10 +87,10 @@ export class CommentItemComponent {
|
|
|
84
87
|
},
|
|
85
88
|
});
|
|
86
89
|
}
|
|
87
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
88
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
90
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
91
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: CommentItemComponent, isStandalone: true, selector: "rolatech-comment-item", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"block w-full\">\n @if (comment) {\n <div class=\"flex group\">\n <div class=\"bg-orange-600 min-w-10 min-h-10 mr-4 h-fit rounded-full\">\n @if (comment.user && comment.user.avatar) {\n <img class=\"w-10 h-10 rounded-full\" [src]=\"comment.user.avatar\" />\n }\n </div>\n <div class=\"flex flex-col w-full\">\n <a class=\"mb-0.5\">\n @if (comment.user) {\n <span class=\"text-md font-semibold mr-1\">@{{ comment.user.username }}</span>\n }\n <span class=\"text-sm opacity-70\">{{ comment.createdAt | time }}</span>\n </a>\n\n <div [innerText]=\"comment.content\"></div>\n <rolatech-comment-action\n (reply)=\"onCommentReply($event)\"\n [data]=\"comment\"\n (thumbsUp)=\"onThumbsUp()\"\n (thumbsDown)=\"onThumbsDown()\"\n ></rolatech-comment-action>\n </div>\n <div class=\"min-w-9\">\n <button\n class=\"hover:bg-gray-200 w-9 h-9 flex items-center justify-center rounded-full group-hover:visible\"\n [ngClass]=\"memnu.menuOpen ? 'visible' : 'invisible'\"\n [matMenuTriggerFor]=\"actionMenu\"\n #memnu=\"matMenuTrigger\"\n >\n <mat-icon>more_vert</mat-icon>\n </button>\n </div>\n </div>\n <div>\n <rolatech-comment-replies\n [total]=\"comment.repliesCount\"\n [commentId]=\"comment.id!\"\n [replies]=\"comment.replies!\"\n (fetch)=\"onFetchReplies($event)\"\n ></rolatech-comment-replies>\n </div>\n }\n</div>\n<mat-menu #actionMenu=\"matMenu\">\n <button mat-menu-item>\n <mat-icon>flag</mat-icon>\n <span>\u4E3E\u62A5</span>\n </button>\n</mat-menu>\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "component", type: CommentRepliesComponent, selector: "rolatech-comment-replies", inputs: ["total", "replies", "commentId"], outputs: ["totalChange", "repliesChange", "replied", "fetch"] }, { kind: "component", type: CommentActionComponent, selector: "rolatech-comment-action", inputs: ["placeholder", "data"], outputs: ["reply", "thumbsUp", "thumbsDown"] }, { kind: "pipe", type: TimePipe, name: "time" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }] }); }
|
|
89
92
|
}
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentItemComponent, decorators: [{
|
|
91
94
|
type: Component,
|
|
92
95
|
args: [{ selector: 'rolatech-comment-item', standalone: true, imports: [
|
|
93
96
|
CommonModule,
|
|
@@ -101,7 +104,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
|
|
|
101
104
|
TimePipe,
|
|
102
105
|
MatMenuModule,
|
|
103
106
|
], template: "<div class=\"block w-full\">\n @if (comment) {\n <div class=\"flex group\">\n <div class=\"bg-orange-600 min-w-10 min-h-10 mr-4 h-fit rounded-full\">\n @if (comment.user && comment.user.avatar) {\n <img class=\"w-10 h-10 rounded-full\" [src]=\"comment.user.avatar\" />\n }\n </div>\n <div class=\"flex flex-col w-full\">\n <a class=\"mb-0.5\">\n @if (comment.user) {\n <span class=\"text-md font-semibold mr-1\">@{{ comment.user.username }}</span>\n }\n <span class=\"text-sm opacity-70\">{{ comment.createdAt | time }}</span>\n </a>\n\n <div [innerText]=\"comment.content\"></div>\n <rolatech-comment-action\n (reply)=\"onCommentReply($event)\"\n [data]=\"comment\"\n (thumbsUp)=\"onThumbsUp()\"\n (thumbsDown)=\"onThumbsDown()\"\n ></rolatech-comment-action>\n </div>\n <div class=\"min-w-9\">\n <button\n class=\"hover:bg-gray-200 w-9 h-9 flex items-center justify-center rounded-full group-hover:visible\"\n [ngClass]=\"memnu.menuOpen ? 'visible' : 'invisible'\"\n [matMenuTriggerFor]=\"actionMenu\"\n #memnu=\"matMenuTrigger\"\n >\n <mat-icon>more_vert</mat-icon>\n </button>\n </div>\n </div>\n <div>\n <rolatech-comment-replies\n [total]=\"comment.repliesCount\"\n [commentId]=\"comment.id!\"\n [replies]=\"comment.replies!\"\n (fetch)=\"onFetchReplies($event)\"\n ></rolatech-comment-replies>\n </div>\n }\n</div>\n<mat-menu #actionMenu=\"matMenu\">\n <button mat-menu-item>\n <mat-icon>flag</mat-icon>\n <span>\u4E3E\u62A5</span>\n </button>\n</mat-menu>\n", styles: ["mat-form-field{width:100%}\n"] }]
|
|
104
|
-
}],
|
|
105
|
-
type: Input
|
|
106
|
-
}] } });
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBa0IsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBb0J2RCxNQUFNLE9BQU8sb0JBQW9CO0lBbEJqQztRQW1CRSxtQkFBYyxHQUFHLE1B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bnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21tZW50LCBSZXBseSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1lbnRSZXBsaWVzQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbWVudC1yZXBsaWVzL2NvbW1lbnQtcmVwbGllcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudEFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL2NvbW1lbnQtYWN0aW9uL2NvbW1lbnQtYWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFRpbWVQaXBlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtY29tbWVudC1pdGVtJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgQ29tbWVudFJlcGxpZXNDb21wb25lbnQsXG4gICAgQ29tbWVudEFjdGlvbkNvbXBvbmVudCxcbiAgICBUaW1lUGlwZSxcbiAgICBNYXRNZW51TW9kdWxlLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1lbnQtaXRlbS5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIENvbW1lbnRJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgY29tbWVudFNlcnZpY2UgPSBpbmplY3QoQ29tbWVudFNlcnZpY2UpO1xuICBASW5wdXQoKSBjb21tZW50ITogQ29tbWVudDtcbiAgc2hvdyA9IGZhbHNlO1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIHJlcGxpZXM6IFJlcGx5W10gPSBbXTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmNvdW50UmVwbGllc0J5Q29tbWVudElkKHRoaXMuY29tbWVudC5pZCEpO1xuICB9XG5cbiAgb25Gb2N1cyhldmVudDogYW55KSB7XG4gICAgdGhpcy5zaG93ID0gdHJ1ZTtcbiAgfVxuICBvbkNvbW1lbnRSZXBseShjb250ZW50OiBzdHJpbmcpIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgY29udGVudCxcbiAgICB9O1xuICAgIGNvbnN0IGlkID0gdGhpcy5jb21tZW50LmlkIGFzIHN0cmluZztcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLnJlcGx5KGlkLCBkYXRhKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLmNvbW1lbnQucmVwbGllc0NvdW50ISsrO1xuICAgICAgICB0aGlzLmNvbW1lbnQucmVwbGllcyA9IHRoaXMuY29tbWVudC5yZXBsaWVzID8gdGhpcy5jb21tZW50LnJlcGxpZXMgOiBbXTtcbiAgICAgICAgdGhpcy5jb21tZW50LnJlcGxpZXMucHVzaChyZXMpO1xuXG4gICAgICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50TG9hZGluZy5lbWl0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5jb21tZW50U2VydmljZS5vbkNvbW1lbnRSZXBseS5lbWl0KHJlcyk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLm9uQ29tbWVudExvYWRpbmcuZW1pdChmYWxzZSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGNvdW50UmVwbGllc0J5Q29tbWVudElkKGNvbW1lbnRJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb21tZW50U2VydmljZS5jb3VudFJlcGxpZXNCeUNvbW1lbnRJZChjb21tZW50SWQpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuY29tbWVudC5yZXBsaWVzQ291bnQgPSByZXMuZGF0YTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7fSxcbiAgICB9KTtcbiAgfVxuICBvbkZldGNoUmVwbGllcyhjb21tZW50SWQ6IHN0cmluZykge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5jb21tZW50U2VydmljZS5maW5kUmVwbGllc0J5Q29tbWVudElkKGNvbW1lbnRJZCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXMpID0+IHtcbiAgICAgICAgdGhpcy5jb21tZW50LnJlcGxpZXMgPSByZXMuZGF0YTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBvblRodW1ic1VwKCkge1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2UuY29tbWVudFRodW1ic1VwKHRoaXMuY29tbWVudC5pZCEpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuY29tbWVudC50aHVtYnNVcENvdW50ID0gcmVzLmRhdGEudGh1bWJzVXBDb3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50LnRodW1ic0Rvd25Db3VudCA9IHJlcy5kYXRhLnRodW1ic0Rvd25Db3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50Lmxpa2UgPSB0cnVlO1xuICAgICAgICB0aGlzLmNvbW1lbnQuZGlzbGlrZSA9IGZhbHNlO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBvblRodW1ic0Rvd24oKSB7XG4gICAgdGhpcy5jb21tZW50U2VydmljZS5jb21tZW50VGh1bWJzRG93bih0aGlzLmNvbW1lbnQuaWQhKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLmNvbW1lbnQudGh1bWJzVXBDb3VudCA9IHJlcy5kYXRhLnRodW1ic1VwQ291bnQ7XG4gICAgICAgIHRoaXMuY29tbWVudC50aHVtYnNEb3duQ291bnQgPSByZXMuZGF0YS50aHVtYnNEb3duQ291bnQ7XG4gICAgICAgIHRoaXMuY29tbWVudC5saWtlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY29tbWVudC5kaXNsaWtlID0gdHJ1ZTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJibG9jayB3LWZ1bGxcIj5cbiAgQGlmIChjb21tZW50KSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZ3JvdXBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJiZy1vcmFuZ2UtNjAwIG1pbi13LTEwIG1pbi1oLTEwIG1yLTQgaC1maXQgcm91bmRlZC1mdWxsXCI+XG4gICAgICAgIEBpZiAoY29tbWVudC51c2VyICYmIGNvbW1lbnQudXNlci5hdmF0YXIpIHtcbiAgICAgICAgICA8aW1nIGNsYXNzPVwidy0xMCBoLTEwIHJvdW5kZWQtZnVsbFwiIFtzcmNdPVwiY29tbWVudC51c2VyLmF2YXRhclwiIC8+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgdy1mdWxsXCI+XG4gICAgICAgIDxhIGNsYXNzPVwibWItMC41XCI+XG4gICAgICAgICAgQGlmIChjb21tZW50LnVzZXIpIHtcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1tZCBmb250LXNlbWlib2xkIG1yLTFcIj4mIzY0O3t7IGNvbW1lbnQudXNlci51c2VybmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICB9XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIG9wYWNpdHktNzBcIj57eyBjb21tZW50LmNyZWF0ZWRBdCB8IHRpbWUgfX08L3NwYW4+XG4gICAgICAgIDwvYT5cblxuICAgICAgICA8ZGl2IFtpbm5lclRleHRdPVwiY29tbWVudC5jb250ZW50XCI+PC9kaXY+XG4gICAgICAgIDxyb2xhdGVjaC1jb21tZW50LWFjdGlvblxuICAgICAgICAgIChyZXBseSk9XCJvbkNvbW1lbnRSZXBseSgkZXZlbnQpXCJcbiAgICAgICAgICBbZGF0YV09XCJjb21tZW50XCJcbiAgICAgICAgICAodGh1bWJzVXApPVwib25UaHVtYnNVcCgpXCJcbiAgICAgICAgICAodGh1bWJzRG93bik9XCJvblRodW1ic0Rvd24oKVwiXG4gICAgICAgID48L3JvbGF0ZWNoLWNvbW1lbnQtYWN0aW9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibWluLXctOVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJob3ZlcjpiZy1ncmF5LTIwMCB3LTkgaC05IGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtZnVsbCBncm91cC1ob3Zlcjp2aXNpYmxlXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJtZW1udS5tZW51T3BlbiA/ICd2aXNpYmxlJyA6ICdpbnZpc2libGUnXCJcbiAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYWN0aW9uTWVudVwiXG4gICAgICAgICAgI21lbW51PVwibWF0TWVudVRyaWdnZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxyb2xhdGVjaC1jb21tZW50LXJlcGxpZXNcbiAgICAgICAgW3RvdGFsXT1cImNvbW1lbnQucmVwbGllc0NvdW50XCJcbiAgICAgICAgW2NvbW1lbnRJZF09XCJjb21tZW50LmlkIVwiXG4gICAgICAgIFtyZXBsaWVzXT1cImNvbW1lbnQucmVwbGllcyFcIlxuICAgICAgICAoZmV0Y2gpPVwib25GZXRjaFJlcGxpZXMoJGV2ZW50KVwiXG4gICAgICA+PC9yb2xhdGVjaC1jb21tZW50LXJlcGxpZXM+XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuPG1hdC1tZW51ICNhY3Rpb25NZW51PVwibWF0TWVudVwiPlxuICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0+XG4gICAgPG1hdC1pY29uPmZsYWc8L21hdC1pY29uPlxuICAgIDxzcGFuPuS4vuaKpTwvc3Bhbj5cbiAgPC9idXR0b24+XG48L21hdC1tZW51PlxuIl19
|
|
107
|
+
}], ctorParameters: () => [] });
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN2RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFvQnZELE1BQU0sT0FBTyxvQkFBb0I7SUFNL0I7UUFMQSxtQkFBYyxH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Y0FBYzt3QkFDZCx1QkFBdUI7d0JBQ3ZCLHNCQUFzQjt3QkFDdEIsUUFBUTt3QkFDUixhQUFhO3FCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbW1lbnQsIFJlcGx5IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbWVudFJlcGxpZXNDb21wb25lbnQgfSBmcm9tICcuLi9jb21tZW50LXJlcGxpZXMvY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50QWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbWVudC1hY3Rpb24vY29tbWVudC1hY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgVGltZVBpcGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1jb21tZW50LWl0ZW0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBDb21tZW50UmVwbGllc0NvbXBvbmVudCxcbiAgICBDb21tZW50QWN0aW9uQ29tcG9uZW50LFxuICAgIFRpbWVQaXBlLFxuICAgIE1hdE1lbnVNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tbWVudC1pdGVtLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWVudEl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb21tZW50U2VydmljZSA9IGluamVjdChDb21tZW50U2VydmljZSk7XG4gIGl0ZW0gPSBpbnB1dC5yZXF1aXJlZDxDb21tZW50PigpO1xuICBzaG93ID0gZmFsc2U7XG4gIGxvYWRpbmcgPSBmYWxzZTtcbiAgY29tbWVudCE6IENvbW1lbnQ7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLmNvbW1lbnQgPSB0aGlzLml0ZW0oKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIHRoaXMuY291bnRSZXBsaWVzQnlDb21tZW50SWQodGhpcy5jb21tZW50LmlkISk7XG4gIH1cblxuICBvbkZvY3VzKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnNob3cgPSB0cnVlO1xuICB9XG4gIG9uQ29tbWVudFJlcGx5KGNvbnRlbnQ6IHN0cmluZykge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBjb250ZW50LFxuICAgIH07XG4gICAgY29uc3QgaWQgPSB0aGlzLmNvbW1lbnQuaWQgYXMgc3RyaW5nO1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2UucmVwbHkoaWQsIGRhdGEpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuY29tbWVudC5yZXBsaWVzQ291bnQrKztcbiAgICAgICAgdGhpcy5jb21tZW50LnJlcGxpZXMgPSB0aGlzLmNvbW1lbnQucmVwbGllcyA/IHRoaXMuY29tbWVudC5yZXBsaWVzIDogW107XG4gICAgICAgIHRoaXMuY29tbWVudC5yZXBsaWVzLnB1c2gocmVzKTtcblxuICAgICAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLm9uQ29tbWVudExvYWRpbmcuZW1pdChmYWxzZSk7XG4gICAgICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50UmVwbHkuZW1pdChyZXMpO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5jb21tZW50U2VydmljZS5vbkNvbW1lbnRMb2FkaW5nLmVtaXQoZmFsc2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBjb3VudFJlcGxpZXNCeUNvbW1lbnRJZChjb21tZW50SWQ6IHN0cmluZykge1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2UuY291bnRSZXBsaWVzQnlDb21tZW50SWQoY29tbWVudElkKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLmNvbW1lbnQucmVwbGllc0NvdW50ID0gcmVzLmRhdGE7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge30sXG4gICAgfSk7XG4gIH1cbiAgb25GZXRjaFJlcGxpZXMoY29tbWVudElkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2UuZmluZFJlcGxpZXNCeUNvbW1lbnRJZChjb21tZW50SWQpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuY29tbWVudC5yZXBsaWVzID0gcmVzLmRhdGE7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgb25UaHVtYnNVcCgpIHtcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLmNvbW1lbnRUaHVtYnNVcCh0aGlzLmNvbW1lbnQuaWQpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuY29tbWVudC50aHVtYnNVcENvdW50ID0gcmVzLmRhdGEudGh1bWJzVXBDb3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50LnRodW1ic0Rvd25Db3VudCA9IHJlcy5kYXRhLnRodW1ic0Rvd25Db3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50Lmxpa2UgPSB0cnVlO1xuICAgICAgICB0aGlzLmNvbW1lbnQuZGlzbGlrZSA9IGZhbHNlO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBvblRodW1ic0Rvd24oKSB7XG4gICAgdGhpcy5jb21tZW50U2VydmljZS5jb21tZW50VGh1bWJzRG93bih0aGlzLmNvbW1lbnQuaWQpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuY29tbWVudC50aHVtYnNVcENvdW50ID0gcmVzLmRhdGEudGh1bWJzVXBDb3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50LnRodW1ic0Rvd25Db3VudCA9IHJlcy5kYXRhLnRodW1ic0Rvd25Db3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50Lmxpa2UgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jb21tZW50LmRpc2xpa2UgPSB0cnVlO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImJsb2NrIHctZnVsbFwiPlxuICBAaWYgKGNvbW1lbnQpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBncm91cFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImJnLW9yYW5nZS02MDAgbWluLXctMTAgbWluLWgtMTAgbXItNCBoLWZpdCByb3VuZGVkLWZ1bGxcIj5cbiAgICAgICAgQGlmIChjb21tZW50LnVzZXIgJiYgY29tbWVudC51c2VyLmF2YXRhcikge1xuICAgICAgICAgIDxpbWcgY2xhc3M9XCJ3LTEwIGgtMTAgcm91bmRlZC1mdWxsXCIgW3NyY109XCJjb21tZW50LnVzZXIuYXZhdGFyXCIgLz5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCB3LWZ1bGxcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJtYi0wLjVcIj5cbiAgICAgICAgICBAaWYgKGNvbW1lbnQudXNlcikge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW1kIGZvbnQtc2VtaWJvbGQgbXItMVwiPiYjNjQ7e3sgY29tbWVudC51c2VyLnVzZXJuYW1lIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc20gb3BhY2l0eS03MFwiPnt7IGNvbW1lbnQuY3JlYXRlZEF0IHwgdGltZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9hPlxuXG4gICAgICAgIDxkaXYgW2lubmVyVGV4dF09XCJjb21tZW50LmNvbnRlbnRcIj48L2Rpdj5cbiAgICAgICAgPHJvbGF0ZWNoLWNvbW1lbnQtYWN0aW9uXG4gICAgICAgICAgKHJlcGx5KT1cIm9uQ29tbWVudFJlcGx5KCRldmVudClcIlxuICAgICAgICAgIFtkYXRhXT1cImNvbW1lbnRcIlxuICAgICAgICAgICh0aHVtYnNVcCk9XCJvblRodW1ic1VwKClcIlxuICAgICAgICAgICh0aHVtYnNEb3duKT1cIm9uVGh1bWJzRG93bigpXCJcbiAgICAgICAgPjwvcm9sYXRlY2gtY29tbWVudC1hY3Rpb24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaW4tdy05XCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImhvdmVyOmJnLWdyYXktMjAwIHctOSBoLTkgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGdyb3VwLWhvdmVyOnZpc2libGVcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIm1lbW51Lm1lbnVPcGVuID8gJ3Zpc2libGUnIDogJ2ludmlzaWJsZSdcIlxuICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJhY3Rpb25NZW51XCJcbiAgICAgICAgICAjbWVtbnU9XCJtYXRNZW51VHJpZ2dlclwiXG4gICAgICAgID5cbiAgICAgICAgICA8bWF0LWljb24+bW9yZV92ZXJ0PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PlxuICAgICAgPHJvbGF0ZWNoLWNvbW1lbnQtcmVwbGllc1xuICAgICAgICBbdG90YWxdPVwiY29tbWVudC5yZXBsaWVzQ291bnRcIlxuICAgICAgICBbY29tbWVudElkXT1cImNvbW1lbnQuaWQhXCJcbiAgICAgICAgW3JlcGxpZXNdPVwiY29tbWVudC5yZXBsaWVzIVwiXG4gICAgICAgIChmZXRjaCk9XCJvbkZldGNoUmVwbGllcygkZXZlbnQpXCJcbiAgICAgID48L3JvbGF0ZWNoLWNvbW1lbnQtcmVwbGllcz5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG48bWF0LW1lbnUgI2FjdGlvbk1lbnU9XCJtYXRNZW51XCI+XG4gIDxidXR0b24gbWF0LW1lbnUtaXRlbT5cbiAgICA8bWF0LWljb24+ZmxhZzwvbWF0LWljb24+XG4gICAgPHNwYW4+5Li+5oqlPC9zcGFuPlxuICA8L2J1dHRvbj5cbjwvbWF0LW1lbnU+XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, inject, input, model, output } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { ReplyItemComponent } from '../reply-item/reply-item.component';
|
|
4
4
|
import { MatButtonModule } from '@angular/material/button';
|
|
@@ -11,11 +11,11 @@ import * as i2 from "@angular/material/progress-spinner";
|
|
|
11
11
|
export class CommentRepliesComponent {
|
|
12
12
|
constructor() {
|
|
13
13
|
this.commentService = inject(CommentService);
|
|
14
|
-
this.total = 0;
|
|
15
|
-
this.replies = [];
|
|
16
|
-
this.commentId =
|
|
17
|
-
this.replied =
|
|
18
|
-
this.fetch =
|
|
14
|
+
this.total = model(0);
|
|
15
|
+
this.replies = model([]);
|
|
16
|
+
this.commentId = input.required();
|
|
17
|
+
this.replied = output();
|
|
18
|
+
this.fetch = output();
|
|
19
19
|
this.expand = false;
|
|
20
20
|
this.loading = false;
|
|
21
21
|
this.fetched = false;
|
|
@@ -24,28 +24,18 @@ export class CommentRepliesComponent {
|
|
|
24
24
|
this.expand = !this.expand;
|
|
25
25
|
if (!this.fetched) {
|
|
26
26
|
this.fetched = true;
|
|
27
|
-
this.fetch.emit(this.commentId);
|
|
27
|
+
this.fetch.emit(this.commentId());
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
onItemReplied(reply) {
|
|
31
|
-
this.total
|
|
32
|
-
this.replies.push(reply);
|
|
31
|
+
this.total.set(this.total() + 1);
|
|
32
|
+
this.replies().push(reply);
|
|
33
33
|
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
35
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentRepliesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: CommentRepliesComponent, isStandalone: true, selector: "rolatech-comment-replies", inputs: { total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null }, replies: { classPropertyName: "replies", publicName: "replies", isSignal: true, isRequired: false, transformFunction: null }, commentId: { classPropertyName: "commentId", publicName: "commentId", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { total: "totalChange", replies: "repliesChange", replied: "replied", fetch: "fetch" }, ngImport: i0, template: "<div class=\"block ml-14\">\n @if (total() > 0) {\n <div>\n <button class=\"inline-flex items-center rounded-lg hover:bg-orange-200 py-1 -ml-1\" (click)=\"onFetch()\">\n <mat-icon color=\"primary\">{{ expand ? 'arrow_drop_up' : 'arrow_drop_down' }}</mat-icon>\n <span class=\"mr-2 text-sm text-orange-500\">\u56DE\u590D({{ total() || replies.length }})</span>\n </button>\n <!-- <div class=\"less-button\">\n <button (click)=\"expand = false\">222</button>\n </div> -->\n </div>\n }\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n }\n\n @if (expand) {\n @for (item of replies(); track $index) {\n <rolatech-reply-item [commentId]=\"commentId()\" [item]=\"item\" (replied)=\"onItemReplied($event)\"></rolatech-reply-item>\n }\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: ReplyItemComponent, selector: "rolatech-reply-item", inputs: ["commentId", "item"], outputs: ["replied"] }] }); }
|
|
36
36
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentRepliesComponent, decorators: [{
|
|
38
38
|
type: Component,
|
|
39
|
-
args: [{ selector: 'rolatech-comment-replies', standalone: true, imports: [CommonModule, MatButtonModule, MatIconModule, MatProgressSpinnerModule, ReplyItemComponent], template: "<div class=\"block ml-14\">\n @if (total > 0) {\n <div>\n <button class=\"inline-flex items-center rounded-lg hover:bg-orange-200 py-1 -ml-1\" (click)=\"onFetch()\">\n <mat-icon color=\"primary\">{{ expand ? 'arrow_drop_up' : 'arrow_drop_down' }}</mat-icon>\n <span class=\"mr-2 text-sm text-orange-500\">\u56DE\u590D({{ total || replies.length }})</span>\n </button>\n <!-- <div class=\"less-button\">\n <button (click)=\"expand = false\">222</button>\n </div> -->\n </div>\n }\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n }\n\n @if (expand) {\n @for (item of replies; track $index) {\n <rolatech-reply-item [commentId]=\"commentId\" [
|
|
40
|
-
}]
|
|
41
|
-
|
|
42
|
-
}], replies: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], commentId: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], replied: [{
|
|
47
|
-
type: Output
|
|
48
|
-
}], fetch: [{
|
|
49
|
-
type: Output
|
|
50
|
-
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LXJlcGxpZXMvY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LXJlcGxpZXMvY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQVM5RSxNQUFNLE9BQU8sdUJBQXVCO0lBUHBDO1FBUUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0IsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixZQUFPLEdBQVksRUFBRSxDQUFDO1FBQ3RCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZCxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUNwQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUU3QyxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFDO0tBWWpCO0lBWEMsT0FBTztRQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBQ0QsYUFBYSxDQUFDLEtBQVk7UUFDeEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzs4R0FyQlUsdUJBQXVCO2tHQUF2Qix1QkFBdUIsNk1DaEJwQywyM0JBd0JBLHlERFpZLFlBQVksOEJBQUUsZUFBZSw4QkFBRSxhQUFhLG1MQUFFLHdCQUF3QixtT0FBRSxrQkFBa0I7OzJGQUl6Rix1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixDQUFDOzhCQU01RixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSZXBseUl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9yZXBseS1pdGVtL3JlcGx5LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFJlcGx5IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgQ29tbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtY29tbWVudC1yZXBsaWVzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsIFJlcGx5SXRlbUNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50LXJlcGxpZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWVudFJlcGxpZXNDb21wb25lbnQge1xuICBjb21tZW50U2VydmljZSA9IGluamVjdChDb21tZW50U2VydmljZSk7XG4gIEBJbnB1dCgpIHRvdGFsOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSByZXBsaWVzOiBSZXBseVtdID0gW107XG4gIEBJbnB1dCgpIGNvbW1lbnRJZCA9ICcnO1xuICBAT3V0cHV0KCkgcmVwbGllZCA9IG5ldyBFdmVudEVtaXR0ZXI8UmVwbHk+KCk7XG4gIEBPdXRwdXQoKSBmZXRjaCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIGV4cGFuZCA9IGZhbHNlO1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGZldGNoZWQgPSBmYWxzZTtcbiAgb25GZXRjaCgpIHtcbiAgICB0aGlzLmV4cGFuZCA9ICF0aGlzLmV4cGFuZDtcbiAgICBpZiAoIXRoaXMuZmV0Y2hlZCkge1xuICAgICAgdGhpcy5mZXRjaGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuZmV0Y2guZW1pdCh0aGlzLmNvbW1lbnRJZCk7XG4gICAgfVxuICB9XG4gIG9uSXRlbVJlcGxpZWQocmVwbHk6IFJlcGx5KSB7XG4gICAgdGhpcy50b3RhbCsrO1xuICAgIHRoaXMucmVwbGllcy5wdXNoKHJlcGx5KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImJsb2NrIG1sLTE0XCI+XG4gIEBpZiAodG90YWwgPiAwKSB7XG4gICAgPGRpdj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgcm91bmRlZC1sZyBob3ZlcjpiZy1vcmFuZ2UtMjAwIHB5LTEgLW1sLTFcIiAoY2xpY2spPVwib25GZXRjaCgpXCI+XG4gICAgICAgIDxtYXQtaWNvbiBjb2xvcj1cInByaW1hcnlcIj57eyBleHBhbmQgPyAnYXJyb3dfZHJvcF91cCcgOiAnYXJyb3dfZHJvcF9kb3duJyB9fTwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXItMiB0ZXh0LXNtIHRleHQtb3JhbmdlLTUwMFwiPuWbnuWkjSh7eyB0b3RhbCB8fCByZXBsaWVzLmxlbmd0aCB9fSk8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImxlc3MtYnV0dG9uXCI+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cImV4cGFuZCA9IGZhbHNlXCI+MjIyPC9idXR0b24+XG4gICAgICA8L2Rpdj4gLS0+XG4gICAgPC9kaXY+XG4gIH1cbiAgQGlmIChsb2FkaW5nKSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtMjBcIj5cbiAgICAgIDxtYXQtc3Bpbm5lciBkaWFtZXRlcj1cIjMyXCI+PC9tYXQtc3Bpbm5lcj5cbiAgICA8L2Rpdj5cbiAgfVxuXG4gIEBpZiAoZXhwYW5kKSB7XG4gICAgQGZvciAoaXRlbSBvZiByZXBsaWVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxyb2xhdGVjaC1yZXBseS1pdGVtIFtjb21tZW50SWRdPVwiY29tbWVudElkXCIgW3JlcGx5XT1cIml0ZW1cIiAocmVwbGllZCk9XCJvbkl0ZW1SZXBsaWVkKCRldmVudClcIj48L3JvbGF0ZWNoLXJlcGx5LWl0ZW0+XG4gICAgfVxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
39
|
+
args: [{ selector: 'rolatech-comment-replies', standalone: true, imports: [CommonModule, MatButtonModule, MatIconModule, MatProgressSpinnerModule, ReplyItemComponent], template: "<div class=\"block ml-14\">\n @if (total() > 0) {\n <div>\n <button class=\"inline-flex items-center rounded-lg hover:bg-orange-200 py-1 -ml-1\" (click)=\"onFetch()\">\n <mat-icon color=\"primary\">{{ expand ? 'arrow_drop_up' : 'arrow_drop_down' }}</mat-icon>\n <span class=\"mr-2 text-sm text-orange-500\">\u56DE\u590D({{ total() || replies.length }})</span>\n </button>\n <!-- <div class=\"less-button\">\n <button (click)=\"expand = false\">222</button>\n </div> -->\n </div>\n }\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n }\n\n @if (expand) {\n @for (item of replies(); track $index) {\n <rolatech-reply-item [commentId]=\"commentId()\" [item]=\"item\" (replied)=\"onItemReplied($event)\"></rolatech-reply-item>\n }\n }\n</div>\n" }]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LXJlcGxpZXMvY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50LXJlcGxpZXMvY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQVM5RSxNQUFNLE9BQU8sdUJBQXVCO0lBUHBDO1FBUUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsVUFBSyxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUN6QixZQUFPLEdBQUcsS0FBSyxDQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLGNBQVMsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7UUFFckMsWUFBTyxHQUFHLE1BQU0sRUFBUyxDQUFDO1FBQzFCLFVBQUssR0FBRyxNQUFNLEVBQVUsQ0FBQztRQUV6QixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFDO0tBWWpCO0lBWEMsT0FBTztRQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7SUFDRCxhQUFhLENBQUMsS0FBWTtRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDOzhHQXRCVSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwwakJDaEJwQyxrNEJBd0JBLHlERFpZLFlBQVksOEJBQUUsZUFBZSw4QkFBRSxhQUFhLG1MQUFFLHdCQUF3QixtT0FBRSxrQkFBa0I7OzJGQUl6Rix1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIGlucHV0LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVwbHlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vcmVwbHktaXRlbS9yZXBseS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBseSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWNvbW1lbnQtcmVwbGllcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLCBSZXBseUl0ZW1Db21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1yZXBsaWVzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1lbnQtcmVwbGllcy5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIENvbW1lbnRSZXBsaWVzQ29tcG9uZW50IHtcbiAgY29tbWVudFNlcnZpY2UgPSBpbmplY3QoQ29tbWVudFNlcnZpY2UpO1xuICB0b3RhbCA9IG1vZGVsPG51bWJlcj4oMCk7XG4gIHJlcGxpZXMgPSBtb2RlbDxSZXBseVtdPihbXSk7XG4gIGNvbW1lbnRJZCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTtcblxuICByZXBsaWVkID0gb3V0cHV0PFJlcGx5PigpO1xuICBmZXRjaCA9IG91dHB1dDxzdHJpbmc+KCk7XG5cbiAgZXhwYW5kID0gZmFsc2U7XG4gIGxvYWRpbmcgPSBmYWxzZTtcbiAgZmV0Y2hlZCA9IGZhbHNlO1xuICBvbkZldGNoKCkge1xuICAgIHRoaXMuZXhwYW5kID0gIXRoaXMuZXhwYW5kO1xuICAgIGlmICghdGhpcy5mZXRjaGVkKSB7XG4gICAgICB0aGlzLmZldGNoZWQgPSB0cnVlO1xuICAgICAgdGhpcy5mZXRjaC5lbWl0KHRoaXMuY29tbWVudElkKCkpO1xuICAgIH1cbiAgfVxuICBvbkl0ZW1SZXBsaWVkKHJlcGx5OiBSZXBseSkge1xuICAgIHRoaXMudG90YWwuc2V0KHRoaXMudG90YWwoKSArIDEpO1xuICAgIHRoaXMucmVwbGllcygpLnB1c2gocmVwbHkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYmxvY2sgbWwtMTRcIj5cbiAgQGlmICh0b3RhbCgpID4gMCkge1xuICAgIDxkaXY+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIHJvdW5kZWQtbGcgaG92ZXI6Ymctb3JhbmdlLTIwMCBweS0xIC1tbC0xXCIgKGNsaWNrKT1cIm9uRmV0Y2goKVwiPlxuICAgICAgICA8bWF0LWljb24gY29sb3I9XCJwcmltYXJ5XCI+e3sgZXhwYW5kID8gJ2Fycm93X2Ryb3BfdXAnIDogJ2Fycm93X2Ryb3BfZG93bicgfX08L21hdC1pY29uPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1yLTIgdGV4dC1zbSB0ZXh0LW9yYW5nZS01MDBcIj7lm57lpI0oe3sgdG90YWwoKSB8fCByZXBsaWVzLmxlbmd0aCB9fSk8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImxlc3MtYnV0dG9uXCI+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cImV4cGFuZCA9IGZhbHNlXCI+MjIyPC9idXR0b24+XG4gICAgICA8L2Rpdj4gLS0+XG4gICAgPC9kaXY+XG4gIH1cbiAgQGlmIChsb2FkaW5nKSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtMjBcIj5cbiAgICAgIDxtYXQtc3Bpbm5lciBkaWFtZXRlcj1cIjMyXCI+PC9tYXQtc3Bpbm5lcj5cbiAgICA8L2Rpdj5cbiAgfVxuXG4gIEBpZiAoZXhwYW5kKSB7XG4gICAgQGZvciAoaXRlbSBvZiByZXBsaWVzKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgPHJvbGF0ZWNoLXJlcGx5LWl0ZW0gW2NvbW1lbnRJZF09XCJjb21tZW50SWQoKVwiIFtpdGVtXT1cIml0ZW1cIiAocmVwbGllZCk9XCJvbkl0ZW1SZXBsaWVkKCRldmVudClcIj48L3JvbGF0ZWNoLXJlcGx5LWl0ZW0+XG4gICAgfVxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, inject, input } from '@angular/core';
|
|
2
2
|
import { CommentItemComponent } from '../comment-item/comment-item.component';
|
|
3
3
|
import { MatButtonModule } from '@angular/material/button';
|
|
4
4
|
import { AngularCommonModule } from '@rolatech/angular-common';
|
|
@@ -10,8 +10,8 @@ export class CommentsComponent {
|
|
|
10
10
|
constructor() {
|
|
11
11
|
this.commentService = inject(CommentService);
|
|
12
12
|
this.authUserService = inject(AuthUserService);
|
|
13
|
+
this.itemId = input.required();
|
|
13
14
|
this.comments = [];
|
|
14
|
-
this.itemId = '';
|
|
15
15
|
this.total = 0;
|
|
16
16
|
this.show = false;
|
|
17
17
|
this.content = '';
|
|
@@ -30,12 +30,11 @@ export class CommentsComponent {
|
|
|
30
30
|
}
|
|
31
31
|
onComment(content) {
|
|
32
32
|
const data = {
|
|
33
|
-
itemId: this.itemId,
|
|
33
|
+
itemId: this.itemId(),
|
|
34
34
|
content,
|
|
35
35
|
};
|
|
36
36
|
this.commentService.createComment(data).subscribe({
|
|
37
37
|
next: (res) => {
|
|
38
|
-
this.comments = this.comments ? this.comments : [];
|
|
39
38
|
this.comments.unshift(res);
|
|
40
39
|
this.commentService.onCommentLoading.emit(false);
|
|
41
40
|
this.commentService.onComment.emit(true);
|
|
@@ -45,17 +44,11 @@ export class CommentsComponent {
|
|
|
45
44
|
},
|
|
46
45
|
});
|
|
47
46
|
}
|
|
48
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
49
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
47
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: CommentsComponent, isStandalone: true, selector: "rolatech-comments", inputs: { itemId: { classPropertyName: "itemId", publicName: "itemId", isSignal: true, isRequired: true, transformFunction: null } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"flex flex-col gap-3\" id=\"comment\">\n <rolatech-comments-header (comment)=\"onComment($event)\" [total]=\"total\"></rolatech-comments-header>\n @for (item of comments; track $index) {\n <rolatech-comment-item [item]=\"item\"></rolatech-comment-item>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "component", type: CommentItemComponent, selector: "rolatech-comment-item", inputs: ["item"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: CommentsHeaderComponent, selector: "rolatech-comments-header", inputs: ["placeholder", "total"], outputs: ["totalChange", "comment"] }] }); }
|
|
50
49
|
}
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentsComponent, decorators: [{
|
|
52
51
|
type: Component,
|
|
53
|
-
args: [{ selector: 'rolatech-comments', standalone: true, imports: [AngularCommonModule, CommentItemComponent, MatButtonModule, CommentsHeaderComponent], template: "<div class=\"flex flex-col gap-3\" id=\"comment\">\n <rolatech-comments-header (comment)=\"onComment($event)\" [total]=\"total\"></rolatech-comments-header>\n @for (item of comments; track $index) {\n <rolatech-comment-item [
|
|
54
|
-
}]
|
|
55
|
-
|
|
56
|
-
}], itemId: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], total: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1lbnRzL2NvbW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50cy9jb21tZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQVN6RCxNQUFNLE9BQU8saUJBQWlCO0lBUDlCO1FBUUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFakMsYUFBUSxHQUFjLEVBQUUsQ0FBQztRQUN6QixXQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ1osVUFBSyxHQUFHLENBQUMsQ0FBQztRQUVuQixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsWUFBTyxHQUFXLEVBQUUsQ0FBQztLQThCdEI7SUE3QkMsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxDQUFDLE1BQWM7UUFDakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDekQsSUFBSSxFQUFFLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDO2dCQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDM0IsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxTQUFTLENBQUMsT0FBWTtRQUNwQixNQUFNLElBQUksR0FBRztZQUNYLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixPQUFPO1NBQ1IsQ0FBQztRQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNoRCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNqRCxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBdENVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHNLQ2hCOUIsaVNBTUEseURETVksbUJBQW1CLCtCQUFFLG9CQUFvQixzRkFBRSxlQUFlLCtCQUFFLHVCQUF1Qjs7MkZBSWxGLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixDQUFDOzhCQVFyRixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbWVudEl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBDb21tZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IENvbW1lbnRzSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbWVudHMtaGVhZGVyL2NvbW1lbnRzLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0aFVzZXJTZXJ2aWNlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItYXV0aCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWNvbW1lbnRzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIENvbW1lbnRJdGVtQ29tcG9uZW50LCBNYXRCdXR0b25Nb2R1bGUsIENvbW1lbnRzSGVhZGVyQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbW1lbnRzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1lbnRzLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWVudHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBjb21tZW50U2VydmljZSA9IGluamVjdChDb21tZW50U2VydmljZSk7XG4gIGF1dGhVc2VyU2VydmljZSA9IGluamVjdChBdXRoVXNlclNlcnZpY2UpO1xuXG4gIEBJbnB1dCgpIGNvbW1lbnRzOiBDb21tZW50W10gPSBbXTtcbiAgQElucHV0KCkgaXRlbUlkID0gJyc7XG4gIEBJbnB1dCgpIHRvdGFsID0gMDtcblxuICBzaG93ID0gZmFsc2U7XG4gIGNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc3QgaXRlbUlkID0gY2hhbmdlc1snaXRlbUlkJ10uY3VycmVudFZhbHVlO1xuICAgIHRoaXMuZmluZChpdGVtSWQpO1xuICB9XG4gIGZpbmQoaXRlbUlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLmZpbmRDb21tZW50c0J5SXRlbUlkKGl0ZW1JZCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnRvdGFsID0gcmVzLm1ldGE/LnBhZ2luYXRpb24uY291bnQ7XG4gICAgICAgIHRoaXMuY29tbWVudHMgPSByZXMuZGF0YTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgb25Db21tZW50KGNvbnRlbnQ6IGFueSkge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBpdGVtSWQ6IHRoaXMuaXRlbUlkLFxuICAgICAgY29udGVudCxcbiAgICB9O1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2UuY3JlYXRlQ29tbWVudChkYXRhKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLmNvbW1lbnRzID0gdGhpcy5jb21tZW50cyA/IHRoaXMuY29tbWVudHMgOiBbXTtcbiAgICAgICAgdGhpcy5jb21tZW50cy51bnNoaWZ0KHJlcyk7XG4gICAgICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50TG9hZGluZy5lbWl0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5jb21tZW50U2VydmljZS5vbkNvbW1lbnQuZW1pdCh0cnVlKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCIgaWQ9XCJjb21tZW50XCI+XG4gIDxyb2xhdGVjaC1jb21tZW50cy1oZWFkZXIgKGNvbW1lbnQpPVwib25Db21tZW50KCRldmVudClcIiBbdG90YWxdPVwidG90YWxcIj48L3JvbGF0ZWNoLWNvbW1lbnRzLWhlYWRlcj5cbiAgQGZvciAoaXRlbSBvZiBjb21tZW50czsgdHJhY2sgJGluZGV4KSB7XG4gICAgPHJvbGF0ZWNoLWNvbW1lbnQtaXRlbSBbY29tbWVudF09XCJpdGVtXCI+PC9yb2xhdGVjaC1jb21tZW50LWl0ZW0+XG4gIH1cbjwvZGl2PlxuIl19
|
|
52
|
+
args: [{ selector: 'rolatech-comments', standalone: true, imports: [AngularCommonModule, CommentItemComponent, MatButtonModule, CommentsHeaderComponent], template: "<div class=\"flex flex-col gap-3\" id=\"comment\">\n <rolatech-comments-header (comment)=\"onComment($event)\" [total]=\"total\"></rolatech-comments-header>\n @for (item of comments; track $index) {\n <rolatech-comment-item [item]=\"item\"></rolatech-comment-item>\n }\n</div>\n" }]
|
|
53
|
+
}] });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2NvbW1lbnRzL2NvbW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50cy9jb21tZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUE0QixNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQVN6RCxNQUFNLE9BQU8saUJBQWlCO0lBUDlCO1FBUUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUMsV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQztRQUNsQyxhQUFRLEdBQWMsRUFBRSxDQUFDO1FBQ3pCLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsWUFBTyxHQUFHLEVBQUUsQ0FBQztLQTZCZDtJQTVCQyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLENBQUMsTUFBYztRQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUN6RCxJQUFJLEVBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztZQUMzQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFNBQVMsQ0FBQyxPQUFZO1FBQ3BCLE1BQU0sSUFBSSxHQUFHO1lBQ1gsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDckIsT0FBTztTQUNSLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDaEQsSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNqRCxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBbkNVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHdPQ2hCOUIsOFJBTUEseURETVksbUJBQW1CLCtCQUFFLG9CQUFvQixtRkFBRSxlQUFlLCtCQUFFLHVCQUF1Qjs7MkZBSWxGLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1lbnRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbWVudC1pdGVtL2NvbW1lbnQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IEFuZ3VsYXJDb21tb25Nb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgQ29tbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBDb21tZW50c0hlYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbW1lbnRzLWhlYWRlci9jb21tZW50cy1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEF1dGhVc2VyU2VydmljZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1jb21tZW50cycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtBbmd1bGFyQ29tbW9uTW9kdWxlLCBDb21tZW50SXRlbUNvbXBvbmVudCwgTWF0QnV0dG9uTW9kdWxlLCBDb21tZW50c0hlYWRlckNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jb21tZW50cy5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIENvbW1lbnRzQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgY29tbWVudFNlcnZpY2UgPSBpbmplY3QoQ29tbWVudFNlcnZpY2UpO1xuICBhdXRoVXNlclNlcnZpY2UgPSBpbmplY3QoQXV0aFVzZXJTZXJ2aWNlKTtcbiAgaXRlbUlkID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xuICBjb21tZW50czogQ29tbWVudFtdID0gW107XG4gIHRvdGFsID0gMDtcbiAgc2hvdyA9IGZhbHNlO1xuICBjb250ZW50ID0gJyc7XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBjb25zdCBpdGVtSWQgPSBjaGFuZ2VzWydpdGVtSWQnXS5jdXJyZW50VmFsdWU7XG4gICAgdGhpcy5maW5kKGl0ZW1JZCk7XG4gIH1cbiAgZmluZChpdGVtSWQ6IHN0cmluZykge1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2UuZmluZENvbW1lbnRzQnlJdGVtSWQoaXRlbUlkKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XG4gICAgICAgIHRoaXMudG90YWwgPSByZXMubWV0YT8ucGFnaW5hdGlvbi5jb3VudDtcbiAgICAgICAgdGhpcy5jb21tZW50cyA9IHJlcy5kYXRhO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBvbkNvbW1lbnQoY29udGVudDogYW55KSB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGl0ZW1JZDogdGhpcy5pdGVtSWQoKSxcbiAgICAgIGNvbnRlbnQsXG4gICAgfTtcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLmNyZWF0ZUNvbW1lbnQoZGF0YSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXMpID0+IHtcbiAgICAgICAgdGhpcy5jb21tZW50cy51bnNoaWZ0KHJlcyk7XG4gICAgICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50TG9hZGluZy5lbWl0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5jb21tZW50U2VydmljZS5vbkNvbW1lbnQuZW1pdCh0cnVlKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCIgaWQ9XCJjb21tZW50XCI+XG4gIDxyb2xhdGVjaC1jb21tZW50cy1oZWFkZXIgKGNvbW1lbnQpPVwib25Db21tZW50KCRldmVudClcIiBbdG90YWxdPVwidG90YWxcIj48L3JvbGF0ZWNoLWNvbW1lbnRzLWhlYWRlcj5cbiAgQGZvciAoaXRlbSBvZiBjb21tZW50czsgdHJhY2sgJGluZGV4KSB7XG4gICAgPHJvbGF0ZWNoLWNvbW1lbnQtaXRlbSBbaXRlbV09XCJpdGVtXCI+PC9yb2xhdGVjaC1jb21tZW50LWl0ZW0+XG4gIH1cbjwvZGl2PlxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, inject, input, model, output } from '@angular/core';
|
|
2
2
|
import { MatButtonModule } from '@angular/material/button';
|
|
3
3
|
import { AngularCommonModule } from '@rolatech/angular-common';
|
|
4
4
|
import { CommentActionComponent } from '../comment-action/comment-action.component';
|
|
@@ -21,19 +21,17 @@ import * as i8 from "@angular/material/progress-spinner";
|
|
|
21
21
|
export class CommentsHeaderComponent {
|
|
22
22
|
constructor() {
|
|
23
23
|
this.commentService = inject(CommentService);
|
|
24
|
-
this.
|
|
25
|
-
this.
|
|
26
|
-
this.
|
|
27
|
-
this.comment = new EventEmitter();
|
|
24
|
+
this.placeholder = input('请输入评论内容');
|
|
25
|
+
this.total = model(0);
|
|
26
|
+
this.comment = output();
|
|
28
27
|
this.content = '';
|
|
29
28
|
this.show = false;
|
|
30
29
|
this.loading = false;
|
|
31
30
|
}
|
|
32
31
|
ngOnInit() {
|
|
33
|
-
this.commentService.onComment.subscribe({
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
},
|
|
32
|
+
this.commentService.onComment.subscribe((res) => {
|
|
33
|
+
// this.total++;
|
|
34
|
+
this.total.set(this.total() + 1);
|
|
37
35
|
});
|
|
38
36
|
}
|
|
39
37
|
onFocus(event) {
|
|
@@ -46,20 +44,18 @@ export class CommentsHeaderComponent {
|
|
|
46
44
|
onComment() {
|
|
47
45
|
this.loading = true;
|
|
48
46
|
this.comment.emit(this.content);
|
|
49
|
-
this.commentService.onCommentLoading.subscribe({
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
this.content = '';
|
|
54
|
-
},
|
|
47
|
+
this.commentService.onCommentLoading.subscribe((res) => {
|
|
48
|
+
this.loading = res;
|
|
49
|
+
this.show = false;
|
|
50
|
+
this.content = '';
|
|
55
51
|
});
|
|
56
52
|
}
|
|
57
53
|
fetchByComments() { }
|
|
58
54
|
fetchByReplies() { }
|
|
59
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
60
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentsHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
56
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: CommentsHeaderComponent, isStandalone: true, selector: "rolatech-comments-header", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { total: "totalChange", comment: "comment" }, ngImport: i0, template: "<div class=\"my-2\">\n <div class=\"flex items-center gap-3 py-2\">\n <span class=\"text-lg font-bold\">\u8BC4\u8BBA({{ total() }})</span>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <mat-icon>sort</mat-icon>\n <span>\u6392\u5E8F</span>\n </button>\n </div>\n\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n } @else {\n <div class=\"mr-3\">\n <mat-form-field>\n <textarea\n matInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n cdkAutosizeMaxRows=\"8\"\n [placeholder]=\"placeholder()\"\n [(ngModel)]=\"content\"\n (focus)=\"onFocus($event)\"\n ></textarea>\n </mat-form-field>\n @if (show) {\n <div class=\"flex justify-end items-center gap-2 pr-2\">\n <button mat-button (click)=\"onCancel()\">\u53D6\u6D88</button>\n <button mat-flat-button color=\"primary\" (click)=\"onComment()\">\n <span class=\"text-white\">\u8BC4\u8BBA</span>\n </button>\n </div>\n }\n </div>\n }\n</div>\n<mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"fetchByReplies()\">\u6700\u591A\u56DE\u590D</button>\n <button mat-menu-item (click)=\"fetchByComments()\">\u6700\u65B0\u8BC4\u8BBA</button>\n</mat-menu>\n", styles: ["mat-form-field{width:100%}textarea:focus{outline:none;box-shadow:none}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i7.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i8.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] }); }
|
|
61
57
|
}
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CommentsHeaderComponent, decorators: [{
|
|
63
59
|
type: Component,
|
|
64
60
|
args: [{ selector: 'rolatech-comments-header', standalone: true, imports: [
|
|
65
61
|
AngularCommonModule,
|
|
@@ -71,14 +67,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
|
|
|
71
67
|
MatInputModule,
|
|
72
68
|
CommentActionComponent,
|
|
73
69
|
MatProgressSpinnerModule,
|
|
74
|
-
], template: "<div class=\"my-2\">\n <div class=\"flex items-center gap-3 py-2\">\n <span class=\"text-lg font-bold\">\u8BC4\u8BBA({{ total }})</span>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <mat-icon>sort</mat-icon>\n <span>\u6392\u5E8F</span>\n </button>\n </div>\n\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n } @else {\n <div class=\"mr-3\">\n <mat-form-field>\n <textarea\n matInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n cdkAutosizeMaxRows=\"8\"\n [placeholder]=\"placeholder\"\n [(ngModel)]=\"content\"\n (focus)=\"onFocus($event)\"\n ></textarea>\n </mat-form-field>\n @if (show) {\n <div class=\"flex justify-end items-center gap-2 pr-2\">\n <button mat-button (click)=\"onCancel()\">\u53D6\u6D88</button>\n <button mat-flat-button color=\"primary\" (click)=\"onComment()\">\n <span class=\"text-white\">\u8BC4\u8BBA</span>\n </button>\n </div>\n }\n </div>\n }\n</div>\n<mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"fetchByReplies()\">\u6700\u591A\u56DE\u590D</button>\n <button mat-menu-item (click)=\"fetchByComments()\">\u6700\u65B0\u8BC4\u8BBA</button>\n</mat-menu>\n", styles: ["mat-form-field{width:100%}textarea:focus{outline:none;box-shadow:none}\n"] }]
|
|
75
|
-
}]
|
|
76
|
-
|
|
77
|
-
}], placeholder: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}], total: [{
|
|
80
|
-
type: Input
|
|
81
|
-
}], comment: [{
|
|
82
|
-
type: Output
|
|
83
|
-
}] } });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50cy1oZWFkZXIvY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50cy1oZWFkZXIvY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7Ozs7QUFtQjlFLE1BQU0sT0FBTyx1QkFBdUI7SUFqQnBDO1FBa0JFLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLGFBQVEsR0FBYyxFQUFFLENBQUM7UUFDekIsZ0JBQVcsR0FBRyxTQUFTLENBQUM7UUFDeEIsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNULFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQy9DLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLFlBQU8sR0FBRyxLQUFLLENBQUM7S0E0QmpCO0lBM0JDLFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7WUFDdEMsSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1lBQzdDLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNaLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO2dCQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztnQkFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDcEIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxlQUFlLEtBQUksQ0FBQztJQUNwQixjQUFjLEtBQUksQ0FBQzs4R0FuQ1IsdUJBQXVCO2tHQUF2Qix1QkFBdUIsbU1DN0JwQywwNUNBMENBLGlJRDFCSSxtQkFBbUIsOG1CQUVuQixlQUFlLDJOQUNmLGFBQWEsbUxBQ2IsYUFBYSw2dkJBQ2Isa0JBQWtCLHlPQUNsQixjQUFjLHlrQkFFZCx3QkFBd0I7OzJGQUtmLHVCQUF1QjtrQkFqQm5DLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUDt3QkFDUCxtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsd0JBQXdCO3FCQUN6Qjs4QkFNUSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tbW9uTW9kdWxlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IENvbW1lbnRBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi9jb21tZW50LWFjdGlvbi9jb21tZW50LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudEl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtY29tbWVudHMtaGVhZGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEFuZ3VsYXJDb21tb25Nb2R1bGUsXG4gICAgQ29tbWVudEl0ZW1Db21wb25lbnQsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgQ29tbWVudEFjdGlvbkNvbXBvbmVudCxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50cy1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWVudHNIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb21tZW50U2VydmljZSA9IGluamVjdChDb21tZW50U2VydmljZSk7XG4gIEBJbnB1dCgpIGNvbW1lbnRzOiBDb21tZW50W10gPSBbXTtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAn6K+36L6T5YWl6K+E6K665YaF5a65JztcbiAgQElucHV0KCkgdG90YWwgPSAwO1xuICBAT3V0cHV0KCkgY29tbWVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBjb250ZW50OiBzdHJpbmcgPSAnJztcbiAgc2hvdyA9IGZhbHNlO1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50LnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMudG90YWwrKztcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgb25Gb2N1cyhldmVudDogYW55KSB7XG4gICAgdGhpcy5zaG93ID0gdHJ1ZTtcbiAgfVxuICBvbkNhbmNlbCgpIHtcbiAgICB0aGlzLnNob3cgPSBmYWxzZTtcbiAgICB0aGlzLmNvbnRlbnQgPSAnJztcbiAgfVxuICBvbkNvbW1lbnQoKSB7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmNvbW1lbnQuZW1pdCh0aGlzLmNvbnRlbnQpO1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50TG9hZGluZy5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSByZXM7XG4gICAgICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbnRlbnQgPSAnJztcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgZmV0Y2hCeUNvbW1lbnRzKCkge31cbiAgZmV0Y2hCeVJlcGxpZXMoKSB7fVxufVxuIiwiPGRpdiBjbGFzcz1cIm15LTJcIj5cbiAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0zIHB5LTJcIj5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQtbGcgZm9udC1ib2xkXCI+6K+E6K66KHt7IHRvdGFsIH19KTwvc3Bhbj5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cbiAgICAgIDxtYXQtaWNvbj5zb3J0PC9tYXQtaWNvbj5cbiAgICAgIDxzcGFuPuaOkuW6jzwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG5cbiAgQGlmIChsb2FkaW5nKSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtMjBcIj5cbiAgICAgIDxtYXQtc3Bpbm5lciBkaWFtZXRlcj1cIjMyXCI+PC9tYXQtc3Bpbm5lcj5cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cIm1yLTNcIj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICBjZGtUZXh0YXJlYUF1dG9zaXplXG4gICAgICAgICAgI2F1dG9zaXplPVwiY2RrVGV4dGFyZWFBdXRvc2l6ZVwiXG4gICAgICAgICAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMVwiXG4gICAgICAgICAgY2RrQXV0b3NpemVNYXhSb3dzPVwiOFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRlbnRcIlxuICAgICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKCRldmVudClcIlxuICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICBAaWYgKHNob3cpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdhcC0yIHByLTJcIj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cIm9uQ2FuY2VsKClcIj7lj5bmtog8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwib25Db21tZW50KClcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC13aGl0ZVwiPuivhOiuujwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImZldGNoQnlSZXBsaWVzKClcIj7mnIDlpJrlm57lpI08L2J1dHRvbj5cbiAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmZXRjaEJ5Q29tbWVudHMoKVwiPuacgOaWsOivhOiuujwvYnV0dG9uPlxuPC9tYXQtbWVudT5cbiJdfQ==
|
|
70
|
+
], template: "<div class=\"my-2\">\n <div class=\"flex items-center gap-3 py-2\">\n <span class=\"text-lg font-bold\">\u8BC4\u8BBA({{ total() }})</span>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <mat-icon>sort</mat-icon>\n <span>\u6392\u5E8F</span>\n </button>\n </div>\n\n @if (loading) {\n <div class=\"flex items-center justify-center h-20\">\n <mat-spinner diameter=\"32\"></mat-spinner>\n </div>\n } @else {\n <div class=\"mr-3\">\n <mat-form-field>\n <textarea\n matInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n cdkAutosizeMaxRows=\"8\"\n [placeholder]=\"placeholder()\"\n [(ngModel)]=\"content\"\n (focus)=\"onFocus($event)\"\n ></textarea>\n </mat-form-field>\n @if (show) {\n <div class=\"flex justify-end items-center gap-2 pr-2\">\n <button mat-button (click)=\"onCancel()\">\u53D6\u6D88</button>\n <button mat-flat-button color=\"primary\" (click)=\"onComment()\">\n <span class=\"text-white\">\u8BC4\u8BBA</span>\n </button>\n </div>\n }\n </div>\n }\n</div>\n<mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"fetchByReplies()\">\u6700\u591A\u56DE\u590D</button>\n <button mat-menu-item (click)=\"fetchByComments()\">\u6700\u65B0\u8BC4\u8BBA</button>\n</mat-menu>\n", styles: ["mat-form-field{width:100%}textarea:focus{outline:none;box-shadow:none}\n"] }]
|
|
71
|
+
}] });
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50cy1oZWFkZXIvY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21tZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tZW50cy1oZWFkZXIvY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7Ozs7QUFtQjlFLE1BQU0sT0FBTyx1QkFBdUI7SUFqQnBDO1FBa0JFLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsS0FBSyxDQUFTLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZDLFVBQUssR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDekIsWUFBTyxHQUFHLE1BQU0sRUFBVSxDQUFDO1FBQzNCLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsWUFBTyxHQUFHLEtBQUssQ0FBQztLQXlCakI7SUF4QkMsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzlDLGdCQUFnQjtZQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBQ0QsU0FBUztRQUNQLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1lBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELGVBQWUsS0FBSSxDQUFDO0lBQ3BCLGNBQWMsS0FBSSxDQUFDOzhHQS9CUix1QkFBdUI7a0dBQXZCLHVCQUF1Qix5WkM3QnBDLDg1Q0EwQ0EsaUlEMUJJLG1CQUFtQiw4bUJBRW5CLGVBQWUsMk5BQ2YsYUFBYSxtTEFDYixhQUFhLDZ2QkFDYixrQkFBa0IseU9BQ2xCLGNBQWMseWtCQUVkLHdCQUF3Qjs7MkZBS2YsdUJBQXVCO2tCQWpCbkMsU0FBUzsrQkFDRSwwQkFBMEIsY0FDeEIsSUFBSSxXQUNQO3dCQUNQLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2Qsc0JBQXNCO3dCQUN0Qix3QkFBd0I7cUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGluamVjdCwgaW5wdXQsIG1vZGVsLCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tbW9uTW9kdWxlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IENvbW1lbnRBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi9jb21tZW50LWFjdGlvbi9jb21tZW50LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudEl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9jb21tZW50LWl0ZW0vY29tbWVudC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtY29tbWVudHMtaGVhZGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEFuZ3VsYXJDb21tb25Nb2R1bGUsXG4gICAgQ29tbWVudEl0ZW1Db21wb25lbnQsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgQ29tbWVudEFjdGlvbkNvbXBvbmVudCxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50cy1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tbWVudHMtaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWVudHNIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb21tZW50U2VydmljZSA9IGluamVjdChDb21tZW50U2VydmljZSk7XG4gIHBsYWNlaG9sZGVyID0gaW5wdXQ8c3RyaW5nPign6K+36L6T5YWl6K+E6K665YaF5a65Jyk7XG4gIHRvdGFsID0gbW9kZWw8bnVtYmVyPigwKTtcbiAgY29tbWVudCA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIGNvbnRlbnQgPSAnJztcbiAgc2hvdyA9IGZhbHNlO1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50LnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAvLyB0aGlzLnRvdGFsKys7XG4gICAgICB0aGlzLnRvdGFsLnNldCh0aGlzLnRvdGFsKCkgKyAxKTtcbiAgICB9KTtcbiAgfVxuICBvbkZvY3VzKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnNob3cgPSB0cnVlO1xuICB9XG4gIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuY29udGVudCA9ICcnO1xuICB9XG4gIG9uQ29tbWVudCgpIHtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuY29tbWVudC5lbWl0KHRoaXMuY29udGVudCk7XG4gICAgdGhpcy5jb21tZW50U2VydmljZS5vbkNvbW1lbnRMb2FkaW5nLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSByZXM7XG4gICAgICB0aGlzLnNob3cgPSBmYWxzZTtcbiAgICAgIHRoaXMuY29udGVudCA9ICcnO1xuICAgIH0pO1xuICB9XG4gIGZldGNoQnlDb21tZW50cygpIHt9XG4gIGZldGNoQnlSZXBsaWVzKCkge31cbn1cbiIsIjxkaXYgY2xhc3M9XCJteS0yXCI+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMyBweS0yXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWxnIGZvbnQtYm9sZFwiPuivhOiuuih7eyB0b3RhbCgpIH19KTwvc3Bhbj5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cbiAgICAgIDxtYXQtaWNvbj5zb3J0PC9tYXQtaWNvbj5cbiAgICAgIDxzcGFuPuaOkuW6jzwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG5cbiAgQGlmIChsb2FkaW5nKSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtMjBcIj5cbiAgICAgIDxtYXQtc3Bpbm5lciBkaWFtZXRlcj1cIjMyXCI+PC9tYXQtc3Bpbm5lcj5cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cIm1yLTNcIj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICBjZGtUZXh0YXJlYUF1dG9zaXplXG4gICAgICAgICAgI2F1dG9zaXplPVwiY2RrVGV4dGFyZWFBdXRvc2l6ZVwiXG4gICAgICAgICAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMVwiXG4gICAgICAgICAgY2RrQXV0b3NpemVNYXhSb3dzPVwiOFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgICAgIFsobmdNb2RlbCldPVwiY29udGVudFwiXG4gICAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgID48L3RleHRhcmVhPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIEBpZiAoc2hvdykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXIgZ2FwLTIgcHItMlwiPlxuICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwib25DYW5jZWwoKVwiPuWPlua2iDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJvbkNvbW1lbnQoKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXdoaXRlXCI+6K+E6K66PC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG48bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCI+XG4gIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiZmV0Y2hCeVJlcGxpZXMoKVwiPuacgOWkmuWbnuWkjTwvYnV0dG9uPlxuICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImZldGNoQnlDb21tZW50cygpXCI+5pyA5paw6K+E6K66PC9idXR0b24+XG48L21hdC1tZW51PlxuIl19
|