@firestitch/app-message 9.2.0 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/app/helpers/index-name-value.d.ts +1 -1
  2. package/app/helpers/index.d.ts +1 -1
  3. package/app/modules/app-message/app-message.module.d.ts +8 -4
  4. package/app/modules/app-message/injectors/app-message-config.injector.d.ts +3 -3
  5. package/app/modules/app-message/injectors/index.d.ts +1 -1
  6. package/app/modules/app-message/interfaces/app-message-config.d.ts +26 -26
  7. package/app/modules/app-message/interfaces/index.d.ts +1 -1
  8. package/app/modules/app-message/types/index.d.ts +1 -1
  9. package/app/modules/app-message/types/types.type.d.ts +40 -40
  10. package/app/modules/message-preview/components/index.d.ts +1 -1
  11. package/app/modules/message-preview/components/preview/index.d.ts +1 -1
  12. package/app/modules/message-preview/components/preview/preview.component.d.ts +11 -8
  13. package/app/modules/message-preview/message-preview.module.d.ts +11 -2
  14. package/app/modules/message-queues/components/queue/queue.component.d.ts +43 -40
  15. package/app/modules/message-queues/components/queues/queues.component.d.ts +24 -21
  16. package/app/modules/message-queues/components/recipient/recipient.component.d.ts +10 -7
  17. package/app/modules/message-queues/consts/index.d.ts +1 -1
  18. package/app/modules/message-queues/consts/message-queue-event-type.const.d.ts +5 -5
  19. package/app/modules/message-queues/consts/message-queue-states.const.d.ts +5 -5
  20. package/app/modules/message-queues/enums/email-message-queue-format.enum.d.ts +5 -5
  21. package/app/modules/message-queues/enums/index.d.ts +3 -3
  22. package/app/modules/message-queues/enums/message-queue-event-type.enum.d.ts +4 -4
  23. package/app/modules/message-queues/enums/message-queue-state.enum.d.ts +9 -9
  24. package/app/modules/message-queues/enums/message-queue-type.enum.d.ts +4 -4
  25. package/app/modules/message-queues/message-queues.module.d.ts +29 -2
  26. package/app/modules/message-queues/pipes/linkify.pipe.d.ts +7 -4
  27. package/app/modules/message-queues/pipes/truncate.pipe.d.ts +7 -4
  28. package/app/modules/message-queues/services/message-queue.service.d.ts +12 -9
  29. package/app/modules/message-templates/components/index.d.ts +2 -0
  30. package/app/modules/message-templates/components/template/index.d.ts +1 -1
  31. package/app/modules/message-templates/components/template/template.component.d.ts +23 -20
  32. package/app/modules/message-templates/components/templates/index.d.ts +1 -0
  33. package/app/modules/message-templates/components/templates/templates.component.d.ts +19 -16
  34. package/app/modules/message-templates/message-templates.module.d.ts +25 -2
  35. package/app/modules/messages/components/index.d.ts +2 -2
  36. package/app/modules/messages/components/message/index.d.ts +1 -1
  37. package/app/modules/messages/components/message/message.component.d.ts +32 -29
  38. package/app/modules/messages/components/messages/index.d.ts +1 -1
  39. package/app/modules/messages/components/messages/messages.component.d.ts +19 -16
  40. package/app/modules/messages/consts/email-message-formats.const.d.ts +5 -5
  41. package/app/modules/messages/consts/index.d.ts +1 -1
  42. package/app/modules/messages/enums/email-message-format.enum.d.ts +5 -5
  43. package/app/modules/messages/enums/index.d.ts +1 -1
  44. package/app/modules/messages/messages.module.d.ts +28 -2
  45. package/app/modules/webhooks/components/webhooks/webhooks.component.d.ts +15 -12
  46. package/app/modules/webhooks/webhooks.module.d.ts +9 -2
  47. package/bundles/firestitch-app-message.umd.js +1567 -1260
  48. package/bundles/firestitch-app-message.umd.js.map +1 -1
  49. package/esm2015/app/helpers/index-name-value.js +8 -8
  50. package/esm2015/app/helpers/index.js +2 -2
  51. package/esm2015/app/modules/app-message/app-message.module.js +17 -15
  52. package/esm2015/app/modules/app-message/injectors/app-message-config.injector.js +4 -4
  53. package/esm2015/app/modules/app-message/injectors/index.js +2 -2
  54. package/esm2015/app/modules/app-message/interfaces/app-message-config.js +2 -1
  55. package/esm2015/app/modules/app-message/interfaces/index.js +2 -1
  56. package/esm2015/app/modules/app-message/types/index.js +2 -1
  57. package/esm2015/app/modules/app-message/types/types.type.js +2 -1
  58. package/esm2015/app/modules/message-preview/components/index.js +2 -2
  59. package/esm2015/app/modules/message-preview/components/preview/index.js +2 -2
  60. package/esm2015/app/modules/message-preview/components/preview/preview.component.js +29 -25
  61. package/esm2015/app/modules/message-preview/message-preview.module.js +38 -27
  62. package/esm2015/app/modules/message-queues/components/queue/queue.component.js +209 -200
  63. package/esm2015/app/modules/message-queues/components/queues/queues.component.js +145 -141
  64. package/esm2015/app/modules/message-queues/components/recipient/recipient.component.js +30 -29
  65. package/esm2015/app/modules/message-queues/consts/index.js +2 -2
  66. package/esm2015/app/modules/message-queues/consts/message-queue-event-type.const.js +6 -6
  67. package/esm2015/app/modules/message-queues/consts/message-queue-states.const.js +11 -11
  68. package/esm2015/app/modules/message-queues/enums/email-message-queue-format.enum.js +7 -7
  69. package/esm2015/app/modules/message-queues/enums/index.js +4 -4
  70. package/esm2015/app/modules/message-queues/enums/message-queue-event-type.enum.js +6 -6
  71. package/esm2015/app/modules/message-queues/enums/message-queue-state.enum.js +11 -11
  72. package/esm2015/app/modules/message-queues/enums/message-queue-type.enum.js +6 -6
  73. package/esm2015/app/modules/message-queues/message-queues.module.js +120 -70
  74. package/esm2015/app/modules/message-queues/pipes/linkify.pipe.js +22 -20
  75. package/esm2015/app/modules/message-queues/pipes/truncate.pipe.js +22 -20
  76. package/esm2015/app/modules/message-queues/services/message-queue.service.js +29 -31
  77. package/esm2015/app/modules/message-templates/components/index.js +3 -0
  78. package/esm2015/app/modules/message-templates/components/template/index.js +2 -2
  79. package/esm2015/app/modules/message-templates/components/template/template.component.js +84 -75
  80. package/esm2015/app/modules/message-templates/components/templates/index.js +2 -0
  81. package/esm2015/app/modules/message-templates/components/templates/templates.component.js +91 -91
  82. package/esm2015/app/modules/message-templates/message-templates.module.js +98 -57
  83. package/esm2015/app/modules/messages/components/index.js +3 -3
  84. package/esm2015/app/modules/messages/components/message/index.js +2 -2
  85. package/esm2015/app/modules/messages/components/message/message.component.js +136 -125
  86. package/esm2015/app/modules/messages/components/messages/index.js +2 -2
  87. package/esm2015/app/modules/messages/components/messages/messages.component.js +74 -74
  88. package/esm2015/app/modules/messages/consts/email-message-formats.const.js +7 -7
  89. package/esm2015/app/modules/messages/consts/index.js +2 -2
  90. package/esm2015/app/modules/messages/enums/email-message-format.enum.js +7 -7
  91. package/esm2015/app/modules/messages/enums/index.js +2 -2
  92. package/esm2015/app/modules/messages/messages.module.js +111 -64
  93. package/esm2015/app/modules/webhooks/components/webhooks/webhooks.component.js +64 -63
  94. package/esm2015/app/modules/webhooks/webhooks.module.js +30 -23
  95. package/esm2015/firestitch-app-message.js +5 -13
  96. package/esm2015/public_api.js +18 -16
  97. package/fesm2015/firestitch-app-message.js +1166 -998
  98. package/fesm2015/firestitch-app-message.js.map +1 -1
  99. package/firestitch-app-message.d.ts +5 -12
  100. package/package.json +5 -8
  101. package/public_api.d.ts +15 -13
  102. package/bundles/firestitch-app-message.umd.min.js +0 -2
  103. package/bundles/firestitch-app-message.umd.min.js.map +0 -1
  104. package/esm5/app/helpers/index-name-value.js +0 -8
  105. package/esm5/app/helpers/index.js +0 -2
  106. package/esm5/app/modules/app-message/app-message.module.js +0 -19
  107. package/esm5/app/modules/app-message/injectors/app-message-config.injector.js +0 -4
  108. package/esm5/app/modules/app-message/injectors/index.js +0 -2
  109. package/esm5/app/modules/app-message/interfaces/app-message-config.js +0 -1
  110. package/esm5/app/modules/app-message/interfaces/index.js +0 -1
  111. package/esm5/app/modules/app-message/types/index.js +0 -1
  112. package/esm5/app/modules/app-message/types/types.type.js +0 -1
  113. package/esm5/app/modules/message-preview/components/index.js +0 -2
  114. package/esm5/app/modules/message-preview/components/preview/index.js +0 -2
  115. package/esm5/app/modules/message-preview/components/preview/preview.component.js +0 -26
  116. package/esm5/app/modules/message-preview/message-preview.module.js +0 -30
  117. package/esm5/app/modules/message-queues/components/queue/queue.component.js +0 -207
  118. package/esm5/app/modules/message-queues/components/queues/queues.component.js +0 -143
  119. package/esm5/app/modules/message-queues/components/recipient/recipient.component.js +0 -32
  120. package/esm5/app/modules/message-queues/consts/index.js +0 -2
  121. package/esm5/app/modules/message-queues/consts/message-queue-event-type.const.js +0 -6
  122. package/esm5/app/modules/message-queues/consts/message-queue-states.const.js +0 -11
  123. package/esm5/app/modules/message-queues/enums/email-message-queue-format.enum.js +0 -7
  124. package/esm5/app/modules/message-queues/enums/index.js +0 -4
  125. package/esm5/app/modules/message-queues/enums/message-queue-event-type.enum.js +0 -6
  126. package/esm5/app/modules/message-queues/enums/message-queue-state.enum.js +0 -11
  127. package/esm5/app/modules/message-queues/enums/message-queue-type.enum.js +0 -6
  128. package/esm5/app/modules/message-queues/message-queues.module.js +0 -73
  129. package/esm5/app/modules/message-queues/pipes/linkify.pipe.js +0 -23
  130. package/esm5/app/modules/message-queues/pipes/truncate.pipe.js +0 -26
  131. package/esm5/app/modules/message-queues/services/message-queue.service.js +0 -33
  132. package/esm5/app/modules/message-templates/components/template/index.js +0 -2
  133. package/esm5/app/modules/message-templates/components/template/template.component.js +0 -78
  134. package/esm5/app/modules/message-templates/components/templates/templates.component.js +0 -94
  135. package/esm5/app/modules/message-templates/message-templates.module.js +0 -60
  136. package/esm5/app/modules/messages/components/index.js +0 -3
  137. package/esm5/app/modules/messages/components/message/index.js +0 -2
  138. package/esm5/app/modules/messages/components/message/message.component.js +0 -130
  139. package/esm5/app/modules/messages/components/messages/index.js +0 -2
  140. package/esm5/app/modules/messages/components/messages/messages.component.js +0 -77
  141. package/esm5/app/modules/messages/consts/email-message-formats.const.js +0 -7
  142. package/esm5/app/modules/messages/consts/index.js +0 -2
  143. package/esm5/app/modules/messages/enums/email-message-format.enum.js +0 -7
  144. package/esm5/app/modules/messages/enums/index.js +0 -2
  145. package/esm5/app/modules/messages/messages.module.js +0 -67
  146. package/esm5/app/modules/webhooks/components/webhooks/webhooks.component.js +0 -65
  147. package/esm5/app/modules/webhooks/webhooks.module.js +0 -26
  148. package/esm5/firestitch-app-message.js +0 -13
  149. package/esm5/public_api.js +0 -16
  150. package/fesm5/firestitch-app-message.js +0 -1127
  151. package/fesm5/firestitch-app-message.js.map +0 -1
  152. package/firestitch-app-message.metadata.json +0 -1
@@ -1,1313 +1,1626 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/router'), require('@angular/flex-layout'), require('@angular/material/button'), require('@angular/material/core'), require('@angular/material/dialog'), require('@angular/material/form-field'), require('@angular/material/input'), require('@angular/material/select'), require('@angular/material/tabs'), require('@angular/material/checkbox'), require('@angular/material/tooltip'), require('@firestitch/label'), require('@firestitch/dialog'), require('@firestitch/list'), require('@firestitch/skeleton'), require('@angular/forms'), require('@firestitch/form'), require('@firestitch/text-editor'), require('@firestitch/editor'), require('rxjs/operators'), require('rxjs'), require('@firestitch/filter'), require('@firestitch/message'), require('@firestitch/prompt'), require('@firestitch/iframe'), require('@angular/material/icon'), require('@firestitch/date'), require('@firestitch/selection'), require('anchorme')) :
3
- typeof define === 'function' && define.amd ? define('@firestitch/app-message', ['exports', '@angular/core', '@angular/common', '@angular/router', '@angular/flex-layout', '@angular/material/button', '@angular/material/core', '@angular/material/dialog', '@angular/material/form-field', '@angular/material/input', '@angular/material/select', '@angular/material/tabs', '@angular/material/checkbox', '@angular/material/tooltip', '@firestitch/label', '@firestitch/dialog', '@firestitch/list', '@firestitch/skeleton', '@angular/forms', '@firestitch/form', '@firestitch/text-editor', '@firestitch/editor', 'rxjs/operators', 'rxjs', '@firestitch/filter', '@firestitch/message', '@firestitch/prompt', '@firestitch/iframe', '@angular/material/icon', '@firestitch/date', '@firestitch/selection', 'anchorme'], factory) :
4
- (global = global || self, factory((global.firestitch = global.firestitch || {}, global.firestitch['app-message'] = {}), global.ng.core, global.ng.common, global.ng.router, global.ng.flexLayout, global.ng.material.button, global.ng.material.core, global.ng.material.dialog, global.ng.material.formField, global.ng.material.input, global.ng.material.select, global.ng.material.tabs, global.ng.material.checkbox, global.ng.material.tooltip, global.label, global.dialog$1, global.list, global.skeleton, global.ng.forms, global.form, global.textEditor, global.editor, global.rxjs.operators, global.rxjs, global.filter, global.message, global.prompt, global.iframe, global.ng.material.icon, global.date, global.selection, global.anchorme));
5
- }(this, (function (exports, core, common, router, flexLayout, button, core$1, dialog, formField, input, select, tabs, checkbox, tooltip, label, dialog$1, list, skeleton, forms, form, textEditor, editor, operators, rxjs, filter, message, prompt, iframe, icon, date, selection, anchorme) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/router'), require('@angular/flex-layout'), require('@angular/material/button'), require('@angular/material/core'), require('@angular/material/dialog'), require('@angular/material/form-field'), require('@angular/material/input'), require('@angular/material/select'), require('@angular/material/tabs'), require('@angular/material/checkbox'), require('@angular/material/tooltip'), require('@firestitch/label'), require('@firestitch/dialog'), require('@firestitch/list'), require('@firestitch/skeleton'), require('@angular/forms'), require('@firestitch/form'), require('@firestitch/text-editor'), require('rxjs/operators'), require('rxjs'), require('@firestitch/filter'), require('@firestitch/iframe'), require('@firestitch/prompt'), require('@firestitch/message'), require('@angular/flex-layout/flex'), require('@angular/material/icon'), require('@firestitch/date'), require('@firestitch/selection'), require('anchorme')) :
3
+ typeof define === 'function' && define.amd ? define('@firestitch/app-message', ['exports', '@angular/core', '@angular/common', '@angular/router', '@angular/flex-layout', '@angular/material/button', '@angular/material/core', '@angular/material/dialog', '@angular/material/form-field', '@angular/material/input', '@angular/material/select', '@angular/material/tabs', '@angular/material/checkbox', '@angular/material/tooltip', '@firestitch/label', '@firestitch/dialog', '@firestitch/list', '@firestitch/skeleton', '@angular/forms', '@firestitch/form', '@firestitch/text-editor', 'rxjs/operators', 'rxjs', '@firestitch/filter', '@firestitch/iframe', '@firestitch/prompt', '@firestitch/message', '@angular/flex-layout/flex', '@angular/material/icon', '@firestitch/date', '@firestitch/selection', 'anchorme'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.firestitch = global.firestitch || {}, global.firestitch["app-message"] = {}), global.ng.core, global.ng.common, global.ng.router, global.ng.flexLayout, global.ng.material.button, global.ng.material.core, global.ng.material.dialog, global.ng.material.formField, global.ng.material.input, global.ng.material.select, global.ng.material.tabs, global.ng.material.checkbox, global.ng.material.tooltip, global.i6$1, global.i4, global.i2$2, global.i12, global.ng.forms, global.i14, global.i9, global.rxjs.operators, global.rxjs, global.filter, global.i2, global.i1$1, global.i2$1, global.ng.flexLayout.flex, global.ng.material.icon, global.i10, global.selection, global.anchorme));
5
+ })(this, (function (exports, i0, i15, router, flexLayout, i11, i8, i1, i6, i17, i7, i5, checkbox, i3, i6$1, i4, i2$2, i12, i13, i14, i9, operators, rxjs, filter, i2, i1$1, i2$1, i16, i1$2, i10, selection, anchorme) { 'use strict';
6
6
 
7
- anchorme = anchorme && Object.prototype.hasOwnProperty.call(anchorme, 'default') ? anchorme['default'] : anchorme;
7
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
9
- /*! *****************************************************************************
10
- Copyright (c) Microsoft Corporation.
11
-
12
- Permission to use, copy, modify, and/or distribute this software for any
13
- purpose with or without fee is hereby granted.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
16
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
17
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
18
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
19
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
20
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
21
- PERFORMANCE OF THIS SOFTWARE.
22
- ***************************************************************************** */
23
- /* global Reflect, Promise */
24
-
25
- var extendStatics = function(d, b) {
26
- extendStatics = Object.setPrototypeOf ||
27
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
28
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
29
- return extendStatics(d, b);
30
- };
31
-
32
- function __extends(d, b) {
33
- extendStatics(d, b);
34
- function __() { this.constructor = d; }
35
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
36
- }
37
-
38
- var __assign = function() {
39
- __assign = Object.assign || function __assign(t) {
40
- for (var s, i = 1, n = arguments.length; i < n; i++) {
41
- s = arguments[i];
42
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
43
- }
44
- return t;
45
- };
46
- return __assign.apply(this, arguments);
47
- };
48
-
49
- function __rest(s, e) {
50
- var t = {};
51
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
52
- t[p] = s[p];
53
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
54
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
55
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
56
- t[p[i]] = s[p[i]];
57
- }
58
- return t;
59
- }
60
-
61
- function __decorate(decorators, target, key, desc) {
62
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
63
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
64
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
65
- return c > 3 && r && Object.defineProperty(target, key, r), r;
66
- }
67
-
68
- function __param(paramIndex, decorator) {
69
- return function (target, key) { decorator(target, key, paramIndex); }
70
- }
71
-
72
- function __metadata(metadataKey, metadataValue) {
73
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
74
- }
75
-
76
- function __awaiter(thisArg, _arguments, P, generator) {
77
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
78
- return new (P || (P = Promise))(function (resolve, reject) {
79
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
80
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
81
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
82
- step((generator = generator.apply(thisArg, _arguments || [])).next());
83
- });
84
- }
85
-
86
- function __generator(thisArg, body) {
87
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
88
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
89
- function verb(n) { return function (v) { return step([n, v]); }; }
90
- function step(op) {
91
- if (f) throw new TypeError("Generator is already executing.");
92
- while (_) try {
93
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
94
- if (y = 0, t) op = [op[0] & 2, t.value];
95
- switch (op[0]) {
96
- case 0: case 1: t = op; break;
97
- case 4: _.label++; return { value: op[1], done: false };
98
- case 5: _.label++; y = op[1]; op = [0]; continue;
99
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
100
- default:
101
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
102
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
103
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
104
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
105
- if (t[2]) _.ops.pop();
106
- _.trys.pop(); continue;
107
- }
108
- op = body.call(thisArg, _);
109
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
110
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
111
- }
112
- }
113
-
114
- function __createBinding(o, m, k, k2) {
115
- if (k2 === undefined) k2 = k;
116
- o[k2] = m[k];
117
- }
118
-
119
- function __exportStar(m, exports) {
120
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p];
121
- }
122
-
123
- function __values(o) {
124
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
125
- if (m) return m.call(o);
126
- if (o && typeof o.length === "number") return {
127
- next: function () {
128
- if (o && i >= o.length) o = void 0;
129
- return { value: o && o[i++], done: !o };
130
- }
131
- };
132
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
133
- }
134
-
135
- function __read(o, n) {
136
- var m = typeof Symbol === "function" && o[Symbol.iterator];
137
- if (!m) return o;
138
- var i = m.call(o), r, ar = [], e;
139
- try {
140
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
141
- }
142
- catch (error) { e = { error: error }; }
143
- finally {
144
- try {
145
- if (r && !r.done && (m = i["return"])) m.call(i);
146
- }
147
- finally { if (e) throw e.error; }
148
- }
149
- return ar;
150
- }
151
-
152
- function __spread() {
153
- for (var ar = [], i = 0; i < arguments.length; i++)
154
- ar = ar.concat(__read(arguments[i]));
155
- return ar;
156
- }
157
-
158
- function __spreadArrays() {
159
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
160
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
161
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
162
- r[k] = a[j];
163
- return r;
164
- };
165
-
166
- function __await(v) {
167
- return this instanceof __await ? (this.v = v, this) : new __await(v);
168
- }
169
-
170
- function __asyncGenerator(thisArg, _arguments, generator) {
171
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
172
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
173
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
174
- function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
175
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
176
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
177
- function fulfill(value) { resume("next", value); }
178
- function reject(value) { resume("throw", value); }
179
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
180
- }
181
-
182
- function __asyncDelegator(o) {
183
- var i, p;
184
- return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
185
- function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
186
- }
187
-
188
- function __asyncValues(o) {
189
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
190
- var m = o[Symbol.asyncIterator], i;
191
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
192
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
193
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
194
- }
195
-
196
- function __makeTemplateObject(cooked, raw) {
197
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
198
- return cooked;
199
- };
200
-
201
- function __importStar(mod) {
202
- if (mod && mod.__esModule) return mod;
203
- var result = {};
204
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
205
- result.default = mod;
206
- return result;
207
- }
208
-
209
- function __importDefault(mod) {
210
- return (mod && mod.__esModule) ? mod : { default: mod };
211
- }
212
-
213
- function __classPrivateFieldGet(receiver, privateMap) {
214
- if (!privateMap.has(receiver)) {
215
- throw new TypeError("attempted to get private field on non-instance");
216
- }
217
- return privateMap.get(receiver);
218
- }
219
-
220
- function __classPrivateFieldSet(receiver, privateMap, value) {
221
- if (!privateMap.has(receiver)) {
222
- throw new TypeError("attempted to set private field on non-instance");
223
- }
224
- privateMap.set(receiver, value);
225
- return value;
9
+ function _interopNamespace(e) {
10
+ if (e && e.__esModule) return e;
11
+ var n = Object.create(null);
12
+ if (e) {
13
+ Object.keys(e).forEach(function (k) {
14
+ if (k !== 'default') {
15
+ var d = Object.getOwnPropertyDescriptor(e, k);
16
+ Object.defineProperty(n, k, d.get ? d : {
17
+ enumerable: true,
18
+ get: function () { return e[k]; }
19
+ });
20
+ }
21
+ });
22
+ }
23
+ n["default"] = e;
24
+ return Object.freeze(n);
226
25
  }
227
26
 
228
- var EmailMessageFormat;
229
- (function (EmailMessageFormat) {
230
- EmailMessageFormat["Text"] = "T";
231
- EmailMessageFormat["HTML"] = "H";
232
- EmailMessageFormat["RichText"] = "R";
27
+ var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
28
+ var i15__namespace = /*#__PURE__*/_interopNamespace(i15);
29
+ var i11__namespace = /*#__PURE__*/_interopNamespace(i11);
30
+ var i8__namespace = /*#__PURE__*/_interopNamespace(i8);
31
+ var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
32
+ var i6__namespace = /*#__PURE__*/_interopNamespace(i6);
33
+ var i17__namespace = /*#__PURE__*/_interopNamespace(i17);
34
+ var i7__namespace = /*#__PURE__*/_interopNamespace(i7);
35
+ var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
36
+ var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
37
+ var i6__namespace$1 = /*#__PURE__*/_interopNamespace(i6$1);
38
+ var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
39
+ var i2__namespace$2 = /*#__PURE__*/_interopNamespace(i2$2);
40
+ var i12__namespace = /*#__PURE__*/_interopNamespace(i12);
41
+ var i13__namespace = /*#__PURE__*/_interopNamespace(i13);
42
+ var i14__namespace = /*#__PURE__*/_interopNamespace(i14);
43
+ var i9__namespace = /*#__PURE__*/_interopNamespace(i9);
44
+ var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
45
+ var i1__namespace$1 = /*#__PURE__*/_interopNamespace(i1$1);
46
+ var i2__namespace$1 = /*#__PURE__*/_interopNamespace(i2$1);
47
+ var i16__namespace = /*#__PURE__*/_interopNamespace(i16);
48
+ var i1__namespace$2 = /*#__PURE__*/_interopNamespace(i1$2);
49
+ var i10__namespace = /*#__PURE__*/_interopNamespace(i10);
50
+ var anchorme__default = /*#__PURE__*/_interopDefaultLegacy(anchorme);
51
+
52
+ var EmailMessageFormat;
53
+ (function (EmailMessageFormat) {
54
+ EmailMessageFormat["Text"] = "T";
55
+ EmailMessageFormat["HTML"] = "H";
56
+ EmailMessageFormat["RichText"] = "R";
233
57
  })(EmailMessageFormat || (EmailMessageFormat = {}));
234
58
 
235
- var EmailMessageFormats = [
236
- { name: 'Text', value: EmailMessageFormat.Text },
237
- { name: 'HTML', value: EmailMessageFormat.HTML },
238
- { name: 'Rich Text', value: EmailMessageFormat.RichText }
59
+ var EmailMessageFormats = [
60
+ { name: 'Text', value: EmailMessageFormat.Text },
61
+ { name: 'HTML', value: EmailMessageFormat.HTML },
62
+ { name: 'Rich Text', value: EmailMessageFormat.RichText }
239
63
  ];
240
64
 
241
- var PreviewComponent = /** @class */ (function () {
242
- function PreviewComponent(_data) {
243
- this._data = _data;
244
- this.html = _data.html;
245
- this.styles = _data.styles;
246
- }
247
- PreviewComponent.prototype.ngOnInit = function () {
248
- };
249
- PreviewComponent.ctorParameters = function () { return [
250
- { type: undefined, decorators: [{ type: core.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
251
- ]; };
252
- PreviewComponent = __decorate([
253
- core.Component({
254
- template: "<fs-dialog>\n <div mat-dialog-title>Preview</div>\n <mat-dialog-content>\n <fs-iframe\n [html]=\"html\"\n [styles]=\"styles\">\n </fs-iframe>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button [mat-dialog-close]=\"null\" color=\"primary\" type=\"button\">Done</button>\n </mat-dialog-actions>\n</fs-dialog>\n",
255
- styles: [""]
256
- }),
257
- __param(0, core.Inject(dialog.MAT_DIALOG_DATA)),
258
- __metadata("design:paramtypes", [Object])
259
- ], PreviewComponent);
260
- return PreviewComponent;
65
+ var PreviewComponent = /** @class */ (function () {
66
+ function PreviewComponent(_data) {
67
+ this._data = _data;
68
+ this.html = _data.html;
69
+ this.styles = _data.styles;
70
+ }
71
+ PreviewComponent.prototype.ngOnInit = function () {
72
+ };
73
+ return PreviewComponent;
261
74
  }());
75
+ PreviewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewComponent, deps: [{ token: i1.MAT_DIALOG_DATA }], target: i0__namespace.ɵɵFactoryTarget.Component });
76
+ PreviewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: PreviewComponent, selector: "ng-component", ngImport: i0__namespace, template: "<fs-dialog>\n <div mat-dialog-title>Preview</div>\n <mat-dialog-content>\n <fs-iframe\n [html]=\"html\"\n [styles]=\"styles\">\n </fs-iframe>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button [mat-dialog-close]=\"null\" color=\"primary\" type=\"button\">Done</button>\n </mat-dialog-actions>\n</fs-dialog>\n", styles: [""], components: [{ type: i4__namespace.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i2__namespace.FsIFrameComponent, selector: "fs-iframe", inputs: ["html", "styles"] }, { type: i11__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1__namespace.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1__namespace.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1__namespace.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i1__namespace.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
77
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewComponent, decorators: [{
78
+ type: i0.Component,
79
+ args: [{
80
+ templateUrl: './preview.component.html',
81
+ styleUrls: ['./preview.component.scss']
82
+ }]
83
+ }], ctorParameters: function () {
84
+ return [{ type: undefined, decorators: [{
85
+ type: i0.Inject,
86
+ args: [i1.MAT_DIALOG_DATA]
87
+ }] }];
88
+ } });
262
89
 
263
- var FS_APP_MESSAGE_ROOT_CONFIG = new core.InjectionToken('fs-app-message-root-config');
264
- var FS_APP_MESSAGE_CONFIG = new core.InjectionToken('fs-app-message-config');
90
+ var FS_APP_MESSAGE_ROOT_CONFIG = new i0.InjectionToken('fs-app-message-root-config');
91
+ var FS_APP_MESSAGE_CONFIG = new i0.InjectionToken('fs-app-message-config');
265
92
 
266
- var MessageComponent = /** @class */ (function () {
267
- function MessageComponent(_config, _data, _prompt, _message, _dialog, _cdRef) {
268
- var _this = this;
269
- this._config = _config;
270
- this._data = _data;
271
- this._prompt = _prompt;
272
- this._message = _message;
273
- this._dialog = _dialog;
274
- this._cdRef = _cdRef;
275
- this.messageTemplates = [];
276
- this.emailMessageFormats = EmailMessageFormats;
277
- this.emailMessageFormat = EmailMessageFormat;
278
- this.save = function () {
279
- return _this._config.saveMessage(_this.message)
280
- .pipe(operators.tap(function () {
281
- _this._message.success('Saved Changes');
282
- }));
283
- };
284
- }
285
- MessageComponent.prototype.ngOnInit = function () {
286
- var _this = this;
287
- this._config.loadMessage(this._data.message)
288
- .subscribe(function (response) {
289
- _this.message = response;
290
- if (_this.message.emailMessage && _this.message.emailMessage.customize === undefined) {
291
- _this.message.emailMessage.customize = true;
292
- }
293
- if (_this.message.smsMessage && _this.message.smsMessage.customize === undefined) {
294
- _this.message.smsMessage.customize = true;
295
- }
296
- _this._cdRef.markForCheck();
297
- });
298
- this._config.loadMessageTemplates()
299
- .subscribe(function (data) {
300
- _this.messageTemplates = data.data;
301
- _this._cdRef.markForCheck();
302
- });
303
- };
304
- MessageComponent.prototype.tabChange = function (event) {
305
- switch (event.tab.textLabel) {
306
- case 'SMS Message':
307
- this.tab = 'sms';
308
- break;
309
- case 'Email Message':
310
- this.tab = 'email';
311
- break;
312
- default:
313
- this.tab = null;
314
- }
315
- };
316
- MessageComponent.prototype.openPreview = function () {
317
- var _this = this;
318
- var html = this.message.emailMessage.body;
319
- var styles = this.message.emailMessage.styles;
320
- if (this.message.emailMessage.messageTemplateId) {
321
- var messageTemplate = this.messageTemplates
322
- .find(function (item) {
323
- return _this.message.emailMessage.messageTemplateId === item.id;
324
- });
325
- if (messageTemplate) {
326
- html = messageTemplate.content.replace('{$content}', html);
327
- styles = messageTemplate.styles.concat(styles);
328
- }
329
- }
330
- this._dialog.open(PreviewComponent, {
331
- data: {
332
- styles: styles,
333
- html: html,
334
- },
335
- width: '95%'
336
- });
337
- };
338
- MessageComponent.prototype.sendTest = function (type) {
339
- var _this = this;
340
- rxjs.of(true)
341
- .pipe(operators.switchMap(function () {
342
- return type === 'email' ? _this._config.getTestEmail() : rxjs.of('');
343
- }), operators.switchMap(function (default_) {
344
- var typeName = type === 'email' ? 'an email' : 'phone number';
345
- return _this._prompt.input({
346
- label: "Please enter " + typeName + " to send test to",
347
- title: 'Send Test',
348
- commitLabel: 'Send',
349
- default: default_,
350
- required: true
351
- });
352
- }))
353
- .subscribe(function (value) {
354
- _this._config.testMessage(_this.message, value, type)
355
- .subscribe(function () {
356
- _this._message.success('Test Sent');
357
- });
358
- });
359
- };
360
- MessageComponent.ctorParameters = function () { return [
361
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
362
- { type: undefined, decorators: [{ type: core.Inject, args: [dialog.MAT_DIALOG_DATA,] }] },
363
- { type: prompt.FsPrompt },
364
- { type: message.FsMessage },
365
- { type: dialog.MatDialog },
366
- { type: core.ChangeDetectorRef }
367
- ]; };
368
- MessageComponent = __decorate([
369
- core.Component({
370
- template: "<form\n fsForm\n [submit]=\"save\"\n #form=\"ngForm\"\n *fsSkeleton=\"message\"\n [dirtyConfirmTabs]=\"false\">\n <fs-dialog *ngIf=\"message\">\n <div mat-dialog-title>Edit Message</div>\n <mat-dialog-content>\n\n <mat-tab-group (selectedTabChange)=\"tabChange($event)\">\n <mat-tab label=\"General\">\n <ng-template matTabContent>\n <div fxLayout=\"column\">\n <mat-form-field>\n <input\n matInput\n placeholder=\"Name\"\n [(ngModel)]=\"message.name\"\n name=\"Name\"\n required>\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n placeholder=\"Description\"\n [(ngModel)]=\"message.description\"\n name=\"description\">\n </mat-form-field>\n\n <div\n fxLayout=\"row\"\n fxLayoutGap=\"10px\"\n fxLayout.xs=\"column\"\n fxLayout.sm=\"column\">\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"From Email\"\n [(ngModel)]=\"message.emailMessage.fromEmail\"\n name=\"from_email\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"From Name\"\n [(ngModel)]=\"message.emailMessage.fromName\"\n name=\"from_name\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"Reply To\"\n [(ngModel)]=\"message.emailMessage.replyTo\"\n name=\"reply_to\">\n </mat-form-field>\n </div>\n\n <div\n fxLayout=\"row\"\n fxLayoutGap=\"10px\"\n fxLayout.xs=\"column\"\n fxLayout.sm=\"column\">\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"To\"\n [(ngModel)]=\"message.emailMessage.toRecipients\"\n name=\"to\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"CC\"\n [(ngModel)]=\"message.emailMessage.ccRecipients\"\n name=\"cc\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"BCC\"\n [(ngModel)]=\"message.emailMessage.bccRecipients\"\n name=\"bcc\">\n </mat-form-field>\n </div>\n </div>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Email Message\" *ngIf=\"message.emailMessage\">\n <ng-template matTabContent>\n <div fxLayout=\"column\">\n <div fxLayout=\"row\" fxLayoutGap=\"10px\">\n <mat-form-field>\n <mat-select\n required\n placeholder=\"Customize Message\"\n [(ngModel)]=\"message.emailMessage.customize\"\n name=\"customizeEmail\">\n <mat-option [value]=\"true\">Yes</mat-option>\n <mat-option [value]=\"false\">No</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-select\n required\n placeholder=\"Format\"\n [(ngModel)]=\"message.emailMessage.format\"\n name=\"format\">\n <mat-option *ngFor=\"let item of emailMessageFormats\" [value]=\"item.value\">\n {{item.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-select\n placeholder=\"Template\"\n [(ngModel)]=\"message.emailMessage.messageTemplateId\"\n name=\"template\">\n <mat-option [value]=\"null\">None</mat-option>\n <mat-option *ngFor=\"let item of messageTemplates\" [value]=\"item.id\">\n {{item.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <ng-container *ngIf=\"message.emailMessage.customize\">\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"Subject\"\n [(ngModel)]=\"message.emailMessage.subject\"\n name=\"name\"\n required>\n </mat-form-field>\n\n <div [@.disabled]=\"true\">\n <mat-tab-group [dynamicHeight]=\"false\">\n <mat-tab label=\"Content\">\n <ng-template matTabContent>\n <fs-text-editor\n *ngIf=\"message.emailMessage.format===emailMessageFormat.HTML\"\n [(ngModel)]=\"message.emailMessage.body\"\n name=\"body\"\n [config]=\"{ language: 'html '}\">\n </fs-text-editor>\n\n <fs-editor-rich-text\n *ngIf=\"message.emailMessage.format===emailMessageFormat.RichText\"\n [(ngModel)]=\"message.emailMessage.body\"\n name=\"body\">\n </fs-editor-rich-text>\n\n <fs-text-editor\n *ngIf=\"message.emailMessage.format===emailMessageFormat.Text\"\n [(ngModel)]=\"message.emailMessage.body\"\n name=\"emailMessageBody\"\n [config]=\"{ language: 'text' }\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n <mat-tab\n *ngIf=\"message.emailMessage.format===emailMessageFormat.HTML\"\n label=\"Styles\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"message.emailMessage.styles\"\n name=\"styles\"\n [config]=\"{ language: 'scss' }\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!message.emailMessage.customize\">\n <fs-label-field>\n <fs-label>Subject</fs-label>\n {{message.defaultEmailSubject}}\n </fs-label-field>\n <div>\n <fs-label-field>\n <fs-label>Content</fs-label>\n <div\n class=\"email-body-html-default\"\n *ngIf=\"message.emailMessage.format===emailMessageFormat.HTML\">\n {{message.defaultEmailBody}}\n </div>\n <div\n *ngIf=\"message.emailMessage.format===emailMessageFormat.RichText\"\n fsEditorRenderer\n name=\"defaultEmailBody\"\n [ngModel]=\"message.defaultEmailBody\">\n </div>\n <div\n class=\"email-body-text-default\"\n *ngIf=\"message.emailMessage.format===emailMessageFormat.Text\">\n {{message.defaultEmailBody}}\n </div>\n </fs-label-field>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </mat-tab>\n\n <mat-tab label=\"SMS Message\" *ngIf=\"message.smsMessage\">\n <ng-template matTabContent>\n <mat-form-field>\n <mat-select\n required\n placeholder=\"Customize Message\"\n [(ngModel)]=\"message.smsMessage.customize\"\n name=\"customizeSms\">\n <mat-option [value]=\"true\">Yes</mat-option>\n <mat-option [value]=\"false\">No</mat-option>\n </mat-select>\n </mat-form-field>\n <div\n *ngIf=\"message.smsMessage.customize\"\n [@.disabled]=\"true\">\n <mat-tab-group [dynamicHeight]=\"false\">\n <mat-tab label=\"Content\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"message.smsMessage.message\"\n name=\"smsMessageMessage\"\n [config]=\"{ language: 'text '}\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n <fs-label-field *ngIf=\"!message.smsMessage.customize\">\n <fs-label>Message</fs-label>\n {{message.defaultSmsMessage}}\n </fs-label-field>\n </ng-template>\n </mat-tab>\n\n <mat-tab label=\"Variables\" *ngIf=\"message.variables\">\n <ng-template matTabContent>\n <div *ngFor=\"let variable of message.variables\" class=\"variable\">\n {{variable.name}}\n </div>\n </ng-template>\n </mat-tab>\n\n <mat-tab label=\"Defaults\">\n <ng-template matTabContent>\n <ng-container *ngIf=\"message.emailMessage\">\n <h2 *ngIf=\"message.emailMessage && message.smsMessage\">Email</h2>\n <fs-label-field>\n <fs-label>Subject</fs-label>\n <div class=\"content\">{{message.defaultEmailSubject}}</div>\n </fs-label-field>\n <fs-label-field>\n <fs-label>Content</fs-label>\n <div class=\"content\">{{message.defaultEmailBody}}</div>\n </fs-label-field>\n </ng-container>\n <ng-container *ngIf=\"message.smsMessage\">\n <h2 *ngIf=\"message.emailMessage && message.smsMessage\">SMS</h2>\n <fs-label-field>\n <fs-label>Content</fs-label>\n <div class=\"content\">{{message.defaultSmsMessage}}</div>\n </fs-label-field>\n </ng-container>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button color=\"primary\">Save</button>\n <button\n *ngIf=\"tab==='email' && message.emailMessage.format===emailMessageFormat.HTML\"\n mat-button\n type=\"button\"\n (click)=\"openPreview()\"\n type=\"button\">\n Preview\n </button>\n <button\n *ngIf=\"tab==='email'\"\n mat-button\n type=\"button\"\n (click)=\"sendTest('email')\"\n type=\"button\">\n Send Test Email\n </button>\n <button\n *ngIf=\"tab==='sms'\"\n mat-button\n type=\"button\"\n (click)=\"sendTest('sms')\"\n type=\"button\">\n Send Test SMS\n </button>\n <button mat-button [mat-dialog-close]=\"null\" type=\"button\">Cancel</button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n",
371
- changeDetection: core.ChangeDetectionStrategy.OnPush,
372
- styles: ["fs-label-field .content{white-space:pre-wrap}:host ::ng-deep .mat-tab-body,:host ::ng-deep .mat-tab-body-content{overflow:visible}:host ::ng-deep .sms-message{width:100%}:host ::ng-deep .email-body-html-default,:host ::ng-deep .email-body-text-default{white-space:pre-line}.email-body-text{width:100%}.variable{margin-bottom:4px}"]
373
- }),
374
- __param(0, core.Inject(FS_APP_MESSAGE_CONFIG)),
375
- __param(1, core.Inject(dialog.MAT_DIALOG_DATA)),
376
- __metadata("design:paramtypes", [Object, Object, prompt.FsPrompt,
377
- message.FsMessage,
378
- dialog.MatDialog,
379
- core.ChangeDetectorRef])
380
- ], MessageComponent);
381
- return MessageComponent;
93
+ var MessageComponent = /** @class */ (function () {
94
+ function MessageComponent(_config, _data, _prompt, _message, _dialog, _cdRef) {
95
+ var _this = this;
96
+ this._config = _config;
97
+ this._data = _data;
98
+ this._prompt = _prompt;
99
+ this._message = _message;
100
+ this._dialog = _dialog;
101
+ this._cdRef = _cdRef;
102
+ this.messageTemplates = [];
103
+ this.emailMessageFormats = EmailMessageFormats;
104
+ this.emailMessageFormat = EmailMessageFormat;
105
+ this.save = function () {
106
+ return _this._config.saveMessage(_this.message)
107
+ .pipe(operators.tap(function () {
108
+ _this._message.success('Saved Changes');
109
+ }));
110
+ };
111
+ }
112
+ MessageComponent.prototype.ngOnInit = function () {
113
+ var _this = this;
114
+ this._config.loadMessage(this._data.message)
115
+ .subscribe(function (response) {
116
+ _this.message = response;
117
+ if (_this.message.emailMessage && _this.message.emailMessage.customize === undefined) {
118
+ _this.message.emailMessage.customize = true;
119
+ }
120
+ if (_this.message.smsMessage && _this.message.smsMessage.customize === undefined) {
121
+ _this.message.smsMessage.customize = true;
122
+ }
123
+ _this._cdRef.markForCheck();
124
+ });
125
+ this._config.loadMessageTemplates()
126
+ .subscribe(function (data) {
127
+ _this.messageTemplates = data.data;
128
+ _this._cdRef.markForCheck();
129
+ });
130
+ };
131
+ MessageComponent.prototype.tabChange = function (event) {
132
+ switch (event.tab.textLabel) {
133
+ case 'SMS Message':
134
+ this.tab = 'sms';
135
+ break;
136
+ case 'Email Message':
137
+ this.tab = 'email';
138
+ break;
139
+ default:
140
+ this.tab = null;
141
+ }
142
+ };
143
+ MessageComponent.prototype.openPreview = function () {
144
+ var _this = this;
145
+ var html = this.message.emailMessage.body;
146
+ var styles = this.message.emailMessage.styles;
147
+ if (this.message.emailMessage.messageTemplateId) {
148
+ var messageTemplate = this.messageTemplates
149
+ .find(function (item) {
150
+ return _this.message.emailMessage.messageTemplateId === item.id;
151
+ });
152
+ if (messageTemplate) {
153
+ html = messageTemplate.content.replace('{$content}', html);
154
+ styles = messageTemplate.styles.concat(styles);
155
+ }
156
+ }
157
+ this._dialog.open(PreviewComponent, {
158
+ data: {
159
+ styles: styles,
160
+ html: html,
161
+ },
162
+ width: '95%'
163
+ });
164
+ };
165
+ MessageComponent.prototype.sendTest = function (type) {
166
+ var _this = this;
167
+ rxjs.of(true)
168
+ .pipe(operators.switchMap(function () {
169
+ return type === 'email' ? _this._config.getTestEmail() : rxjs.of('');
170
+ }), operators.switchMap(function (default_) {
171
+ var typeName = type === 'email' ? 'an email' : 'phone number';
172
+ return _this._prompt.input({
173
+ label: "Please enter " + typeName + " to send test to",
174
+ title: 'Send Test',
175
+ commitLabel: 'Send',
176
+ default: default_,
177
+ required: true
178
+ });
179
+ }))
180
+ .subscribe(function (value) {
181
+ _this._config.testMessage(_this.message, value, type)
182
+ .subscribe(function () {
183
+ _this._message.success('Test Sent');
184
+ });
185
+ });
186
+ };
187
+ return MessageComponent;
382
188
  }());
189
+ MessageComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: MessageComponent, deps: [{ token: FS_APP_MESSAGE_CONFIG }, { token: i1.MAT_DIALOG_DATA }, { token: i1__namespace$1.FsPrompt }, { token: i2__namespace$1.FsMessage }, { token: i1__namespace.MatDialog }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
190
+ MessageComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MessageComponent, selector: "ng-component", ngImport: i0__namespace, template: "<form\n fsForm\n [submit]=\"save\"\n #form=\"ngForm\"\n *fsSkeleton=\"message\"\n [confirmTabs]=\"false\">\n <fs-dialog *ngIf=\"message\">\n <div mat-dialog-title>Edit Message</div>\n <mat-dialog-content>\n\n <mat-tab-group (selectedTabChange)=\"tabChange($event)\">\n <mat-tab label=\"General\">\n <ng-template matTabContent>\n <div fxLayout=\"column\">\n <mat-form-field>\n <input\n matInput\n placeholder=\"Name\"\n [(ngModel)]=\"message.name\"\n name=\"Name\"\n required>\n </mat-form-field>\n <mat-form-field>\n <input\n matInput\n placeholder=\"Description\"\n [(ngModel)]=\"message.description\"\n name=\"description\">\n </mat-form-field>\n\n <div\n fxLayout=\"row\"\n fxLayoutGap=\"10px\"\n fxLayout.xs=\"column\"\n fxLayout.sm=\"column\">\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"From Email\"\n [(ngModel)]=\"message.emailMessage.fromEmail\"\n name=\"from_email\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"From Name\"\n [(ngModel)]=\"message.emailMessage.fromName\"\n name=\"from_name\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"Reply To\"\n [(ngModel)]=\"message.emailMessage.replyTo\"\n name=\"reply_to\">\n </mat-form-field>\n </div>\n\n <div\n fxLayout=\"row\"\n fxLayoutGap=\"10px\"\n fxLayout.xs=\"column\"\n fxLayout.sm=\"column\">\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"To\"\n [(ngModel)]=\"message.emailMessage.toRecipients\"\n name=\"to\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"CC\"\n [(ngModel)]=\"message.emailMessage.ccRecipients\"\n name=\"cc\">\n </mat-form-field>\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"BCC\"\n [(ngModel)]=\"message.emailMessage.bccRecipients\"\n name=\"bcc\">\n </mat-form-field>\n </div>\n </div>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Email Message\" *ngIf=\"message.emailMessage\">\n <ng-template matTabContent>\n <div fxLayout=\"column\">\n <div fxLayout=\"row\" fxLayoutGap=\"10px\">\n <mat-form-field>\n <mat-select\n required\n placeholder=\"Customize Message\"\n [(ngModel)]=\"message.emailMessage.customize\"\n name=\"customizeEmail\">\n <mat-option [value]=\"true\">Yes</mat-option>\n <mat-option [value]=\"false\">No</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-select\n required\n placeholder=\"Format\"\n [(ngModel)]=\"message.emailMessage.format\"\n name=\"format\">\n <mat-option *ngFor=\"let item of emailMessageFormats\" [value]=\"item.value\">\n {{item.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-select\n placeholder=\"Template\"\n [(ngModel)]=\"message.emailMessage.messageTemplateId\"\n name=\"template\">\n <mat-option [value]=\"null\">None</mat-option>\n <mat-option *ngFor=\"let item of messageTemplates\" [value]=\"item.id\">\n {{item.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <ng-container *ngIf=\"message.emailMessage.customize\">\n <mat-form-field fxFlex>\n <input\n matInput\n placeholder=\"Subject\"\n [(ngModel)]=\"message.emailMessage.subject\"\n name=\"name\"\n required>\n </mat-form-field>\n\n <div [@.disabled]=\"true\">\n <mat-tab-group [dynamicHeight]=\"false\">\n <mat-tab label=\"Content\">\n <ng-template matTabContent>\n <fs-text-editor\n *ngIf=\"message.emailMessage.format===emailMessageFormat.HTML\"\n [(ngModel)]=\"message.emailMessage.body\"\n name=\"body\"\n [config]=\"{ language: 'html '}\">\n </fs-text-editor>\n\n <fs-editor-rich-text\n *ngIf=\"message.emailMessage.format===emailMessageFormat.RichText\"\n [(ngModel)]=\"message.emailMessage.body\"\n name=\"body\">\n </fs-editor-rich-text>\n\n <fs-text-editor\n *ngIf=\"message.emailMessage.format===emailMessageFormat.Text\"\n [(ngModel)]=\"message.emailMessage.body\"\n name=\"emailMessageBody\"\n [config]=\"{ language: 'text' }\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n <mat-tab\n *ngIf=\"message.emailMessage.format===emailMessageFormat.HTML\"\n label=\"Styles\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"message.emailMessage.styles\"\n name=\"styles\"\n [config]=\"{ language: 'scss' }\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!message.emailMessage.customize\">\n <fs-label-field>\n <fs-label>Subject</fs-label>\n {{message.defaultEmailSubject}}\n </fs-label-field>\n <div>\n <fs-label-field>\n <fs-label>Content</fs-label>\n <div\n class=\"email-body-html-default\"\n *ngIf=\"message.emailMessage.format===emailMessageFormat.HTML\">\n {{message.defaultEmailBody}}\n </div>\n <div\n *ngIf=\"message.emailMessage.format===emailMessageFormat.RichText\"\n fsEditorRenderer\n name=\"defaultEmailBody\"\n [ngModel]=\"message.defaultEmailBody\">\n </div>\n <div\n class=\"email-body-text-default\"\n *ngIf=\"message.emailMessage.format===emailMessageFormat.Text\">\n {{message.defaultEmailBody}}\n </div>\n </fs-label-field>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </mat-tab>\n\n <mat-tab label=\"SMS Message\" *ngIf=\"message.smsMessage\">\n <ng-template matTabContent>\n <mat-form-field>\n <mat-select\n required\n placeholder=\"Customize Message\"\n [(ngModel)]=\"message.smsMessage.customize\"\n name=\"customizeSms\">\n <mat-option [value]=\"true\">Yes</mat-option>\n <mat-option [value]=\"false\">No</mat-option>\n </mat-select>\n </mat-form-field>\n <div\n *ngIf=\"message.smsMessage.customize\"\n [@.disabled]=\"true\">\n <mat-tab-group [dynamicHeight]=\"false\">\n <mat-tab label=\"Content\">\n <ng-template matTabContent>\n <fs-text-editor\n [(ngModel)]=\"message.smsMessage.message\"\n name=\"smsMessageMessage\"\n [config]=\"{ language: 'text '}\">\n </fs-text-editor>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n <fs-label-field *ngIf=\"!message.smsMessage.customize\">\n <fs-label>Message</fs-label>\n {{message.defaultSmsMessage}}\n </fs-label-field>\n </ng-template>\n </mat-tab>\n\n <mat-tab label=\"Variables\" *ngIf=\"message.variables\">\n <ng-template matTabContent>\n <div *ngFor=\"let variable of message.variables\" class=\"variable\">\n {{variable.name}}\n </div>\n </ng-template>\n </mat-tab>\n\n <mat-tab label=\"Defaults\">\n <ng-template matTabContent>\n <ng-container *ngIf=\"message.emailMessage\">\n <h2 *ngIf=\"message.emailMessage && message.smsMessage\">Email</h2>\n <fs-label-field>\n <fs-label>Subject</fs-label>\n <div class=\"content\">{{message.defaultEmailSubject}}</div>\n </fs-label-field>\n <fs-label-field>\n <fs-label>Content</fs-label>\n <div class=\"content\">{{message.defaultEmailBody}}</div>\n </fs-label-field>\n </ng-container>\n <ng-container *ngIf=\"message.smsMessage\">\n <h2 *ngIf=\"message.emailMessage && message.smsMessage\">SMS</h2>\n <fs-label-field>\n <fs-label>Content</fs-label>\n <div class=\"content\">{{message.defaultSmsMessage}}</div>\n </fs-label-field>\n </ng-container>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button color=\"primary\">Save</button>\n <button\n *ngIf=\"tab==='email' && message.emailMessage.format===emailMessageFormat.HTML\"\n mat-button\n type=\"button\"\n (click)=\"openPreview()\"\n type=\"button\">\n Preview\n </button>\n <button\n *ngIf=\"tab==='email'\"\n mat-button\n type=\"button\"\n (click)=\"sendTest('email')\"\n type=\"button\">\n Send Test Email\n </button>\n <button\n *ngIf=\"tab==='sms'\"\n mat-button\n type=\"button\"\n (click)=\"sendTest('sms')\"\n type=\"button\">\n Send Test SMS\n </button>\n <button mat-button [mat-dialog-close]=\"null\" type=\"button\">Cancel</button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: ["fs-label-field .content{white-space:pre-wrap}:host ::ng-deep .mat-tab-body-content,:host ::ng-deep .mat-tab-body{overflow:visible}:host ::ng-deep .sms-message{width:100%}:host ::ng-deep .email-body-text-default,:host ::ng-deep .email-body-html-default{white-space:pre-line}.email-body-text{width:100%}.variable{margin-bottom:4px}\n"], components: [{ type: i4__namespace.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i5__namespace.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { type: i5__namespace.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby"], exportAs: ["matTab"] }, { type: i6__namespace.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i7__namespace.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i8__namespace.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i9__namespace.FsTextEditorComponent, selector: "fs-text-editor", inputs: ["config", "scrollable"], outputs: ["init", "blur"] }, { type: i6__namespace$1.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { type: i6__namespace$1.FsLabelComponent, selector: "fs-label" }, { type: i11__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i12__namespace.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }, { type: i13__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i13__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i13__namespace.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i14__namespace.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i15__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1__namespace.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i5__namespace.MatTabContent, selector: "[matTabContent]" }, { type: i16__namespace.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i17__namespace.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i13__namespace.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i13__namespace.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i13__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i13__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i14__namespace.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i16__namespace.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i16__namespace.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i15__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i1__namespace.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
191
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: MessageComponent, decorators: [{
192
+ type: i0.Component,
193
+ args: [{
194
+ templateUrl: './message.component.html',
195
+ styleUrls: ['./message.component.scss'],
196
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
197
+ }]
198
+ }], ctorParameters: function () {
199
+ return [{ type: undefined, decorators: [{
200
+ type: i0.Inject,
201
+ args: [FS_APP_MESSAGE_CONFIG]
202
+ }] }, { type: undefined, decorators: [{
203
+ type: i0.Inject,
204
+ args: [i1.MAT_DIALOG_DATA]
205
+ }] }, { type: i1__namespace$1.FsPrompt }, { type: i2__namespace$1.FsMessage }, { type: i1__namespace.MatDialog }, { type: i0__namespace.ChangeDetectorRef }];
206
+ } });
383
207
 
384
- function indexNameValue(arry) {
385
- var obj = {};
386
- arry.forEach(function (item) {
387
- obj[item.value] = item.name;
388
- });
389
- return obj;
208
+ function indexNameValue(arry) {
209
+ var obj = {};
210
+ arry.forEach(function (item) {
211
+ obj[item.value] = item.name;
212
+ });
213
+ return obj;
390
214
  }
391
215
 
392
- var MessagesComponent = /** @class */ (function () {
393
- function MessagesComponent(_config, _dialog) {
394
- this._config = _config;
395
- this._dialog = _dialog;
396
- this.list = null;
397
- this.config = null;
398
- this.emailMessageFormats = {};
399
- this._destroy$ = new rxjs.Subject();
400
- }
401
- MessagesComponent.prototype.ngOnInit = function () {
402
- var _this = this;
403
- this.emailMessageFormats = indexNameValue(EmailMessageFormats);
404
- this.config = {
405
- filters: [
406
- {
407
- name: 'keyword',
408
- type: filter.ItemType.Keyword,
409
- label: 'Search'
410
- }
411
- ],
412
- fetch: function (query) {
413
- return _this._config.loadMessages(query)
414
- .pipe(operators.map(function (response) {
415
- return ({ data: response.data, paging: response.paging });
416
- }));
417
- }
418
- };
419
- };
420
- MessagesComponent.prototype.open = function (message) {
421
- var _this = this;
422
- var dialogRef = this._dialog.open(MessageComponent, {
423
- data: {
424
- message: message,
425
- },
426
- width: '85%'
427
- });
428
- dialogRef.afterClosed()
429
- .pipe(operators.takeUntil(this._destroy$))
430
- .subscribe(function () {
431
- _this.list.reload();
432
- });
433
- };
434
- MessagesComponent.prototype.ngOnDestroy = function () {
435
- this._destroy$.next();
436
- this._destroy$.complete();
437
- };
438
- MessagesComponent.ctorParameters = function () { return [
439
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
440
- { type: dialog.MatDialog }
441
- ]; };
442
- __decorate([
443
- core.ViewChild(list.FsListComponent, { static: true }),
444
- __metadata("design:type", list.FsListComponent)
445
- ], MessagesComponent.prototype, "list", void 0);
446
- MessagesComponent = __decorate([
447
- core.Component({
448
- selector: 'fs-app-messages',
449
- template: "<fs-list [config]=\"config\">\n <fs-list-column title=\"Name\" name=\"name\" sortable=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"open(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Email Format\">\n <ng-template fs-list-cell let-row=\"row\">\n {{emailMessageFormats[row.emailMessage.format]}}\n </ng-template>\n </fs-list-column>\n</fs-list>\n"
450
- }),
451
- __param(0, core.Inject(FS_APP_MESSAGE_CONFIG)),
452
- __metadata("design:paramtypes", [Object, dialog.MatDialog])
453
- ], MessagesComponent);
454
- return MessagesComponent;
216
+ var MessagesComponent = /** @class */ (function () {
217
+ function MessagesComponent(_config, _dialog) {
218
+ this._config = _config;
219
+ this._dialog = _dialog;
220
+ this.list = null;
221
+ this.config = null;
222
+ this.emailMessageFormats = {};
223
+ this._destroy$ = new rxjs.Subject();
224
+ }
225
+ MessagesComponent.prototype.ngOnInit = function () {
226
+ var _this = this;
227
+ this.emailMessageFormats = indexNameValue(EmailMessageFormats);
228
+ this.config = {
229
+ filters: [
230
+ {
231
+ name: 'keyword',
232
+ type: filter.ItemType.Keyword,
233
+ label: 'Search'
234
+ }
235
+ ],
236
+ fetch: function (query) {
237
+ return _this._config.loadMessages(query)
238
+ .pipe(operators.map(function (response) {
239
+ return ({ data: response.data, paging: response.paging });
240
+ }));
241
+ }
242
+ };
243
+ };
244
+ MessagesComponent.prototype.open = function (message) {
245
+ var _this = this;
246
+ var dialogRef = this._dialog.open(MessageComponent, {
247
+ data: {
248
+ message: message,
249
+ },
250
+ width: '85%'
251
+ });
252
+ dialogRef.afterClosed()
253
+ .pipe(operators.takeUntil(this._destroy$))
254
+ .subscribe(function () {
255
+ _this.list.reload();
256
+ });
257
+ };
258
+ MessagesComponent.prototype.ngOnDestroy = function () {
259
+ this._destroy$.next();
260
+ this._destroy$.complete();
261
+ };
262
+ return MessagesComponent;
455
263
  }());
264
+ MessagesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: MessagesComponent, deps: [{ token: FS_APP_MESSAGE_CONFIG }, { token: i1__namespace.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Component });
265
+ MessagesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MessagesComponent, selector: "fs-app-messages", viewQueries: [{ propertyName: "list", first: true, predicate: i2$2.FsListComponent, descendants: true, static: true }], ngImport: i0__namespace, template: "<fs-list [config]=\"config\">\n <fs-list-column title=\"Name\" name=\"name\" sortable=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"open(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Email Format\">\n <ng-template fs-list-cell let-row=\"row\">\n {{emailMessageFormats[row.emailMessage.format]}}\n </ng-template>\n </fs-list-column>\n</fs-list>\n", components: [{ type: i2__namespace$2.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }], directives: [{ type: i2__namespace$2.FsListColumnDirective, selector: "fs-list-column", inputs: ["title", "name", "show", "customize", "sortable", "sortableDefault", "direction", "align", "width", "class"] }, { type: i2__namespace$2.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }] });
266
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: MessagesComponent, decorators: [{
267
+ type: i0.Component,
268
+ args: [{
269
+ selector: 'fs-app-messages',
270
+ templateUrl: './messages.component.html'
271
+ }]
272
+ }], ctorParameters: function () {
273
+ return [{ type: undefined, decorators: [{
274
+ type: i0.Inject,
275
+ args: [FS_APP_MESSAGE_CONFIG]
276
+ }] }, { type: i1__namespace.MatDialog }];
277
+ }, propDecorators: { list: [{
278
+ type: i0.ViewChild,
279
+ args: [i2$2.FsListComponent, { static: true }]
280
+ }] } });
456
281
 
457
- var FsAppMessagePreviewModule = /** @class */ (function () {
458
- function FsAppMessagePreviewModule() {
459
- }
460
- FsAppMessagePreviewModule = __decorate([
461
- core.NgModule({
462
- imports: [
463
- dialog.MatDialogModule,
464
- button.MatButtonModule,
465
- dialog$1.FsDialogModule,
466
- iframe.FsIFrameModule,
467
- ],
468
- declarations: [
469
- PreviewComponent,
470
- ],
471
- exports: [
472
- PreviewComponent,
473
- ]
474
- })
475
- ], FsAppMessagePreviewModule);
476
- return FsAppMessagePreviewModule;
282
+ var FsAppMessagePreviewModule = /** @class */ (function () {
283
+ function FsAppMessagePreviewModule() {
284
+ }
285
+ return FsAppMessagePreviewModule;
477
286
  }());
287
+ FsAppMessagePreviewModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagePreviewModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
288
+ FsAppMessagePreviewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagePreviewModule, declarations: [PreviewComponent], imports: [i1.MatDialogModule,
289
+ i11.MatButtonModule,
290
+ i4.FsDialogModule,
291
+ i2.FsIFrameModule], exports: [PreviewComponent] });
292
+ FsAppMessagePreviewModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagePreviewModule, imports: [[
293
+ i1.MatDialogModule,
294
+ i11.MatButtonModule,
295
+ i4.FsDialogModule,
296
+ i2.FsIFrameModule,
297
+ ]] });
298
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagePreviewModule, decorators: [{
299
+ type: i0.NgModule,
300
+ args: [{
301
+ imports: [
302
+ i1.MatDialogModule,
303
+ i11.MatButtonModule,
304
+ i4.FsDialogModule,
305
+ i2.FsIFrameModule,
306
+ ],
307
+ declarations: [
308
+ PreviewComponent,
309
+ ],
310
+ exports: [
311
+ PreviewComponent,
312
+ ]
313
+ }]
314
+ }] });
478
315
 
479
- var FsAppMessagesModule = /** @class */ (function () {
480
- function FsAppMessagesModule() {
481
- }
482
- FsAppMessagesModule = __decorate([
483
- core.NgModule({
484
- imports: [
485
- router.RouterModule,
486
- common.CommonModule,
487
- forms.FormsModule,
488
- dialog.MatDialogModule,
489
- button.MatButtonModule,
490
- tabs.MatTabsModule,
491
- formField.MatFormFieldModule,
492
- input.MatInputModule,
493
- core$1.MatOptionModule,
494
- select.MatSelectModule,
495
- tooltip.MatTooltipModule,
496
- checkbox.MatCheckboxModule,
497
- dialog$1.FsDialogModule,
498
- list.FsListModule,
499
- label.FsLabelModule,
500
- flexLayout.FlexLayoutModule,
501
- skeleton.FsSkeletonModule,
502
- form.FsFormModule,
503
- textEditor.FsTextEditorModule,
504
- editor.FsEditorRichTextModule,
505
- FsAppMessagePreviewModule,
506
- ],
507
- declarations: [
508
- MessagesComponent,
509
- MessageComponent,
510
- ],
511
- exports: [
512
- MessagesComponent,
513
- MessageComponent,
514
- ],
515
- })
516
- ], FsAppMessagesModule);
517
- return FsAppMessagesModule;
316
+ var FsAppMessagesModule = /** @class */ (function () {
317
+ function FsAppMessagesModule() {
318
+ }
319
+ return FsAppMessagesModule;
518
320
  }());
321
+ FsAppMessagesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
322
+ FsAppMessagesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagesModule, declarations: [MessagesComponent,
323
+ MessageComponent], imports: [router.RouterModule,
324
+ i15.CommonModule,
325
+ i13.FormsModule,
326
+ i1.MatDialogModule,
327
+ i11.MatButtonModule,
328
+ i5.MatTabsModule,
329
+ i6.MatFormFieldModule,
330
+ i17.MatInputModule,
331
+ i8.MatOptionModule,
332
+ i7.MatSelectModule,
333
+ i3.MatTooltipModule,
334
+ checkbox.MatCheckboxModule,
335
+ i4.FsDialogModule,
336
+ i2$2.FsListModule,
337
+ i6$1.FsLabelModule,
338
+ flexLayout.FlexLayoutModule,
339
+ i12.FsSkeletonModule,
340
+ i14.FsFormModule,
341
+ i9.FsTextEditorModule,
342
+ // FsEditorRichTextModule,
343
+ FsAppMessagePreviewModule], exports: [MessagesComponent,
344
+ MessageComponent] });
345
+ FsAppMessagesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagesModule, imports: [[
346
+ router.RouterModule,
347
+ i15.CommonModule,
348
+ i13.FormsModule,
349
+ i1.MatDialogModule,
350
+ i11.MatButtonModule,
351
+ i5.MatTabsModule,
352
+ i6.MatFormFieldModule,
353
+ i17.MatInputModule,
354
+ i8.MatOptionModule,
355
+ i7.MatSelectModule,
356
+ i3.MatTooltipModule,
357
+ checkbox.MatCheckboxModule,
358
+ i4.FsDialogModule,
359
+ i2$2.FsListModule,
360
+ i6$1.FsLabelModule,
361
+ flexLayout.FlexLayoutModule,
362
+ i12.FsSkeletonModule,
363
+ i14.FsFormModule,
364
+ i9.FsTextEditorModule,
365
+ // FsEditorRichTextModule,
366
+ FsAppMessagePreviewModule,
367
+ ]] });
368
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessagesModule, decorators: [{
369
+ type: i0.NgModule,
370
+ args: [{
371
+ imports: [
372
+ router.RouterModule,
373
+ i15.CommonModule,
374
+ i13.FormsModule,
375
+ i1.MatDialogModule,
376
+ i11.MatButtonModule,
377
+ i5.MatTabsModule,
378
+ i6.MatFormFieldModule,
379
+ i17.MatInputModule,
380
+ i8.MatOptionModule,
381
+ i7.MatSelectModule,
382
+ i3.MatTooltipModule,
383
+ checkbox.MatCheckboxModule,
384
+ i4.FsDialogModule,
385
+ i2$2.FsListModule,
386
+ i6$1.FsLabelModule,
387
+ flexLayout.FlexLayoutModule,
388
+ i12.FsSkeletonModule,
389
+ i14.FsFormModule,
390
+ i9.FsTextEditorModule,
391
+ // FsEditorRichTextModule,
392
+ FsAppMessagePreviewModule,
393
+ ],
394
+ declarations: [
395
+ MessagesComponent,
396
+ MessageComponent,
397
+ ],
398
+ exports: [
399
+ MessagesComponent,
400
+ MessageComponent,
401
+ ],
402
+ }]
403
+ }] });
404
+
405
+ /*! *****************************************************************************
406
+ Copyright (c) Microsoft Corporation.
407
+
408
+ Permission to use, copy, modify, and/or distribute this software for any
409
+ purpose with or without fee is hereby granted.
410
+
411
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
412
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
413
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
414
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
415
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
416
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
417
+ PERFORMANCE OF THIS SOFTWARE.
418
+ ***************************************************************************** */
419
+ /* global Reflect, Promise */
420
+ var extendStatics = function (d, b) {
421
+ extendStatics = Object.setPrototypeOf ||
422
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
423
+ function (d, b) { for (var p in b)
424
+ if (Object.prototype.hasOwnProperty.call(b, p))
425
+ d[p] = b[p]; };
426
+ return extendStatics(d, b);
427
+ };
428
+ function __extends(d, b) {
429
+ if (typeof b !== "function" && b !== null)
430
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
431
+ extendStatics(d, b);
432
+ function __() { this.constructor = d; }
433
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
434
+ }
435
+ var __assign = function () {
436
+ __assign = Object.assign || function __assign(t) {
437
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
438
+ s = arguments[i];
439
+ for (var p in s)
440
+ if (Object.prototype.hasOwnProperty.call(s, p))
441
+ t[p] = s[p];
442
+ }
443
+ return t;
444
+ };
445
+ return __assign.apply(this, arguments);
446
+ };
447
+ function __rest(s, e) {
448
+ var t = {};
449
+ for (var p in s)
450
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
451
+ t[p] = s[p];
452
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
453
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
454
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
455
+ t[p[i]] = s[p[i]];
456
+ }
457
+ return t;
458
+ }
459
+ function __decorate(decorators, target, key, desc) {
460
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
461
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
462
+ r = Reflect.decorate(decorators, target, key, desc);
463
+ else
464
+ for (var i = decorators.length - 1; i >= 0; i--)
465
+ if (d = decorators[i])
466
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
467
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
468
+ }
469
+ function __param(paramIndex, decorator) {
470
+ return function (target, key) { decorator(target, key, paramIndex); };
471
+ }
472
+ function __metadata(metadataKey, metadataValue) {
473
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
474
+ return Reflect.metadata(metadataKey, metadataValue);
475
+ }
476
+ function __awaiter(thisArg, _arguments, P, generator) {
477
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
478
+ return new (P || (P = Promise))(function (resolve, reject) {
479
+ function fulfilled(value) { try {
480
+ step(generator.next(value));
481
+ }
482
+ catch (e) {
483
+ reject(e);
484
+ } }
485
+ function rejected(value) { try {
486
+ step(generator["throw"](value));
487
+ }
488
+ catch (e) {
489
+ reject(e);
490
+ } }
491
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
492
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
493
+ });
494
+ }
495
+ function __generator(thisArg, body) {
496
+ var _ = { label: 0, sent: function () { if (t[0] & 1)
497
+ throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
498
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
499
+ function verb(n) { return function (v) { return step([n, v]); }; }
500
+ function step(op) {
501
+ if (f)
502
+ throw new TypeError("Generator is already executing.");
503
+ while (_)
504
+ try {
505
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
506
+ return t;
507
+ if (y = 0, t)
508
+ op = [op[0] & 2, t.value];
509
+ switch (op[0]) {
510
+ case 0:
511
+ case 1:
512
+ t = op;
513
+ break;
514
+ case 4:
515
+ _.label++;
516
+ return { value: op[1], done: false };
517
+ case 5:
518
+ _.label++;
519
+ y = op[1];
520
+ op = [0];
521
+ continue;
522
+ case 7:
523
+ op = _.ops.pop();
524
+ _.trys.pop();
525
+ continue;
526
+ default:
527
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
528
+ _ = 0;
529
+ continue;
530
+ }
531
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
532
+ _.label = op[1];
533
+ break;
534
+ }
535
+ if (op[0] === 6 && _.label < t[1]) {
536
+ _.label = t[1];
537
+ t = op;
538
+ break;
539
+ }
540
+ if (t && _.label < t[2]) {
541
+ _.label = t[2];
542
+ _.ops.push(op);
543
+ break;
544
+ }
545
+ if (t[2])
546
+ _.ops.pop();
547
+ _.trys.pop();
548
+ continue;
549
+ }
550
+ op = body.call(thisArg, _);
551
+ }
552
+ catch (e) {
553
+ op = [6, e];
554
+ y = 0;
555
+ }
556
+ finally {
557
+ f = t = 0;
558
+ }
559
+ if (op[0] & 5)
560
+ throw op[1];
561
+ return { value: op[0] ? op[1] : void 0, done: true };
562
+ }
563
+ }
564
+ var __createBinding = Object.create ? (function (o, m, k, k2) {
565
+ if (k2 === undefined)
566
+ k2 = k;
567
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
568
+ }) : (function (o, m, k, k2) {
569
+ if (k2 === undefined)
570
+ k2 = k;
571
+ o[k2] = m[k];
572
+ });
573
+ function __exportStar(m, o) {
574
+ for (var p in m)
575
+ if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
576
+ __createBinding(o, m, p);
577
+ }
578
+ function __values(o) {
579
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
580
+ if (m)
581
+ return m.call(o);
582
+ if (o && typeof o.length === "number")
583
+ return {
584
+ next: function () {
585
+ if (o && i >= o.length)
586
+ o = void 0;
587
+ return { value: o && o[i++], done: !o };
588
+ }
589
+ };
590
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
591
+ }
592
+ function __read(o, n) {
593
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
594
+ if (!m)
595
+ return o;
596
+ var i = m.call(o), r, ar = [], e;
597
+ try {
598
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
599
+ ar.push(r.value);
600
+ }
601
+ catch (error) {
602
+ e = { error: error };
603
+ }
604
+ finally {
605
+ try {
606
+ if (r && !r.done && (m = i["return"]))
607
+ m.call(i);
608
+ }
609
+ finally {
610
+ if (e)
611
+ throw e.error;
612
+ }
613
+ }
614
+ return ar;
615
+ }
616
+ /** @deprecated */
617
+ function __spread() {
618
+ for (var ar = [], i = 0; i < arguments.length; i++)
619
+ ar = ar.concat(__read(arguments[i]));
620
+ return ar;
621
+ }
622
+ /** @deprecated */
623
+ function __spreadArrays() {
624
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
625
+ s += arguments[i].length;
626
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
627
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
628
+ r[k] = a[j];
629
+ return r;
630
+ }
631
+ function __spreadArray(to, from, pack) {
632
+ if (pack || arguments.length === 2)
633
+ for (var i = 0, l = from.length, ar; i < l; i++) {
634
+ if (ar || !(i in from)) {
635
+ if (!ar)
636
+ ar = Array.prototype.slice.call(from, 0, i);
637
+ ar[i] = from[i];
638
+ }
639
+ }
640
+ return to.concat(ar || Array.prototype.slice.call(from));
641
+ }
642
+ function __await(v) {
643
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
644
+ }
645
+ function __asyncGenerator(thisArg, _arguments, generator) {
646
+ if (!Symbol.asyncIterator)
647
+ throw new TypeError("Symbol.asyncIterator is not defined.");
648
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
649
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
650
+ function verb(n) { if (g[n])
651
+ i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
652
+ function resume(n, v) { try {
653
+ step(g[n](v));
654
+ }
655
+ catch (e) {
656
+ settle(q[0][3], e);
657
+ } }
658
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
659
+ function fulfill(value) { resume("next", value); }
660
+ function reject(value) { resume("throw", value); }
661
+ function settle(f, v) { if (f(v), q.shift(), q.length)
662
+ resume(q[0][0], q[0][1]); }
663
+ }
664
+ function __asyncDelegator(o) {
665
+ var i, p;
666
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
667
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
668
+ }
669
+ function __asyncValues(o) {
670
+ if (!Symbol.asyncIterator)
671
+ throw new TypeError("Symbol.asyncIterator is not defined.");
672
+ var m = o[Symbol.asyncIterator], i;
673
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
674
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
675
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
676
+ }
677
+ function __makeTemplateObject(cooked, raw) {
678
+ if (Object.defineProperty) {
679
+ Object.defineProperty(cooked, "raw", { value: raw });
680
+ }
681
+ else {
682
+ cooked.raw = raw;
683
+ }
684
+ return cooked;
685
+ }
686
+ ;
687
+ var __setModuleDefault = Object.create ? (function (o, v) {
688
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
689
+ }) : function (o, v) {
690
+ o["default"] = v;
691
+ };
692
+ function __importStar(mod) {
693
+ if (mod && mod.__esModule)
694
+ return mod;
695
+ var result = {};
696
+ if (mod != null)
697
+ for (var k in mod)
698
+ if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
699
+ __createBinding(result, mod, k);
700
+ __setModuleDefault(result, mod);
701
+ return result;
702
+ }
703
+ function __importDefault(mod) {
704
+ return (mod && mod.__esModule) ? mod : { default: mod };
705
+ }
706
+ function __classPrivateFieldGet(receiver, state, kind, f) {
707
+ if (kind === "a" && !f)
708
+ throw new TypeError("Private accessor was defined without a getter");
709
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
710
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
711
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
712
+ }
713
+ function __classPrivateFieldSet(receiver, state, value, kind, f) {
714
+ if (kind === "m")
715
+ throw new TypeError("Private method is not writable");
716
+ if (kind === "a" && !f)
717
+ throw new TypeError("Private accessor was defined without a setter");
718
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
719
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
720
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
721
+ }
519
722
 
520
- var MessageQueueState;
521
- (function (MessageQueueState) {
522
- MessageQueueState["Sent"] = "S";
523
- MessageQueueState["PartiallySent"] = "P";
524
- MessageQueueState["Sending"] = "E";
525
- MessageQueueState["Queued"] = "Q";
526
- MessageQueueState["Canceled"] = "C";
527
- MessageQueueState["InvalidRecipients"] = "I";
528
- MessageQueueState["Failed"] = "F";
723
+ var MessageQueueState;
724
+ (function (MessageQueueState) {
725
+ MessageQueueState["Sent"] = "S";
726
+ MessageQueueState["PartiallySent"] = "P";
727
+ MessageQueueState["Sending"] = "E";
728
+ MessageQueueState["Queued"] = "Q";
729
+ MessageQueueState["Canceled"] = "C";
730
+ MessageQueueState["InvalidRecipients"] = "I";
731
+ MessageQueueState["Failed"] = "F";
529
732
  })(MessageQueueState || (MessageQueueState = {}));
530
733
 
531
- var MessageQueueStates = [
532
- { name: 'Sent', value: MessageQueueState.Sent },
533
- { name: 'Partially Sent', value: MessageQueueState.PartiallySent },
534
- { name: 'Sending', value: MessageQueueState.Sending },
535
- { name: 'Queued', value: MessageQueueState.Queued },
536
- { name: 'Canceled', value: MessageQueueState.Canceled },
537
- { name: 'Invalid Recipients', value: MessageQueueState.InvalidRecipients },
538
- { name: 'Failed', value: MessageQueueState.Failed }
734
+ var MessageQueueStates = [
735
+ { name: 'Sent', value: MessageQueueState.Sent },
736
+ { name: 'Partially Sent', value: MessageQueueState.PartiallySent },
737
+ { name: 'Sending', value: MessageQueueState.Sending },
738
+ { name: 'Queued', value: MessageQueueState.Queued },
739
+ { name: 'Canceled', value: MessageQueueState.Canceled },
740
+ { name: 'Invalid Recipients', value: MessageQueueState.InvalidRecipients },
741
+ { name: 'Failed', value: MessageQueueState.Failed }
539
742
  ];
540
743
 
541
- var EmailMessageQueueFormat;
542
- (function (EmailMessageQueueFormat) {
543
- EmailMessageQueueFormat["Text"] = "T";
544
- EmailMessageQueueFormat["HTML"] = "H";
545
- EmailMessageQueueFormat["RichText"] = "R";
744
+ var EmailMessageQueueFormat;
745
+ (function (EmailMessageQueueFormat) {
746
+ EmailMessageQueueFormat["Text"] = "T";
747
+ EmailMessageQueueFormat["HTML"] = "H";
748
+ EmailMessageQueueFormat["RichText"] = "R";
546
749
  })(EmailMessageQueueFormat || (EmailMessageQueueFormat = {}));
547
750
 
548
- var MessageQueueType;
549
- (function (MessageQueueType) {
550
- MessageQueueType["Sms"] = "S";
551
- MessageQueueType["Email"] = "E";
751
+ var MessageQueueType;
752
+ (function (MessageQueueType) {
753
+ MessageQueueType["Sms"] = "S";
754
+ MessageQueueType["Email"] = "E";
552
755
  })(MessageQueueType || (MessageQueueType = {}));
553
756
 
554
- var MessageQueueEventType;
555
- (function (MessageQueueEventType) {
556
- MessageQueueEventType["Click"] = "click";
557
- MessageQueueEventType["Open"] = "open";
757
+ var MessageQueueEventType;
758
+ (function (MessageQueueEventType) {
759
+ MessageQueueEventType["Click"] = "click";
760
+ MessageQueueEventType["Open"] = "open";
558
761
  })(MessageQueueEventType || (MessageQueueEventType = {}));
559
762
 
560
- var MessageQueueEventTypes = [
561
- { name: 'Open', value: MessageQueueEventType.Open },
562
- { name: 'Click', value: MessageQueueEventType.Click },
763
+ var MessageQueueEventTypes = [
764
+ { name: 'Open', value: MessageQueueEventType.Open },
765
+ { name: 'Click', value: MessageQueueEventType.Click },
563
766
  ];
564
767
 
565
- var QueueComponent = /** @class */ (function () {
566
- function QueueComponent(_config, _message, _prompt, _dialog, _data) {
567
- this._config = _config;
568
- this._message = _message;
569
- this._prompt = _prompt;
570
- this._dialog = _dialog;
571
- this._data = _data;
572
- this.messageQueueRecipients = {};
573
- this.emailMessageQueueFormat = EmailMessageQueueFormat;
574
- this.MessageQueueEventTypes = indexNameValue(MessageQueueEventTypes);
575
- this.MessageQueueEventType = MessageQueueEventType;
576
- this._destroy$ = new rxjs.Subject();
577
- }
578
- QueueComponent.prototype.ngOnInit = function () {
579
- var _this = this;
580
- this.messageQueueStates = indexNameValue(MessageQueueStates);
581
- this.resendMessageQueue = this._config.resendMessageQueue;
582
- this.forwardMessageQueue = this._config.forwardMessageQueue;
583
- this._config.loadMessageQueue(this._data.messageQueueId)
584
- .subscribe(function (messageQueue) {
585
- _this.messageQueue = messageQueue;
586
- if (_this.messageQueue.emailMessageQueue) {
587
- var body = _this.messageQueue.emailMessageQueue.body;
588
- if (_this.messageQueue.emailMessageQueue.format === EmailMessageQueueFormat.HTML) {
589
- try {
590
- var doc = new DOMParser().parseFromString(body, 'text/html');
591
- doc.querySelectorAll('a').forEach(function (el) {
592
- el.setAttribute('target', '_blank');
593
- });
594
- body = doc.documentElement.innerHTML;
595
- }
596
- catch (e) {
597
- }
598
- }
599
- else {
600
- body = _this.anchorMe(body);
601
- }
602
- _this.messageQueue.emailMessageQueue.body = body;
603
- }
604
- if (_this.messageQueue.smsMessageQueue) {
605
- _this.messageQueue.smsMessageQueue.body = _this.anchorMe(_this.messageQueue.smsMessageQueue.body);
606
- }
607
- _this.messageQueueRecipients = _this.messageQueue.messageQueueRecipients
608
- .reduce(function (accum, messageQueueRecipient) {
609
- accum[messageQueueRecipient.recipient] = messageQueueRecipient.state;
610
- return accum;
611
- }, {});
612
- _this._setLogsConfig(messageQueue);
613
- _this._setAttachmentsConfig(messageQueue);
614
- _this._setEventsConfig(messageQueue);
615
- });
616
- };
617
- QueueComponent.prototype.anchorMe = function (html) {
618
- return anchorme(html, {
619
- options: {
620
- attributes: [
621
- {
622
- name: 'target',
623
- value: '_blank'
624
- },
625
- ],
626
- },
627
- });
628
- };
629
- QueueComponent.prototype.openMessage = function (message) {
630
- this._dialog.open(MessageComponent, {
631
- data: {
632
- message: message,
633
- },
634
- width: '85%'
635
- });
636
- };
637
- QueueComponent.prototype.resend = function () {
638
- var _this = this;
639
- this._prompt.confirm({
640
- title: 'Confirm',
641
- template: 'Are you sure you would like to resend this message?'
642
- }).subscribe(function () {
643
- _this.resendMessageQueue(_this.messageQueue)
644
- .subscribe(function (messageQueue) {
645
- Object.assign(_this.messageQueue, messageQueue);
646
- _this._message.success('Successfully resent');
647
- if (_this.logList) {
648
- _this.logList.reload();
649
- }
650
- });
651
- });
652
- };
653
- QueueComponent.prototype.forward = function () {
654
- var _this = this;
655
- var typeName = this.messageQueue.type === MessageQueueType.Email ? 'an email' : 'a phone number';
656
- this._prompt.input({
657
- label: "Please enter " + typeName + " to forward to",
658
- title: 'Forward Message',
659
- commitLabel: 'Forward',
660
- required: true
661
- }).subscribe(function (value) {
662
- if (value) {
663
- _this.forwardMessageQueue(_this.messageQueue, value)
664
- .subscribe(function (messageQueue) {
665
- _this.messageQueue = __assign(__assign({}, _this.messageQueue), { messageQueue: messageQueue });
666
- _this._message.success('Successfully forwarded');
667
- if (_this.logList) {
668
- _this.logList.reload();
669
- }
670
- });
671
- }
672
- });
673
- };
674
- QueueComponent.prototype.ngOnDestroy = function () {
675
- this._destroy$.next();
676
- this._destroy$.complete();
677
- };
678
- QueueComponent.prototype._setLogsConfig = function (messageQueue) {
679
- var _this = this;
680
- this.logConfig = {
681
- loadMore: true,
682
- queryParam: false,
683
- fetch: function (query) {
684
- return _this._config.loadLogs(messageQueue, query);
685
- }
686
- };
687
- };
688
- QueueComponent.prototype._setEventsConfig = function (messageQueue) {
689
- var _this = this;
690
- this.eventConfig = {
691
- loadMore: true,
692
- queryParam: false,
693
- fetch: function (query) {
694
- return _this._config.loadMessageQueueEvents(messageQueue, query);
695
- }
696
- };
697
- };
698
- QueueComponent.prototype._setAttachmentsConfig = function (messageQueue) {
699
- var _this = this;
700
- this.attachmentConfig = {
701
- queryParam: false,
702
- fetch: function (query) {
703
- return _this._config.loadMessageQueueAttachments(messageQueue, query)
704
- .pipe(operators.map(function (response) { return ({
705
- data: response.data.map(function (value) {
706
- value.prettyFilesize = _this._prettyFilesize(value.filesize);
707
- return value;
708
- }), paging: response.paging
709
- }); }));
710
- }
711
- };
712
- if (this._config.downloadMessageQueueAttachment) {
713
- this.attachmentConfig.rowActions = [
714
- {
715
- click: function (messageAttachment) {
716
- _this._config.downloadMessageQueueAttachment(messageAttachment, _this.messageQueue);
717
- },
718
- label: 'Download',
719
- }
720
- ];
721
- }
722
- };
723
- QueueComponent.prototype._prettyFilesize = function (bytes) {
724
- if (bytes === 0) {
725
- return '0.00 B';
726
- }
727
- var e = Math.floor(Math.log(bytes) / Math.log(1024));
728
- return (bytes / Math.pow(1024, e)).toFixed(2) + ' ' + ' KMGTP'.charAt(e) + 'B';
729
- };
730
- QueueComponent.ctorParameters = function () { return [
731
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
732
- { type: message.FsMessage },
733
- { type: prompt.FsPrompt },
734
- { type: dialog.MatDialog },
735
- { type: undefined, decorators: [{ type: core.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
736
- ]; };
737
- __decorate([
738
- core.ViewChild('logList'),
739
- __metadata("design:type", list.FsListComponent)
740
- ], QueueComponent.prototype, "logList", void 0);
741
- QueueComponent = __decorate([
742
- core.Component({
743
- 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=\"Event\">\n <ng-template fs-list-cell let-row=\"row\">\n {{MessageQueueEventTypes[row.type]}}\n <div class=\"small\" *ngIf=\"row.type === MessageQueueEventType.Click\">\n {{row.meta?.url}}\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",
744
- 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}"]
745
- }),
746
- __param(0, core.Inject(FS_APP_MESSAGE_CONFIG)),
747
- __param(4, core.Inject(dialog.MAT_DIALOG_DATA)),
748
- __metadata("design:paramtypes", [Object, message.FsMessage,
749
- prompt.FsPrompt,
750
- dialog.MatDialog, Object])
751
- ], QueueComponent);
752
- return QueueComponent;
768
+ var RecipientComponent = /** @class */ (function () {
769
+ function RecipientComponent() {
770
+ }
771
+ RecipientComponent.prototype.ngOnInit = function () {
772
+ var icons = {
773
+ 'S': { name: 'check_circle', tooltip: 'Sent' },
774
+ 'E': { name: 'offline_bolt', tooltip: 'Sending' },
775
+ 'F': { name: 'info', tooltip: 'Failed' },
776
+ };
777
+ this.icon = icons[this.state];
778
+ };
779
+ return RecipientComponent;
753
780
  }());
781
+ RecipientComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: RecipientComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
782
+ RecipientComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: RecipientComponent, selector: "app-recipient", inputs: { name: "name", state: "state" }, ngImport: i0__namespace, 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>", 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}\n"], components: [{ type: i1__namespace$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i15__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3__namespace.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
783
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: RecipientComponent, decorators: [{
784
+ type: i0.Component,
785
+ args: [{
786
+ selector: 'app-recipient',
787
+ templateUrl: './recipient.component.html',
788
+ styleUrls: ['./recipient.component.scss'],
789
+ }]
790
+ }], propDecorators: { name: [{
791
+ type: i0.Input
792
+ }], state: [{
793
+ type: i0.Input
794
+ }] } });
754
795
 
755
- var FsMessageQueueService = /** @class */ (function () {
756
- function FsMessageQueueService(_dialog) {
757
- this._dialog = _dialog;
758
- this._destroy$ = new rxjs.Subject();
759
- }
760
- FsMessageQueueService.prototype.openMessageQueue = function (messageQueueId, options) {
761
- if (options === void 0) { options = {}; }
762
- return this._dialog.open(QueueComponent, __assign(__assign({}, options), { data: {
763
- messageQueueId: messageQueueId,
764
- }, width: options.width || '85%' })).afterClosed()
765
- .pipe(operators.takeUntil(this._destroy$));
766
- };
767
- FsMessageQueueService.prototype.ngOnDestroy = function () {
768
- this._destroy$.next();
769
- this._destroy$.complete();
770
- };
771
- FsMessageQueueService.ctorParameters = function () { return [
772
- { type: dialog.MatDialog }
773
- ]; };
774
- FsMessageQueueService = __decorate([
775
- core.Injectable(),
776
- __metadata("design:paramtypes", [dialog.MatDialog])
777
- ], FsMessageQueueService);
778
- return FsMessageQueueService;
796
+ var QueueComponent = /** @class */ (function () {
797
+ function QueueComponent(_config, _message, _prompt, _dialog, _data) {
798
+ this._config = _config;
799
+ this._message = _message;
800
+ this._prompt = _prompt;
801
+ this._dialog = _dialog;
802
+ this._data = _data;
803
+ this.messageQueueRecipients = {};
804
+ this.emailMessageQueueFormat = EmailMessageQueueFormat;
805
+ this.MessageQueueEventTypes = indexNameValue(MessageQueueEventTypes);
806
+ this.MessageQueueEventType = MessageQueueEventType;
807
+ this._destroy$ = new rxjs.Subject();
808
+ }
809
+ QueueComponent.prototype.ngOnInit = function () {
810
+ var _this = this;
811
+ this.messageQueueStates = indexNameValue(MessageQueueStates);
812
+ this.resendMessageQueue = this._config.resendMessageQueue;
813
+ this.forwardMessageQueue = this._config.forwardMessageQueue;
814
+ this._config.loadMessageQueue(this._data.messageQueueId)
815
+ .subscribe(function (messageQueue) {
816
+ _this.messageQueue = messageQueue;
817
+ if (_this.messageQueue.emailMessageQueue) {
818
+ var body = _this.messageQueue.emailMessageQueue.body;
819
+ if (_this.messageQueue.emailMessageQueue.format === EmailMessageQueueFormat.HTML) {
820
+ try {
821
+ var doc = new DOMParser().parseFromString(body, 'text/html');
822
+ doc.querySelectorAll('a').forEach(function (el) {
823
+ el.setAttribute('target', '_blank');
824
+ });
825
+ body = doc.documentElement.innerHTML;
826
+ }
827
+ catch (e) {
828
+ }
829
+ }
830
+ else {
831
+ body = _this.anchorMe(body);
832
+ }
833
+ _this.messageQueue.emailMessageQueue.body = body;
834
+ }
835
+ if (_this.messageQueue.smsMessageQueue) {
836
+ _this.messageQueue.smsMessageQueue.body = _this.anchorMe(_this.messageQueue.smsMessageQueue.body);
837
+ }
838
+ _this.messageQueueRecipients = _this.messageQueue.messageQueueRecipients
839
+ .reduce(function (accum, messageQueueRecipient) {
840
+ accum[messageQueueRecipient.recipient] = messageQueueRecipient.state;
841
+ return accum;
842
+ }, {});
843
+ _this._setLogsConfig(messageQueue);
844
+ _this._setAttachmentsConfig(messageQueue);
845
+ _this._setEventsConfig(messageQueue);
846
+ });
847
+ };
848
+ QueueComponent.prototype.anchorMe = function (html) {
849
+ return anchorme__default["default"](html, {
850
+ options: {
851
+ attributes: [
852
+ {
853
+ name: 'target',
854
+ value: '_blank'
855
+ },
856
+ ],
857
+ },
858
+ });
859
+ };
860
+ QueueComponent.prototype.openMessage = function (message) {
861
+ this._dialog.open(MessageComponent, {
862
+ data: {
863
+ message: message,
864
+ },
865
+ width: '85%'
866
+ });
867
+ };
868
+ QueueComponent.prototype.resend = function () {
869
+ var _this = this;
870
+ this._prompt.confirm({
871
+ title: 'Confirm',
872
+ template: 'Are you sure you would like to resend this message?'
873
+ }).subscribe(function () {
874
+ _this.resendMessageQueue(_this.messageQueue)
875
+ .subscribe(function (messageQueue) {
876
+ Object.assign(_this.messageQueue, messageQueue);
877
+ _this._message.success('Successfully resent');
878
+ if (_this.logList) {
879
+ _this.logList.reload();
880
+ }
881
+ });
882
+ });
883
+ };
884
+ QueueComponent.prototype.forward = function () {
885
+ var _this = this;
886
+ var typeName = this.messageQueue.type === MessageQueueType.Email ? 'an email' : 'a phone number';
887
+ this._prompt.input({
888
+ label: "Please enter " + typeName + " to forward to",
889
+ title: 'Forward Message',
890
+ commitLabel: 'Forward',
891
+ required: true
892
+ }).subscribe(function (value) {
893
+ if (value) {
894
+ _this.forwardMessageQueue(_this.messageQueue, value)
895
+ .subscribe(function (messageQueue) {
896
+ _this.messageQueue = Object.assign(Object.assign({}, _this.messageQueue), { messageQueue: messageQueue });
897
+ _this._message.success('Successfully forwarded');
898
+ if (_this.logList) {
899
+ _this.logList.reload();
900
+ }
901
+ });
902
+ }
903
+ });
904
+ };
905
+ QueueComponent.prototype.ngOnDestroy = function () {
906
+ this._destroy$.next();
907
+ this._destroy$.complete();
908
+ };
909
+ QueueComponent.prototype._setLogsConfig = function (messageQueue) {
910
+ var _this = this;
911
+ this.logConfig = {
912
+ loadMore: true,
913
+ queryParam: false,
914
+ fetch: function (query) {
915
+ return _this._config.loadLogs(messageQueue, query);
916
+ }
917
+ };
918
+ };
919
+ QueueComponent.prototype._setEventsConfig = function (messageQueue) {
920
+ var _this = this;
921
+ this.eventConfig = {
922
+ loadMore: true,
923
+ queryParam: false,
924
+ fetch: function (query) {
925
+ return _this._config.loadMessageQueueEvents(messageQueue, query);
926
+ }
927
+ };
928
+ };
929
+ QueueComponent.prototype._setAttachmentsConfig = function (messageQueue) {
930
+ var _this = this;
931
+ this.attachmentConfig = {
932
+ queryParam: false,
933
+ fetch: function (query) {
934
+ return _this._config.loadMessageQueueAttachments(messageQueue, query)
935
+ .pipe(operators.map(function (response) { return ({
936
+ data: response.data.map(function (value) {
937
+ value.prettyFilesize = _this._prettyFilesize(value.filesize);
938
+ return value;
939
+ }), paging: response.paging
940
+ }); }));
941
+ }
942
+ };
943
+ if (this._config.downloadMessageQueueAttachment) {
944
+ this.attachmentConfig.rowActions = [
945
+ {
946
+ click: function (messageAttachment) {
947
+ _this._config.downloadMessageQueueAttachment(messageAttachment, _this.messageQueue);
948
+ },
949
+ label: 'Download',
950
+ }
951
+ ];
952
+ }
953
+ };
954
+ QueueComponent.prototype._prettyFilesize = function (bytes) {
955
+ if (bytes === 0) {
956
+ return '0.00 B';
957
+ }
958
+ var e = Math.floor(Math.log(bytes) / Math.log(1024));
959
+ return (bytes / Math.pow(1024, e)).toFixed(2) + ' ' + ' KMGTP'.charAt(e) + 'B';
960
+ };
961
+ return QueueComponent;
779
962
  }());
963
+ QueueComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: QueueComponent, deps: [{ token: FS_APP_MESSAGE_CONFIG }, { token: i2__namespace$1.FsMessage }, { token: i1__namespace$1.FsPrompt }, { token: i1__namespace.MatDialog }, { token: i1.MAT_DIALOG_DATA }], target: i0__namespace.ɵɵFactoryTarget.Component });
964
+ QueueComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: QueueComponent, selector: "ng-component", viewQueries: [{ propertyName: "logList", first: true, predicate: ["logList"], descendants: true }], ngImport: i0__namespace, 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", styles: [".subject,.body{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}\n"], components: [{ type: i4__namespace.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i5__namespace.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { type: i5__namespace.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby"], exportAs: ["matTab"] }, { type: i6__namespace$1.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { type: i6__namespace$1.FsLabelComponent, selector: "fs-label" }, { type: RecipientComponent, selector: "app-recipient", inputs: ["name", "state"] }, { type: i2__namespace.FsIFrameComponent, selector: "fs-iframe", inputs: ["html", "styles"] }, { type: i2__namespace$2.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { type: i10__namespace.FsDateAgoComponent, selector: "fs-date-ago", inputs: ["date", "showTime", "format", "showTooltip", "tooltipDateFormat"] }, { type: i11__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i12__namespace.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }, { type: i1__namespace.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1__namespace.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i5__namespace.MatTabContent, selector: "[matTabContent]" }, { type: i16__namespace.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i16__namespace.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i15__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i15__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$2.FsListColumnDirective, selector: "fs-list-column", inputs: ["title", "name", "show", "customize", "sortable", "sortableDefault", "direction", "align", "width", "class"] }, { type: i2__namespace$2.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }, { type: i1__namespace.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i1__namespace.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }], pipes: { "fsDateFormat": i10__namespace.FsDateFormatPipe } });
965
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: QueueComponent, decorators: [{
966
+ type: i0.Component,
967
+ args: [{
968
+ templateUrl: './queue.component.html',
969
+ styleUrls: ['./queue.component.scss'],
970
+ }]
971
+ }], ctorParameters: function () {
972
+ return [{ type: undefined, decorators: [{
973
+ type: i0.Inject,
974
+ args: [FS_APP_MESSAGE_CONFIG]
975
+ }] }, { type: i2__namespace$1.FsMessage }, { type: i1__namespace$1.FsPrompt }, { type: i1__namespace.MatDialog }, { type: undefined, decorators: [{
976
+ type: i0.Inject,
977
+ args: [i1.MAT_DIALOG_DATA]
978
+ }] }];
979
+ }, propDecorators: { logList: [{
980
+ type: i0.ViewChild,
981
+ args: ['logList']
982
+ }] } });
780
983
 
781
- var QueuesComponent = /** @class */ (function () {
782
- function QueuesComponent(_config, _dialog, _messageQueueService) {
783
- this._config = _config;
784
- this._dialog = _dialog;
785
- this._messageQueueService = _messageQueueService;
786
- this.list = null;
787
- this.query = {};
788
- this.config = null;
789
- this.messageQueueStates = {};
790
- this.MessageQueueState = MessageQueueState;
791
- this._destroy$ = new rxjs.Subject();
792
- }
793
- QueuesComponent.prototype.ngOnInit = function () {
794
- var _this = this;
795
- this.messageQueueStates = indexNameValue(MessageQueueStates);
796
- this.config = {
797
- filters: [
798
- {
799
- name: 'keyword',
800
- type: filter.ItemType.Keyword,
801
- label: 'Search'
802
- },
803
- {
804
- name: 'state',
805
- type: filter.ItemType.Select,
806
- label: 'Status',
807
- values: function () {
808
- return MessageQueueStates;
809
- }
810
- },
811
- {
812
- name: 'date',
813
- type: filter.ItemType.DateRange,
814
- label: ['From Date', 'To Date'],
815
- },
816
- ],
817
- sort: { value: 'created_date', direction: 'desc' },
818
- fetch: function (query) {
819
- query = __assign(__assign(__assign({}, query), _this.query), { messageQueueAttachmentCounts: true, emailMessageQueues: true, emailMessageQueueBodies: false, smsMessageQueues: true });
820
- return _this._config.loadMessageQueues(query)
821
- .pipe(operators.map(function (response) { return ({ data: response.data
822
- .map(function (messageQueue) {
823
- return __assign(__assign({}, messageQueue), { messageQueueRecipients: messageQueue.messageQueueRecipients
824
- .reduce(function (accum, messageQueueRecipient) {
825
- accum[messageQueueRecipient.recipient] = messageQueueRecipient.state;
826
- return accum;
827
- }, {}) });
828
- }), paging: response.paging }); }));
829
- }
830
- };
831
- // if any bulk actions add the selection object to config.
832
- if (this._config.cancelMessageQueues) {
833
- this.config.selection = {
834
- selectAll: false,
835
- actions: [],
836
- actionSelected: function (action) {
837
- return rxjs.of(true)
838
- .pipe(operators.switchMap(function () {
839
- if (action.action.name === 'cancel') {
840
- return _this._config.cancelMessageQueues(action);
841
- }
842
- return rxjs.of(true);
843
- }), operators.tap(function () {
844
- _this.list.reload();
845
- }));
846
- }
847
- };
848
- }
849
- // add each individual bulk action to select actions
850
- if (this._config.cancelMessageQueues) {
851
- this.config.selection.actions.push({
852
- type: selection.SelectionActionType.Action,
853
- name: 'cancel',
854
- label: 'Cancel Queued',
855
- });
856
- }
857
- this.config.filters.push({
858
- name: 'message_id',
859
- type: filter.ItemType.Select,
860
- label: 'Message Type',
861
- values: function (query) {
862
- query = __assign(__assign({}, query), { limit: 50 });
863
- return _this._config.loadMessages(query)
864
- .pipe(operators.map(function (response) {
865
- return __spread([
866
- { value: null, name: 'All', }
867
- ], response.data.map(function (item) { return ({ name: item.name, value: item.id }); }));
868
- }));
869
- }
870
- });
871
- };
872
- QueuesComponent.prototype.open = function (messageQueue) {
873
- var _this = this;
874
- this._messageQueueService.openMessageQueue(messageQueue.id)
875
- .pipe(operators.takeUntil(this._destroy$))
876
- .subscribe(function () {
877
- _this.list.reload();
878
- });
879
- };
880
- QueuesComponent.prototype.ngOnDestroy = function () {
881
- this._destroy$.next();
882
- this._destroy$.complete();
883
- };
884
- QueuesComponent.ctorParameters = function () { return [
885
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
886
- { type: dialog.MatDialog },
887
- { type: FsMessageQueueService }
888
- ]; };
889
- __decorate([
890
- core.ViewChild(list.FsListComponent, { static: true }),
891
- __metadata("design:type", list.FsListComponent)
892
- ], QueuesComponent.prototype, "list", void 0);
893
- __decorate([
894
- core.Input(),
895
- __metadata("design:type", Object)
896
- ], QueuesComponent.prototype, "query", void 0);
897
- QueuesComponent = __decorate([
898
- core.Component({
899
- selector: 'fs-app-message-queues',
900
- template: "<fs-list [config]=\"config\" #list>\n <fs-list-column title=\"Message\" name=\"subject\" sortable=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <ng-container *ngIf=\"row.emailMessageQueue\">\n <div fxLayout=\"row\" fxLayoutAlign=\"start center\">\n <a (click)=\"open(row)\">{{row.emailMessageQueue.subject|truncate:100}}</a>\n <mat-icon *ngIf=\"row.messageQueueAttachmentCount\" [matTooltip]=\"row.messageQueueAttachmentCount + ' Attachment(s)'\">attach_file</mat-icon>\n </div>\n </ng-container>\n <ng-container *ngIf=\"row.smsMessageQueue\">\n <a (click)=\"open(row)\">{{row.smsMessageQueue.body|truncate:100}}</a>\n </ng-container>\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Recipients\" class=\"col-recipients\">\n <ng-template fs-list-cell let-row=\"row\">\n <ng-container *ngIf=\"row.emailMessageQueue\">\n <ng-container *ngIf=\"row.emailMessageQueue.toRecipients.length; else unspecified\">\n <div class=\"small\" *ngFor=\"let recipient of row.emailMessageQueue.toRecipients\">\n <app-recipient \n [state]=\"row.messageQueueRecipients[recipient] || row.state\"\n [name]=\"recipient\">\n </app-recipient>\n </div>\n </ng-container>\n <div class=\"small\" *ngFor=\"let recipient of row.emailMessageQueue.ccRecipients\">\n <app-recipient \n [state]=\"row.messageQueueRecipients[recipient] || row.state\"\n [name]=\"recipient\">\n </app-recipient>\n </div>\n <div class=\"small\" *ngFor=\"let recipient of row.emailMessageQueue.bccRecipients\">\n <app-recipient \n [state]=\"row.messageQueueRecipients[recipient] || row.state\"\n [name]=\"recipient\">\n </app-recipient>\n </div>\n </ng-container>\n <ng-container *ngIf=\"row.smsMessageQueue\">\n <ng-container *ngIf=\"row.smsMessageQueue.toNumber; else unspecified\">\n <app-recipient \n class=\"small\"\n [state]=\"row.state\"\n [name]=\"row.smsMessageQueue.toNumber\">\n </app-recipient>\n </ng-container>\n </ng-container>\n </ng-template>\n </fs-list-column> \n <fs-list-column title=\"Status\" class=\"col-state\">\n <ng-template fs-list-cell let-row=\"row\">\n <span [class]=\"'state-' + row.state\">{{messageQueueStates[row.state]}}</span>\n </ng-template>\n </fs-list-column> \n <fs-list-column title=\"Date\" name=\"created_date\" sortable=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{ row.createdDate | fsDateFormat: 'date-time-yeardiff' }}\n </ng-template>\n </fs-list-column>\n</fs-list>\n\n<ng-template #unspecified>\n <app-recipient \n class=\"small\"\n [state]=\"MessageQueueState.Failed\"\n name=\"Unspecified\">\n </app-recipient>\n</ng-template>",
901
- 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}"]
902
- }),
903
- __param(0, core.Inject(FS_APP_MESSAGE_CONFIG)),
904
- __metadata("design:paramtypes", [Object, dialog.MatDialog,
905
- FsMessageQueueService])
906
- ], QueuesComponent);
907
- return QueuesComponent;
984
+ var FsMessageQueueService = /** @class */ (function () {
985
+ function FsMessageQueueService(_dialog) {
986
+ this._dialog = _dialog;
987
+ this._destroy$ = new rxjs.Subject();
988
+ }
989
+ FsMessageQueueService.prototype.openMessageQueue = function (messageQueueId, options) {
990
+ if (options === void 0) { options = {}; }
991
+ return this._dialog.open(QueueComponent, Object.assign(Object.assign({}, options), { data: {
992
+ messageQueueId: messageQueueId,
993
+ }, width: options.width || '85%' })).afterClosed()
994
+ .pipe(operators.takeUntil(this._destroy$));
995
+ };
996
+ FsMessageQueueService.prototype.ngOnDestroy = function () {
997
+ this._destroy$.next();
998
+ this._destroy$.complete();
999
+ };
1000
+ return FsMessageQueueService;
908
1001
  }());
1002
+ FsMessageQueueService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsMessageQueueService, deps: [{ token: i1__namespace.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
1003
+ FsMessageQueueService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsMessageQueueService });
1004
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsMessageQueueService, decorators: [{
1005
+ type: i0.Injectable
1006
+ }], ctorParameters: function () { return [{ type: i1__namespace.MatDialog }]; } });
909
1007
 
910
- var RecipientComponent = /** @class */ (function () {
911
- function RecipientComponent() {
912
- }
913
- RecipientComponent.prototype.ngOnInit = function () {
914
- var icons = {
915
- 'S': { name: 'check_circle', tooltip: 'Sent' },
916
- 'E': { name: 'offline_bolt', tooltip: 'Sending' },
917
- 'F': { name: 'info', tooltip: 'Failed' },
918
- };
919
- this.icon = icons[this.state];
920
- };
921
- __decorate([
922
- core.Input(),
923
- __metadata("design:type", Object)
924
- ], RecipientComponent.prototype, "name", void 0);
925
- __decorate([
926
- core.Input(),
927
- __metadata("design:type", Object)
928
- ], RecipientComponent.prototype, "state", void 0);
929
- RecipientComponent = __decorate([
930
- core.Component({
931
- selector: 'app-recipient',
932
- 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>",
933
- 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}"]
934
- })
935
- ], RecipientComponent);
936
- return RecipientComponent;
1008
+ var TruncatePipe = /** @class */ (function () {
1009
+ function TruncatePipe() {
1010
+ }
1011
+ TruncatePipe.prototype.transform = function (value, limit, completeWords, ellipsis) {
1012
+ if (limit === void 0) { limit = 25; }
1013
+ if (completeWords === void 0) { completeWords = false; }
1014
+ if (ellipsis === void 0) { ellipsis = '...'; }
1015
+ if (value.length < limit) {
1016
+ return "" + value.substr(0, limit);
1017
+ }
1018
+ if (completeWords) {
1019
+ limit = value.substr(0, limit).lastIndexOf(' ');
1020
+ }
1021
+ return "" + value.substr(0, limit) + ellipsis;
1022
+ };
1023
+ return TruncatePipe;
937
1024
  }());
1025
+ TruncatePipe.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TruncatePipe, deps: [], target: i0__namespace.ɵɵFactoryTarget.Pipe });
1026
+ TruncatePipe.ɵpipe = i0__namespace.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TruncatePipe, name: "truncate" });
1027
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TruncatePipe, decorators: [{
1028
+ type: i0.Pipe,
1029
+ args: [{
1030
+ name: 'truncate'
1031
+ }]
1032
+ }] });
938
1033
 
939
- var LinkifyPipe = /** @class */ (function () {
940
- function LinkifyPipe() {
941
- }
942
- LinkifyPipe.prototype.transform = function (value) {
943
- return anchorme(value, {
944
- attributes: [
945
- {
946
- name: 'target',
947
- value: '_blank'
948
- },
949
- ]
950
- });
951
- };
952
- LinkifyPipe = __decorate([
953
- core.Pipe({ name: 'linkify' })
954
- ], LinkifyPipe);
955
- return LinkifyPipe;
1034
+ var QueuesComponent = /** @class */ (function () {
1035
+ function QueuesComponent(_config, _dialog, _messageQueueService) {
1036
+ this._config = _config;
1037
+ this._dialog = _dialog;
1038
+ this._messageQueueService = _messageQueueService;
1039
+ this.list = null;
1040
+ this.query = {};
1041
+ this.config = null;
1042
+ this.messageQueueStates = {};
1043
+ this.MessageQueueState = MessageQueueState;
1044
+ this._destroy$ = new rxjs.Subject();
1045
+ }
1046
+ QueuesComponent.prototype.ngOnInit = function () {
1047
+ var _this = this;
1048
+ this.messageQueueStates = indexNameValue(MessageQueueStates);
1049
+ this.config = {
1050
+ filters: [
1051
+ {
1052
+ name: 'keyword',
1053
+ type: filter.ItemType.Keyword,
1054
+ label: 'Search'
1055
+ },
1056
+ {
1057
+ name: 'state',
1058
+ type: filter.ItemType.Select,
1059
+ label: 'Status',
1060
+ values: function () {
1061
+ return MessageQueueStates;
1062
+ }
1063
+ },
1064
+ {
1065
+ name: 'date',
1066
+ type: filter.ItemType.DateRange,
1067
+ label: ['From Date', 'To Date'],
1068
+ },
1069
+ ],
1070
+ sort: { value: 'created_date', direction: 'desc' },
1071
+ fetch: function (query) {
1072
+ query = Object.assign(Object.assign(Object.assign({}, query), _this.query), { messageQueueAttachmentCounts: true, emailMessageQueues: true, emailMessageQueueBodies: false, smsMessageQueues: true });
1073
+ return _this._config.loadMessageQueues(query)
1074
+ .pipe(operators.map(function (response) { return ({ data: response.data
1075
+ .map(function (messageQueue) {
1076
+ return Object.assign(Object.assign({}, messageQueue), { messageQueueRecipients: messageQueue.messageQueueRecipients
1077
+ .reduce(function (accum, messageQueueRecipient) {
1078
+ accum[messageQueueRecipient.recipient] = messageQueueRecipient.state;
1079
+ return accum;
1080
+ }, {}) });
1081
+ }), paging: response.paging }); }));
1082
+ }
1083
+ };
1084
+ // if any bulk actions add the selection object to config.
1085
+ if (this._config.cancelMessageQueues) {
1086
+ this.config.selection = {
1087
+ selectAll: false,
1088
+ actions: [],
1089
+ actionSelected: function (action) {
1090
+ return rxjs.of(true)
1091
+ .pipe(operators.switchMap(function () {
1092
+ if (action.action.name === 'cancel') {
1093
+ return _this._config.cancelMessageQueues(action);
1094
+ }
1095
+ return rxjs.of(true);
1096
+ }), operators.tap(function () {
1097
+ _this.list.reload();
1098
+ }));
1099
+ }
1100
+ };
1101
+ }
1102
+ // add each individual bulk action to select actions
1103
+ if (this._config.cancelMessageQueues) {
1104
+ this.config.selection.actions.push({
1105
+ type: selection.SelectionActionType.Action,
1106
+ name: 'cancel',
1107
+ label: 'Cancel Queued',
1108
+ });
1109
+ }
1110
+ this.config.filters.push({
1111
+ name: 'message_id',
1112
+ type: filter.ItemType.Select,
1113
+ label: 'Message Type',
1114
+ values: function (query) {
1115
+ query = Object.assign(Object.assign({}, query), { limit: 50 });
1116
+ return _this._config.loadMessages(query)
1117
+ .pipe(operators.map(function (response) {
1118
+ return __spreadArray([
1119
+ { value: null, name: 'All', }
1120
+ ], __read(response.data.map(function (item) { return ({ name: item.name, value: item.id }); })));
1121
+ }));
1122
+ }
1123
+ });
1124
+ };
1125
+ QueuesComponent.prototype.open = function (messageQueue) {
1126
+ var _this = this;
1127
+ this._messageQueueService.openMessageQueue(messageQueue.id)
1128
+ .pipe(operators.takeUntil(this._destroy$))
1129
+ .subscribe(function () {
1130
+ _this.list.reload();
1131
+ });
1132
+ };
1133
+ QueuesComponent.prototype.ngOnDestroy = function () {
1134
+ this._destroy$.next();
1135
+ this._destroy$.complete();
1136
+ };
1137
+ return QueuesComponent;
956
1138
  }());
1139
+ QueuesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: QueuesComponent, deps: [{ token: FS_APP_MESSAGE_CONFIG }, { token: i1__namespace.MatDialog }, { token: FsMessageQueueService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1140
+ QueuesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: QueuesComponent, selector: "fs-app-message-queues", inputs: { query: "query" }, viewQueries: [{ propertyName: "list", first: true, predicate: i2$2.FsListComponent, descendants: true, static: true }], ngImport: i0__namespace, template: "<fs-list [config]=\"config\" #list>\n <fs-list-column title=\"Message\" name=\"subject\" sortable=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n <ng-container *ngIf=\"row.emailMessageQueue\">\n <div fxLayout=\"row\" fxLayoutAlign=\"start center\">\n <a (click)=\"open(row)\">{{row.emailMessageQueue.subject|truncate:100}}</a>\n <mat-icon *ngIf=\"row.messageQueueAttachmentCount\" [matTooltip]=\"row.messageQueueAttachmentCount + ' Attachment(s)'\">attach_file</mat-icon>\n </div>\n </ng-container>\n <ng-container *ngIf=\"row.smsMessageQueue\">\n <a (click)=\"open(row)\">{{row.smsMessageQueue.body|truncate:100}}</a>\n </ng-container>\n </ng-template>\n </fs-list-column>\n <fs-list-column title=\"Recipients\" class=\"col-recipients\">\n <ng-template fs-list-cell let-row=\"row\">\n <ng-container *ngIf=\"row.emailMessageQueue\">\n <ng-container *ngIf=\"row.emailMessageQueue.toRecipients.length; else unspecified\">\n <div class=\"small\" *ngFor=\"let recipient of row.emailMessageQueue.toRecipients\">\n <app-recipient \n [state]=\"row.messageQueueRecipients[recipient] || row.state\"\n [name]=\"recipient\">\n </app-recipient>\n </div>\n </ng-container>\n <div class=\"small\" *ngFor=\"let recipient of row.emailMessageQueue.ccRecipients\">\n <app-recipient \n [state]=\"row.messageQueueRecipients[recipient] || row.state\"\n [name]=\"recipient\">\n </app-recipient>\n </div>\n <div class=\"small\" *ngFor=\"let recipient of row.emailMessageQueue.bccRecipients\">\n <app-recipient \n [state]=\"row.messageQueueRecipients[recipient] || row.state\"\n [name]=\"recipient\">\n </app-recipient>\n </div>\n </ng-container>\n <ng-container *ngIf=\"row.smsMessageQueue\">\n <ng-container *ngIf=\"row.smsMessageQueue.toNumber; else unspecified\">\n <app-recipient \n class=\"small\"\n [state]=\"row.state\"\n [name]=\"row.smsMessageQueue.toNumber\">\n </app-recipient>\n </ng-container>\n </ng-container>\n </ng-template>\n </fs-list-column> \n <fs-list-column title=\"Status\" class=\"col-state\">\n <ng-template fs-list-cell let-row=\"row\">\n <span [class]=\"'state-' + row.state\">{{messageQueueStates[row.state]}}</span>\n </ng-template>\n </fs-list-column> \n <fs-list-column title=\"Date\" name=\"created_date\" sortable=\"true\">\n <ng-template fs-list-cell let-row=\"row\">\n {{ row.createdDate | fsDateFormat: 'date-time-yeardiff' }}\n </ng-template>\n </fs-list-column>\n</fs-list>\n\n<ng-template #unspecified>\n <app-recipient \n class=\"small\"\n [state]=\"MessageQueueState.Failed\"\n name=\"Unspecified\">\n </app-recipient>\n</ng-template>", 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}\n"], components: [{ type: i2__namespace$2.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { type: i1__namespace$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: RecipientComponent, selector: "app-recipient", inputs: ["name", "state"] }], directives: [{ type: i2__namespace$2.FsListColumnDirective, selector: "fs-list-column", inputs: ["title", "name", "show", "customize", "sortable", "sortableDefault", "direction", "align", "width", "class"] }, { type: i2__namespace$2.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }, { type: i15__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i16__namespace.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i16__namespace.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i3__namespace.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i15__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "truncate": TruncatePipe, "fsDateFormat": i10__namespace.FsDateFormatPipe } });
1141
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: QueuesComponent, decorators: [{
1142
+ type: i0.Component,
1143
+ args: [{
1144
+ selector: 'fs-app-message-queues',
1145
+ styleUrls: ['./queues.component.scss'],
1146
+ templateUrl: './queues.component.html'
1147
+ }]
1148
+ }], ctorParameters: function () {
1149
+ return [{ type: undefined, decorators: [{
1150
+ type: i0.Inject,
1151
+ args: [FS_APP_MESSAGE_CONFIG]
1152
+ }] }, { type: i1__namespace.MatDialog }, { type: FsMessageQueueService }];
1153
+ }, propDecorators: { list: [{
1154
+ type: i0.ViewChild,
1155
+ args: [i2$2.FsListComponent, { static: true }]
1156
+ }], query: [{
1157
+ type: i0.Input
1158
+ }] } });
957
1159
 
958
- var TruncatePipe = /** @class */ (function () {
959
- function TruncatePipe() {
960
- }
961
- TruncatePipe.prototype.transform = function (value, limit, completeWords, ellipsis) {
962
- if (limit === void 0) { limit = 25; }
963
- if (completeWords === void 0) { completeWords = false; }
964
- if (ellipsis === void 0) { ellipsis = '...'; }
965
- if (value.length < limit) {
966
- return "" + value.substr(0, limit);
967
- }
968
- if (completeWords) {
969
- limit = value.substr(0, limit).lastIndexOf(' ');
970
- }
971
- return "" + value.substr(0, limit) + ellipsis;
972
- };
973
- TruncatePipe = __decorate([
974
- core.Pipe({
975
- name: 'truncate'
976
- })
977
- ], TruncatePipe);
978
- return TruncatePipe;
1160
+ var LinkifyPipe = /** @class */ (function () {
1161
+ function LinkifyPipe() {
1162
+ }
1163
+ LinkifyPipe.prototype.transform = function (value) {
1164
+ return anchorme__default["default"](value, {
1165
+ attributes: [
1166
+ {
1167
+ name: 'target',
1168
+ value: '_blank'
1169
+ },
1170
+ ]
1171
+ });
1172
+ };
1173
+ return LinkifyPipe;
979
1174
  }());
1175
+ LinkifyPipe.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LinkifyPipe, deps: [], target: i0__namespace.ɵɵFactoryTarget.Pipe });
1176
+ LinkifyPipe.ɵpipe = i0__namespace.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LinkifyPipe, name: "linkify" });
1177
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LinkifyPipe, decorators: [{
1178
+ type: i0.Pipe,
1179
+ args: [{ name: 'linkify' }]
1180
+ }] });
980
1181
 
981
- var FsAppMessageQueuesModule = /** @class */ (function () {
982
- function FsAppMessageQueuesModule() {
983
- }
984
- FsAppMessageQueuesModule = __decorate([
985
- core.NgModule({
986
- imports: [
987
- router.RouterModule,
988
- forms.FormsModule,
989
- common.CommonModule,
990
- flexLayout.FlexLayoutModule,
991
- tooltip.MatTooltipModule,
992
- dialog.MatDialogModule,
993
- button.MatButtonModule,
994
- icon.MatIconModule,
995
- tabs.MatTabsModule,
996
- list.FsListModule,
997
- dialog$1.FsDialogModule,
998
- label.FsLabelModule,
999
- date.FsDateModule,
1000
- skeleton.FsSkeletonModule,
1001
- FsAppMessagesModule,
1002
- form.FsFormModule,
1003
- prompt.FsPromptInputModule,
1004
- iframe.FsIFrameModule,
1005
- ],
1006
- declarations: [
1007
- QueuesComponent,
1008
- QueueComponent,
1009
- LinkifyPipe,
1010
- TruncatePipe,
1011
- RecipientComponent,
1012
- ],
1013
- exports: [
1014
- QueuesComponent,
1015
- QueueComponent,
1016
- ],
1017
- providers: [
1018
- FsMessageQueueService
1019
- ]
1020
- })
1021
- ], FsAppMessageQueuesModule);
1022
- return FsAppMessageQueuesModule;
1182
+ var FsAppMessageQueuesModule = /** @class */ (function () {
1183
+ function FsAppMessageQueuesModule() {
1184
+ }
1185
+ return FsAppMessageQueuesModule;
1023
1186
  }());
1187
+ FsAppMessageQueuesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageQueuesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1188
+ FsAppMessageQueuesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageQueuesModule, declarations: [QueuesComponent,
1189
+ QueueComponent,
1190
+ LinkifyPipe,
1191
+ TruncatePipe,
1192
+ RecipientComponent], imports: [router.RouterModule,
1193
+ i13.FormsModule,
1194
+ i15.CommonModule,
1195
+ flexLayout.FlexLayoutModule,
1196
+ i3.MatTooltipModule,
1197
+ i1.MatDialogModule,
1198
+ i11.MatButtonModule,
1199
+ i1$2.MatIconModule,
1200
+ i5.MatTabsModule,
1201
+ i2$2.FsListModule,
1202
+ i4.FsDialogModule,
1203
+ i6$1.FsLabelModule,
1204
+ i10.FsDateModule,
1205
+ i12.FsSkeletonModule,
1206
+ FsAppMessagesModule,
1207
+ i14.FsFormModule,
1208
+ i1$1.FsPromptInputModule,
1209
+ i2.FsIFrameModule], exports: [QueuesComponent,
1210
+ QueueComponent] });
1211
+ FsAppMessageQueuesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageQueuesModule, providers: [
1212
+ FsMessageQueueService
1213
+ ], imports: [[
1214
+ router.RouterModule,
1215
+ i13.FormsModule,
1216
+ i15.CommonModule,
1217
+ flexLayout.FlexLayoutModule,
1218
+ i3.MatTooltipModule,
1219
+ i1.MatDialogModule,
1220
+ i11.MatButtonModule,
1221
+ i1$2.MatIconModule,
1222
+ i5.MatTabsModule,
1223
+ i2$2.FsListModule,
1224
+ i4.FsDialogModule,
1225
+ i6$1.FsLabelModule,
1226
+ i10.FsDateModule,
1227
+ i12.FsSkeletonModule,
1228
+ FsAppMessagesModule,
1229
+ i14.FsFormModule,
1230
+ i1$1.FsPromptInputModule,
1231
+ i2.FsIFrameModule,
1232
+ //FsDeviceModule,
1233
+ //FsIpModule,
1234
+ ]] });
1235
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageQueuesModule, decorators: [{
1236
+ type: i0.NgModule,
1237
+ args: [{
1238
+ imports: [
1239
+ router.RouterModule,
1240
+ i13.FormsModule,
1241
+ i15.CommonModule,
1242
+ flexLayout.FlexLayoutModule,
1243
+ i3.MatTooltipModule,
1244
+ i1.MatDialogModule,
1245
+ i11.MatButtonModule,
1246
+ i1$2.MatIconModule,
1247
+ i5.MatTabsModule,
1248
+ i2$2.FsListModule,
1249
+ i4.FsDialogModule,
1250
+ i6$1.FsLabelModule,
1251
+ i10.FsDateModule,
1252
+ i12.FsSkeletonModule,
1253
+ FsAppMessagesModule,
1254
+ i14.FsFormModule,
1255
+ i1$1.FsPromptInputModule,
1256
+ i2.FsIFrameModule,
1257
+ //FsDeviceModule,
1258
+ //FsIpModule,
1259
+ ],
1260
+ declarations: [
1261
+ QueuesComponent,
1262
+ QueueComponent,
1263
+ LinkifyPipe,
1264
+ TruncatePipe,
1265
+ RecipientComponent,
1266
+ ],
1267
+ exports: [
1268
+ QueuesComponent,
1269
+ QueueComponent,
1270
+ ],
1271
+ providers: [
1272
+ FsMessageQueueService
1273
+ ]
1274
+ }]
1275
+ }] });
1024
1276
 
1025
- var TemplateComponent = /** @class */ (function () {
1026
- function TemplateComponent(_data, _config, _dialogRef, _message, _dialog) {
1027
- var _this = this;
1028
- this._data = _data;
1029
- this._config = _config;
1030
- this._dialogRef = _dialogRef;
1031
- this._message = _message;
1032
- this._dialog = _dialog;
1033
- this.htmlEditorconfig = {
1034
- language: 'html',
1035
- insertSpaces: true,
1036
- tabSize: 2,
1037
- };
1038
- this.cssEditorconfig = {
1039
- language: 'scss',
1040
- insertSpaces: true,
1041
- tabSize: 2,
1042
- };
1043
- this.save = function (event) {
1044
- return _this._config.saveMessageTemplate(_this.messageTemplate)
1045
- .pipe(operators.tap(function (messageTemplate) {
1046
- _this._message.success('Saved Changes');
1047
- if (event.submitter === 'save-close') {
1048
- _this._dialogRef.close(messageTemplate);
1049
- }
1050
- }));
1051
- };
1052
- }
1053
- TemplateComponent.prototype.ngOnInit = function () {
1054
- var _this = this;
1055
- if (this._data.messageTemplate.id) {
1056
- this._config.loadMessageTemplate(this._data.messageTemplate)
1057
- .subscribe(function (messageTemplate) {
1058
- _this.messageTemplate = messageTemplate;
1059
- });
1060
- }
1061
- else {
1062
- this.messageTemplate = {};
1063
- }
1064
- };
1065
- TemplateComponent.prototype.openPreview = function () {
1066
- this._dialog.open(PreviewComponent, {
1067
- data: {
1068
- styles: this.messageTemplate.styles,
1069
- html: this.messageTemplate.content,
1070
- },
1071
- width: '95%'
1072
- });
1073
- };
1074
- TemplateComponent.ctorParameters = function () { return [
1075
- { type: undefined, decorators: [{ type: core.Inject, args: [dialog.MAT_DIALOG_DATA,] }] },
1076
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
1077
- { type: dialog.MatDialogRef },
1078
- { type: message.FsMessage },
1079
- { type: dialog.MatDialog }
1080
- ]; };
1081
- TemplateComponent = __decorate([
1082
- core.Component({
1083
- template: "<form\n fsForm\n [submit]=\"save\"\n #form=\"ngForm\"\n *fsSkeleton=\"messageTemplate\"\n [dirtyConfirmTabs]=\"false\">\n <fs-dialog *ngIf=\"messageTemplate\">\n <div mat-dialog-title>Message Template</div>\n <mat-dialog-content>\n <mat-form-field class=\"name\">\n <input\n matInput\n placeholder=\"Name\"\n [(ngModel)]=\"messageTemplate.name\"\n name=\"name\"\n >\n </mat-form-field>\n <div [@.disabled]=\"true\">\n <mat-tab-group\n mat-align-tabs=\"start\"\n [dynamicHeight]=\"false\">\n <mat-tab label=\"Content\">\n <ng-template matTabContent>\n <div class=\"content\">\n <fs-label-field>\n <fs-text-editor\n [(ngModel)]=\"messageTemplate.content\"\n name=\"body\"\n [config]=\"htmlEditorconfig\">\n </fs-text-editor>\n <fs-label-message>\n &#123;$content&#125; will be replaced with the message content.\n </fs-label-message>\n </fs-label-field>\n </div>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Styles\">\n <ng-template matTabContent>\n <div class=\"styles\">\n <fs-text-editor\n [(ngModel)]=\"messageTemplate.styles\"\n name=\"styles\"\n [config]=\"cssEditorconfig\">\n </fs-text-editor>\n </div>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button color=\"primary\" name=\"close\">Save</button>\n <button mat-button name=\"save-close\">Save & Close</button>\n <button mat-button (click)=\"openPreview()\" type=\"button\">Preview</button>\n <button mat-button [mat-dialog-close]=\"null\" type=\"button\">Cancel</button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n",
1084
- styles: [".name{width:100%}:host ::ng-deep .mat-tab-body,:host ::ng-deep .mat-tab-body-content{overflow:visible}"]
1085
- }),
1086
- __param(0, core.Inject(dialog.MAT_DIALOG_DATA)),
1087
- __param(1, core.Inject(FS_APP_MESSAGE_CONFIG)),
1088
- __metadata("design:paramtypes", [Object, Object, dialog.MatDialogRef,
1089
- message.FsMessage,
1090
- dialog.MatDialog])
1091
- ], TemplateComponent);
1092
- return TemplateComponent;
1277
+ var TemplateComponent = /** @class */ (function () {
1278
+ function TemplateComponent(_data, _config, _dialogRef, _message, _dialog) {
1279
+ var _this = this;
1280
+ this._data = _data;
1281
+ this._config = _config;
1282
+ this._dialogRef = _dialogRef;
1283
+ this._message = _message;
1284
+ this._dialog = _dialog;
1285
+ this.htmlEditorconfig = {
1286
+ language: 'html',
1287
+ insertSpaces: true,
1288
+ tabSize: 2,
1289
+ };
1290
+ this.cssEditorconfig = {
1291
+ language: 'scss',
1292
+ insertSpaces: true,
1293
+ tabSize: 2,
1294
+ };
1295
+ this.save = function (event) {
1296
+ return _this._config.saveMessageTemplate(_this.messageTemplate)
1297
+ .pipe(operators.tap(function (messageTemplate) {
1298
+ _this._message.success('Saved Changes');
1299
+ if (event.submitter === 'save-close') {
1300
+ _this._dialogRef.close(messageTemplate);
1301
+ }
1302
+ }));
1303
+ };
1304
+ }
1305
+ TemplateComponent.prototype.ngOnInit = function () {
1306
+ var _this = this;
1307
+ if (this._data.messageTemplate.id) {
1308
+ this._config.loadMessageTemplate(this._data.messageTemplate)
1309
+ .subscribe(function (messageTemplate) {
1310
+ _this.messageTemplate = messageTemplate;
1311
+ });
1312
+ }
1313
+ else {
1314
+ this.messageTemplate = {};
1315
+ }
1316
+ };
1317
+ TemplateComponent.prototype.openPreview = function () {
1318
+ this._dialog.open(PreviewComponent, {
1319
+ data: {
1320
+ styles: this.messageTemplate.styles,
1321
+ html: this.messageTemplate.content,
1322
+ },
1323
+ width: '95%'
1324
+ });
1325
+ };
1326
+ return TemplateComponent;
1093
1327
  }());
1328
+ TemplateComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplateComponent, deps: [{ token: i1.MAT_DIALOG_DATA }, { token: FS_APP_MESSAGE_CONFIG }, { token: i1__namespace.MatDialogRef }, { token: i2__namespace$1.FsMessage }, { token: i1__namespace.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Component });
1329
+ TemplateComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TemplateComponent, selector: "ng-component", ngImport: i0__namespace, template: "<form\n fsForm\n [submit]=\"save\"\n #form=\"ngForm\"\n *fsSkeleton=\"messageTemplate\"\n [confirmTabs]=\"false\">\n <fs-dialog *ngIf=\"messageTemplate\">\n <div mat-dialog-title>Message Template</div>\n <mat-dialog-content>\n <mat-form-field class=\"name\">\n <input\n matInput\n placeholder=\"Name\"\n [(ngModel)]=\"messageTemplate.name\"\n name=\"name\"\n >\n </mat-form-field>\n <div [@.disabled]=\"true\">\n <mat-tab-group\n mat-align-tabs=\"start\"\n [dynamicHeight]=\"false\">\n <mat-tab label=\"Content\">\n <ng-template matTabContent>\n <div class=\"content\">\n <fs-label-field>\n <fs-text-editor\n [(ngModel)]=\"messageTemplate.content\"\n name=\"body\"\n [config]=\"htmlEditorconfig\">\n </fs-text-editor>\n <fs-label-message>\n &#123;$content&#125; will be replaced with the message content.\n </fs-label-message>\n </fs-label-field>\n </div>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"Styles\">\n <ng-template matTabContent>\n <div class=\"styles\">\n <fs-text-editor\n [(ngModel)]=\"messageTemplate.styles\"\n name=\"styles\"\n [config]=\"cssEditorconfig\">\n </fs-text-editor>\n </div>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button color=\"primary\" name=\"close\">Save</button>\n <button mat-button name=\"save-close\">Save & Close</button>\n <button mat-button (click)=\"openPreview()\" type=\"button\">Preview</button>\n <button mat-button [mat-dialog-close]=\"null\" type=\"button\">Cancel</button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: [".name{width:100%}:host ::ng-deep .mat-tab-body-content,:host ::ng-deep .mat-tab-body{overflow:visible}\n"], components: [{ type: i4__namespace.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i6__namespace.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i5__namespace.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { type: i5__namespace.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby"], exportAs: ["matTab"] }, { type: i6__namespace$1.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { type: i9__namespace.FsTextEditorComponent, selector: "fs-text-editor", inputs: ["config", "scrollable"], outputs: ["init", "blur"] }, { type: i6__namespace$1.FsLabelMessageComponent, selector: "fs-label-message" }, { type: i11__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i12__namespace.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }, { type: i13__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i13__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i13__namespace.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i14__namespace.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i15__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1__namespace.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i17__namespace.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i13__namespace.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i13__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i13__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5__namespace.MatTabContent, selector: "[matTabContent]" }, { type: i1__namespace.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i1__namespace.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
1330
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplateComponent, decorators: [{
1331
+ type: i0.Component,
1332
+ args: [{
1333
+ templateUrl: './template.component.html',
1334
+ styleUrls: ['./template.component.scss']
1335
+ }]
1336
+ }], ctorParameters: function () {
1337
+ return [{ type: undefined, decorators: [{
1338
+ type: i0.Inject,
1339
+ args: [i1.MAT_DIALOG_DATA]
1340
+ }] }, { type: undefined, decorators: [{
1341
+ type: i0.Inject,
1342
+ args: [FS_APP_MESSAGE_CONFIG]
1343
+ }] }, { type: i1__namespace.MatDialogRef }, { type: i2__namespace$1.FsMessage }, { type: i1__namespace.MatDialog }];
1344
+ } });
1094
1345
 
1095
- var TemplatesComponent = /** @class */ (function () {
1096
- function TemplatesComponent(_config, _dialog) {
1097
- this._config = _config;
1098
- this._dialog = _dialog;
1099
- this.list = null;
1100
- this.config = null;
1101
- this.messageQueueStates = [];
1102
- this._destroy$ = new rxjs.Subject();
1103
- }
1104
- TemplatesComponent.prototype.ngOnInit = function () {
1105
- var _this = this;
1106
- this.config = {
1107
- actions: [
1108
- {
1109
- label: 'Create',
1110
- click: function () {
1111
- _this.open({});
1112
- }
1113
- }
1114
- ],
1115
- status: false,
1116
- fetch: function (query) {
1117
- return _this._config.loadMessageTemplates(query);
1118
- }
1119
- };
1120
- if (this._config.deleteMessageTemplate) {
1121
- this.config.rowActions = [
1122
- {
1123
- click: function (data) {
1124
- return _this._config.deleteMessageTemplate(data);
1125
- },
1126
- remove: {
1127
- title: 'Confirm',
1128
- template: 'Are you sure you would like to delete this template?',
1129
- },
1130
- menu: true,
1131
- label: 'Delete'
1132
- }
1133
- ];
1134
- }
1135
- };
1136
- TemplatesComponent.prototype.open = function (messageTemplate) {
1137
- var _this = this;
1138
- var dialogRef = this._dialog.open(TemplateComponent, {
1139
- data: {
1140
- messageTemplate: messageTemplate,
1141
- },
1142
- width: '85%'
1143
- });
1144
- dialogRef.afterClosed()
1145
- .pipe(operators.takeUntil(this._destroy$))
1146
- .subscribe(function (response) {
1147
- if (response) {
1148
- var update = _this.list.updateData(response, function (row) {
1149
- return row.id === response.id;
1150
- });
1151
- if (!update) {
1152
- _this.list.reload();
1153
- }
1154
- }
1155
- });
1156
- };
1157
- TemplatesComponent.prototype.ngOnDestroy = function () {
1158
- this._destroy$.next();
1159
- this._destroy$.complete();
1160
- };
1161
- TemplatesComponent.ctorParameters = function () { return [
1162
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
1163
- { type: dialog.MatDialog }
1164
- ]; };
1165
- __decorate([
1166
- core.ViewChild(list.FsListComponent, { static: true }),
1167
- __metadata("design:type", list.FsListComponent)
1168
- ], TemplatesComponent.prototype, "list", void 0);
1169
- TemplatesComponent = __decorate([
1170
- core.Component({
1171
- selector: 'fs-app-message-templates',
1172
- template: "<fs-list [config]=\"config\">\n <fs-list-column title=\"Name\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"open(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n</fs-list>"
1173
- }),
1174
- __param(0, core.Inject(FS_APP_MESSAGE_CONFIG)),
1175
- __metadata("design:paramtypes", [Object, dialog.MatDialog])
1176
- ], TemplatesComponent);
1177
- return TemplatesComponent;
1346
+ var TemplatesComponent = /** @class */ (function () {
1347
+ function TemplatesComponent(_config, _dialog) {
1348
+ this._config = _config;
1349
+ this._dialog = _dialog;
1350
+ this.list = null;
1351
+ this.config = null;
1352
+ this.messageQueueStates = [];
1353
+ this._destroy$ = new rxjs.Subject();
1354
+ }
1355
+ TemplatesComponent.prototype.ngOnInit = function () {
1356
+ var _this = this;
1357
+ this.config = {
1358
+ actions: [
1359
+ {
1360
+ label: 'Create',
1361
+ click: function () {
1362
+ _this.open({});
1363
+ }
1364
+ }
1365
+ ],
1366
+ status: false,
1367
+ fetch: function (query) {
1368
+ return _this._config.loadMessageTemplates(query);
1369
+ }
1370
+ };
1371
+ if (this._config.deleteMessageTemplate) {
1372
+ this.config.rowActions = [
1373
+ {
1374
+ click: function (data) {
1375
+ return _this._config.deleteMessageTemplate(data);
1376
+ },
1377
+ remove: {
1378
+ title: 'Confirm',
1379
+ template: 'Are you sure you would like to delete this template?',
1380
+ },
1381
+ menu: true,
1382
+ label: 'Delete'
1383
+ }
1384
+ ];
1385
+ }
1386
+ };
1387
+ TemplatesComponent.prototype.open = function (messageTemplate) {
1388
+ var _this = this;
1389
+ var dialogRef = this._dialog.open(TemplateComponent, {
1390
+ data: {
1391
+ messageTemplate: messageTemplate,
1392
+ },
1393
+ width: '85%'
1394
+ });
1395
+ dialogRef.afterClosed()
1396
+ .pipe(operators.takeUntil(this._destroy$))
1397
+ .subscribe(function (response) {
1398
+ if (response) {
1399
+ var update = _this.list.updateData(response, function (row) {
1400
+ return row.id === response.id;
1401
+ });
1402
+ if (!update) {
1403
+ _this.list.reload();
1404
+ }
1405
+ }
1406
+ });
1407
+ };
1408
+ TemplatesComponent.prototype.ngOnDestroy = function () {
1409
+ this._destroy$.next();
1410
+ this._destroy$.complete();
1411
+ };
1412
+ return TemplatesComponent;
1178
1413
  }());
1414
+ TemplatesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplatesComponent, deps: [{ token: FS_APP_MESSAGE_CONFIG }, { token: i1__namespace.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Component });
1415
+ TemplatesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TemplatesComponent, selector: "fs-app-message-templates", viewQueries: [{ propertyName: "list", first: true, predicate: i2$2.FsListComponent, descendants: true, static: true }], ngImport: i0__namespace, template: "<fs-list [config]=\"config\">\n <fs-list-column title=\"Name\">\n <ng-template fs-list-cell let-row=\"row\">\n <a (click)=\"open(row)\">{{row.name}}</a>\n </ng-template>\n </fs-list-column>\n</fs-list>", components: [{ type: i2__namespace$2.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }], directives: [{ type: i2__namespace$2.FsListColumnDirective, selector: "fs-list-column", inputs: ["title", "name", "show", "customize", "sortable", "sortableDefault", "direction", "align", "width", "class"] }, { type: i2__namespace$2.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }] });
1416
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplatesComponent, decorators: [{
1417
+ type: i0.Component,
1418
+ args: [{
1419
+ selector: 'fs-app-message-templates',
1420
+ templateUrl: './templates.component.html'
1421
+ }]
1422
+ }], ctorParameters: function () {
1423
+ return [{ type: undefined, decorators: [{
1424
+ type: i0.Inject,
1425
+ args: [FS_APP_MESSAGE_CONFIG]
1426
+ }] }, { type: i1__namespace.MatDialog }];
1427
+ }, propDecorators: { list: [{
1428
+ type: i0.ViewChild,
1429
+ args: [i2$2.FsListComponent, { static: true }]
1430
+ }] } });
1179
1431
 
1180
- var FsAppMessageTemplatesModule = /** @class */ (function () {
1181
- function FsAppMessageTemplatesModule() {
1182
- }
1183
- FsAppMessageTemplatesModule = __decorate([
1184
- core.NgModule({
1185
- imports: [
1186
- router.RouterModule,
1187
- common.CommonModule,
1188
- forms.FormsModule,
1189
- tooltip.MatTooltipModule,
1190
- dialog.MatDialogModule,
1191
- button.MatButtonModule,
1192
- tabs.MatTabsModule,
1193
- formField.MatFormFieldModule,
1194
- formField.MatFormFieldModule,
1195
- input.MatInputModule,
1196
- list.FsListModule,
1197
- dialog$1.FsDialogModule,
1198
- label.FsLabelModule,
1199
- flexLayout.FlexLayoutModule,
1200
- skeleton.FsSkeletonModule,
1201
- form.FsFormModule,
1202
- textEditor.FsTextEditorModule,
1203
- FsAppMessagePreviewModule,
1204
- ],
1205
- declarations: [
1206
- TemplatesComponent,
1207
- TemplateComponent,
1208
- ],
1209
- exports: [
1210
- TemplatesComponent,
1211
- TemplateComponent,
1212
- ],
1213
- })
1214
- ], FsAppMessageTemplatesModule);
1215
- return FsAppMessageTemplatesModule;
1432
+ var FsAppMessageTemplatesModule = /** @class */ (function () {
1433
+ function FsAppMessageTemplatesModule() {
1434
+ }
1435
+ return FsAppMessageTemplatesModule;
1216
1436
  }());
1437
+ FsAppMessageTemplatesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageTemplatesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1438
+ FsAppMessageTemplatesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageTemplatesModule, declarations: [TemplatesComponent,
1439
+ TemplateComponent], imports: [router.RouterModule,
1440
+ i15.CommonModule,
1441
+ i13.FormsModule,
1442
+ i3.MatTooltipModule,
1443
+ i1.MatDialogModule,
1444
+ i11.MatButtonModule,
1445
+ i5.MatTabsModule,
1446
+ i6.MatFormFieldModule,
1447
+ i6.MatFormFieldModule,
1448
+ i17.MatInputModule,
1449
+ i2$2.FsListModule,
1450
+ i4.FsDialogModule,
1451
+ i6$1.FsLabelModule,
1452
+ flexLayout.FlexLayoutModule,
1453
+ i12.FsSkeletonModule,
1454
+ i14.FsFormModule,
1455
+ i9.FsTextEditorModule,
1456
+ FsAppMessagePreviewModule], exports: [TemplatesComponent,
1457
+ TemplateComponent] });
1458
+ FsAppMessageTemplatesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageTemplatesModule, imports: [[
1459
+ router.RouterModule,
1460
+ i15.CommonModule,
1461
+ i13.FormsModule,
1462
+ i3.MatTooltipModule,
1463
+ i1.MatDialogModule,
1464
+ i11.MatButtonModule,
1465
+ i5.MatTabsModule,
1466
+ i6.MatFormFieldModule,
1467
+ i6.MatFormFieldModule,
1468
+ i17.MatInputModule,
1469
+ i2$2.FsListModule,
1470
+ i4.FsDialogModule,
1471
+ i6$1.FsLabelModule,
1472
+ flexLayout.FlexLayoutModule,
1473
+ i12.FsSkeletonModule,
1474
+ i14.FsFormModule,
1475
+ i9.FsTextEditorModule,
1476
+ FsAppMessagePreviewModule,
1477
+ ]] });
1478
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageTemplatesModule, decorators: [{
1479
+ type: i0.NgModule,
1480
+ args: [{
1481
+ imports: [
1482
+ router.RouterModule,
1483
+ i15.CommonModule,
1484
+ i13.FormsModule,
1485
+ i3.MatTooltipModule,
1486
+ i1.MatDialogModule,
1487
+ i11.MatButtonModule,
1488
+ i5.MatTabsModule,
1489
+ i6.MatFormFieldModule,
1490
+ i6.MatFormFieldModule,
1491
+ i17.MatInputModule,
1492
+ i2$2.FsListModule,
1493
+ i4.FsDialogModule,
1494
+ i6$1.FsLabelModule,
1495
+ flexLayout.FlexLayoutModule,
1496
+ i12.FsSkeletonModule,
1497
+ i14.FsFormModule,
1498
+ i9.FsTextEditorModule,
1499
+ FsAppMessagePreviewModule,
1500
+ ],
1501
+ declarations: [
1502
+ TemplatesComponent,
1503
+ TemplateComponent,
1504
+ ],
1505
+ exports: [
1506
+ TemplatesComponent,
1507
+ TemplateComponent,
1508
+ ],
1509
+ }]
1510
+ }] });
1217
1511
 
1218
- var WebhooksComponent = /** @class */ (function () {
1219
- function WebhooksComponent(_config, _message) {
1220
- this._config = _config;
1221
- this._message = _message;
1222
- }
1223
- WebhooksComponent.prototype.ngOnInit = function () {
1224
- var _this = this;
1225
- this.listConfig = {
1226
- paging: false,
1227
- actions: [
1228
- {
1229
- click: function () {
1230
- _this._config.createWebhook()
1231
- .subscribe(function () {
1232
- _this._message.success('Created webhook');
1233
- _this.list.reload();
1234
- });
1235
- },
1236
- label: 'Create',
1237
- },
1238
- ],
1239
- rowActions: [
1240
- {
1241
- click: function (webhook) {
1242
- _this._config.deleteWebhook(webhook)
1243
- .subscribe(function () {
1244
- _this._message.success('Deleted webhook');
1245
- _this.list.reload();
1246
- });
1247
- },
1248
- label: 'Delete',
1249
- },
1250
- ],
1251
- fetch: function () {
1252
- return _this._config.loadWebhooks()
1253
- .pipe(operators.map(function (webhooks) { return ({ data: webhooks }); }));
1254
- },
1255
- };
1256
- };
1257
- WebhooksComponent.ctorParameters = function () { return [
1258
- { type: undefined, decorators: [{ type: core.Inject, args: [FS_APP_MESSAGE_CONFIG,] }] },
1259
- { type: message.FsMessage }
1260
- ]; };
1261
- __decorate([
1262
- core.ViewChild(list.FsListComponent),
1263
- __metadata("design:type", list.FsListComponent)
1264
- ], WebhooksComponent.prototype, "list", void 0);
1265
- WebhooksComponent = __decorate([
1266
- core.Component({
1267
- selector: 'fs-app-message-webhooks',
1268
- template: "<fs-list [config]=\"listConfig\">\r\n <fs-list-column title=\"URL\">\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.url}}\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column title=\"Created\">\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.createDate | fsDate}}\r\n </ng-template>\r\n </fs-list-column>\r\n</fs-list>"
1269
- }),
1270
- __param(0, core.Inject(FS_APP_MESSAGE_CONFIG)),
1271
- __metadata("design:paramtypes", [Object, message.FsMessage])
1272
- ], WebhooksComponent);
1273
- return WebhooksComponent;
1512
+ var WebhooksComponent = /** @class */ (function () {
1513
+ function WebhooksComponent(_config, _message) {
1514
+ this._config = _config;
1515
+ this._message = _message;
1516
+ }
1517
+ WebhooksComponent.prototype.ngOnInit = function () {
1518
+ var _this = this;
1519
+ this.listConfig = {
1520
+ paging: false,
1521
+ actions: [
1522
+ {
1523
+ click: function () {
1524
+ _this._config.createWebhook()
1525
+ .subscribe(function () {
1526
+ _this._message.success('Created webhook');
1527
+ _this.list.reload();
1528
+ });
1529
+ },
1530
+ label: 'Create',
1531
+ },
1532
+ ],
1533
+ rowActions: [
1534
+ {
1535
+ click: function (webhook) {
1536
+ _this._config.deleteWebhook(webhook)
1537
+ .subscribe(function () {
1538
+ _this._message.success('Deleted webhook');
1539
+ _this.list.reload();
1540
+ });
1541
+ },
1542
+ label: 'Delete',
1543
+ },
1544
+ ],
1545
+ fetch: function () {
1546
+ return _this._config.loadWebhooks()
1547
+ .pipe(operators.map(function (webhooks) { return ({ data: webhooks }); }));
1548
+ },
1549
+ };
1550
+ };
1551
+ return WebhooksComponent;
1274
1552
  }());
1553
+ WebhooksComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: WebhooksComponent, deps: [{ token: FS_APP_MESSAGE_CONFIG }, { token: i2__namespace$1.FsMessage }], target: i0__namespace.ɵɵFactoryTarget.Component });
1554
+ WebhooksComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: WebhooksComponent, selector: "fs-app-message-webhooks", viewQueries: [{ propertyName: "list", first: true, predicate: i2$2.FsListComponent, descendants: true }], ngImport: i0__namespace, template: "<fs-list [config]=\"listConfig\">\r\n <fs-list-column title=\"URL\">\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.url}}\r\n </ng-template>\r\n </fs-list-column>\r\n <fs-list-column title=\"Created\">\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{row.createDate | fsDate}}\r\n </ng-template>\r\n </fs-list-column>\r\n</fs-list>", components: [{ type: i2__namespace$2.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }], directives: [{ type: i2__namespace$2.FsListColumnDirective, selector: "fs-list-column", inputs: ["title", "name", "show", "customize", "sortable", "sortableDefault", "direction", "align", "width", "class"] }, { type: i2__namespace$2.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }], pipes: { "fsDate": i10__namespace.FsDatePipe } });
1555
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: WebhooksComponent, decorators: [{
1556
+ type: i0.Component,
1557
+ args: [{
1558
+ selector: 'fs-app-message-webhooks',
1559
+ templateUrl: './webhooks.component.html',
1560
+ }]
1561
+ }], ctorParameters: function () {
1562
+ return [{ type: undefined, decorators: [{
1563
+ type: i0.Inject,
1564
+ args: [FS_APP_MESSAGE_CONFIG]
1565
+ }] }, { type: i2__namespace$1.FsMessage }];
1566
+ }, propDecorators: { list: [{
1567
+ type: i0.ViewChild,
1568
+ args: [i2$2.FsListComponent]
1569
+ }] } });
1275
1570
 
1276
- var FsAppMessageWebhooksModule = /** @class */ (function () {
1277
- function FsAppMessageWebhooksModule() {
1278
- }
1279
- FsAppMessageWebhooksModule = __decorate([
1280
- core.NgModule({
1281
- imports: [
1282
- list.FsListModule,
1283
- date.FsDateModule,
1284
- ],
1285
- declarations: [
1286
- WebhooksComponent,
1287
- ],
1288
- exports: [
1289
- WebhooksComponent,
1290
- ],
1291
- })
1292
- ], FsAppMessageWebhooksModule);
1293
- return FsAppMessageWebhooksModule;
1571
+ var FsAppMessageWebhooksModule = /** @class */ (function () {
1572
+ function FsAppMessageWebhooksModule() {
1573
+ }
1574
+ return FsAppMessageWebhooksModule;
1294
1575
  }());
1576
+ FsAppMessageWebhooksModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageWebhooksModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1577
+ FsAppMessageWebhooksModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageWebhooksModule, declarations: [WebhooksComponent], imports: [i2$2.FsListModule,
1578
+ i10.FsDateModule], exports: [WebhooksComponent] });
1579
+ FsAppMessageWebhooksModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageWebhooksModule, imports: [[
1580
+ i2$2.FsListModule,
1581
+ i10.FsDateModule,
1582
+ ]] });
1583
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageWebhooksModule, decorators: [{
1584
+ type: i0.NgModule,
1585
+ args: [{
1586
+ imports: [
1587
+ i2$2.FsListModule,
1588
+ i10.FsDateModule,
1589
+ ],
1590
+ declarations: [
1591
+ WebhooksComponent,
1592
+ ],
1593
+ exports: [
1594
+ WebhooksComponent,
1595
+ ],
1596
+ }]
1597
+ }] });
1295
1598
 
1296
- var FsAppMessageModule = /** @class */ (function () {
1297
- function FsAppMessageModule() {
1298
- }
1299
- FsAppMessageModule_1 = FsAppMessageModule;
1300
- FsAppMessageModule.forRoot = function () {
1301
- return {
1302
- ngModule: FsAppMessageModule_1,
1303
- };
1304
- };
1305
- var FsAppMessageModule_1;
1306
- FsAppMessageModule = FsAppMessageModule_1 = __decorate([
1307
- core.NgModule({})
1308
- ], FsAppMessageModule);
1309
- return FsAppMessageModule;
1599
+ var FsAppMessageModule = /** @class */ (function () {
1600
+ function FsAppMessageModule() {
1601
+ }
1602
+ FsAppMessageModule.forRoot = function () {
1603
+ return {
1604
+ ngModule: FsAppMessageModule,
1605
+ };
1606
+ };
1607
+ return FsAppMessageModule;
1310
1608
  }());
1609
+ FsAppMessageModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1610
+ FsAppMessageModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageModule });
1611
+ FsAppMessageModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageModule });
1612
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: FsAppMessageModule, decorators: [{
1613
+ type: i0.NgModule,
1614
+ args: [{}]
1615
+ }] });
1616
+
1617
+ /*
1618
+ * Public API Surface of fs-menu
1619
+ */
1620
+
1621
+ /**
1622
+ * Generated bundle index. Do not edit.
1623
+ */
1311
1624
 
1312
1625
  exports.FS_APP_MESSAGE_CONFIG = FS_APP_MESSAGE_CONFIG;
1313
1626
  exports.FsAppMessageModule = FsAppMessageModule;
@@ -1320,17 +1633,11 @@
1320
1633
  exports.MessagesComponent = MessagesComponent;
1321
1634
  exports.QueueComponent = QueueComponent;
1322
1635
  exports.QueuesComponent = QueuesComponent;
1636
+ exports.TemplateComponent = TemplateComponent;
1323
1637
  exports.TemplatesComponent = TemplatesComponent;
1324
- exports.ɵa = FsAppMessagePreviewModule;
1325
- exports.ɵb = PreviewComponent;
1326
- exports.ɵc = FS_APP_MESSAGE_CONFIG;
1327
- exports.ɵd = LinkifyPipe;
1328
- exports.ɵe = TruncatePipe;
1329
- exports.ɵf = RecipientComponent;
1330
- exports.ɵg = TemplateComponent;
1331
- exports.ɵh = WebhooksComponent;
1638
+ exports.WebhooksComponent = WebhooksComponent;
1332
1639
 
1333
1640
  Object.defineProperty(exports, '__esModule', { value: true });
1334
1641
 
1335
- })));
1642
+ }));
1336
1643
  //# sourceMappingURL=firestitch-app-message.umd.js.map