@acorex/platform 18.1.1 → 18.1.2
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/common/lib/schema/widgets/rich-text/rich-text-widget-edit.component.mjs +1 -2
- package/esm2022/layout/builder/lib/builder/widget.types.mjs +60 -1
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comment-list-view.component.mjs +208 -47
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comment-lookup-popup.component.mjs +56 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comments.service.mjs +1 -1
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comments.type.mjs +2 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/index.mjs +2 -1
- package/esm2022/widgets/lib/properties/editors.props.mjs +102 -308
- package/esm2022/widgets/lib/properties/general.props.mjs +4 -13
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-designer.component.mjs +1 -2
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget-edit.component.mjs +9 -4
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget-view.component.mjs +4 -4
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.mjs +4 -4
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +9 -16
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget.config.mjs +3 -3
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +3 -7
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-view.component.mjs +1 -3
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-view.component.mjs +1 -3
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-view.component.mjs +1 -5
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-view.component.mjs +1 -3
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-view.component.mjs +1 -3
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-designer.component.mjs +94 -19
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.mjs +119 -8
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-print.component.mjs +3 -2
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-view.component.mjs +14 -22
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget.config.mjs +16 -3
- package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-CnH3MjYz.mjs → acorex-platform-common-rich-text-widget-edit.component-Do3YcmKg.mjs} +1 -2
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Do3YcmKg.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +93 -35
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Q8eTfAVx.mjs → acorex-platform-themes-default-entity-master-create-view.component-LyEomIA6.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Q8eTfAVx.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-LyEomIA6.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-CWXJxLS0.mjs → acorex-platform-themes-default-entity-master-list-view.component-CKRwvJTp.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-CWXJxLS0.mjs.map → acorex-platform-themes-default-entity-master-list-view.component-CKRwvJTp.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BijYXMme.mjs → acorex-platform-themes-default-entity-master-modify-view.component-CMRfspMB.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BijYXMme.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-CMRfspMB.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DhcKSyrX.mjs +457 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DhcKSyrX.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +134 -11
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-Oxpdaz9P.mjs → acorex-platform-widgets-button-widget-designer.component-B9bfVuC4.mjs} +1 -2
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-B9bfVuC4.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-DAGbdSTk.mjs → acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs} +4 -4
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +356 -404
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/layout/builder/lib/builder/widget.types.d.ts +30 -1
- package/package.json +7 -7
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comment-list-view.component.d.ts +37 -15
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comment-lookup-popup.component.d.ts +10 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comments.service.d.ts +6 -9
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/comments/comments.type.d.ts +70 -0
- package/themes/default/lib/layouts/entity-layouts/index.d.ts +1 -0
- package/widgets/lib/properties/editors.props.d.ts +3 -3
- package/widgets/lib/widgets/advance/map/map-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/layout/repeater/repeater-widget-designer.component.d.ts +4 -3
- package/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.d.ts +10 -2
- package/widgets/lib/widgets/layout/repeater/repeater-widget-print.component.d.ts +1 -1
- package/widgets/lib/widgets/layout/repeater/repeater-widget-view.component.d.ts +2 -4
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-CnH3MjYz.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B9lGgO_u.mjs +0 -357
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B9lGgO_u.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-Oxpdaz9P.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-DAGbdSTk.mjs.map +0 -1
|
@@ -2,17 +2,24 @@ import { AXCommentModule } from '@acorex/components/comment';
|
|
|
2
2
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
3
3
|
import { AXWysiwygModule } from '@acorex/components/wysiwyg';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';
|
|
5
|
+
import { ChangeDetectionStrategy, Component, computed, inject, signal, viewChild } from '@angular/core';
|
|
6
6
|
import { FormsModule } from '@angular/forms';
|
|
7
7
|
import { ActivatedRoute, RouterModule } from '@angular/router';
|
|
8
8
|
import { AXAvatarModule } from '@acorex/components/avatar';
|
|
9
9
|
import { AXButtonModule } from '@acorex/components/button';
|
|
10
|
-
import {
|
|
10
|
+
import { AXDialogService } from '@acorex/components/dialog';
|
|
11
|
+
import { AXDropdownModule } from '@acorex/components/dropdown';
|
|
12
|
+
import { AXDropdownButtonModule } from '@acorex/components/dropdown-button';
|
|
11
13
|
import { AXFormModule } from '@acorex/components/form';
|
|
12
14
|
import { AXImageModule } from '@acorex/components/image';
|
|
13
15
|
import { AXLabelModule } from '@acorex/components/label';
|
|
16
|
+
import { AXLoadingModule } from '@acorex/components/loading';
|
|
17
|
+
import { AXPopupService } from '@acorex/components/popup';
|
|
14
18
|
import { AXSelectBoxModule } from '@acorex/components/select-box';
|
|
15
19
|
import { AXTextBoxModule } from '@acorex/components/text-box';
|
|
20
|
+
import { AXToastService } from '@acorex/components/toast';
|
|
21
|
+
import { AXPHtmlUtils } from '@acorex/platform/core';
|
|
22
|
+
import { AXPCommentLookupPopup } from './comment-lookup-popup.component';
|
|
16
23
|
import { AXPCommentService } from './comments.service';
|
|
17
24
|
import * as i0 from "@angular/core";
|
|
18
25
|
import * as i1 from "@angular/forms";
|
|
@@ -23,84 +30,235 @@ import * as i5 from "@acorex/components/button";
|
|
|
23
30
|
import * as i6 from "@acorex/components/avatar";
|
|
24
31
|
import * as i7 from "@acorex/components/image";
|
|
25
32
|
import * as i8 from "@acorex/components/form";
|
|
33
|
+
import * as i9 from "@acorex/components/loading";
|
|
34
|
+
import * as i10 from "@acorex/components/dropdown-button";
|
|
35
|
+
import * as i11 from "@acorex/components/dropdown";
|
|
26
36
|
export class AXPCommentListViewComponent {
|
|
27
37
|
constructor() {
|
|
38
|
+
this.commentContent = signal('');
|
|
39
|
+
this.hasCooldown = signal(false);
|
|
40
|
+
this.isSubmitting = signal(false);
|
|
41
|
+
this.isReplyingMode = signal(false);
|
|
42
|
+
this.isEditingMode = signal(false);
|
|
43
|
+
this.failedImageIds = signal([]);
|
|
44
|
+
this.activeReplyComment = signal(undefined);
|
|
45
|
+
this.activeEditComment = signal(undefined);
|
|
46
|
+
this.wysiwygEditor = viewChild.required('w');
|
|
28
47
|
this.commentService = inject(AXPCommentService);
|
|
29
|
-
this.
|
|
30
|
-
this.
|
|
48
|
+
this.route = inject(ActivatedRoute);
|
|
49
|
+
this.popupService = inject(AXPopupService);
|
|
50
|
+
this.toastService = inject(AXToastService);
|
|
51
|
+
this.dialogService = inject(AXDialogService);
|
|
52
|
+
this.htmlUtils = inject(AXPHtmlUtils);
|
|
53
|
+
this.routeParams = this.route.snapshot;
|
|
54
|
+
this.payload = computed(() => ({
|
|
55
|
+
roomType: 'default',
|
|
56
|
+
entityId: this.routeParams.params?.['module'] + '.' + this.routeParams.params?.['entity'],
|
|
57
|
+
instanceId: this.routeParams.params?.['id'],
|
|
58
|
+
}));
|
|
31
59
|
this.comments = signal([]);
|
|
32
|
-
this.value = signal('');
|
|
33
60
|
this.wysiwygOptions = signal({
|
|
34
|
-
look: '
|
|
61
|
+
look: 'none',
|
|
35
62
|
});
|
|
36
|
-
this.
|
|
63
|
+
this.avatarConfig = signal({
|
|
37
64
|
color: 'primary',
|
|
38
65
|
look: 'rounded',
|
|
39
66
|
type: 'solid', // 'image' | 'text' | 'icon' | 'default'
|
|
40
67
|
});
|
|
41
|
-
this.
|
|
42
|
-
pageSize: 10,
|
|
43
|
-
key: 'id',
|
|
44
|
-
load: () => {
|
|
45
|
-
return new Promise((resolve) => {
|
|
46
|
-
resolve({
|
|
47
|
-
items: ['advance', 'basic'],
|
|
48
|
-
total: 2,
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
},
|
|
52
|
-
byKey: () => {
|
|
53
|
-
return new Promise((resolve) => {
|
|
54
|
-
resolve('advance');
|
|
55
|
-
});
|
|
56
|
-
},
|
|
57
|
-
});
|
|
58
|
-
this.validateFn = (val) => {
|
|
68
|
+
this.validateContent = (content) => {
|
|
59
69
|
let isValid = true;
|
|
60
|
-
if (!
|
|
70
|
+
if (!content || content === '<p><br></p>') {
|
|
61
71
|
isValid = false;
|
|
62
72
|
}
|
|
63
73
|
return {
|
|
64
74
|
rule: 'callback',
|
|
65
75
|
result: isValid,
|
|
66
76
|
message: isValid ? '' : 'Please fill the content',
|
|
67
|
-
value:
|
|
77
|
+
value: content,
|
|
68
78
|
};
|
|
69
79
|
};
|
|
70
80
|
}
|
|
71
81
|
ngOnInit() {
|
|
72
82
|
this.loadComments();
|
|
73
83
|
}
|
|
84
|
+
sanitizeHtml(htmlContent) {
|
|
85
|
+
return this.htmlUtils.getSafeHTMLfromHTML(htmlContent);
|
|
86
|
+
}
|
|
87
|
+
handleImageError(imageId) {
|
|
88
|
+
this.failedImageIds.update((ids) => [...ids, imageId]);
|
|
89
|
+
}
|
|
90
|
+
checkImageExists(imageId) {
|
|
91
|
+
return !this.failedImageIds().includes(imageId);
|
|
92
|
+
}
|
|
93
|
+
extractInitials(name) {
|
|
94
|
+
const words = name.split(' ');
|
|
95
|
+
const initials = words.map((word) => word.charAt(0).toUpperCase());
|
|
96
|
+
return initials.join('');
|
|
97
|
+
}
|
|
74
98
|
async loadComments() {
|
|
99
|
+
const response = await this.commentService.get(this.payload());
|
|
100
|
+
this.comments.set(response.items);
|
|
101
|
+
}
|
|
102
|
+
async initiateEditComment(comment) {
|
|
103
|
+
this.isReplyingMode.set(false);
|
|
104
|
+
this.activeReplyComment.set(undefined);
|
|
105
|
+
this.isEditingMode.set(true);
|
|
106
|
+
this.activeEditComment.set(comment);
|
|
107
|
+
this.commentContent.set(comment.content);
|
|
108
|
+
document.getElementsByClassName('ql-editor')[0].innerHTML = comment.content;
|
|
109
|
+
this.wysiwygEditor().getHostElement().scrollIntoView({ behavior: 'smooth', block: 'start' });
|
|
110
|
+
}
|
|
111
|
+
async initiateReplyComment(comment) {
|
|
112
|
+
this.isEditingMode.set(false);
|
|
113
|
+
this.activeEditComment.set(undefined);
|
|
114
|
+
this.isReplyingMode.set(true);
|
|
115
|
+
this.activeReplyComment.set(comment);
|
|
116
|
+
this.wysiwygEditor().getHostElement().scrollIntoView({ behavior: 'smooth', block: 'start' });
|
|
117
|
+
}
|
|
118
|
+
async deleteComment(comment) {
|
|
119
|
+
const dialog = this.dialogService.open({
|
|
120
|
+
icon: 'fa-regular fa-warning',
|
|
121
|
+
content: 'Are you sure you want to delete this comment?',
|
|
122
|
+
title: 'Delete Comment',
|
|
123
|
+
type: 'danger',
|
|
124
|
+
orientation: 'horizontal',
|
|
125
|
+
buttons: [
|
|
126
|
+
{
|
|
127
|
+
text: 'Delete',
|
|
128
|
+
color: 'danger',
|
|
129
|
+
onClick: async (e) => {
|
|
130
|
+
e.handled = true;
|
|
131
|
+
e.source.text = 'Deleting...';
|
|
132
|
+
e.source.disabled = true;
|
|
133
|
+
e.source.loading = true;
|
|
134
|
+
try {
|
|
135
|
+
await this.commentService.delete({ id: comment.id });
|
|
136
|
+
this.removeCommentById(comment.id);
|
|
137
|
+
this.toastService.show({
|
|
138
|
+
content: 'Comment deleted successfully.',
|
|
139
|
+
color: 'success',
|
|
140
|
+
location: 'bottom-center',
|
|
141
|
+
closeButton: true,
|
|
142
|
+
timeOut: 3000,
|
|
143
|
+
timeOutProgress: true,
|
|
144
|
+
});
|
|
145
|
+
dialog.close();
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
this.toastService.show({
|
|
149
|
+
content: typeof error === 'string' ? error : 'Failed to delete comment!',
|
|
150
|
+
color: 'danger',
|
|
151
|
+
location: 'bottom-center',
|
|
152
|
+
closeButton: true,
|
|
153
|
+
timeOut: 3000,
|
|
154
|
+
timeOutProgress: true,
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
text: 'Cancel',
|
|
161
|
+
color: 'ghost',
|
|
162
|
+
autofocus: true,
|
|
163
|
+
onClick: (e) => {
|
|
164
|
+
dialog.close();
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
],
|
|
168
|
+
closeButton: false,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
resetReplyEditState() {
|
|
172
|
+
this.isEditingMode.set(false);
|
|
173
|
+
this.activeEditComment.set(undefined);
|
|
174
|
+
this.isReplyingMode.set(false);
|
|
175
|
+
this.activeReplyComment.set(undefined);
|
|
176
|
+
}
|
|
177
|
+
async toggleLikeComment(comment) {
|
|
178
|
+
this.updateLikeStatus(comment.id);
|
|
75
179
|
const payload = {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
instanceId: 'a96d2a63-a304-0da6-1231-3a152a99efd4',
|
|
180
|
+
messageId: comment.id,
|
|
181
|
+
type: 'like',
|
|
79
182
|
};
|
|
80
|
-
|
|
81
|
-
|
|
183
|
+
try {
|
|
184
|
+
await this.commentService.like(payload);
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
this.updateLikeStatus(comment.id);
|
|
188
|
+
}
|
|
82
189
|
}
|
|
83
|
-
|
|
84
|
-
|
|
190
|
+
updateLikeStatus(commentId) {
|
|
191
|
+
this.comments.update((commentsList) => {
|
|
192
|
+
return commentsList.map((comment) => comment.id === commentId
|
|
193
|
+
? {
|
|
194
|
+
...comment,
|
|
195
|
+
isLiked: !comment.isLiked,
|
|
196
|
+
reactionsCount: comment.isLiked ? --comment.reactionsCount : ++comment.reactionsCount,
|
|
197
|
+
}
|
|
198
|
+
: comment);
|
|
199
|
+
});
|
|
85
200
|
}
|
|
86
|
-
|
|
87
|
-
|
|
201
|
+
removeCommentById(commentId) {
|
|
202
|
+
this.comments.update((commentsList) => commentsList.filter((comment) => comment.id !== commentId));
|
|
88
203
|
}
|
|
89
|
-
|
|
204
|
+
async submitPrivateComment() {
|
|
205
|
+
if (!this.validateContent(this.commentContent()).result) {
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
const popupConfig = {
|
|
209
|
+
header: true,
|
|
210
|
+
size: 'md',
|
|
211
|
+
draggable: true,
|
|
212
|
+
hasBackdrop: true,
|
|
213
|
+
closeButton: true,
|
|
214
|
+
closeOnBackdropClick: false,
|
|
215
|
+
};
|
|
216
|
+
const popup = await this.popupService.open(AXPCommentLookupPopup, popupConfig);
|
|
90
217
|
const payload = {
|
|
91
|
-
|
|
218
|
+
...this.payload(),
|
|
219
|
+
content: this.commentContent(),
|
|
220
|
+
contentType: 'text',
|
|
221
|
+
isPrivate: false,
|
|
222
|
+
replyId: this.activeReplyComment()?.id,
|
|
223
|
+
members: [popup.data?.data?.lookup],
|
|
224
|
+
};
|
|
225
|
+
this.isSubmitting.set(true);
|
|
226
|
+
this.hasCooldown.set(true);
|
|
227
|
+
await this.commentService.post(payload);
|
|
228
|
+
const response = await this.commentService.get(this.payload());
|
|
229
|
+
this.comments.set(response.items);
|
|
230
|
+
this.commentContent.set('');
|
|
231
|
+
document.getElementsByClassName('ql-editor')[0].innerHTML = '';
|
|
232
|
+
this.isSubmitting.set(false);
|
|
233
|
+
setTimeout(() => {
|
|
234
|
+
this.hasCooldown.set(false);
|
|
235
|
+
}, 1000);
|
|
236
|
+
}
|
|
237
|
+
async submitComment() {
|
|
238
|
+
if (!this.validateContent(this.commentContent()).result) {
|
|
239
|
+
return;
|
|
240
|
+
}
|
|
241
|
+
const payload = {
|
|
242
|
+
...this.payload(),
|
|
243
|
+
content: this.commentContent(),
|
|
92
244
|
contentType: 'text',
|
|
93
|
-
roomType: 'default',
|
|
94
|
-
entityId: 'inspection.vehicle',
|
|
95
|
-
instanceId: 'a96d2a63-a304-0da6-1231-3a152a99efd4',
|
|
96
245
|
isPrivate: false,
|
|
97
|
-
|
|
98
|
-
members: [],
|
|
246
|
+
replyId: this.activeReplyComment()?.id,
|
|
99
247
|
};
|
|
100
|
-
this.
|
|
248
|
+
this.isSubmitting.set(true);
|
|
249
|
+
this.hasCooldown.set(true);
|
|
250
|
+
await this.commentService.post(payload);
|
|
251
|
+
const response = await this.commentService.get(this.payload());
|
|
252
|
+
this.comments.set(response.items);
|
|
253
|
+
this.commentContent.set('');
|
|
254
|
+
document.getElementsByClassName('ql-editor')[0].innerHTML = '';
|
|
255
|
+
this.isSubmitting.set(false);
|
|
256
|
+
setTimeout(() => {
|
|
257
|
+
this.hasCooldown.set(false);
|
|
258
|
+
}, 1000);
|
|
101
259
|
}
|
|
102
260
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPCommentListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPCommentListViewComponent, isStandalone: true, selector: "axp-comment-list-view", ngImport: i0, template: "<div class=\"ax-mt-2\">\n <ax-comment-view class=\"ax-bg-surface\">\n <ax-comment-item>\n <ax-avatar [color]=\"avatarOptions().color\" [look]=\"avatarOptions().look\">\n <ax-image src=\"https://i.pravatar.cc/300\"></ax-image>\n </ax-avatar>\n <ax-title>Matin</ax-title>\n <ax-content>Lorem ipsum dolor sit amet consectetur adipisicing elit. Itaque, mollitia.</ax-content>\n <ax-comment-like [liked]=\"false\">2</ax-comment-like>\n <ax-comment-reply>4</ax-comment-reply>\n <ax-comment-reply-text (click)=\"replyHandler()\"></ax-comment-reply-text>\n\n <ax-comment-item>\n <ax-avatar [color]=\"avatarOptions().color\" [look]=\"avatarOptions().look\">\n <ax-image src=\"https://i.pravatar.cc/300\"></ax-image>\n </ax-avatar>\n <ax-title>Meysa</ax-title>\n <ax-content>Lorem ipsum dolor sit amet consectetur adipisicing elit. Itaque, mollitia.</ax-content>\n <ax-comment-like [liked]=\"true\">4</ax-comment-like>\n <ax-comment-reply>3</ax-comment-reply>\n <ax-comment-reply-text (click)=\"replyHandler()\"></ax-comment-reply-text>\n </ax-comment-item>\n </ax-comment-item>\n </ax-comment-view>\n\n <ax-form>\n <ax-form-field>\n <ax-wysiwyg-container [look]=\"wysiwygOptions().look\" (ngModelChange)=\"valueChange($event)\" [(ngModel)]=\"value\">\n <ax-wysiwyg-view class=\"ax-min-h-28\"></ax-wysiwyg-view>\n <ax-wysiwyg-toolbar>\n <ax-wysiwyg-history></ax-wysiwyg-history>\n <ax-wysiwyg-font-style></ax-wysiwyg-font-style>\n <ax-wysiwyg-colors></ax-wysiwyg-colors>\n <ax-wysiwyg-list></ax-wysiwyg-list>\n <ax-wysiwyg-alignment></ax-wysiwyg-alignment>\n <ax-wysiwyg-insert></ax-wysiwyg-insert>\n <ax-suffix>\n <ax-button type=\"submit\" color=\"primary\" text=\"Send\" (onClick)=\"submitComment()\"></ax-button\n ></ax-suffix>\n </ax-wysiwyg-toolbar>\n <ax-validation-rule rule=\"callback\" [options]=\"{ validate: validateFn }\"></ax-validation-rule>\n </ax-wysiwyg-container>\n </ax-form-field>\n </ax-form>\n</div>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { 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: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXCommentModule }, { kind: "component", type: i3.AXCommentViewComponent, selector: "ax-comment-view" }, { kind: "component", type: i3.AxCommentItemComponent, selector: "ax-comment-item" }, { kind: "component", type: i3.AXCommentLikeComponent, selector: "ax-comment-like", inputs: ["liked"] }, { kind: "component", type: i3.AXCommentReplyComponent, selector: "ax-comment-reply" }, { kind: "component", type: i3.AXCommentReplyTextComponent, selector: "ax-comment-reply-text" }, { kind: "ngmodule", type: AXWysiwygModule }, { kind: "component", type: i4.AXWysiwygContainerComponent, selector: "ax-wysiwyg-container", inputs: ["look", "placeHolder"], outputs: ["onValueChanged"] }, { kind: "component", type: i4.AXWysiwygViewComponent, selector: "ax-wysiwyg-view", inputs: ["class"] }, { kind: "component", type: i4.AXWysiwygToolbarComponent, selector: "ax-wysiwyg-toolbar" }, { kind: "component", type: i4.AXWysiwygAlignmentComponent, selector: "ax-wysiwyg-alignment" }, { kind: "component", type: i4.AXWysiwygColorsComponent, selector: "ax-wysiwyg-colors" }, { kind: "component", type: i4.AXWysiwygFontStyleComponent, selector: "ax-wysiwyg-font-style" }, { kind: "component", type: i4.AXWysiwygHistoryComponent, selector: "ax-wysiwyg-history" }, { kind: "component", type: i4.AXWysiwygInsertComponent, selector: "ax-wysiwyg-insert" }, { kind: "component", type: i4.AXWysiwygListComponent, selector: "ax-wysiwyg-list" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i6.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i7.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i8.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i8.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i8.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
261
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPCommentListViewComponent, isStandalone: true, selector: "axp-comment-list-view", viewQueries: [{ propertyName: "wysiwygEditor", first: true, predicate: ["w"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"ax-mt-2\">\n <ax-comment-view class=\"ax-bg-surface\">\n @for(comment of comments(); track comment.id){\n <ax-comment-item>\n <ax-avatar [color]=\"avatarConfig().color\" [look]=\"avatarConfig().look\">\n @if(checkImageExists(comment.id) && comment.user.picture){\n <ax-image (onError)=\"handleImageError(comment.id)\" [src]=\"comment.user.picture\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"ax-text-base ax-overflow-hidden\">{{\n extractInitials(comment.user.firstName + ' ' + comment.user.lastName)\n }}</span>\n </ax-text>\n }\n </ax-avatar>\n <ax-title>{{ comment.user.firstName + ' ' + comment.user.lastName }}</ax-title>\n <ax-comment-menu-options>\n <ax-button class=\"ax-sm\" look=\"blank\" color=\"secondary\">\n <ax-icon icon=\"ax-icon ax-icon-solid ax-icon-more-horizontal\"></ax-icon>\n </ax-button>\n\n <ax-dropdown-panel>\n <ax-button-item-list>\n <ax-button-item text=\"Edit\" color=\"secondary\" (click)=\"initiateEditComment(comment)\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-edit\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n\n <ax-button-item text=\"Delete\" color=\"danger\" (click)=\"deleteComment(comment)\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-comment-menu-options>\n <ax-content [innerHTML]=\"sanitizeHtml(comment.content)\"></ax-content>\n <ax-comment-like (click)=\"toggleLikeComment(comment)\" [liked]=\"comment.isLiked\">\n {{ comment.reactionsCount }}\n </ax-comment-like>\n <ax-comment-reply-text (click)=\"initiateReplyComment(comment)\"></ax-comment-reply-text>\n @for(reply of comment.replies; track reply.id){\n <ax-comment-item>\n @if(checkImageExists(reply.id) && reply?.user?.picture){\n <ax-image (onError)=\"handleImageError(reply.id)\" [src]=\"reply?.user?.picture\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"ax-text-base ax-overflow-hidden\">{{\n extractInitials(reply?.user?.firstName + ' ' + reply?.user?.lastName)\n }}</span>\n </ax-text>\n }\n <ax-title>{{ (reply?.user?.firstName ?? '') + ' ' + (reply?.user?.lastName ?? '') }}</ax-title>\n <ax-content [innerHTML]=\"sanitizeHtml(reply.content)\"></ax-content>\n <ax-comment-like (click)=\"toggleLikeComment(reply)\" [liked]=\"reply.isLiked\">\n {{ reply.reactionsCount }}\n </ax-comment-like>\n <ax-comment-reply-text (click)=\"initiateReplyComment(reply)\"></ax-comment-reply-text>\n </ax-comment-item>\n }\n </ax-comment-item>\n } @empty{ }\n </ax-comment-view>\n\n <ax-form>\n <ax-form-field>\n <div class=\"ax-border ax-overflow-hidden ax-rounded-lg\">\n @if(isReplyingMode() || isEditingMode()){\n <div\n class=\"ax-flex ax-justify-between ax-border-b ax-bg-on-surface ax-px-6 ax-py-4 ax-w-full ax-items-center ax-overflow-hidden ax-text-sm ax-leading-none\"\n >\n <div class=\"ax-flex ax-justify-start ax-align-middle\">\n <i\n [class]=\"isReplyingMode() ? 'fa-reply' : 'fa-pen'\"\n class=\"fa-solid ax-text-primary-500 ax-text-2xl ax-me-4\"\n ></i>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-justify-between ax-align-middle\">\n <p class=\"ax-text-primary-500\">\n {{ isReplyingMode() ? 'Reply to ' : 'Edit Message' }}\n <span class=\"ax-font-bold\">\n {{\n isReplyingMode()\n ? activeReplyComment()?.user?.firstName + ' ' + activeReplyComment()?.user?.lastName\n : ''\n }}\n </span>\n </p>\n <div\n class=\"ax-truncate\"\n [innerHTML]=\"\n isReplyingMode()\n ? sanitizeHtml(activeReplyComment()?.content ?? '')\n : sanitizeHtml(activeEditComment()?.content ?? '')\n \"\n ></div>\n </div>\n </div>\n <div><i (click)=\"resetReplyEditState()\" class=\"fa-solid ax-text-2xl fa-xmark ax-cursor-pointer\"></i></div>\n </div>\n }\n <ax-wysiwyg-container #w [look]=\"wysiwygOptions().look\" [(ngModel)]=\"commentContent\">\n <ax-wysiwyg-view class=\"ax-min-h-28\"></ax-wysiwyg-view>\n <ax-wysiwyg-toolbar>\n <ax-wysiwyg-history></ax-wysiwyg-history>\n <ax-wysiwyg-font-style></ax-wysiwyg-font-style>\n <ax-wysiwyg-colors></ax-wysiwyg-colors>\n <ax-wysiwyg-list></ax-wysiwyg-list>\n <ax-wysiwyg-alignment></ax-wysiwyg-alignment>\n <ax-suffix>\n <ax-dropdown-button\n [disabled]=\"hasCooldown()\"\n type=\"submit\"\n color=\"primary\"\n mode=\"split\"\n text=\"Send\"\n (onClick)=\"submitComment()\"\n >\n @if(isSubmitting()){ <ax-loading></ax-loading> }\n <ax-button-item-list>\n <ax-button-item\n (click)=\"submitPrivateComment()\"\n text=\"Send Private ...\"\n name=\"private\"\n data=\"private\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-regular fa-user-secret\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n </ax-suffix>\n </ax-wysiwyg-toolbar>\n <ax-validation-rule rule=\"callback\" [options]=\"{ validate: validateContent }\"></ax-validation-rule>\n </ax-wysiwyg-container>\n </div>\n </ax-form-field>\n </ax-form>\n</div>\n", styles: ["ax-wysiwyg-container .ax-error-message{padding-left:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { 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: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXCommentModule }, { kind: "component", type: i3.AXCommentViewComponent, selector: "ax-comment-view" }, { kind: "component", type: i3.AxCommentItemComponent, selector: "ax-comment-item" }, { kind: "component", type: i3.AXCommentLikeComponent, selector: "ax-comment-like", inputs: ["liked"] }, { kind: "component", type: i3.AXMenuOptionsComponent, selector: "ax-comment-menu-options" }, { kind: "component", type: i3.AXCommentReplyTextComponent, selector: "ax-comment-reply-text" }, { kind: "ngmodule", type: AXWysiwygModule }, { kind: "component", type: i4.AXWysiwygContainerComponent, selector: "ax-wysiwyg-container", inputs: ["look", "placeHolder"], outputs: ["onValueChanged"] }, { kind: "component", type: i4.AXWysiwygViewComponent, selector: "ax-wysiwyg-view", inputs: ["class"] }, { kind: "component", type: i4.AXWysiwygToolbarComponent, selector: "ax-wysiwyg-toolbar" }, { kind: "component", type: i4.AXWysiwygAlignmentComponent, selector: "ax-wysiwyg-alignment" }, { kind: "component", type: i4.AXWysiwygColorsComponent, selector: "ax-wysiwyg-colors" }, { kind: "component", type: i4.AXWysiwygFontStyleComponent, selector: "ax-wysiwyg-font-style" }, { kind: "component", type: i4.AXWysiwygHistoryComponent, selector: "ax-wysiwyg-history" }, { kind: "component", type: i4.AXWysiwygListComponent, selector: "ax-wysiwyg-list" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "component", type: i5.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i5.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i6.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i7.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i8.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i8.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i8.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i9.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "component", type: i10.AXDropdownButtonComponent, selector: "ax-dropdown-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "type", "mode"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i11.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
104
262
|
}
|
|
105
263
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPCommentListViewComponent, decorators: [{
|
|
106
264
|
type: Component,
|
|
@@ -118,6 +276,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
118
276
|
AXImageModule,
|
|
119
277
|
AXSelectBoxModule,
|
|
120
278
|
AXFormModule,
|
|
121
|
-
|
|
279
|
+
AXLoadingModule,
|
|
280
|
+
AXDropdownButtonModule,
|
|
281
|
+
AXDropdownModule,
|
|
282
|
+
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ax-mt-2\">\n <ax-comment-view class=\"ax-bg-surface\">\n @for(comment of comments(); track comment.id){\n <ax-comment-item>\n <ax-avatar [color]=\"avatarConfig().color\" [look]=\"avatarConfig().look\">\n @if(checkImageExists(comment.id) && comment.user.picture){\n <ax-image (onError)=\"handleImageError(comment.id)\" [src]=\"comment.user.picture\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"ax-text-base ax-overflow-hidden\">{{\n extractInitials(comment.user.firstName + ' ' + comment.user.lastName)\n }}</span>\n </ax-text>\n }\n </ax-avatar>\n <ax-title>{{ comment.user.firstName + ' ' + comment.user.lastName }}</ax-title>\n <ax-comment-menu-options>\n <ax-button class=\"ax-sm\" look=\"blank\" color=\"secondary\">\n <ax-icon icon=\"ax-icon ax-icon-solid ax-icon-more-horizontal\"></ax-icon>\n </ax-button>\n\n <ax-dropdown-panel>\n <ax-button-item-list>\n <ax-button-item text=\"Edit\" color=\"secondary\" (click)=\"initiateEditComment(comment)\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-edit\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n\n <ax-button-item text=\"Delete\" color=\"danger\" (click)=\"deleteComment(comment)\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-comment-menu-options>\n <ax-content [innerHTML]=\"sanitizeHtml(comment.content)\"></ax-content>\n <ax-comment-like (click)=\"toggleLikeComment(comment)\" [liked]=\"comment.isLiked\">\n {{ comment.reactionsCount }}\n </ax-comment-like>\n <ax-comment-reply-text (click)=\"initiateReplyComment(comment)\"></ax-comment-reply-text>\n @for(reply of comment.replies; track reply.id){\n <ax-comment-item>\n @if(checkImageExists(reply.id) && reply?.user?.picture){\n <ax-image (onError)=\"handleImageError(reply.id)\" [src]=\"reply?.user?.picture\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"ax-text-base ax-overflow-hidden\">{{\n extractInitials(reply?.user?.firstName + ' ' + reply?.user?.lastName)\n }}</span>\n </ax-text>\n }\n <ax-title>{{ (reply?.user?.firstName ?? '') + ' ' + (reply?.user?.lastName ?? '') }}</ax-title>\n <ax-content [innerHTML]=\"sanitizeHtml(reply.content)\"></ax-content>\n <ax-comment-like (click)=\"toggleLikeComment(reply)\" [liked]=\"reply.isLiked\">\n {{ reply.reactionsCount }}\n </ax-comment-like>\n <ax-comment-reply-text (click)=\"initiateReplyComment(reply)\"></ax-comment-reply-text>\n </ax-comment-item>\n }\n </ax-comment-item>\n } @empty{ }\n </ax-comment-view>\n\n <ax-form>\n <ax-form-field>\n <div class=\"ax-border ax-overflow-hidden ax-rounded-lg\">\n @if(isReplyingMode() || isEditingMode()){\n <div\n class=\"ax-flex ax-justify-between ax-border-b ax-bg-on-surface ax-px-6 ax-py-4 ax-w-full ax-items-center ax-overflow-hidden ax-text-sm ax-leading-none\"\n >\n <div class=\"ax-flex ax-justify-start ax-align-middle\">\n <i\n [class]=\"isReplyingMode() ? 'fa-reply' : 'fa-pen'\"\n class=\"fa-solid ax-text-primary-500 ax-text-2xl ax-me-4\"\n ></i>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-justify-between ax-align-middle\">\n <p class=\"ax-text-primary-500\">\n {{ isReplyingMode() ? 'Reply to ' : 'Edit Message' }}\n <span class=\"ax-font-bold\">\n {{\n isReplyingMode()\n ? activeReplyComment()?.user?.firstName + ' ' + activeReplyComment()?.user?.lastName\n : ''\n }}\n </span>\n </p>\n <div\n class=\"ax-truncate\"\n [innerHTML]=\"\n isReplyingMode()\n ? sanitizeHtml(activeReplyComment()?.content ?? '')\n : sanitizeHtml(activeEditComment()?.content ?? '')\n \"\n ></div>\n </div>\n </div>\n <div><i (click)=\"resetReplyEditState()\" class=\"fa-solid ax-text-2xl fa-xmark ax-cursor-pointer\"></i></div>\n </div>\n }\n <ax-wysiwyg-container #w [look]=\"wysiwygOptions().look\" [(ngModel)]=\"commentContent\">\n <ax-wysiwyg-view class=\"ax-min-h-28\"></ax-wysiwyg-view>\n <ax-wysiwyg-toolbar>\n <ax-wysiwyg-history></ax-wysiwyg-history>\n <ax-wysiwyg-font-style></ax-wysiwyg-font-style>\n <ax-wysiwyg-colors></ax-wysiwyg-colors>\n <ax-wysiwyg-list></ax-wysiwyg-list>\n <ax-wysiwyg-alignment></ax-wysiwyg-alignment>\n <ax-suffix>\n <ax-dropdown-button\n [disabled]=\"hasCooldown()\"\n type=\"submit\"\n color=\"primary\"\n mode=\"split\"\n text=\"Send\"\n (onClick)=\"submitComment()\"\n >\n @if(isSubmitting()){ <ax-loading></ax-loading> }\n <ax-button-item-list>\n <ax-button-item\n (click)=\"submitPrivateComment()\"\n text=\"Send Private ...\"\n name=\"private\"\n data=\"private\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-regular fa-user-secret\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n </ax-suffix>\n </ax-wysiwyg-toolbar>\n <ax-validation-rule rule=\"callback\" [options]=\"{ validate: validateContent }\"></ax-validation-rule>\n </ax-wysiwyg-container>\n </div>\n </ax-form-field>\n </ax-form>\n</div>\n", styles: ["ax-wysiwyg-container .ax-error-message{padding-left:.5rem}\n"] }]
|
|
122
283
|
}] });
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1saXN0LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvZW50aXR5LWxheW91dHMvZW50aXR5LW1hc3Rlci1zaW5nbGUtdmlldy9jb21tZW50cy9jb21tZW50LWxpc3Qtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvbGF5b3V0cy9lbnRpdHktbGF5b3V0cy9lbnRpdHktbWFzdGVyLXNpbmdsZS12aWV3L2NvbW1lbnRzL2NvbW1lbnQtbGlzdC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQW1CLE1BQU0sMkJBQTJCLENBQUM7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QUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXLENBQUMsQ0FBTTtRQUNoQixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFnQkQsYUFBYTtRQUNYLE1BQU0sT0FBTyxHQUFHO1lBQ2QsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsTUFBTTtZQUNuQixRQUFRLEVBQUUsU0FBUztZQUNuQixRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFVBQVUsRUFBRSxzQ0FBc0M7WUFDbEQsU0FBUyxFQUFFLEtBQUs7WUFDaEIsVUFBVSxFQUFFLElBQUk7WUFDaEIsT0FBTyxFQUFFLEVBQUU7U0FDWixDQUFDO1FBRUYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQzs4R0E3RlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsaUZDdkN4QyxtbkVBNkNBLDJDRHZCSSxXQUFXLDhWQUNYLFlBQVksOEJBQ1osWUFBWSw4QkFDWixpQkFBaUIsc1BBQ2pCLGVBQWUsdWVBQ2YsZUFBZSwrNUJBQ2YsY0FBYyx1WkFDZCxlQUFlLDhCQUNmLGFBQWEsOEJBQ2IsY0FBYyxvS0FDZCxhQUFhLGlNQUNiLGlCQUFpQiw4QkFDakIsWUFBWTs7MkZBS0gsMkJBQTJCO2tCQXJCdkMsU0FBUzsrQkFFRSx1QkFBdUIsV0FDeEI7d0JBQ1AsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsWUFBWTtxQkFDYixjQUNXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQ29tbWVudE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tZW50JztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhXeXNpd3lnTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3d5c2l3eWcnO1xuaW1wb3J0IHsgQVhQRW50aXR5TWFzdGVyU2luZ2xlVmlld01vZGVsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgQVhBdmF0YXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYXZhdGFyJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UsIEFYU3R5bGVMb29rVHlwZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhJbWFnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9pbWFnZSc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RleHQtYm94JztcbmltcG9ydCB7IEFYUENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9jb21tZW50cy5zZXJ2aWNlJztcbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1saXN0LXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzZWxlY3RvcjogJ2F4cC1jb21tZW50LWxpc3QtdmlldycsXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYQ29tbWVudE1vZHVsZSxcbiAgICBBWFd5c2l3eWdNb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhBdmF0YXJNb2R1bGUsXG4gICAgQVhJbWFnZU1vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBDb21tZW50TGlzdFZpZXdDb21wb25lbnQge1xuICBjb21tZW50U2VydmljZSA9IGluamVjdChBWFBDb21tZW50U2VydmljZSk7XG5cbiAgcHJpdmF0ZSBhY3RpdmVSb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSB2bSA9IHRoaXMuYWN0aXZlUm91dGUuc25hcHNob3QuZGF0YVsndm0nXSBhcyBBWFBFbnRpdHlNYXN0ZXJTaW5nbGVWaWV3TW9kZWw7XG5cbiAgcHJvdGVjdGVkIGNvbW1lbnRzID0gc2lnbmFsPGFueVtdPihbXSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkQ29tbWVudHMoKTtcbiAgfVxuXG4gIGFzeW5jIGxvYWRDb21tZW50cygpIHtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgcm9vbVR5cGU6ICdkZWZhdWx0JyxcbiAgICAgIGVudGl0eUlkOiAnaW5zcGVjdGlvbi52ZWhpY2xlJyxcbiAgICAgIGluc3RhbmNlSWQ6ICdhOTZkMmE2My1hMzA0LTBkYTYtMTIzMS0zYTE1MmE5OWVmZDQnLFxuICAgIH07XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHRoaXMuY29tbWVudFNlcnZpY2UuZ2V0Q29tbWVudHMocGF5bG9hZCk7XG4gICAgdGhpcy5jb21tZW50cy5zZXQoZGF0YS5pdGVtcyk7XG4gIH1cblxuICB2YWx1ZSA9IHNpZ25hbCgnJyk7XG5cbiAgcHJvdGVjdGVkIHd5c2l3eWdPcHRpb25zID0gc2lnbmFsPHtcbiAgICBsb29rOiBBWFN0eWxlTG9va1R5cGU7XG4gIH0+KHtcbiAgICBsb29rOiAnc29saWQnLFxuICB9KTtcblxuICBwcm90ZWN0ZWQgYXZhdGFyT3B0aW9ucyA9IHNpZ25hbDx7XG4gICAgY29sb3I6IHN0cmluZztcbiAgICBsb29rOiAnc2hhcnAnIHwgJ3NvZnQnIHwgJ3JvdW5kZWQnO1xuICAgIHR5cGU6IHN0cmluZztcbiAgfT4oe1xuICAgIGNvbG9yOiAncHJpbWFyeScsXG4gICAgbG9vazogJ3JvdW5kZWQnLFxuICAgIHR5cGU6ICdzb2xpZCcsIC8vICdpbWFnZScgfCAndGV4dCcgfCAnaWNvbicgfCAnZGVmYXVsdCdcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGVkaXRvck9wdGlvbiA9IG5ldyBBWERhdGFTb3VyY2U8c3RyaW5nPih7XG4gICAgcGFnZVNpemU6IDEwLFxuICAgIGtleTogJ2lkJyxcbiAgICBsb2FkOiAoKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgaXRlbXM6IFsnYWR2YW5jZScsICdiYXNpYyddLFxuICAgICAgICAgIHRvdGFsOiAyLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgYnlLZXk6ICgpID0+IHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICByZXNvbHZlKCdhZHZhbmNlJyk7XG4gICAgICB9KTtcbiAgICB9LFxuICB9KTtcblxuICByZXBseUhhbmRsZXIoKSB7XG4gICAgY29uc29sZS5sb2coJ2NsaWNrJyk7XG4gIH1cblxuICB2YWx1ZUNoYW5nZShlOiBhbnkpIHtcbiAgICBjb25zb2xlLmxvZyhlKTtcbiAgfVxuXG4gIHZhbGlkYXRlRm4gPSAodmFsOiBzdHJpbmcpID0+IHtcbiAgICBsZXQgaXNWYWxpZCA9IHRydWU7XG5cbiAgICBpZiAoIXZhbCB8fCB2YWwgPT09ICc8cD48YnI+PC9wPicpIHtcbiAgICAgIGlzVmFsaWQgPSBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHJ1bGU6ICdjYWxsYmFjaycsXG4gICAgICByZXN1bHQ6IGlzVmFsaWQsXG4gICAgICBtZXNzYWdlOiBpc1ZhbGlkID8gJycgOiAnUGxlYXNlIGZpbGwgdGhlIGNvbnRlbnQnLFxuICAgICAgdmFsdWU6IHZhbCxcbiAgICB9O1xuICB9O1xuXG4gIHN1Ym1pdENvbW1lbnQoKSB7XG4gICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgIGNvbnRlbnQ6ICdUaGlzIGlzIENvbnRlbnQnLFxuICAgICAgY29udGVudFR5cGU6ICd0ZXh0JyxcbiAgICAgIHJvb21UeXBlOiAnZGVmYXVsdCcsXG4gICAgICBlbnRpdHlJZDogJ2luc3BlY3Rpb24udmVoaWNsZScsXG4gICAgICBpbnN0YW5jZUlkOiAnYTk2ZDJhNjMtYTMwNC0wZGE2LTEyMzEtM2ExNTJhOTllZmQ0JyxcbiAgICAgIGlzUHJpdmF0ZTogZmFsc2UsXG4gICAgICBpc0FyY2hpdmVkOiB0cnVlLFxuICAgICAgbWVtYmVyczogW10sXG4gICAgfTtcblxuICAgIHRoaXMuY29tbWVudFNlcnZpY2UucG9zdENvbW1lbnQocGF5bG9hZCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1tdC0yXCI+XG4gIDxheC1jb21tZW50LXZpZXcgY2xhc3M9XCJheC1iZy1zdXJmYWNlXCI+XG4gICAgPGF4LWNvbW1lbnQtaXRlbT5cbiAgICAgIDxheC1hdmF0YXIgW2NvbG9yXT1cImF2YXRhck9wdGlvbnMoKS5jb2xvclwiIFtsb29rXT1cImF2YXRhck9wdGlvbnMoKS5sb29rXCI+XG4gICAgICAgIDxheC1pbWFnZSBzcmM9XCJodHRwczovL2kucHJhdmF0YXIuY2MvMzAwXCI+PC9heC1pbWFnZT5cbiAgICAgIDwvYXgtYXZhdGFyPlxuICAgICAgPGF4LXRpdGxlPk1hdGluPC9heC10aXRsZT5cbiAgICAgIDxheC1jb250ZW50PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0IGNvbnNlY3RldHVyIGFkaXBpc2ljaW5nIGVsaXQuIEl0YXF1ZSwgbW9sbGl0aWEuPC9heC1jb250ZW50PlxuICAgICAgPGF4LWNvbW1lbnQtbGlrZSBbbGlrZWRdPVwiZmFsc2VcIj4yPC9heC1jb21tZW50LWxpa2U+XG4gICAgICA8YXgtY29tbWVudC1yZXBseT40PC9heC1jb21tZW50LXJlcGx5PlxuICAgICAgPGF4LWNvbW1lbnQtcmVwbHktdGV4dCAoY2xpY2spPVwicmVwbHlIYW5kbGVyKClcIj48L2F4LWNvbW1lbnQtcmVwbHktdGV4dD5cblxuICAgICAgPGF4LWNvbW1lbnQtaXRlbT5cbiAgICAgICAgPGF4LWF2YXRhciBbY29sb3JdPVwiYXZhdGFyT3B0aW9ucygpLmNvbG9yXCIgW2xvb2tdPVwiYXZhdGFyT3B0aW9ucygpLmxvb2tcIj5cbiAgICAgICAgICA8YXgtaW1hZ2Ugc3JjPVwiaHR0cHM6Ly9pLnByYXZhdGFyLmNjLzMwMFwiPjwvYXgtaW1hZ2U+XG4gICAgICAgIDwvYXgtYXZhdGFyPlxuICAgICAgICA8YXgtdGl0bGU+TWV5c2E8L2F4LXRpdGxlPlxuICAgICAgICA8YXgtY29udGVudD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCBjb25zZWN0ZXR1ciBhZGlwaXNpY2luZyBlbGl0LiBJdGFxdWUsIG1vbGxpdGlhLjwvYXgtY29udGVudD5cbiAgICAgICAgPGF4LWNvbW1lbnQtbGlrZSBbbGlrZWRdPVwidHJ1ZVwiPjQ8L2F4LWNvbW1lbnQtbGlrZT5cbiAgICAgICAgPGF4LWNvbW1lbnQtcmVwbHk+MzwvYXgtY29tbWVudC1yZXBseT5cbiAgICAgICAgPGF4LWNvbW1lbnQtcmVwbHktdGV4dCAoY2xpY2spPVwicmVwbHlIYW5kbGVyKClcIj48L2F4LWNvbW1lbnQtcmVwbHktdGV4dD5cbiAgICAgIDwvYXgtY29tbWVudC1pdGVtPlxuICAgIDwvYXgtY29tbWVudC1pdGVtPlxuICA8L2F4LWNvbW1lbnQtdmlldz5cblxuICA8YXgtZm9ybT5cbiAgICA8YXgtZm9ybS1maWVsZD5cbiAgICAgIDxheC13eXNpd3lnLWNvbnRhaW5lciBbbG9va109XCJ3eXNpd3lnT3B0aW9ucygpLmxvb2tcIiAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZSgkZXZlbnQpXCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiPlxuICAgICAgICA8YXgtd3lzaXd5Zy12aWV3IGNsYXNzPVwiYXgtbWluLWgtMjhcIj48L2F4LXd5c2l3eWctdmlldz5cbiAgICAgICAgPGF4LXd5c2l3eWctdG9vbGJhcj5cbiAgICAgICAgICA8YXgtd3lzaXd5Zy1oaXN0b3J5PjwvYXgtd3lzaXd5Zy1oaXN0b3J5PlxuICAgICAgICAgIDxheC13eXNpd3lnLWZvbnQtc3R5bGU+PC9heC13eXNpd3lnLWZvbnQtc3R5bGU+XG4gICAgICAgICAgPGF4LXd5c2l3eWctY29sb3JzPjwvYXgtd3lzaXd5Zy1jb2xvcnM+XG4gICAgICAgICAgPGF4LXd5c2l3eWctbGlzdD48L2F4LXd5c2l3eWctbGlzdD5cbiAgICAgICAgICA8YXgtd3lzaXd5Zy1hbGlnbm1lbnQ+PC9heC13eXNpd3lnLWFsaWdubWVudD5cbiAgICAgICAgICA8YXgtd3lzaXd5Zy1pbnNlcnQ+PC9heC13eXNpd3lnLWluc2VydD5cbiAgICAgICAgICA8YXgtc3VmZml4PlxuICAgICAgICAgICAgPGF4LWJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY29sb3I9XCJwcmltYXJ5XCIgdGV4dD1cIlNlbmRcIiAob25DbGljayk9XCJzdWJtaXRDb21tZW50KClcIj48L2F4LWJ1dHRvblxuICAgICAgICAgID48L2F4LXN1ZmZpeD5cbiAgICAgICAgPC9heC13eXNpd3lnLXRvb2xiYXI+XG4gICAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgcnVsZT1cImNhbGxiYWNrXCIgW29wdGlvbnNdPVwieyB2YWxpZGF0ZTogdmFsaWRhdGVGbiB9XCI+PC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgICA8L2F4LXd5c2l3eWctY29udGFpbmVyPlxuICAgIDwvYXgtZm9ybS1maWVsZD5cbiAgPC9heC1mb3JtPlxuPC9kaXY+XG4iXX0=
|
|
284
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1saXN0LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvZW50aXR5LWxheW91dHMvZW50aXR5LW1hc3Rlci1zaW5nbGUtdmlldy9jb21tZW50cy9jb21tZW50LWxpc3Qtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvbGF5b3V0cy9lbnRpdHktbGF5b3V0cy9lbnRpdHktbWFzdGVyLXNpbmdsZS12aWV3L2NvbW1lbnRzL2NvbW1lbnQtbGlzdC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQStCLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVB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cnQgeyBBWENvbW1lbnRNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbWVudCc7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYV3lzaXd5Z0NvbnRhaW5lckNvbXBvbmVudCwgQVhXeXNpd3lnTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3d5c2l3eWcnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIHNpZ25hbCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBBWEF2YXRhck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdmF0YXInO1xuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYU3R5bGVMb29rVHlwZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RpYWxvZyc7XG5pbXBvcnQgeyBBWERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEFYRHJvcGRvd25CdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZHJvcGRvd24tYnV0dG9uJztcbmltcG9ydCB7IEFYRm9ybU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9mb3JtJztcbmltcG9ydCB7IEFYSW1hZ2VNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvaW1hZ2UnO1xuaW1wb3J0IHsgQVhMYWJlbE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sYWJlbCc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWFBvcHVwQ29uZmlnLCBBWFBvcHVwU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3B1cCc7XG5pbXBvcnQgeyBBWFNlbGVjdEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zZWxlY3QtYm94JztcbmltcG9ydCB7IEFYVGV4dEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90ZXh0LWJveCc7XG5pbXBvcnQgeyBBWFRvYXN0U2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90b2FzdCc7XG5pbXBvcnQgeyBBWFBIdG1sVXRpbHMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQQ29tbWVudExvb2t1cFBvcHVwIH0gZnJvbSAnLi9jb21tZW50LWxvb2t1cC1wb3B1cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhQQ29tbWVudFNlcnZpY2UgfSBmcm9tICcuL2NvbW1lbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQQ29tbWVudCwgQVhQTGlrZVJlcXVlc3QsIEFYUFBvc3RSZXF1ZXN0IH0gZnJvbSAnLi9jb21tZW50cy50eXBlJztcbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1saXN0LXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzZWxlY3RvcjogJ2F4cC1jb21tZW50LWxpc3QtdmlldycsXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYQ29tbWVudE1vZHVsZSxcbiAgICBBWFd5c2l3eWdNb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhBdmF0YXJNb2R1bGUsXG4gICAgQVhJbWFnZU1vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gICAgQVhMb2FkaW5nTW9kdWxlLFxuICAgIEFYRHJvcGRvd25CdXR0b25Nb2R1bGUsXG4gICAgQVhEcm9wZG93bk1vZHVsZSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc3R5bGVzOiBgYXgtd3lzaXd5Zy1jb250YWluZXJ7XG4gICAgLmF4LWVycm9yLW1lc3NhZ2V7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICB9XG4gIH1gLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQVhQQ29tbWVudExpc3RWaWV3Q29tcG9uZW50IHtcbiAgY29tbWVudENvbnRlbnQgPSBzaWduYWwoJycpO1xuICBoYXNDb29sZG93biA9IHNpZ25hbChmYWxzZSk7XG4gIGlzU3VibWl0dGluZyA9IHNpZ25hbChmYWxzZSk7XG4gIGlzUmVwbHlpbmdNb2RlID0gc2lnbmFsKGZhbHNlKTtcbiAgaXNFZGl0aW5nTW9kZSA9IHNpZ25hbChmYWxzZSk7XG4gIGZhaWxlZEltYWdlSWRzID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XG4gIGFjdGl2ZVJlcGx5Q29tbWVudCA9IHNpZ25hbDx1bmRlZmluZWQgfCBBWFBDb21tZW50Pih1bmRlZmluZWQpO1xuICBhY3RpdmVFZGl0Q29tbWVudCA9IHNpZ25hbDx1bmRlZmluZWQgfCBBWFBDb21tZW50Pih1bmRlZmluZWQpO1xuICB3eXNpd3lnRWRpdG9yID0gdmlld0NoaWxkLnJlcXVpcmVkPEFYV3lzaXd5Z0NvbnRhaW5lckNvbXBvbmVudD4oJ3cnKTtcblxuICBwcml2YXRlIGNvbW1lbnRTZXJ2aWNlID0gaW5qZWN0KEFYUENvbW1lbnRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gIHByaXZhdGUgcG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgcHJpdmF0ZSB0b2FzdFNlcnZpY2UgPSBpbmplY3QoQVhUb2FzdFNlcnZpY2UpO1xuICBwcml2YXRlIGRpYWxvZ1NlcnZpY2UgPSBpbmplY3QoQVhEaWFsb2dTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBodG1sVXRpbHMgPSBpbmplY3QoQVhQSHRtbFV0aWxzKTtcbiAgcHJpdmF0ZSByZWFkb25seSByb3V0ZVBhcmFtcyA9IHRoaXMucm91dGUuc25hcHNob3Q7XG4gIHByaXZhdGUgcGF5bG9hZCA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgcm9vbVR5cGU6ICdkZWZhdWx0JyxcbiAgICBlbnRpdHlJZDogdGhpcy5yb3V0ZVBhcmFtcy5wYXJhbXM/LlsnbW9kdWxlJ10gKyAnLicgKyB0aGlzLnJvdXRlUGFyYW1zLnBhcmFtcz8uWydlbnRpdHknXSxcbiAgICBpbnN0YW5jZUlkOiB0aGlzLnJvdXRlUGFyYW1zLnBhcmFtcz8uWydpZCddLFxuICB9KSk7XG5cbiAgcHJvdGVjdGVkIGNvbW1lbnRzID0gc2lnbmFsPEFYUENvbW1lbnRbXT4oW10pO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbW1lbnRzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgd3lzaXd5Z09wdGlvbnMgPSBzaWduYWw8e1xuICAgIGxvb2s6IEFYU3R5bGVMb29rVHlwZTtcbiAgfT4oe1xuICAgIGxvb2s6ICdub25lJyxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGF2YXRhckNvbmZpZyA9IHNpZ25hbDx7XG4gICAgY29sb3I6IHN0cmluZztcbiAgICBsb29rOiAnc2hhcnAnIHwgJ3NvZnQnIHwgJ3JvdW5kZWQnO1xuICAgIHR5cGU6IHN0cmluZztcbiAgfT4oe1xuICAgIGNvbG9yOiAncHJpbWFyeScsXG4gICAgbG9vazogJ3JvdW5kZWQnLFxuICAgIHR5cGU6ICdzb2xpZCcsIC8vICdpbWFnZScgfCAndGV4dCcgfCAnaWNvbicgfCAnZGVmYXVsdCdcbiAgfSk7XG5cbiAgdmFsaWRhdGVDb250ZW50ID0gKGNvbnRlbnQ6IHN0cmluZykgPT4ge1xuICAgIGxldCBpc1ZhbGlkID0gdHJ1ZTtcblxuICAgIGlmICghY29udGVudCB8fCBjb250ZW50ID09PSAnPHA+PGJyPjwvcD4nKSB7XG4gICAgICBpc1ZhbGlkID0gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBydWxlOiAnY2FsbGJhY2snLFxuICAgICAgcmVzdWx0OiBpc1ZhbGlkLFxuICAgICAgbWVzc2FnZTogaXNWYWxpZCA/ICcnIDogJ1BsZWFzZSBmaWxsIHRoZSBjb250ZW50JyxcbiAgICAgIHZhbHVlOiBjb250ZW50LFxuICAgIH07XG4gIH07XG5cbiAgc2FuaXRpemVIdG1sKGh0bWxDb250ZW50OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odG1sVXRpbHMuZ2V0U2FmZUhUTUxmcm9tSFRNTChodG1sQ29udGVudCk7XG4gIH1cblxuICBoYW5kbGVJbWFnZUVycm9yKGltYWdlSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZmFpbGVkSW1hZ2VJZHMudXBkYXRlKChpZHMpID0+IFsuLi5pZHMsIGltYWdlSWRdKTtcbiAgfVxuXG4gIGNoZWNrSW1hZ2VFeGlzdHMoaW1hZ2VJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmZhaWxlZEltYWdlSWRzKCkuaW5jbHVkZXMoaW1hZ2VJZCk7XG4gIH1cblxuICBleHRyYWN0SW5pdGlhbHMobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB3b3JkcyA9IG5hbWUuc3BsaXQoJyAnKTtcbiAgICBjb25zdCBpbml0aWFscyA9IHdvcmRzLm1hcCgod29yZCkgPT4gd29yZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSk7XG4gICAgcmV0dXJuIGluaXRpYWxzLmpvaW4oJycpO1xuICB9XG5cbiAgYXN5bmMgbG9hZENvbW1lbnRzKCkge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jb21tZW50U2VydmljZS5nZXQodGhpcy5wYXlsb2FkKCkpO1xuICAgIHRoaXMuY29tbWVudHMuc2V0KHJlc3BvbnNlLml0ZW1zKTtcbiAgfVxuXG4gIGFzeW5jIGluaXRpYXRlRWRpdENvbW1lbnQoY29tbWVudDogQVhQQ29tbWVudCkge1xuICAgIHRoaXMuaXNSZXBseWluZ01vZGUuc2V0KGZhbHNlKTtcbiAgICB0aGlzLmFjdGl2ZVJlcGx5Q29tbWVudC5zZXQodW5kZWZpbmVkKTtcbiAgICB0aGlzLmlzRWRpdGluZ01vZGUuc2V0KHRydWUpO1xuICAgIHRoaXMuYWN0aXZlRWRpdENvbW1lbnQuc2V0KGNvbW1lbnQpO1xuICAgIHRoaXMuY29tbWVudENvbnRlbnQuc2V0KGNvbW1lbnQuY29udGVudCk7XG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgncWwtZWRpdG9yJylbMF0uaW5uZXJIVE1MID0gY29tbWVudC5jb250ZW50O1xuICAgIHRoaXMud3lzaXd5Z0VkaXRvcigpLmdldEhvc3RFbGVtZW50KCkuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcsIGJsb2NrOiAnc3RhcnQnIH0pO1xuICB9XG5cbiAgYXN5bmMgaW5pdGlhdGVSZXBseUNvbW1lbnQoY29tbWVudDogQVhQQ29tbWVudCkge1xuICAgIHRoaXMuaXNFZGl0aW5nTW9kZS5zZXQoZmFsc2UpO1xuICAgIHRoaXMuYWN0aXZlRWRpdENvbW1lbnQuc2V0KHVuZGVmaW5lZCk7XG4gICAgdGhpcy5pc1JlcGx5aW5nTW9kZS5zZXQodHJ1ZSk7XG4gICAgdGhpcy5hY3RpdmVSZXBseUNvbW1lbnQuc2V0KGNvbW1lbnQpO1xuICAgIHRoaXMud3lzaXd5Z0VkaXRvcigpLmdldEhvc3RFbGVtZW50KCkuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcsIGJsb2NrOiAnc3RhcnQnIH0pO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlQ29tbWVudChjb21tZW50OiBBWFBDb21tZW50KSB7XG4gICAgY29uc3QgZGlhbG9nID0gdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW4oe1xuICAgICAgaWNvbjogJ2ZhLXJlZ3VsYXIgZmEtd2FybmluZycsXG4gICAgICBjb250ZW50OiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGNvbW1lbnQ/JyxcbiAgICAgIHRpdGxlOiAnRGVsZXRlIENvbW1lbnQnLFxuICAgICAgdHlwZTogJ2RhbmdlcicsXG4gICAgICBvcmllbnRhdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgYnV0dG9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgdGV4dDogJ0RlbGV0ZScsXG4gICAgICAgICAgY29sb3I6ICdkYW5nZXInLFxuICAgICAgICAgIG9uQ2xpY2s6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGUuaGFuZGxlZCA9IHRydWU7XG4gICAgICAgICAgICBlLnNvdXJjZS50ZXh0ID0gJ0RlbGV0aW5nLi4uJztcbiAgICAgICAgICAgIGUuc291cmNlLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIGUuc291cmNlLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5jb21tZW50U2VydmljZS5kZWxldGUoeyBpZDogY29tbWVudC5pZCB9KTtcbiAgICAgICAgICAgICAgdGhpcy5yZW1vdmVDb21tZW50QnlJZChjb21tZW50LmlkKTtcbiAgICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ0NvbW1lbnQgZGVsZXRlZCBzdWNjZXNzZnVsbHkuJyxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3N1Y2Nlc3MnLFxuICAgICAgICAgICAgICAgIGxvY2F0aW9uOiAnYm90dG9tLWNlbnRlcicsXG4gICAgICAgICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgICAgICAgICAgdGltZU91dDogMzAwMCxcbiAgICAgICAgICAgICAgICB0aW1lT3V0UHJvZ3Jlc3M6IHRydWUsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBkaWFsb2cuY2xvc2UoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnNob3coe1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgPyBlcnJvciA6ICdGYWlsZWQgdG8gZGVsZXRlIGNvbW1lbnQhJyxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICAgICAgICAgICAgbG9jYXRpb246ICdib3R0b20tY2VudGVyJyxcbiAgICAgICAgICAgICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICB0aW1lT3V0OiAzMDAwLFxuICAgICAgICAgICAgICAgIHRpbWVPdXRQcm9ncmVzczogdHJ1ZSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRleHQ6ICdDYW5jZWwnLFxuICAgICAgICAgIGNvbG9yOiAnZ2hvc3QnLFxuICAgICAgICAgIGF1dG9mb2N1czogdHJ1ZSxcbiAgICAgICAgICBvbkNsaWNrOiAoZSkgPT4ge1xuICAgICAgICAgICAgZGlhbG9nLmNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBjbG9zZUJ1dHRvbjogZmFsc2UsXG4gICAgfSk7XG4gIH1cblxuICByZXNldFJlcGx5RWRpdFN0YXRlKCkge1xuICAgIHRoaXMuaXNFZGl0aW5nTW9kZS5zZXQoZmFsc2UpO1xuICAgIHRoaXMuYWN0aXZlRWRpdENvbW1lbnQuc2V0KHVuZGVmaW5lZCk7XG4gICAgdGhpcy5pc1JlcGx5aW5nTW9kZS5zZXQoZmFsc2UpO1xuICAgIHRoaXMuYWN0aXZlUmVwbHlDb21tZW50LnNldCh1bmRlZmluZWQpO1xuICB9XG5cbiAgYXN5bmMgdG9nZ2xlTGlrZUNvbW1lbnQoY29tbWVudDogYW55KSB7XG4gICAgdGhpcy51cGRhdGVMaWtlU3RhdHVzKGNvbW1lbnQuaWQpO1xuICAgIGNvbnN0IHBheWxvYWQ6IEFYUExpa2VSZXF1ZXN0ID0ge1xuICAgICAgbWVzc2FnZUlkOiBjb21tZW50LmlkLFxuICAgICAgdHlwZTogJ2xpa2UnLFxuICAgIH07XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuY29tbWVudFNlcnZpY2UubGlrZShwYXlsb2FkKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy51cGRhdGVMaWtlU3RhdHVzKGNvbW1lbnQuaWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlTGlrZVN0YXR1cyhjb21tZW50SWQ6IHN0cmluZykge1xuICAgIHRoaXMuY29tbWVudHMudXBkYXRlKChjb21tZW50c0xpc3QpID0+IHtcbiAgICAgIHJldHVybiBjb21tZW50c0xpc3QubWFwKChjb21tZW50KSA9PlxuICAgICAgICBjb21tZW50LmlkID09PSBjb21tZW50SWRcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgLi4uY29tbWVudCxcbiAgICAgICAgICAgICAgaXNMaWtlZDogIWNvbW1lbnQuaXNMaWtlZCxcbiAgICAgICAgICAgICAgcmVhY3Rpb25zQ291bnQ6IGNvbW1lbnQuaXNMaWtlZCA/IC0tY29tbWVudC5yZWFjdGlvbnNDb3VudCA6ICsrY29tbWVudC5yZWFjdGlvbnNDb3VudCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IGNvbW1lbnRcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUNvbW1lbnRCeUlkKGNvbW1lbnRJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb21tZW50cy51cGRhdGUoKGNvbW1lbnRzTGlzdCkgPT4gY29tbWVudHNMaXN0LmZpbHRlcigoY29tbWVudCkgPT4gY29tbWVudC5pZCAhPT0gY29tbWVudElkKSk7XG4gIH1cblxuICBhc3luYyBzdWJtaXRQcml2YXRlQ29tbWVudCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMudmFsaWRhdGVDb250ZW50KHRoaXMuY29tbWVudENvbnRlbnQoKSkucmVzdWx0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcG9wdXBDb25maWc6IEFYUG9wdXBDb25maWcgPSB7XG4gICAgICBoZWFkZXI6IHRydWUsXG4gICAgICBzaXplOiAnbWQnLFxuICAgICAgZHJhZ2dhYmxlOiB0cnVlLFxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgICAgIGNsb3NlT25CYWNrZHJvcENsaWNrOiBmYWxzZSxcbiAgICB9O1xuICAgIGNvbnN0IHBvcHVwID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3BlbihBWFBDb21tZW50TG9va3VwUG9wdXAsIHBvcHVwQ29uZmlnKTtcblxuICAgIGNvbnN0IHBheWxvYWQ6IEFYUFBvc3RSZXF1ZXN0ID0ge1xuICAgICAgLi4udGhpcy5wYXlsb2FkKCksXG4gICAgICBjb250ZW50OiB0aGlzLmNvbW1lbnRDb250ZW50KCksXG4gICAgICBjb250ZW50VHlwZTogJ3RleHQnLFxuICAgICAgaXNQcml2YXRlOiBmYWxzZSxcbiAgICAgIHJlcGx5SWQ6IHRoaXMuYWN0aXZlUmVwbHlDb21tZW50KCk/LmlkLFxuICAgICAgbWVtYmVyczogW3BvcHVwLmRhdGE/LmRhdGE/Lmxvb2t1cF0sXG4gICAgfTtcbiAgICB0aGlzLmlzU3VibWl0dGluZy5zZXQodHJ1ZSk7XG4gICAgdGhpcy5oYXNDb29sZG93bi5zZXQodHJ1ZSk7XG4gICAgYXdhaXQgdGhpcy5jb21tZW50U2VydmljZS5wb3N0KHBheWxvYWQpO1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jb21tZW50U2VydmljZS5nZXQodGhpcy5wYXlsb2FkKCkpO1xuICAgIHRoaXMuY29tbWVudHMuc2V0KHJlc3BvbnNlLml0ZW1zKTtcbiAgICB0aGlzLmNvbW1lbnRDb250ZW50LnNldCgnJyk7XG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgncWwtZWRpdG9yJylbMF0uaW5uZXJIVE1MID0gJyc7XG4gICAgdGhpcy5pc1N1Ym1pdHRpbmcuc2V0KGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuaGFzQ29vbGRvd24uc2V0KGZhbHNlKTtcbiAgICB9LCAxMDAwKTtcbiAgfVxuXG4gIGFzeW5jIHN1Ym1pdENvbW1lbnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLnZhbGlkYXRlQ29udGVudCh0aGlzLmNvbW1lbnRDb250ZW50KCkpLnJlc3VsdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBwYXlsb2FkOiBBWFBQb3N0UmVxdWVzdCA9IHtcbiAgICAgIC4uLnRoaXMucGF5bG9hZCgpLFxuICAgICAgY29udGVudDogdGhpcy5jb21tZW50Q29udGVudCgpLFxuICAgICAgY29udGVudFR5cGU6ICd0ZXh0JyxcbiAgICAgIGlzUHJpdmF0ZTogZmFsc2UsXG4gICAgICByZXBseUlkOiB0aGlzLmFjdGl2ZVJlcGx5Q29tbWVudCgpPy5pZCxcbiAgICB9O1xuXG4gICAgdGhpcy5pc1N1Ym1pdHRpbmcuc2V0KHRydWUpO1xuICAgIHRoaXMuaGFzQ29vbGRvd24uc2V0KHRydWUpO1xuICAgIGF3YWl0IHRoaXMuY29tbWVudFNlcnZpY2UucG9zdChwYXlsb2FkKTtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY29tbWVudFNlcnZpY2UuZ2V0KHRoaXMucGF5bG9hZCgpKTtcbiAgICB0aGlzLmNvbW1lbnRzLnNldChyZXNwb25zZS5pdGVtcyk7XG4gICAgdGhpcy5jb21tZW50Q29udGVudC5zZXQoJycpO1xuICAgIGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ3FsLWVkaXRvcicpWzBdLmlubmVySFRNTCA9ICcnO1xuICAgIHRoaXMuaXNTdWJtaXR0aW5nLnNldChmYWxzZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmhhc0Nvb2xkb3duLnNldChmYWxzZSk7XG4gICAgfSwgMTAwMCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1tdC0yXCI+XG4gIDxheC1jb21tZW50LXZpZXcgY2xhc3M9XCJheC1iZy1zdXJmYWNlXCI+XG4gICAgQGZvcihjb21tZW50IG9mIGNvbW1lbnRzKCk7IHRyYWNrIGNvbW1lbnQuaWQpe1xuICAgIDxheC1jb21tZW50LWl0ZW0+XG4gICAgICA8YXgtYXZhdGFyIFtjb2xvcl09XCJhdmF0YXJDb25maWcoKS5jb2xvclwiIFtsb29rXT1cImF2YXRhckNvbmZpZygpLmxvb2tcIj5cbiAgICAgICAgQGlmKGNoZWNrSW1hZ2VFeGlzdHMoY29tbWVudC5pZCkgJiYgY29tbWVudC51c2VyLnBpY3R1cmUpe1xuICAgICAgICA8YXgtaW1hZ2UgKG9uRXJyb3IpPVwiaGFuZGxlSW1hZ2VFcnJvcihjb21tZW50LmlkKVwiIFtzcmNdPVwiY29tbWVudC51c2VyLnBpY3R1cmVcIj5cbiAgICAgICAgICA8YXgtbG9hZGluZz48L2F4LWxvYWRpbmc+XG4gICAgICAgIDwvYXgtaW1hZ2U+XG4gICAgICAgIH1AZWxzZXtcbiAgICAgICAgPGF4LXRleHQ+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC10ZXh0LWJhc2UgYXgtb3ZlcmZsb3ctaGlkZGVuXCI+e3tcbiAgICAgICAgICAgIGV4dHJhY3RJbml0aWFscyhjb21tZW50LnVzZXIuZmlyc3ROYW1lICsgJyAnICsgY29tbWVudC51c2VyLmxhc3ROYW1lKVxuICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICA8L2F4LXRleHQ+XG4gICAgICAgIH1cbiAgICAgIDwvYXgtYXZhdGFyPlxuICAgICAgPGF4LXRpdGxlPnt7IGNvbW1lbnQudXNlci5maXJzdE5hbWUgKyAnICcgKyBjb21tZW50LnVzZXIubGFzdE5hbWUgfX08L2F4LXRpdGxlPlxuICAgICAgPGF4LWNvbW1lbnQtbWVudS1vcHRpb25zPlxuICAgICAgICA8YXgtYnV0dG9uIGNsYXNzPVwiYXgtc21cIiBsb29rPVwiYmxhbmtcIiBjb2xvcj1cInNlY29uZGFyeVwiPlxuICAgICAgICAgIDxheC1pY29uIGljb249XCJheC1pY29uIGF4LWljb24tc29saWQgYXgtaWNvbi1tb3JlLWhvcml6b250YWxcIj48L2F4LWljb24+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgICAgIDxheC1kcm9wZG93bi1wYW5lbD5cbiAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW0tbGlzdD5cbiAgICAgICAgICAgIDxheC1idXR0b24taXRlbSB0ZXh0PVwiRWRpdFwiIGNvbG9yPVwic2Vjb25kYXJ5XCIgKGNsaWNrKT1cImluaXRpYXRlRWRpdENvbW1lbnQoY29tbWVudClcIj5cbiAgICAgICAgICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtc29saWQgZmEtZWRpdFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgPC9heC1wcmVmaXg+XG4gICAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtPlxuXG4gICAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW0gdGV4dD1cIkRlbGV0ZVwiIGNvbG9yPVwiZGFuZ2VyXCIgKGNsaWNrKT1cImRlbGV0ZUNvbW1lbnQoY29tbWVudClcIj5cbiAgICAgICAgICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtc29saWQgZmEtdHJhc2gtY2FuXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICAgIDwvYXgtYnV0dG9uLWl0ZW0+XG4gICAgICAgICAgPC9heC1idXR0b24taXRlbS1saXN0PlxuICAgICAgICA8L2F4LWRyb3Bkb3duLXBhbmVsPlxuICAgICAgPC9heC1jb21tZW50LW1lbnUtb3B0aW9ucz5cbiAgICAgIDxheC1jb250ZW50IFtpbm5lckhUTUxdPVwic2FuaXRpemVIdG1sKGNvbW1lbnQuY29udGVudClcIj48L2F4LWNvbnRlbnQ+XG4gICAgICA8YXgtY29tbWVudC1saWtlIChjbGljayk9XCJ0b2dnbGVMaWtlQ29tbWVudChjb21tZW50KVwiIFtsaWtlZF09XCJjb21tZW50LmlzTGlrZWRcIj5cbiAgICAgICAge3sgY29tbWVudC5yZWFjdGlvbnNDb3VudCB9fVxuICAgICAgPC9heC1jb21tZW50LWxpa2U+XG4gICAgICA8YXgtY29tbWVudC1yZXBseS10ZXh0IChjbGljayk9XCJpbml0aWF0ZVJlcGx5Q29tbWVudChjb21tZW50KVwiPjwvYXgtY29tbWVudC1yZXBseS10ZXh0PlxuICAgICAgQGZvcihyZXBseSBvZiBjb21tZW50LnJlcGxpZXM7IHRyYWNrIHJlcGx5LmlkKXtcbiAgICAgIDxheC1jb21tZW50LWl0ZW0+XG4gICAgICAgIEBpZihjaGVja0ltYWdlRXhpc3RzKHJlcGx5LmlkKSAmJiByZXBseT8udXNlcj8ucGljdHVyZSl7XG4gICAgICAgIDxheC1pbWFnZSAob25FcnJvcik9XCJoYW5kbGVJbWFnZUVycm9yKHJlcGx5LmlkKVwiIFtzcmNdPVwicmVwbHk/LnVzZXI/LnBpY3R1cmVcIj5cbiAgICAgICAgICA8YXgtbG9hZGluZz48L2F4LWxvYWRpbmc+XG4gICAgICAgIDwvYXgtaW1hZ2U+XG4gICAgICAgIH1AZWxzZXtcbiAgICAgICAgPGF4LXRleHQ+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC10ZXh0LWJhc2UgYXgtb3ZlcmZsb3ctaGlkZGVuXCI+e3tcbiAgICAgICAgICAgIGV4dHJhY3RJbml0aWFscyhyZXBseT8udXNlcj8uZmlyc3ROYW1lICsgJyAnICsgcmVwbHk/LnVzZXI/Lmxhc3ROYW1lKVxuICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICA8L2F4LXRleHQ+XG4gICAgICAgIH1cbiAgICAgICAgPGF4LXRpdGxlPnt7IChyZXBseT8udXNlcj8uZmlyc3ROYW1lID8/ICcnKSArICcgJyArIChyZXBseT8udXNlcj8ubGFzdE5hbWUgPz8gJycpIH19PC9heC10aXRsZT5cbiAgICAgICAgPGF4LWNvbnRlbnQgW2lubmVySFRNTF09XCJzYW5pdGl6ZUh0bWwocmVwbHkuY29udGVudClcIj48L2F4LWNvbnRlbnQ+XG4gICAgICAgIDxheC1jb21tZW50LWxpa2UgKGNsaWNrKT1cInRvZ2dsZUxpa2VDb21tZW50KHJlcGx5KVwiIFtsaWtlZF09XCJyZXBseS5pc0xpa2VkXCI+XG4gICAgICAgICAge3sgcmVwbHkucmVhY3Rpb25zQ291bnQgfX1cbiAgICAgICAgPC9heC1jb21tZW50LWxpa2U+XG4gICAgICAgIDxheC1jb21tZW50LXJlcGx5LXRleHQgKGNsaWNrKT1cImluaXRpYXRlUmVwbHlDb21tZW50KHJlcGx5KVwiPjwvYXgtY29tbWVudC1yZXBseS10ZXh0PlxuICAgICAgPC9heC1jb21tZW50LWl0ZW0+XG4gICAgICB9XG4gICAgPC9heC1jb21tZW50LWl0ZW0+XG4gICAgfSBAZW1wdHl7IH1cbiAgPC9heC1jb21tZW50LXZpZXc+XG5cbiAgPGF4LWZvcm0+XG4gICAgPGF4LWZvcm0tZmllbGQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtYm9yZGVyIGF4LW92ZXJmbG93LWhpZGRlbiBheC1yb3VuZGVkLWxnXCI+XG4gICAgICAgIEBpZihpc1JlcGx5aW5nTW9kZSgpIHx8IGlzRWRpdGluZ01vZGUoKSl7XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImF4LWZsZXggYXgtanVzdGlmeS1iZXR3ZWVuIGF4LWJvcmRlci1iIGF4LWJnLW9uLXN1cmZhY2UgYXgtcHgtNiBheC1weS00IGF4LXctZnVsbCBheC1pdGVtcy1jZW50ZXIgYXgtb3ZlcmZsb3ctaGlkZGVuIGF4LXRleHQtc20gYXgtbGVhZGluZy1ub25lXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWp1c3RpZnktc3RhcnQgYXgtYWxpZ24tbWlkZGxlXCI+XG4gICAgICAgICAgICA8aVxuICAgICAgICAgICAgICBbY2xhc3NdPVwiaXNSZXBseWluZ01vZGUoKSA/ICdmYS1yZXBseScgOiAnZmEtcGVuJ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwiZmEtc29saWQgYXgtdGV4dC1wcmltYXJ5LTUwMCBheC10ZXh0LTJ4bCBheC1tZS00XCJcbiAgICAgICAgICAgID48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMiBheC1qdXN0aWZ5LWJldHdlZW4gYXgtYWxpZ24tbWlkZGxlXCI+XG4gICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1wcmltYXJ5LTUwMFwiPlxuICAgICAgICAgICAgICAgIHt7IGlzUmVwbHlpbmdNb2RlKCkgPyAnUmVwbHkgdG8gJyA6ICdFZGl0IE1lc3NhZ2UnIH19XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC1mb250LWJvbGRcIj5cbiAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgIGlzUmVwbHlpbmdNb2RlKClcbiAgICAgICAgICAgICAgICAgICAgICA/IGFjdGl2ZVJlcGx5Q29tbWVudCgpPy51c2VyPy5maXJzdE5hbWUgKyAnICcgKyBhY3RpdmVSZXBseUNvbW1lbnQoKT8udXNlcj8ubGFzdE5hbWVcbiAgICAgICAgICAgICAgICAgICAgICA6ICcnXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJheC10cnVuY2F0ZVwiXG4gICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJcbiAgICAgICAgICAgICAgICAgIGlzUmVwbHlpbmdNb2RlKClcbiAgICAgICAgICAgICAgICAgICAgPyBzYW5pdGl6ZUh0bWwoYWN0aXZlUmVwbHlDb21tZW50KCk/LmNvbnRlbnQgPz8gJycpXG4gICAgICAgICAgICAgICAgICAgIDogc2FuaXRpemVIdG1sKGFjdGl2ZUVkaXRDb21tZW50KCk/LmNvbnRlbnQgPz8gJycpXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj48aSAoY2xpY2spPVwicmVzZXRSZXBseUVkaXRTdGF0ZSgpXCIgY2xhc3M9XCJmYS1zb2xpZCBheC10ZXh0LTJ4bCBmYS14bWFyayBheC1jdXJzb3ItcG9pbnRlclwiPjwvaT48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPGF4LXd5c2l3eWctY29udGFpbmVyICN3IFtsb29rXT1cInd5c2l3eWdPcHRpb25zKCkubG9va1wiIFsobmdNb2RlbCldPVwiY29tbWVudENvbnRlbnRcIj5cbiAgICAgICAgICA8YXgtd3lzaXd5Zy12aWV3IGNsYXNzPVwiYXgtbWluLWgtMjhcIj48L2F4LXd5c2l3eWctdmlldz5cbiAgICAgICAgICA8YXgtd3lzaXd5Zy10b29sYmFyPlxuICAgICAgICAgICAgPGF4LXd5c2l3eWctaGlzdG9yeT48L2F4LXd5c2l3eWctaGlzdG9yeT5cbiAgICAgICAgICAgIDxheC13eXNpd3lnLWZvbnQtc3R5bGU+PC9heC13eXNpd3lnLWZvbnQtc3R5bGU+XG4gICAgICAgICAgICA8YXgtd3lzaXd5Zy1jb2xvcnM+PC9heC13eXNpd3lnLWNvbG9ycz5cbiAgICAgICAgICAgIDxheC13eXNpd3lnLWxpc3Q+PC9heC13eXNpd3lnLWxpc3Q+XG4gICAgICAgICAgICA8YXgtd3lzaXd5Zy1hbGlnbm1lbnQ+PC9heC13eXNpd3lnLWFsaWdubWVudD5cbiAgICAgICAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgICAgICAgIDxheC1kcm9wZG93bi1idXR0b25cbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaGFzQ29vbGRvd24oKVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICBtb2RlPVwic3BsaXRcIlxuICAgICAgICAgICAgICAgIHRleHQ9XCJTZW5kXCJcbiAgICAgICAgICAgICAgICAob25DbGljayk9XCJzdWJtaXRDb21tZW50KClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgQGlmKGlzU3VibWl0dGluZygpKXsgPGF4LWxvYWRpbmc+PC9heC1sb2FkaW5nPiB9XG4gICAgICAgICAgICAgICAgPGF4LWJ1dHRvbi1pdGVtLWxpc3Q+XG4gICAgICAgICAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN1Ym1pdFByaXZhdGVDb21tZW50KClcIlxuICAgICAgICAgICAgICAgICAgICB0ZXh0PVwiU2VuZCBQcml2YXRlIC4uLlwiXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwcml2YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgZGF0YT1cInByaXZhdGVcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1yZWd1bGFyIGZhLXVzZXItc2VjcmV0XCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uLWl0ZW0+XG4gICAgICAgICAgICAgICAgPC9heC1idXR0b24taXRlbS1saXN0PlxuICAgICAgICAgICAgICA8L2F4LWRyb3Bkb3duLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgICAgIDwvYXgtd3lzaXd5Zy10b29sYmFyPlxuICAgICAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgcnVsZT1cImNhbGxiYWNrXCIgW29wdGlvbnNdPVwieyB2YWxpZGF0ZTogdmFsaWRhdGVDb250ZW50IH1cIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgICAgPC9heC13eXNpd3lnLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvYXgtZm9ybS1maWVsZD5cbiAgPC9heC1mb3JtPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { AXButtonModule } from '@acorex/components/button';
|
|
2
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
3
|
+
import { AXBasePageComponent } from '@acorex/components/page';
|
|
4
|
+
import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
|
|
5
|
+
import { Component } from '@angular/core';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@acorex/components/decorators";
|
|
8
|
+
import * as i2 from "@acorex/platform/layout/builder";
|
|
9
|
+
import * as i3 from "@acorex/components/button";
|
|
10
|
+
export class AXPCommentLookupPopup extends AXBasePageComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.lookupNode = {
|
|
14
|
+
name: 'lookup',
|
|
15
|
+
path: 'lookup',
|
|
16
|
+
type: 'lookup-editor',
|
|
17
|
+
options: {
|
|
18
|
+
entity: 'axoidc.users',
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
this.context = {};
|
|
22
|
+
}
|
|
23
|
+
handleClose() {
|
|
24
|
+
this.close({
|
|
25
|
+
result: true,
|
|
26
|
+
data: this.context,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPCommentLookupPopup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPCommentLookupPopup, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<axp-widgets-container class="ax-flex ax-flex-col ax-gap-2 ax-p-4" [(context)]="context">
|
|
31
|
+
<div class="ax-m-5"><axp-widget-renderer [node]="lookupNode" [mode]="'edit'"> </axp-widget-renderer></div>
|
|
32
|
+
</axp-widgets-container>
|
|
33
|
+
|
|
34
|
+
<ax-footer>
|
|
35
|
+
<ax-suffix>
|
|
36
|
+
<ax-button text="Accept & Send" color="primary" (onClick)="handleClose()"></ax-button>
|
|
37
|
+
</ax-suffix>
|
|
38
|
+
</ax-footer>`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i2.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "variables", "functions"], outputs: ["onChanged", "contextChange"] }, { kind: "component", type: i2.AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: ["node", "mode", "parentNode", "index"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }] }); }
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPCommentLookupPopup, decorators: [{
|
|
41
|
+
type: Component,
|
|
42
|
+
args: [{
|
|
43
|
+
template: `<axp-widgets-container class="ax-flex ax-flex-col ax-gap-2 ax-p-4" [(context)]="context">
|
|
44
|
+
<div class="ax-m-5"><axp-widget-renderer [node]="lookupNode" [mode]="'edit'"> </axp-widget-renderer></div>
|
|
45
|
+
</axp-widgets-container>
|
|
46
|
+
|
|
47
|
+
<ax-footer>
|
|
48
|
+
<ax-suffix>
|
|
49
|
+
<ax-button text="Accept & Send" color="primary" (onClick)="handleClose()"></ax-button>
|
|
50
|
+
</ax-suffix>
|
|
51
|
+
</ax-footer>`,
|
|
52
|
+
imports: [AXDecoratorModule, AXPLayoutBuilderModule, AXButtonModule],
|
|
53
|
+
standalone: true,
|
|
54
|
+
}]
|
|
55
|
+
}] });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1sb29rdXAtcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvZW50aXR5LWxheW91dHMvZW50aXR5LW1hc3Rlci1zaW5nbGUtdmlldy9jb21tZW50cy9jb21tZW50LWxvb2t1cC1wb3B1cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxzQkFBc0IsRUFBaUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQWUxQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsbUJBQW1CO0lBYjlEOztRQWNZLGVBQVUsR0FBa0I7WUFDcEMsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxlQUFlO1lBQ3JCLE9BQU8sRUFBRTtnQkFDUCxNQUFNLEVBQUUsY0FBYzthQUN2QjtTQUNGLENBQUM7UUFDRixZQUFPLEdBQUcsRUFBRSxDQUFDO0tBUWQ7SUFOQyxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNULE1BQU0sRUFBRSxJQUFJO1lBQ1osSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBaEJVLHFCQUFxQjtrR0FBckIscUJBQXFCLCtGQVp0Qjs7Ozs7Ozs7aUJBUUssMkRBQ0wsaUJBQWlCLHNQQUFFLHNCQUFzQixvV0FBRSxjQUFjOzsyRkFHeEQscUJBQXFCO2tCQWJqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRTs7Ozs7Ozs7aUJBUUs7b0JBQ2YsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsY0FBYyxDQUFDO29CQUNwRSxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEJhc2VQYWdlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BhZ2UnO1xuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSwgQVhQV2lkZ2V0Tm9kZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYDxheHAtd2lkZ2V0cy1jb250YWluZXIgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0yIGF4LXAtNFwiIFsoY29udGV4dCldPVwiY29udGV4dFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LW0tNVwiPjxheHAtd2lkZ2V0LXJlbmRlcmVyIFtub2RlXT1cImxvb2t1cE5vZGVcIiBbbW9kZV09XCInZWRpdCdcIj4gPC9heHAtd2lkZ2V0LXJlbmRlcmVyPjwvZGl2PlxuICAgIDwvYXhwLXdpZGdldHMtY29udGFpbmVyPlxuXG4gICAgPGF4LWZvb3Rlcj5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC1idXR0b24gdGV4dD1cIkFjY2VwdCAmIFNlbmRcIiBjb2xvcj1cInByaW1hcnlcIiAob25DbGljayk9XCJoYW5kbGVDbG9zZSgpXCI+PC9heC1idXR0b24+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICA8L2F4LWZvb3Rlcj5gLFxuICBpbXBvcnRzOiBbQVhEZWNvcmF0b3JNb2R1bGUsIEFYUExheW91dEJ1aWxkZXJNb2R1bGUsIEFYQnV0dG9uTW9kdWxlXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQQ29tbWVudExvb2t1cFBvcHVwIGV4dGVuZHMgQVhCYXNlUGFnZUNvbXBvbmVudCB7XG4gIHByb3RlY3RlZCBsb29rdXBOb2RlOiBBWFBXaWRnZXROb2RlID0ge1xuICAgIG5hbWU6ICdsb29rdXAnLFxuICAgIHBhdGg6ICdsb29rdXAnLFxuICAgIHR5cGU6ICdsb29rdXAtZWRpdG9yJyxcbiAgICBvcHRpb25zOiB7XG4gICAgICBlbnRpdHk6ICdheG9pZGMudXNlcnMnLFxuICAgIH0sXG4gIH07XG4gIGNvbnRleHQgPSB7fTtcblxuICBoYW5kbGVDbG9zZSgpIHtcbiAgICB0aGlzLmNsb3NlKHtcbiAgICAgIHJlc3VsdDogdHJ1ZSxcbiAgICAgIGRhdGE6IHRoaXMuY29udGV4dCxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class AXPCommentService {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL2VudGl0eS1sYXlvdXRzL2VudGl0eS1tYXN0ZXItc2luZ2xlLXZpZXcvY29tbWVudHMvY29tbWVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLE9BQWdCLGlCQUFpQjtDQVF0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYUENvbW1lbnRSZXNwb25zZSxcbiAgQVhQRGVsZXRlUmVxdWVzdCxcbiAgQVhQR2V0UmVxdWVzdCxcbiAgQVhQTGlrZVJlcXVlc3QsXG4gIEFYUFBvc3RSZXF1ZXN0LFxuICBBWFBQdXRSZXF1ZXN0LFxufSBmcm9tICcuL2NvbW1lbnRzLnR5cGUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQQ29tbWVudFNlcnZpY2Uge1xuICBhYnN0cmFjdCBnZXQocGF5bG9hZDogQVhQR2V0UmVxdWVzdCk6IFByb21pc2U8QVhQQ29tbWVudFJlc3BvbnNlPjtcbiAgYWJzdHJhY3QgcG9zdChwYXlsb2FkOiBBWFBQb3N0UmVxdWVzdCk6IFByb21pc2U8c3RyaW5nPjtcbiAgYWJzdHJhY3QgZGVsZXRlKHBheWxvYWQ6IEFYUERlbGV0ZVJlcXVlc3QpOiBQcm9taXNlPHZvaWQ+O1xuICBhYnN0cmFjdCBwdXQocGF5bG9hZDogQVhQUHV0UmVxdWVzdCk6IFByb21pc2U8c3RyaW5nPjtcbiAgYWJzdHJhY3QgbGlrZShwYXlsb2FkOiBBWFBMaWtlUmVxdWVzdCk6IFByb21pc2U8c3RyaW5nPjtcbiAgLy8gYWJzdHJhY3QgZGVsZXRlQ29tbWVudChjb21tZW50SWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD47XG4gIC8vIGFic3RyYWN0IGVkaXRDb21tZW50KHBheWxvYWQ6IEFYUENvbW1lbnQpOiBQcm9taXNlPEFYUENvbW1lbnQ+O1xufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL2VudGl0eS1sYXlvdXRzL2VudGl0eS1tYXN0ZXItc2luZ2xlLXZpZXcvY29tbWVudHMvY29tbWVudHMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBBWFBDb21tZW50VmlzaWJsZU1lc3NhZ2Uge1xuICBpZDogc3RyaW5nO1xuICBtZW1iZXJJZDogc3RyaW5nO1xuICBtZW1iZXJUeXBlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQQ29tbWVudFN0YXR1c01lc3NhZ2Uge1xuICBpZDogc3RyaW5nO1xuICBtZW1iZXJJZDogc3RyaW5nO1xuICBtZW1iZXJUeXBlOiBzdHJpbmc7XG4gIHN0YXR1czogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUENvbW1lbnRIaXN0b3J5TWVzc2FnZSB7XG4gIGlkOiBzdHJpbmc7XG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgY29udGVudFR5cGU6IHN0cmluZztcbiAgaXNQcml2YXRlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUENvbW1lbnRVc2VyRGV0YWlscyB7XG4gIGlkOiBzdHJpbmc7XG4gIHVzZXJOYW1lOiBzdHJpbmc7XG4gIGZpcnN0TmFtZTogc3RyaW5nO1xuICBsYXN0TmFtZTogc3RyaW5nO1xuICBwaWN0dXJlOiBzdHJpbmcgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUENvbW1lbnQge1xuICBjb250ZW50OiBzdHJpbmc7XG4gIGNvbnRlbnRUeXBlOiBzdHJpbmc7XG4gIG1lbWJlcklkOiBzdHJpbmc7XG4gIG1lbWJlclR5cGU6IHN0cmluZztcbiAgcm9vbUlkOiBzdHJpbmc7XG4gIGlzUHJpdmF0ZTogYm9vbGVhbjtcbiAgcmVwbHlJZDogc3RyaW5nIHwgbnVsbDtcbiAgbWVzc2FnZVZpc2libGVzOiBBWFBDb21tZW50VmlzaWJsZU1lc3NhZ2VbXTtcbiAgbWVzc2FnZVN0YXR1c2VzOiBBWFBDb21tZW50U3RhdHVzTWVzc2FnZVtdO1xuICBtZXNzYWdlSGlzdG9yaWVzOiBBWFBDb21tZW50SGlzdG9yeU1lc3NhZ2VbXTtcbiAgcmVwbGllczogQVhQQ29tbWVudFtdO1xuICBpc0FyY2hpdmVkOiBib29sZWFuO1xuICBpc0xpa2VkOiBib29sZWFuO1xuICByZWFjdGlvbnNDb3VudDogbnVtYmVyO1xuICByZXBsaWVzQ291bnQ6IG51bWJlcjtcbiAgdXNlcjogQVhQQ29tbWVudFVzZXJEZXRhaWxzO1xuICBpZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUENvbW1lbnRSZXNwb25zZSB7XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbiAgaXRlbXM6IEFYUENvbW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBQb3N0UmVxdWVzdCBleHRlbmRzIFBhcnRpYWw8QVhQQ29tbWVudD4ge1xuICBjb250ZW50OiBzdHJpbmc7XG4gIGNvbnRlbnRUeXBlOiBzdHJpbmc7XG4gIGlzUHJpdmF0ZTogYm9vbGVhbjtcbiAgcmVwbHlJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBtZW1iZXJzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQR2V0UmVxdWVzdCBleHRlbmRzIFBhcnRpYWw8QVhQQ29tbWVudD4ge1xuICByb29tVHlwZTogc3RyaW5nO1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBpbnN0YW5jZUlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQRGVsZXRlUmVxdWVzdCB7XG4gIGlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQUHV0UmVxdWVzdCB7XG4gIGlkOiBzdHJpbmc7XG4gIGNvbnRlbnQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBMaWtlUmVxdWVzdCB7XG4gIG1lc3NhZ2VJZDogc3RyaW5nO1xuICB0eXBlOiAnbGlrZSc7XG59XG4iXX0=
|