@firestitch/app-message 9.1.4 → 9.2.1
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/app/modules/app-message/interfaces/app-message-config.d.ts +2 -1
- package/app/modules/app-message/types/types.type.d.ts +4 -0
- package/app/modules/message-queues/components/queue/queue.component.d.ts +6 -2
- package/app/modules/message-queues/components/queues/queues.component.d.ts +3 -1
- package/app/modules/message-queues/consts/message-queue-event-type.const.d.ts +5 -0
- package/app/modules/message-queues/enums/index.d.ts +1 -0
- package/app/modules/message-queues/enums/message-queue-event-type.enum.d.ts +4 -0
- package/app/modules/message-queues/services/message-queue.service.d.ts +9 -0
- package/bundles/firestitch-app-message.umd.js +110 -63
- package/bundles/firestitch-app-message.umd.js.map +1 -1
- package/bundles/firestitch-app-message.umd.min.js +1 -1
- package/bundles/firestitch-app-message.umd.min.js.map +1 -1
- package/esm2015/app/modules/app-message/interfaces/app-message-config.js +1 -1
- package/esm2015/app/modules/app-message/types/types.type.js +1 -1
- package/esm2015/app/modules/message-queues/components/queue/queue.component.js +20 -7
- package/esm2015/app/modules/message-queues/components/queues/queues.component.js +9 -12
- package/esm2015/app/modules/message-queues/consts/message-queue-event-type.const.js +6 -0
- package/esm2015/app/modules/message-queues/enums/index.js +2 -1
- package/esm2015/app/modules/message-queues/enums/message-queue-event-type.enum.js +6 -0
- package/esm2015/app/modules/message-queues/message-queues.module.js +8 -2
- package/esm2015/app/modules/message-queues/services/message-queue.service.js +31 -0
- package/esm2015/app/modules/messages/components/messages/messages.component.js +3 -7
- package/esm2015/firestitch-app-message.js +2 -2
- package/esm2015/public_api.js +2 -1
- package/esm5/app/modules/app-message/interfaces/app-message-config.js +1 -1
- package/esm5/app/modules/app-message/types/types.type.js +1 -1
- package/esm5/app/modules/message-queues/components/queue/queue.component.js +21 -7
- package/esm5/app/modules/message-queues/components/queues/queues.component.js +9 -12
- package/esm5/app/modules/message-queues/consts/message-queue-event-type.const.js +6 -0
- package/esm5/app/modules/message-queues/enums/index.js +2 -1
- package/esm5/app/modules/message-queues/enums/message-queue-event-type.enum.js +6 -0
- package/esm5/app/modules/message-queues/message-queues.module.js +8 -2
- package/esm5/app/modules/message-queues/services/message-queue.service.js +33 -0
- package/esm5/app/modules/messages/components/messages/messages.component.js +3 -7
- package/esm5/firestitch-app-message.js +2 -2
- package/esm5/public_api.js +2 -1
- package/fesm2015/firestitch-app-message.js +105 -62
- package/fesm2015/firestitch-app-message.js.map +1 -1
- package/fesm5/firestitch-app-message.js +111 -65
- package/fesm5/firestitch-app-message.js.map +1 -1
- package/firestitch-app-message.d.ts +1 -1
- package/firestitch-app-message.metadata.json +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
- package/app/modules/message-queues/components/index.d.ts +0 -3
- package/app/modules/message-queues/components/queue/index.d.ts +0 -1
- package/app/modules/message-queues/components/queues/index.d.ts +0 -1
- package/app/modules/message-queues/components/recipient/index.d.ts +0 -1
- package/esm2015/app/modules/message-queues/components/index.js +0 -4
- package/esm2015/app/modules/message-queues/components/queue/index.js +0 -2
- package/esm2015/app/modules/message-queues/components/queues/index.js +0 -2
- package/esm2015/app/modules/message-queues/components/recipient/index.js +0 -2
- package/esm5/app/modules/message-queues/components/index.js +0 -4
- package/esm5/app/modules/message-queues/components/queue/index.js +0 -2
- package/esm5/app/modules/message-queues/components/queues/index.js +0 -2
- package/esm5/app/modules/message-queues/components/recipient/index.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param, __metadata } from 'tslib';
|
|
2
|
-
import { Inject, Component, InjectionToken, ChangeDetectorRef, ChangeDetectionStrategy, ViewChild, NgModule, Input, Pipe } from '@angular/core';
|
|
2
|
+
import { Inject, Component, InjectionToken, ChangeDetectorRef, ChangeDetectionStrategy, ViewChild, NgModule, Injectable, Input, Pipe } from '@angular/core';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
4
|
import { RouterModule } from '@angular/router';
|
|
5
5
|
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
@@ -225,12 +225,8 @@ let MessagesComponent = class MessagesComponent {
|
|
|
225
225
|
});
|
|
226
226
|
dialogRef.afterClosed()
|
|
227
227
|
.pipe(takeUntil(this._destroy$))
|
|
228
|
-
.subscribe((
|
|
229
|
-
|
|
230
|
-
this.list.updateData(response, (row) => {
|
|
231
|
-
return row.id === response.id;
|
|
232
|
-
});
|
|
233
|
-
}
|
|
228
|
+
.subscribe(() => {
|
|
229
|
+
this.list.reload();
|
|
234
230
|
});
|
|
235
231
|
}
|
|
236
232
|
ngOnDestroy() {
|
|
@@ -312,19 +308,6 @@ FsAppMessagesModule = __decorate([
|
|
|
312
308
|
})
|
|
313
309
|
], FsAppMessagesModule);
|
|
314
310
|
|
|
315
|
-
var EmailMessageQueueFormat;
|
|
316
|
-
(function (EmailMessageQueueFormat) {
|
|
317
|
-
EmailMessageQueueFormat["Text"] = "T";
|
|
318
|
-
EmailMessageQueueFormat["HTML"] = "H";
|
|
319
|
-
EmailMessageQueueFormat["RichText"] = "R";
|
|
320
|
-
})(EmailMessageQueueFormat || (EmailMessageQueueFormat = {}));
|
|
321
|
-
|
|
322
|
-
var MessageQueueType;
|
|
323
|
-
(function (MessageQueueType) {
|
|
324
|
-
MessageQueueType["Sms"] = "S";
|
|
325
|
-
MessageQueueType["Email"] = "E";
|
|
326
|
-
})(MessageQueueType || (MessageQueueType = {}));
|
|
327
|
-
|
|
328
311
|
var MessageQueueState;
|
|
329
312
|
(function (MessageQueueState) {
|
|
330
313
|
MessageQueueState["Sent"] = "S";
|
|
@@ -346,6 +329,30 @@ const MessageQueueStates = [
|
|
|
346
329
|
{ name: 'Failed', value: MessageQueueState.Failed }
|
|
347
330
|
];
|
|
348
331
|
|
|
332
|
+
var EmailMessageQueueFormat;
|
|
333
|
+
(function (EmailMessageQueueFormat) {
|
|
334
|
+
EmailMessageQueueFormat["Text"] = "T";
|
|
335
|
+
EmailMessageQueueFormat["HTML"] = "H";
|
|
336
|
+
EmailMessageQueueFormat["RichText"] = "R";
|
|
337
|
+
})(EmailMessageQueueFormat || (EmailMessageQueueFormat = {}));
|
|
338
|
+
|
|
339
|
+
var MessageQueueType;
|
|
340
|
+
(function (MessageQueueType) {
|
|
341
|
+
MessageQueueType["Sms"] = "S";
|
|
342
|
+
MessageQueueType["Email"] = "E";
|
|
343
|
+
})(MessageQueueType || (MessageQueueType = {}));
|
|
344
|
+
|
|
345
|
+
var MessageQueueEventType;
|
|
346
|
+
(function (MessageQueueEventType) {
|
|
347
|
+
MessageQueueEventType["Click"] = "click";
|
|
348
|
+
MessageQueueEventType["Open"] = "open";
|
|
349
|
+
})(MessageQueueEventType || (MessageQueueEventType = {}));
|
|
350
|
+
|
|
351
|
+
const MessageQueueEventTypes = [
|
|
352
|
+
{ name: 'Open', value: MessageQueueEventType.Open },
|
|
353
|
+
{ name: 'Click', value: MessageQueueEventType.Click },
|
|
354
|
+
];
|
|
355
|
+
|
|
349
356
|
let QueueComponent = class QueueComponent {
|
|
350
357
|
constructor(_config, _message, _prompt, _dialog, _data) {
|
|
351
358
|
this._config = _config;
|
|
@@ -355,13 +362,15 @@ let QueueComponent = class QueueComponent {
|
|
|
355
362
|
this._data = _data;
|
|
356
363
|
this.messageQueueRecipients = {};
|
|
357
364
|
this.emailMessageQueueFormat = EmailMessageQueueFormat;
|
|
365
|
+
this.MessageQueueEventTypes = indexNameValue(MessageQueueEventTypes);
|
|
366
|
+
this.MessageQueueEventType = MessageQueueEventType;
|
|
358
367
|
this._destroy$ = new Subject();
|
|
359
368
|
}
|
|
360
369
|
ngOnInit() {
|
|
361
370
|
this.messageQueueStates = indexNameValue(MessageQueueStates);
|
|
362
371
|
this.resendMessageQueue = this._config.resendMessageQueue;
|
|
363
372
|
this.forwardMessageQueue = this._config.forwardMessageQueue;
|
|
364
|
-
this._config.loadMessageQueue(this._data.
|
|
373
|
+
this._config.loadMessageQueue(this._data.messageQueueId)
|
|
365
374
|
.subscribe((messageQueue) => {
|
|
366
375
|
this.messageQueue = messageQueue;
|
|
367
376
|
if (this.messageQueue.emailMessageQueue) {
|
|
@@ -378,12 +387,12 @@ let QueueComponent = class QueueComponent {
|
|
|
378
387
|
}
|
|
379
388
|
}
|
|
380
389
|
else {
|
|
381
|
-
body = this.
|
|
390
|
+
body = this.anchorMe(body);
|
|
382
391
|
}
|
|
383
392
|
this.messageQueue.emailMessageQueue.body = body;
|
|
384
393
|
}
|
|
385
394
|
if (this.messageQueue.smsMessageQueue) {
|
|
386
|
-
this.messageQueue.smsMessageQueue.body = this.
|
|
395
|
+
this.messageQueue.smsMessageQueue.body = this.anchorMe(this.messageQueue.smsMessageQueue.body);
|
|
387
396
|
}
|
|
388
397
|
this.messageQueueRecipients = this.messageQueue.messageQueueRecipients
|
|
389
398
|
.reduce((accum, messageQueueRecipient) => {
|
|
@@ -392,9 +401,10 @@ let QueueComponent = class QueueComponent {
|
|
|
392
401
|
}, {});
|
|
393
402
|
this._setLogsConfig(messageQueue);
|
|
394
403
|
this._setAttachmentsConfig(messageQueue);
|
|
404
|
+
this._setEventsConfig(messageQueue);
|
|
395
405
|
});
|
|
396
406
|
}
|
|
397
|
-
|
|
407
|
+
anchorMe(html) {
|
|
398
408
|
return anchorme(html, {
|
|
399
409
|
options: {
|
|
400
410
|
attributes: [
|
|
@@ -462,6 +472,15 @@ let QueueComponent = class QueueComponent {
|
|
|
462
472
|
}
|
|
463
473
|
};
|
|
464
474
|
}
|
|
475
|
+
_setEventsConfig(messageQueue) {
|
|
476
|
+
this.eventConfig = {
|
|
477
|
+
loadMore: true,
|
|
478
|
+
queryParam: false,
|
|
479
|
+
fetch: (query) => {
|
|
480
|
+
return this._config.loadMessageQueueEvents(messageQueue, query);
|
|
481
|
+
}
|
|
482
|
+
};
|
|
483
|
+
}
|
|
465
484
|
_setAttachmentsConfig(messageQueue) {
|
|
466
485
|
this.attachmentConfig = {
|
|
467
486
|
queryParam: false,
|
|
@@ -507,7 +526,7 @@ __decorate([
|
|
|
507
526
|
], QueueComponent.prototype, "logList", void 0);
|
|
508
527
|
QueueComponent = __decorate([
|
|
509
528
|
Component({
|
|
510
|
-
template: "<fs-dialog *fsSkeleton=\"messageQueue\">\n <div mat-dialog-title>Message Queue</div>\n <mat-dialog-content>\n <mat-tab-group>\n <mat-tab label=\"Overview\">\n <ng-template matTabContent>\n <div fxLayout=\"row wrap\" fxLayoutGap=\"25px\">\n <ng-container *ngIf=\"messageQueue.emailMessageQueue\">\n <fs-label-field>\n <fs-label>\n To Recipients\n </fs-label>\n <app-recipient \n *ngFor=\"let recipient of messageQueue.emailMessageQueue.toRecipients\"\n [state]=\"messageQueueRecipients[recipient]\"\n [name]=\"recipient\">\n </app-recipient>\n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.ccRecipients.length\">\n <fs-label>\n CC\n </fs-label>\n <app-recipient \n *ngFor=\"let recipient of messageQueue.emailMessageQueue.ccRecipients\"\n [state]=\"messageQueueRecipients[recipient]\"\n [name]=\"recipient\">\n </app-recipient> \n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.bccRecipients.length\">\n <fs-label>\n BCC\n </fs-label>\n <app-recipient \n *ngFor=\"let recipient of messageQueue.emailMessageQueue.bccRecipients\"\n [state]=\"messageQueueRecipients[recipient]\"\n [name]=\"recipient\">\n </app-recipient> \n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.fromName || messageQueue.emailMessageQueue.fromEmail\">\n <fs-label>\n From\n </fs-label>\n <ng-container *ngIf=\"messageQueue.emailMessageQueue.fromName === messageQueue.emailMessageQueue.fromEmail; else fromEmailName\">\n {{messageQueue.emailMessageQueue.fromName}}\n </ng-container>\n\n <ng-template #fromEmailName>\n {{messageQueue.emailMessageQueue.fromName}}\n <ng-container *ngIf=\"messageQueue.emailMessageQueue.fromEmail\">\n ({{messageQueue.emailMessageQueue.fromEmail}})\n </ng-container>\n </ng-template>\n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.replyEmail && messageQueue.emailMessageQueue.replyEmail.length\">\n <fs-label>\n Reply To\n </fs-label>\n {{messageQueue.emailMessageQueue.replyEmail.join(', ')}}\n </fs-label-field>\n </ng-container>\n\n <ng-container *ngIf=\"messageQueue.smsMessageQueue\">\n <fs-label-field>\n <fs-label>\n To Number\n </fs-label>\n <app-recipient \n [state]=\"messageQueue.state\"\n [name]=\"messageQueue.smsMessageQueue.toNumber\">\n </app-recipient> \n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.smsMessageQueue.fromNumber\">\n <fs-label>\n From Number\n </fs-label>\n {{messageQueue.smsMessageQueue.fromNumber}}\n </fs-label-field>\n </ng-container>\n \n <fs-label-field>\n <fs-label>\n Date\n </fs-label>\n {{messageQueue.scheduledDate | fsDateFormat: 'full-date-time'}}\n </fs-label-field>\n\n <fs-label-field>\n <fs-label>\n Status\n </fs-label>\n {{messageQueueStates[messageQueue.state]}}\n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.message\">\n <fs-label>\n Message Type\n </fs-label>\n <a\n (click)=\"openMessage(messageQueue.message)\"\n *ngIf=\"loadMessage; else elseMessage\">\n {{messageQueue.message.name}}\n </a>\n <ng-template #elseMessage>\n {{messageQueue.message.name}}\n </ng-template>\n </fs-label-field>\n </div>\n\n <ng-container *ngIf=\"messageQueue.emailMessageQueue\">\n <fs-label-field class=\"subject\">\n <fs-label>\n Subject\n </fs-label>\n {{messageQueue.emailMessageQueue.subject}}\n </fs-label-field>\n\n <fs-label-field class=\"body\">\n <fs-label>\n Body\n </fs-label>\n <div\n *ngIf=\"messageQueue.emailMessageQueue.format===emailMessageQueueFormat.Text\"\n class=\"format-text\"\n [innerHTML]=\"messageQueue.emailMessageQueue.body\">\n </div>\n <fs-iframe\n *ngIf=\"messageQueue.emailMessageQueue.format===emailMessageQueueFormat.HTML || messageQueue.emailMessageQueue.format===emailMessageQueueFormat.RichText\"\n [html]=\"messageQueue.emailMessageQueue.body\">\n </fs-iframe>\n </fs-label-field>\n </ng-container>\n\n <ng-container *ngIf=\"messageQueue.smsMessageQueue\">\n <fs-label-field>\n <fs-label>\n Message\n </fs-label>\n <div\n class=\"format-text\"\n [innerHTML]=\"messageQueue.smsMessageQueue.body\">\n </div>\n </fs-label-field>\n </ng-container>\n\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Logs\">\n <ng-template matTabContent>\n <fs-list [config]=\"logConfig\" #logList>\n <fs-list-column title=\"Message\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.message}}\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Date\">\n <ng-template fs-list-cell let-row=\"row\">\n <fs-date-ago [date]=\"row.createdDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n </fs-list>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Attachments\">\n <ng-template matTabContent>\n <fs-list [config]=\"attachmentConfig\">\n <fs-list-column title=\"File Name\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.filename}}\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"File Size\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.prettyFilesize}}\n </ng-template>\n </fs-list-column>\n </fs-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n [mat-dialog-close]=\"null\"\n color=\"primary\">\n Done\n </button>\n <button\n mat-button\n *ngIf=\"resendMessageQueue\"\n type=\"button\"\n (click)=\"resend()\"\n type=\"button\">\n Resend\n </button>\n <button\n mat-button\n *ngIf=\"forwardMessageQueue\"\n type=\"button\"\n (click)=\"forward()\"\n type=\"button\">\n Forward\n </button>\n </mat-dialog-actions>\n</fs-dialog>\n",
|
|
529
|
+
template: "<fs-dialog *fsSkeleton=\"messageQueue\">\n <div mat-dialog-title>Message Queue</div>\n <mat-dialog-content>\n <mat-tab-group>\n <mat-tab label=\"Overview\">\n <ng-template matTabContent>\n <div fxLayout=\"row wrap\" fxLayoutGap=\"25px\">\n <ng-container *ngIf=\"messageQueue.emailMessageQueue\">\n <fs-label-field>\n <fs-label>\n To Recipients\n </fs-label>\n <app-recipient \n *ngFor=\"let recipient of messageQueue.emailMessageQueue.toRecipients\"\n [state]=\"messageQueueRecipients[recipient]\"\n [name]=\"recipient\">\n </app-recipient>\n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.ccRecipients.length\">\n <fs-label>\n CC\n </fs-label>\n <app-recipient \n *ngFor=\"let recipient of messageQueue.emailMessageQueue.ccRecipients\"\n [state]=\"messageQueueRecipients[recipient]\"\n [name]=\"recipient\">\n </app-recipient> \n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.bccRecipients.length\">\n <fs-label>\n BCC\n </fs-label>\n <app-recipient \n *ngFor=\"let recipient of messageQueue.emailMessageQueue.bccRecipients\"\n [state]=\"messageQueueRecipients[recipient]\"\n [name]=\"recipient\">\n </app-recipient> \n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.fromName || messageQueue.emailMessageQueue.fromEmail\">\n <fs-label>\n From\n </fs-label>\n <ng-container *ngIf=\"messageQueue.emailMessageQueue.fromName === messageQueue.emailMessageQueue.fromEmail; else fromEmailName\">\n {{messageQueue.emailMessageQueue.fromName}}\n </ng-container>\n\n <ng-template #fromEmailName>\n {{messageQueue.emailMessageQueue.fromName}}\n <ng-container *ngIf=\"messageQueue.emailMessageQueue.fromEmail\">\n ({{messageQueue.emailMessageQueue.fromEmail}})\n </ng-container>\n </ng-template>\n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.emailMessageQueue.replyEmail && messageQueue.emailMessageQueue.replyEmail.length\">\n <fs-label>\n Reply To\n </fs-label>\n {{messageQueue.emailMessageQueue.replyEmail.join(', ')}}\n </fs-label-field>\n </ng-container>\n\n <ng-container *ngIf=\"messageQueue.smsMessageQueue\">\n <fs-label-field>\n <fs-label>\n To Number\n </fs-label>\n <app-recipient \n [state]=\"messageQueue.state\"\n [name]=\"messageQueue.smsMessageQueue.toNumber\">\n </app-recipient> \n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.smsMessageQueue.fromNumber\">\n <fs-label>\n From Number\n </fs-label>\n {{messageQueue.smsMessageQueue.fromNumber}}\n </fs-label-field>\n </ng-container>\n \n <fs-label-field>\n <fs-label>\n Date\n </fs-label>\n {{messageQueue.scheduledDate | fsDateFormat: 'full-date-time'}}\n </fs-label-field>\n\n <fs-label-field>\n <fs-label>\n Status\n </fs-label>\n {{messageQueueStates[messageQueue.state]}}\n </fs-label-field>\n\n <fs-label-field *ngIf=\"messageQueue.message\">\n <fs-label>\n Message Type\n </fs-label>\n <a\n (click)=\"openMessage(messageQueue.message)\"\n *ngIf=\"loadMessage; else elseMessage\">\n {{messageQueue.message.name}}\n </a>\n <ng-template #elseMessage>\n {{messageQueue.message.name}}\n </ng-template>\n </fs-label-field>\n </div>\n\n <ng-container *ngIf=\"messageQueue.emailMessageQueue\">\n <fs-label-field class=\"subject\">\n <fs-label>\n Subject\n </fs-label>\n {{messageQueue.emailMessageQueue.subject}}\n </fs-label-field>\n\n <fs-label-field class=\"body\">\n <fs-label>\n Body\n </fs-label>\n <div\n *ngIf=\"messageQueue.emailMessageQueue.format===emailMessageQueueFormat.Text\"\n class=\"format-text\"\n [innerHTML]=\"messageQueue.emailMessageQueue.body\">\n </div>\n <fs-iframe\n *ngIf=\"messageQueue.emailMessageQueue.format===emailMessageQueueFormat.HTML || messageQueue.emailMessageQueue.format===emailMessageQueueFormat.RichText\"\n [html]=\"messageQueue.emailMessageQueue.body\">\n </fs-iframe>\n </fs-label-field>\n </ng-container>\n\n <ng-container *ngIf=\"messageQueue.smsMessageQueue\">\n <fs-label-field>\n <fs-label>\n Message\n </fs-label>\n <div\n class=\"format-text\"\n [innerHTML]=\"messageQueue.smsMessageQueue.body\">\n </div>\n </fs-label-field>\n </ng-container>\n\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Logs\">\n <ng-template matTabContent>\n <fs-list [config]=\"logConfig\" #logList>\n <fs-list-column title=\"Message\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.message}}\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Date\">\n <ng-template fs-list-cell let-row=\"row\">\n <fs-date-ago [date]=\"row.createdDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n </fs-list>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Attachments\">\n <ng-template matTabContent>\n <fs-list [config]=\"attachmentConfig\">\n <fs-list-column title=\"File Name\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.filename}}\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"File Size\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.prettyFilesize}}\n </ng-template>\n </fs-list-column>\n </fs-list>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Events\">\n <ng-template matTabContent>\n <fs-list [config]=\"eventConfig\">\n <fs-list-column title=\"Recipient\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.messageQueueRecipient.recipient}}\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Event\">\n <ng-template fs-list-cell let-row=\"row\">\n {{MessageQueueEventTypes[row.type]}}\n <div class=\"small\" *ngIf=\"row.type === MessageQueueEventType.Click\">\n <a [href]=\"row.meta?.url\" target=\"_blank\">{{row.meta?.url}}</a>\n </div>\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Date\">\n <ng-template fs-list-cell let-row=\"row\">\n {{row.createDate | fsDateFormat: 'date-time-yearless'}}\n </ng-template>\n </fs-list-column>\n </fs-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button\n mat-button\n [mat-dialog-close]=\"null\"\n color=\"primary\">\n Done\n </button>\n <button\n mat-button\n *ngIf=\"resendMessageQueue\"\n type=\"button\"\n (click)=\"resend()\"\n type=\"button\">\n Resend\n </button>\n <button\n mat-button\n *ngIf=\"forwardMessageQueue\"\n type=\"button\"\n (click)=\"forward()\"\n type=\"button\">\n Forward\n </button>\n </mat-dialog-actions>\n</fs-dialog>\n",
|
|
511
530
|
styles: [".body,.subject{display:block;margin-top:15px}.body .format-text{white-space:pre-wrap}.body .body-frame{border:0}.body ::ng-deep .field-label{margin-bottom:10px}app-recipient{display:block}[hidden]{display:none!important}"]
|
|
512
531
|
}),
|
|
513
532
|
__param(0, Inject(FS_APP_MESSAGE_CONFIG)),
|
|
@@ -517,10 +536,35 @@ QueueComponent = __decorate([
|
|
|
517
536
|
MatDialog, Object])
|
|
518
537
|
], QueueComponent);
|
|
519
538
|
|
|
539
|
+
let FsMessageQueueService = class FsMessageQueueService {
|
|
540
|
+
constructor(_dialog) {
|
|
541
|
+
this._dialog = _dialog;
|
|
542
|
+
this._destroy$ = new Subject();
|
|
543
|
+
}
|
|
544
|
+
openMessageQueue(messageQueueId, options = {}) {
|
|
545
|
+
return this._dialog.open(QueueComponent, Object.assign(Object.assign({}, options), { data: {
|
|
546
|
+
messageQueueId,
|
|
547
|
+
}, width: options.width || '85%' })).afterClosed()
|
|
548
|
+
.pipe(takeUntil(this._destroy$));
|
|
549
|
+
}
|
|
550
|
+
ngOnDestroy() {
|
|
551
|
+
this._destroy$.next();
|
|
552
|
+
this._destroy$.complete();
|
|
553
|
+
}
|
|
554
|
+
};
|
|
555
|
+
FsMessageQueueService.ctorParameters = () => [
|
|
556
|
+
{ type: MatDialog }
|
|
557
|
+
];
|
|
558
|
+
FsMessageQueueService = __decorate([
|
|
559
|
+
Injectable(),
|
|
560
|
+
__metadata("design:paramtypes", [MatDialog])
|
|
561
|
+
], FsMessageQueueService);
|
|
562
|
+
|
|
520
563
|
let QueuesComponent = class QueuesComponent {
|
|
521
|
-
constructor(_config, _dialog) {
|
|
564
|
+
constructor(_config, _dialog, _messageQueueService) {
|
|
522
565
|
this._config = _config;
|
|
523
566
|
this._dialog = _dialog;
|
|
567
|
+
this._messageQueueService = _messageQueueService;
|
|
524
568
|
this.list = null;
|
|
525
569
|
this.query = {};
|
|
526
570
|
this.config = null;
|
|
@@ -608,13 +652,7 @@ let QueuesComponent = class QueuesComponent {
|
|
|
608
652
|
});
|
|
609
653
|
}
|
|
610
654
|
open(messageQueue) {
|
|
611
|
-
this.
|
|
612
|
-
data: {
|
|
613
|
-
messageQueue: messageQueue,
|
|
614
|
-
},
|
|
615
|
-
width: '85%'
|
|
616
|
-
})
|
|
617
|
-
.afterClosed()
|
|
655
|
+
this._messageQueueService.openMessageQueue(messageQueue.id)
|
|
618
656
|
.pipe(takeUntil(this._destroy$))
|
|
619
657
|
.subscribe(() => {
|
|
620
658
|
this.list.reload();
|
|
@@ -627,7 +665,8 @@ let QueuesComponent = class QueuesComponent {
|
|
|
627
665
|
};
|
|
628
666
|
QueuesComponent.ctorParameters = () => [
|
|
629
667
|
{ type: undefined, decorators: [{ type: Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
|
|
630
|
-
{ type: MatDialog }
|
|
668
|
+
{ type: MatDialog },
|
|
669
|
+
{ type: FsMessageQueueService }
|
|
631
670
|
];
|
|
632
671
|
__decorate([
|
|
633
672
|
ViewChild(FsListComponent, { static: true }),
|
|
@@ -644,9 +683,36 @@ QueuesComponent = __decorate([
|
|
|
644
683
|
styles: [":host ::ng-deep .col-recipients small+small:before{content:\", \"}:host ::ng-deep .col-state .state-F,:host ::ng-deep .col-state .state-P{color:#d8524e}"]
|
|
645
684
|
}),
|
|
646
685
|
__param(0, Inject(FS_APP_MESSAGE_CONFIG)),
|
|
647
|
-
__metadata("design:paramtypes", [Object, MatDialog
|
|
686
|
+
__metadata("design:paramtypes", [Object, MatDialog,
|
|
687
|
+
FsMessageQueueService])
|
|
648
688
|
], QueuesComponent);
|
|
649
689
|
|
|
690
|
+
let RecipientComponent = class RecipientComponent {
|
|
691
|
+
ngOnInit() {
|
|
692
|
+
const icons = {
|
|
693
|
+
'S': { name: 'check_circle', tooltip: 'Sent' },
|
|
694
|
+
'E': { name: 'offline_bolt', tooltip: 'Sending' },
|
|
695
|
+
'F': { name: 'info', tooltip: 'Failed' },
|
|
696
|
+
};
|
|
697
|
+
this.icon = icons[this.state];
|
|
698
|
+
}
|
|
699
|
+
};
|
|
700
|
+
__decorate([
|
|
701
|
+
Input(),
|
|
702
|
+
__metadata("design:type", Object)
|
|
703
|
+
], RecipientComponent.prototype, "name", void 0);
|
|
704
|
+
__decorate([
|
|
705
|
+
Input(),
|
|
706
|
+
__metadata("design:type", Object)
|
|
707
|
+
], RecipientComponent.prototype, "state", void 0);
|
|
708
|
+
RecipientComponent = __decorate([
|
|
709
|
+
Component({
|
|
710
|
+
selector: 'app-recipient',
|
|
711
|
+
template: "<span class=\"recipient\">\n <span class=\"name\">{{name}}</span>\n <mat-icon *ngIf=\"icon\" [class]=\"'state-' + state\" [matTooltip]=\"icon.tooltip\">{{icon.name}}</mat-icon>\n</span>",
|
|
712
|
+
styles: ["mat-icon{font-size:14px;width:14px;height:14px;line-height:normal;margin-left:2px}mat-icon.state-S{color:#5fa099}mat-icon.state-E{color:#fbbc04}mat-icon.state-F{color:#d8524e}.recipient{display:inline-flex;align-items:center}"]
|
|
713
|
+
})
|
|
714
|
+
], RecipientComponent);
|
|
715
|
+
|
|
650
716
|
let LinkifyPipe = class LinkifyPipe {
|
|
651
717
|
transform(value) {
|
|
652
718
|
return anchorme(value, {
|
|
@@ -680,32 +746,6 @@ TruncatePipe = __decorate([
|
|
|
680
746
|
})
|
|
681
747
|
], TruncatePipe);
|
|
682
748
|
|
|
683
|
-
let RecipientComponent = class RecipientComponent {
|
|
684
|
-
ngOnInit() {
|
|
685
|
-
const icons = {
|
|
686
|
-
'S': { name: 'check_circle', tooltip: 'Sent' },
|
|
687
|
-
'E': { name: 'offline_bolt', tooltip: 'Sending' },
|
|
688
|
-
'F': { name: 'info', tooltip: 'Failed' },
|
|
689
|
-
};
|
|
690
|
-
this.icon = icons[this.state];
|
|
691
|
-
}
|
|
692
|
-
};
|
|
693
|
-
__decorate([
|
|
694
|
-
Input(),
|
|
695
|
-
__metadata("design:type", Object)
|
|
696
|
-
], RecipientComponent.prototype, "name", void 0);
|
|
697
|
-
__decorate([
|
|
698
|
-
Input(),
|
|
699
|
-
__metadata("design:type", Object)
|
|
700
|
-
], RecipientComponent.prototype, "state", void 0);
|
|
701
|
-
RecipientComponent = __decorate([
|
|
702
|
-
Component({
|
|
703
|
-
selector: 'app-recipient',
|
|
704
|
-
template: "<span class=\"recipient\">\n <span class=\"name\">{{name}}</span>\n <mat-icon *ngIf=\"icon\" [class]=\"'state-' + state\" [matTooltip]=\"icon.tooltip\">{{icon.name}}</mat-icon>\n</span>",
|
|
705
|
-
styles: ["mat-icon{font-size:14px;width:14px;height:14px;line-height:normal;margin-left:2px}mat-icon.state-S{color:#5fa099}mat-icon.state-E{color:#fbbc04}mat-icon.state-F{color:#d8524e}.recipient{display:inline-flex;align-items:center}"]
|
|
706
|
-
})
|
|
707
|
-
], RecipientComponent);
|
|
708
|
-
|
|
709
749
|
let FsAppMessageQueuesModule = class FsAppMessageQueuesModule {
|
|
710
750
|
};
|
|
711
751
|
FsAppMessageQueuesModule = __decorate([
|
|
@@ -740,6 +780,9 @@ FsAppMessageQueuesModule = __decorate([
|
|
|
740
780
|
exports: [
|
|
741
781
|
QueuesComponent,
|
|
742
782
|
QueueComponent,
|
|
783
|
+
],
|
|
784
|
+
providers: [
|
|
785
|
+
FsMessageQueueService
|
|
743
786
|
]
|
|
744
787
|
})
|
|
745
788
|
], FsAppMessageQueuesModule);
|
|
@@ -1021,5 +1064,5 @@ FsAppMessageModule = FsAppMessageModule_1 = __decorate([
|
|
|
1021
1064
|
* Generated bundle index. Do not edit.
|
|
1022
1065
|
*/
|
|
1023
1066
|
|
|
1024
|
-
export { FS_APP_MESSAGE_CONFIG, FsAppMessageModule, FsAppMessageQueuesModule, FsAppMessageTemplatesModule, FsAppMessageWebhooksModule, FsAppMessagesModule, MessageComponent, MessagesComponent, QueueComponent, QueuesComponent, TemplatesComponent, FsAppMessagePreviewModule as ɵa, PreviewComponent as ɵb, FS_APP_MESSAGE_CONFIG as ɵc, LinkifyPipe as ɵd, TruncatePipe as ɵe, RecipientComponent as ɵf, TemplateComponent as ɵg, WebhooksComponent as ɵh };
|
|
1067
|
+
export { FS_APP_MESSAGE_CONFIG, FsAppMessageModule, FsAppMessageQueuesModule, FsAppMessageTemplatesModule, FsAppMessageWebhooksModule, FsAppMessagesModule, FsMessageQueueService, MessageComponent, MessagesComponent, QueueComponent, QueuesComponent, TemplatesComponent, FsAppMessagePreviewModule as ɵa, PreviewComponent as ɵb, FS_APP_MESSAGE_CONFIG as ɵc, LinkifyPipe as ɵd, TruncatePipe as ɵe, RecipientComponent as ɵf, TemplateComponent as ɵg, WebhooksComponent as ɵh };
|
|
1025
1068
|
//# sourceMappingURL=firestitch-app-message.js.map
|