@igo2/core 1.14.3 → 1.14.4

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 (117) hide show
  1. package/esm2020/igo2-core.mjs +4 -4
  2. package/esm2020/lib/activity/activity.interceptor.mjs +29 -29
  3. package/esm2020/lib/activity/activity.module.mjs +29 -29
  4. package/esm2020/lib/activity/activity.service.mjs +32 -32
  5. package/esm2020/lib/activity/index.mjs +2 -2
  6. package/esm2020/lib/analytics/index.mjs +1 -1
  7. package/esm2020/lib/analytics/shared/analytics.interface.mjs +1 -1
  8. package/esm2020/lib/analytics/shared/analytics.service.mjs +73 -73
  9. package/esm2020/lib/analytics/shared/index.mjs +2 -2
  10. package/esm2020/lib/compression/compressedData.interface.mjs +1 -1
  11. package/esm2020/lib/compression/compression.service.mjs +139 -139
  12. package/esm2020/lib/compression/index.mjs +2 -2
  13. package/esm2020/lib/config/config.interface.mjs +1 -1
  14. package/esm2020/lib/config/config.module.mjs +22 -22
  15. package/esm2020/lib/config/config.provider.mjs +20 -20
  16. package/esm2020/lib/config/config.service.mjs +51 -51
  17. package/esm2020/lib/config/index.mjs +3 -3
  18. package/esm2020/lib/config/version.mjs +5 -5
  19. package/esm2020/lib/core.module.mjs +83 -83
  20. package/esm2020/lib/gesture/gesture.module.mjs +29 -29
  21. package/esm2020/lib/gesture/gesture.provider.mjs +15 -15
  22. package/esm2020/lib/language/index.mjs +1 -1
  23. package/esm2020/lib/language/language.module.mjs +38 -38
  24. package/esm2020/lib/language/shared/index.mjs +4 -4
  25. package/esm2020/lib/language/shared/language.interface.mjs +1 -1
  26. package/esm2020/lib/language/shared/language.loader.mjs +26 -26
  27. package/esm2020/lib/language/shared/language.provider.mjs +21 -21
  28. package/esm2020/lib/language/shared/language.service.mjs +31 -31
  29. package/esm2020/lib/language/shared/missing-translation.guard.mjs +14 -14
  30. package/esm2020/lib/media/index.mjs +2 -2
  31. package/esm2020/lib/media/media.enum.mjs +11 -11
  32. package/esm2020/lib/media/media.service.mjs +75 -75
  33. package/esm2020/lib/message/index.mjs +1 -1
  34. package/esm2020/lib/message/message.module.mjs +55 -55
  35. package/esm2020/lib/message/shared/index.mjs +3 -3
  36. package/esm2020/lib/message/shared/message.enum.mjs +9 -9
  37. package/esm2020/lib/message/shared/message.interface.mjs +1 -1
  38. package/esm2020/lib/message/shared/message.service.mjs +192 -192
  39. package/esm2020/lib/network/index.mjs +2 -2
  40. package/esm2020/lib/network/network.interfaces.mjs +1 -1
  41. package/esm2020/lib/network/network.service.mjs +66 -66
  42. package/esm2020/lib/regex/index.mjs +2 -2
  43. package/esm2020/lib/regex/regex.interface.mjs +1 -1
  44. package/esm2020/lib/regex/regex.service.mjs +26 -26
  45. package/esm2020/lib/request/error.interceptor.mjs +65 -65
  46. package/esm2020/lib/request/error.module.mjs +39 -39
  47. package/esm2020/lib/request/index.mjs +2 -2
  48. package/esm2020/lib/request/logging.interceptor.mjs +27 -27
  49. package/esm2020/lib/request/logging.module.mjs +29 -29
  50. package/esm2020/lib/route/route.interface.mjs +1 -1
  51. package/esm2020/lib/route/route.service.mjs +70 -70
  52. package/esm2020/lib/storage/index.mjs +2 -2
  53. package/esm2020/lib/storage/storage.interface.mjs +12 -12
  54. package/esm2020/lib/storage/storage.service.mjs +78 -78
  55. package/esm2020/public_api.mjs +27 -27
  56. package/fesm2015/igo2-core.mjs +1310 -1310
  57. package/fesm2015/igo2-core.mjs.map +1 -1
  58. package/fesm2020/igo2-core.mjs +1256 -1256
  59. package/fesm2020/igo2-core.mjs.map +1 -1
  60. package/index.d.ts +5 -5
  61. package/lib/activity/activity.interceptor.d.ts +11 -11
  62. package/lib/activity/activity.module.d.ts +8 -8
  63. package/lib/activity/activity.service.d.ts +11 -11
  64. package/lib/activity/index.d.ts +2 -2
  65. package/lib/analytics/index.d.ts +1 -1
  66. package/lib/analytics/shared/analytics.interface.d.ts +6 -6
  67. package/lib/analytics/shared/analytics.service.d.ts +19 -19
  68. package/lib/analytics/shared/index.d.ts +2 -2
  69. package/lib/compression/compressedData.interface.d.ts +5 -5
  70. package/lib/compression/compression.service.d.ts +15 -15
  71. package/lib/compression/index.d.ts +2 -2
  72. package/lib/config/config.interface.d.ts +6 -6
  73. package/lib/config/config.module.d.ts +8 -8
  74. package/lib/config/config.provider.d.ts +15 -15
  75. package/lib/config/config.service.d.ts +18 -18
  76. package/lib/config/index.d.ts +3 -3
  77. package/lib/config/version.d.ts +5 -5
  78. package/lib/core.module.d.ts +19 -19
  79. package/lib/gesture/gesture.module.d.ts +9 -9
  80. package/lib/gesture/gesture.provider.d.ts +7 -7
  81. package/lib/language/index.d.ts +1 -1
  82. package/lib/language/language.module.d.ts +9 -9
  83. package/lib/language/shared/index.d.ts +4 -4
  84. package/lib/language/shared/language.interface.d.ts +3 -3
  85. package/lib/language/shared/language.loader.d.ts +11 -11
  86. package/lib/language/shared/language.provider.d.ts +15 -15
  87. package/lib/language/shared/language.service.d.ts +13 -13
  88. package/lib/language/shared/missing-translation.guard.d.ts +4 -4
  89. package/lib/media/index.d.ts +2 -2
  90. package/lib/media/media.enum.d.ts +9 -9
  91. package/lib/media/media.service.d.ts +16 -16
  92. package/lib/message/index.d.ts +1 -1
  93. package/lib/message/message.module.d.ts +10 -10
  94. package/lib/message/shared/index.d.ts +4 -4
  95. package/lib/message/shared/message.enum.d.ts +8 -8
  96. package/lib/message/shared/message.interface.d.ts +21 -21
  97. package/lib/message/shared/message.service.d.ts +31 -31
  98. package/lib/network/index.d.ts +2 -2
  99. package/lib/network/network.interfaces.d.ts +3 -3
  100. package/lib/network/network.service.d.ts +21 -21
  101. package/lib/regex/index.d.ts +2 -2
  102. package/lib/regex/regex.interface.d.ts +3 -3
  103. package/lib/regex/regex.service.d.ts +12 -12
  104. package/lib/request/error.interceptor.d.ts +14 -14
  105. package/lib/request/error.module.d.ts +9 -9
  106. package/lib/request/index.d.ts +2 -2
  107. package/lib/request/logging.interceptor.d.ts +8 -8
  108. package/lib/request/logging.module.d.ts +8 -8
  109. package/lib/route/route.interface.d.ts +23 -23
  110. package/lib/route/route.service.d.ts +19 -19
  111. package/lib/storage/index.d.ts +2 -2
  112. package/lib/storage/storage.interface.d.ts +20 -20
  113. package/lib/storage/storage.service.d.ts +19 -19
  114. package/package.json +2 -2
  115. package/public_api.d.ts +24 -24
  116. package/style/index.theming.scss +4 -0
  117. package/style/partial/media.scss +80 -80
@@ -1,193 +1,193 @@
1
- import { Injectable, Inject, Injector } from '@angular/core';
2
- import { BehaviorSubject, forkJoin } from 'rxjs';
3
- import { ToastrService } from 'ngx-toastr';
4
- import { MessageType } from './message.enum';
5
- import { debounceTime, first } from 'rxjs/operators';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../config/config.service";
8
- import * as i2 from "../../language/shared/language.service";
9
- export class MessageService {
10
- constructor(injector, configService, languageService) {
11
- this.injector = injector;
12
- this.configService = configService;
13
- this.languageService = languageService;
14
- this.messages$ = new BehaviorSubject([]);
15
- this.activeMessageTranslations = [];
16
- this.options = this.configService.getConfig('message') || {};
17
- this.languageService.language$.pipe(debounceTime(500)).subscribe(r => {
18
- if (this.toastr.toasts.length === 0) {
19
- this.activeMessageTranslations = [];
20
- }
21
- this.toastr.toasts.map(toast => {
22
- const activeMessageTranslation = this.activeMessageTranslations.find(amt => amt.id === toast.toastId);
23
- if (activeMessageTranslation) {
24
- const translatedTextInterpolateParams = { ...activeMessageTranslation.textInterpolateParams };
25
- const translatedTitleInterpolateParams = { ...activeMessageTranslation.titleInterpolateParams };
26
- if (activeMessageTranslation.textInterpolateParams) {
27
- Object.keys(activeMessageTranslation.textInterpolateParams).map(k => {
28
- translatedTextInterpolateParams[k] =
29
- this.languageService.translate.instant(activeMessageTranslation.textInterpolateParams[k]);
30
- });
31
- }
32
- if (activeMessageTranslation.titleInterpolateParams) {
33
- Object.keys(activeMessageTranslation.titleInterpolateParams).map(k => {
34
- translatedTitleInterpolateParams[k] =
35
- this.languageService.translate.instant(activeMessageTranslation.titleInterpolateParams[k]);
36
- });
37
- }
38
- forkJoin([
39
- this.languageService.translate.get(activeMessageTranslation.textKey, translatedTextInterpolateParams),
40
- this.languageService.translate.get(activeMessageTranslation.titleKey, translatedTitleInterpolateParams)
41
- ]).pipe(first()).subscribe((res) => {
42
- toast.toastRef.componentInstance.message = res[0];
43
- toast.toastRef.componentInstance.title = res[1];
44
- });
45
- }
46
- });
47
- });
48
- }
49
- get toastr() {
50
- return this.injector.get(ToastrService);
51
- }
52
- showError(httpError) {
53
- httpError.error.caught = true;
54
- return this.error(httpError.error.message, httpError.error.title);
55
- }
56
- message(message) {
57
- const messageType = message.type;
58
- this.toastr.toastrConfig.iconClasses[messageType] = `toast-${messageType}`;
59
- this.messages$.next(this.messages$.value.concat([message]));
60
- message.options = message.options || {};
61
- const currentDate = new Date();
62
- message.options.from = message.options.from ? message.options.from : new Date('1 jan 1900');
63
- message.options.to = message.options.to ? message.options.to : new Date('1 jan 3000');
64
- if (typeof message.options.from === 'string') {
65
- message.options.from = new Date(Date.parse(message.options.from.replace(/-/g, ' ')));
66
- }
67
- if (typeof message.options.to === 'string') {
68
- message.options.to = new Date(Date.parse(message.options.to.replace(/-/g, ' ')));
69
- }
70
- if (currentDate > message.options.from && currentDate < message.options.to) {
71
- if (message.showIcon === false) {
72
- this.toastr.toastrConfig.iconClasses[messageType] = `toast-${messageType} toast-no-icon`;
73
- }
74
- message = this.handleTemplate(message);
75
- if (message.text) {
76
- let messageShown;
77
- switch (message.type) {
78
- case MessageType.SUCCESS:
79
- messageShown = this.success(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
80
- break;
81
- case MessageType.ERROR:
82
- messageShown = this.error(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
83
- break;
84
- case MessageType.INFO:
85
- messageShown = this.info(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
86
- break;
87
- case MessageType.SHOW:
88
- messageShown = this.show(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
89
- break;
90
- case MessageType.ALERT:
91
- case MessageType.WARNING:
92
- messageShown = this.alert(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
93
- break;
94
- default:
95
- messageShown = this.info(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
96
- break;
97
- }
98
- message.options.id = messageShown.toastId;
99
- }
100
- }
101
- }
102
- success(text, title = 'igo.core.message.success', options = {}, textInterpolateParams, titleInterpolateParams) {
103
- return this.handleNgxToastr('success', text, title, options, textInterpolateParams, titleInterpolateParams);
104
- }
105
- error(text, title = 'igo.core.message.error', options = {}, textInterpolateParams, titleInterpolateParams) {
106
- return this.handleNgxToastr('error', text, title, options, textInterpolateParams, titleInterpolateParams);
107
- }
108
- info(text, title = 'igo.core.message.info', options = {}, textInterpolateParams, titleInterpolateParams) {
109
- return this.handleNgxToastr('info', text, title, options, textInterpolateParams, titleInterpolateParams);
110
- }
111
- alert(text, title = 'igo.core.message.alert', options = {}, textInterpolateParams, titleInterpolateParams) {
112
- return this.handleNgxToastr('alert', text, title, options, textInterpolateParams, titleInterpolateParams);
113
- }
114
- show(text, title = 'igo.core.message.info', options = {}, textInterpolateParams, titleInterpolateParams) {
115
- return this.handleNgxToastr('show', text, title, options, textInterpolateParams, titleInterpolateParams);
116
- }
117
- handleNgxToastr(type, text, title, options = {}, textInterpolateParams, titleInterpolateParams) {
118
- const translatedTextInterpolateParams = { ...textInterpolateParams };
119
- const translatedTitlenterpolateParams = { ...titleInterpolateParams };
120
- if (textInterpolateParams) {
121
- Object.keys(textInterpolateParams).map(k => {
122
- translatedTextInterpolateParams[k] =
123
- this.languageService.translate.instant(textInterpolateParams[k]);
124
- });
125
- }
126
- if (titleInterpolateParams) {
127
- Object.keys(titleInterpolateParams).map(k => {
128
- translatedTitlenterpolateParams[k] =
129
- this.languageService.translate.instant(titleInterpolateParams[k]);
130
- });
131
- }
132
- const message = this.languageService.translate.instant(text, translatedTextInterpolateParams);
133
- const translatedTitle = this.languageService.translate.instant(title, translatedTitlenterpolateParams);
134
- let activeToast;
135
- switch (type) {
136
- case 'success':
137
- activeToast = this.toastr.success(message, translatedTitle, options);
138
- break;
139
- case 'error':
140
- activeToast = this.toastr.error(message, translatedTitle, options);
141
- break;
142
- case 'show':
143
- case 'info':
144
- activeToast = this.toastr.info(message, translatedTitle, options);
145
- break;
146
- case 'alert':
147
- activeToast = this.toastr.warning(message, translatedTitle, options);
148
- break;
149
- }
150
- this.activeMessageTranslations.push({
151
- id: activeToast.toastId,
152
- titleKey: title,
153
- textKey: text,
154
- textInterpolateParams,
155
- titleInterpolateParams
156
- });
157
- return activeToast;
158
- }
159
- remove(id) {
160
- this.toastr.remove(id);
161
- }
162
- removeAllAreNotError() {
163
- for (const mess of this.messages$.value) {
164
- if (mess.type !== MessageType.ERROR) {
165
- this.remove(mess.options.id);
166
- }
167
- }
168
- }
169
- handleTemplate(message) {
170
- if (!this.options.template || message.html) {
171
- return message;
172
- }
173
- let html = this.options.template;
174
- html = html.replace('${text}', message.text);
175
- html = html.replace('${title}', message.title);
176
- message.html = undefined;
177
- message.text = html;
178
- message.title = undefined;
179
- return message;
180
- }
181
- }
182
- MessageService.ɵfac = function MessageService_Factory(t) { return new (t || MessageService)(i0.ɵɵinject(Injector), i0.ɵɵinject(i1.ConfigService), i0.ɵɵinject(i2.LanguageService)); };
183
- MessageService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: MessageService, factory: MessageService.ɵfac, providedIn: 'root' });
184
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MessageService, [{
185
- type: Injectable,
186
- args: [{
187
- providedIn: 'root'
188
- }]
189
- }], function () { return [{ type: i0.Injector, decorators: [{
190
- type: Inject,
191
- args: [Injector]
192
- }] }, { type: i1.ConfigService }, { type: i2.LanguageService }]; }, null); })();
1
+ import { Injectable, Inject, Injector } from '@angular/core';
2
+ import { BehaviorSubject, forkJoin } from 'rxjs';
3
+ import { ToastrService } from 'ngx-toastr';
4
+ import { MessageType } from './message.enum';
5
+ import { debounceTime, first } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../config/config.service";
8
+ import * as i2 from "../../language/shared/language.service";
9
+ export class MessageService {
10
+ constructor(injector, configService, languageService) {
11
+ this.injector = injector;
12
+ this.configService = configService;
13
+ this.languageService = languageService;
14
+ this.messages$ = new BehaviorSubject([]);
15
+ this.activeMessageTranslations = [];
16
+ this.options = this.configService.getConfig('message') || {};
17
+ this.languageService.language$.pipe(debounceTime(500)).subscribe(r => {
18
+ if (this.toastr.toasts.length === 0) {
19
+ this.activeMessageTranslations = [];
20
+ }
21
+ this.toastr.toasts.map(toast => {
22
+ const activeMessageTranslation = this.activeMessageTranslations.find(amt => amt.id === toast.toastId);
23
+ if (activeMessageTranslation) {
24
+ const translatedTextInterpolateParams = { ...activeMessageTranslation.textInterpolateParams };
25
+ const translatedTitleInterpolateParams = { ...activeMessageTranslation.titleInterpolateParams };
26
+ if (activeMessageTranslation.textInterpolateParams) {
27
+ Object.keys(activeMessageTranslation.textInterpolateParams).map(k => {
28
+ translatedTextInterpolateParams[k] =
29
+ this.languageService.translate.instant(activeMessageTranslation.textInterpolateParams[k]);
30
+ });
31
+ }
32
+ if (activeMessageTranslation.titleInterpolateParams) {
33
+ Object.keys(activeMessageTranslation.titleInterpolateParams).map(k => {
34
+ translatedTitleInterpolateParams[k] =
35
+ this.languageService.translate.instant(activeMessageTranslation.titleInterpolateParams[k]);
36
+ });
37
+ }
38
+ forkJoin([
39
+ this.languageService.translate.get(activeMessageTranslation.textKey, translatedTextInterpolateParams),
40
+ this.languageService.translate.get(activeMessageTranslation.titleKey, translatedTitleInterpolateParams)
41
+ ]).pipe(first()).subscribe((res) => {
42
+ toast.toastRef.componentInstance.message = res[0];
43
+ toast.toastRef.componentInstance.title = res[1];
44
+ });
45
+ }
46
+ });
47
+ });
48
+ }
49
+ get toastr() {
50
+ return this.injector.get(ToastrService);
51
+ }
52
+ showError(httpError) {
53
+ httpError.error.caught = true;
54
+ return this.error(httpError.error.message, httpError.error.title);
55
+ }
56
+ message(message) {
57
+ const messageType = message.type;
58
+ this.toastr.toastrConfig.iconClasses[messageType] = `toast-${messageType}`;
59
+ this.messages$.next(this.messages$.value.concat([message]));
60
+ message.options = message.options || {};
61
+ const currentDate = new Date();
62
+ message.options.from = message.options.from ? message.options.from : new Date('1 jan 1900');
63
+ message.options.to = message.options.to ? message.options.to : new Date('1 jan 3000');
64
+ if (typeof message.options.from === 'string') {
65
+ message.options.from = new Date(Date.parse(message.options.from.replace(/-/g, ' ')));
66
+ }
67
+ if (typeof message.options.to === 'string') {
68
+ message.options.to = new Date(Date.parse(message.options.to.replace(/-/g, ' ')));
69
+ }
70
+ if (currentDate > message.options.from && currentDate < message.options.to) {
71
+ if (message.showIcon === false) {
72
+ this.toastr.toastrConfig.iconClasses[messageType] = `toast-${messageType} toast-no-icon`;
73
+ }
74
+ message = this.handleTemplate(message);
75
+ if (message.text) {
76
+ let messageShown;
77
+ switch (message.type) {
78
+ case MessageType.SUCCESS:
79
+ messageShown = this.success(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
80
+ break;
81
+ case MessageType.ERROR:
82
+ messageShown = this.error(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
83
+ break;
84
+ case MessageType.INFO:
85
+ messageShown = this.info(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
86
+ break;
87
+ case MessageType.SHOW:
88
+ messageShown = this.show(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
89
+ break;
90
+ case MessageType.ALERT:
91
+ case MessageType.WARNING:
92
+ messageShown = this.alert(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
93
+ break;
94
+ default:
95
+ messageShown = this.info(message.text, message.title, message.options, message.textInterpolateParams, message.titleInterpolateParams);
96
+ break;
97
+ }
98
+ message.options.id = messageShown.toastId;
99
+ }
100
+ }
101
+ }
102
+ success(text, title = 'igo.core.message.success', options = {}, textInterpolateParams, titleInterpolateParams) {
103
+ return this.handleNgxToastr('success', text, title, options, textInterpolateParams, titleInterpolateParams);
104
+ }
105
+ error(text, title = 'igo.core.message.error', options = {}, textInterpolateParams, titleInterpolateParams) {
106
+ return this.handleNgxToastr('error', text, title, options, textInterpolateParams, titleInterpolateParams);
107
+ }
108
+ info(text, title = 'igo.core.message.info', options = {}, textInterpolateParams, titleInterpolateParams) {
109
+ return this.handleNgxToastr('info', text, title, options, textInterpolateParams, titleInterpolateParams);
110
+ }
111
+ alert(text, title = 'igo.core.message.alert', options = {}, textInterpolateParams, titleInterpolateParams) {
112
+ return this.handleNgxToastr('alert', text, title, options, textInterpolateParams, titleInterpolateParams);
113
+ }
114
+ show(text, title = 'igo.core.message.info', options = {}, textInterpolateParams, titleInterpolateParams) {
115
+ return this.handleNgxToastr('show', text, title, options, textInterpolateParams, titleInterpolateParams);
116
+ }
117
+ handleNgxToastr(type, text, title, options = {}, textInterpolateParams, titleInterpolateParams) {
118
+ const translatedTextInterpolateParams = { ...textInterpolateParams };
119
+ const translatedTitlenterpolateParams = { ...titleInterpolateParams };
120
+ if (textInterpolateParams) {
121
+ Object.keys(textInterpolateParams).map(k => {
122
+ translatedTextInterpolateParams[k] =
123
+ this.languageService.translate.instant(textInterpolateParams[k]);
124
+ });
125
+ }
126
+ if (titleInterpolateParams) {
127
+ Object.keys(titleInterpolateParams).map(k => {
128
+ translatedTitlenterpolateParams[k] =
129
+ this.languageService.translate.instant(titleInterpolateParams[k]);
130
+ });
131
+ }
132
+ const message = this.languageService.translate.instant(text, translatedTextInterpolateParams);
133
+ const translatedTitle = this.languageService.translate.instant(title, translatedTitlenterpolateParams);
134
+ let activeToast;
135
+ switch (type) {
136
+ case 'success':
137
+ activeToast = this.toastr.success(message, translatedTitle, options);
138
+ break;
139
+ case 'error':
140
+ activeToast = this.toastr.error(message, translatedTitle, options);
141
+ break;
142
+ case 'show':
143
+ case 'info':
144
+ activeToast = this.toastr.info(message, translatedTitle, options);
145
+ break;
146
+ case 'alert':
147
+ activeToast = this.toastr.warning(message, translatedTitle, options);
148
+ break;
149
+ }
150
+ this.activeMessageTranslations.push({
151
+ id: activeToast.toastId,
152
+ titleKey: title,
153
+ textKey: text,
154
+ textInterpolateParams,
155
+ titleInterpolateParams
156
+ });
157
+ return activeToast;
158
+ }
159
+ remove(id) {
160
+ this.toastr.remove(id);
161
+ }
162
+ removeAllAreNotError() {
163
+ for (const mess of this.messages$.value) {
164
+ if (mess.type !== MessageType.ERROR) {
165
+ this.remove(mess.options.id);
166
+ }
167
+ }
168
+ }
169
+ handleTemplate(message) {
170
+ if (!this.options.template || message.html) {
171
+ return message;
172
+ }
173
+ let html = this.options.template;
174
+ html = html.replace('${text}', message.text);
175
+ html = html.replace('${title}', message.title);
176
+ message.html = undefined;
177
+ message.text = html;
178
+ message.title = undefined;
179
+ return message;
180
+ }
181
+ }
182
+ MessageService.ɵfac = function MessageService_Factory(t) { return new (t || MessageService)(i0.ɵɵinject(Injector), i0.ɵɵinject(i1.ConfigService), i0.ɵɵinject(i2.LanguageService)); };
183
+ MessageService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: MessageService, factory: MessageService.ɵfac, providedIn: 'root' });
184
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MessageService, [{
185
+ type: Injectable,
186
+ args: [{
187
+ providedIn: 'root'
188
+ }]
189
+ }], function () { return [{ type: i0.Injector, decorators: [{
190
+ type: Inject,
191
+ args: [Injector]
192
+ }] }, { type: i1.ConfigService }, { type: i2.LanguageService }]; }, null); })();
193
193
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL21lc3NhZ2Uvc2hhcmVkL21lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLakQsT0FBTyxFQUFpQyxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFZckQsTUFBTSxPQUFPLGNBQWM7SUFLekIsWUFDNEIsUUFBa0IsRUFDcEMsYUFBNEIsRUFDNUIsZUFBZ0M7UUFGZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ3BDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQVBuQyxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQVksRUFBRSxDQUFDLENBQUM7UUFFOUMsOEJBQXlCLEdBQStCLEVBQUUsQ0FBQztRQU9qRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM3RCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ25FLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDbkMsSUFBSSxDQUFDLHlC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QUksQ0FBQyxDQUFDO1FBQzdDLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0MsT0FBTyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7UUFDekIsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDcEIsT0FBTyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7UUFDMUIsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs7NEVBclFVLGNBQWMsY0FNZixRQUFRO29FQU5QLGNBQWMsV0FBZCxjQUFjLG1CQUZiLE1BQU07dUZBRVAsY0FBYztjQUgxQixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7O3NCQU9JLE1BQU07dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmb3JrSm9pbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2NvbmZpZy5zZXJ2aWNlJztcblxuaW1wb3J0IHsgTWVzc2FnZSwgTWVzc2FnZU9wdGlvbnMgfSBmcm9tICcuL21lc3NhZ2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFjdGl2ZVRvYXN0LCBJbmRpdmlkdWFsQ29uZmlnLCBUb2FzdHJTZXJ2aWNlIH0gZnJvbSAnbmd4LXRvYXN0cic7XG5pbXBvcnQgeyBNZXNzYWdlVHlwZSB9IGZyb20gJy4vbWVzc2FnZS5lbnVtJztcbmltcG9ydCB7IExhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uL2xhbmd1YWdlL3NoYXJlZC9sYW5ndWFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmludGVyZmFjZSBBY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24ge1xuICBpZDogbnVtYmVyO1xuICB0aXRsZUtleTogc3RyaW5nO1xuICB0ZXh0S2V5OiBzdHJpbmc7XG4gIHRleHRJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdFxuICB0aXRsZUludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0XG59XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNZXNzYWdlU2VydmljZSB7XG4gIHB1YmxpYyBtZXNzYWdlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1lc3NhZ2VbXT4oW10pO1xuICBwcml2YXRlIG9wdGlvbnM6IE1lc3NhZ2VPcHRpb25zO1xuICBwcml2YXRlIGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbnM6IEFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChJbmplY3RvcikgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZygnbWVzc2FnZScpIHx8IHt9O1xuICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmxhbmd1YWdlJC5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUociA9PiB7XG4gICAgICBpZiAodGhpcy50b2FzdHIudG9hc3RzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aGlzLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbnMgPSBbXTtcbiAgICAgIH1cbiAgICAgIHRoaXMudG9hc3RyLnRvYXN0cy5tYXAodG9hc3QgPT4ge1xuICAgICAgICBjb25zdCBhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24gPSB0aGlzLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbnMuZmluZChhbXQgPT4gYW10LmlkID09PSB0b2FzdC50b2FzdElkKTtcbiAgICAgICAgaWYgKGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbikge1xuICAgICAgICAgIGNvbnN0IHRyYW5zbGF0ZWRUZXh0SW50ZXJwb2xhdGVQYXJhbXMgPSB7Li4uYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRleHRJbnRlcnBvbGF0ZVBhcmFtc307XG4gICAgICAgICAgY29uc3QgdHJhbnNsYXRlZFRpdGxlSW50ZXJwb2xhdGVQYXJhbXMgPSB7Li4uYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXN9O1xuXG4gICAgICAgICAgaWYgKGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50ZXh0SW50ZXJwb2xhdGVQYXJhbXMpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50ZXh0SW50ZXJwb2xhdGVQYXJhbXMpLm1hcChrID0+IHtcbiAgICAgICAgICAgICAgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtc1trXSA9XG4gICAgICAgICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRleHRJbnRlcnBvbGF0ZVBhcmFtc1trXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50aXRsZUludGVycG9sYXRlUGFyYW1zKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGl0bGVJbnRlcnBvbGF0ZVBhcmFtcykubWFwKGsgPT4ge1xuICAgICAgICAgICAgICB0cmFuc2xhdGVkVGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1trXSA9XG4gICAgICAgICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNba10pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuXG5cbiAgICAgICAgICBmb3JrSm9pbihbXG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmdldChhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEtleSwgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtcyksXG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmdldChhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGl0bGVLZXksIHRyYW5zbGF0ZWRUaXRsZUludGVycG9sYXRlUGFyYW1zKVxuICAgICAgICBdKS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVzOiBbc3RyaW5nLCBzdHJpbmddKSA9PiB7XG4gICAgICAgICAgdG9hc3QudG9hc3RSZWYuY29tcG9uZW50SW5zdGFuY2UubWVzc2FnZSA9IHJlc1swXTtcbiAgICAgICAgICB0b2FzdC50b2FzdFJlZi5jb21wb25lbnRJbnN0YW5jZS50aXRsZSA9IHJlc1sxXTtcbiAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgdG9hc3RyKCk6IFRvYXN0clNlcnZpY2Uge1xuICAgIHJldHVybiB0aGlzLmluamVjdG9yLmdldChUb2FzdHJTZXJ2aWNlKTtcbiAgfVxuXG4gIHNob3dFcnJvcihodHRwRXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgaHR0cEVycm9yLmVycm9yLmNhdWdodCA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3IoaHR0cEVycm9yLmVycm9yLm1lc3NhZ2UsIGh0dHBFcnJvci5lcnJvci50aXRsZSk7XG4gIH1cblxuICBtZXNzYWdlKG1lc3NhZ2U6IE1lc3NhZ2UpIHtcbiAgICBjb25zdCBtZXNzYWdlVHlwZSA9IG1lc3NhZ2UudHlwZTtcbiAgICB0aGlzLnRvYXN0ci50b2FzdHJDb25maWcuaWNvbkNsYXNzZXNbbWVzc2FnZVR5cGVdID0gYHRvYXN0LSR7bWVzc2FnZVR5cGV9YDtcblxuICAgIHRoaXMubWVzc2FnZXMkLm5leHQodGhpcy5tZXNzYWdlcyQudmFsdWUuY29uY2F0KFttZXNzYWdlXSkpO1xuXG4gICAgbWVzc2FnZS5vcHRpb25zID0gbWVzc2FnZS5vcHRpb25zIHx8IHt9IGFzIE1lc3NhZ2VPcHRpb25zO1xuICAgIGNvbnN0IGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcblxuICAgIG1lc3NhZ2Uub3B0aW9ucy5mcm9tID0gbWVzc2FnZS5vcHRpb25zLmZyb20gPyBtZXNzYWdlLm9wdGlvbnMuZnJvbSA6IG5ldyBEYXRlKCcxIGphbiAxOTAwJyk7XG4gICAgbWVzc2FnZS5vcHRpb25zLnRvID0gbWVzc2FnZS5vcHRpb25zLnRvID8gbWVzc2FnZS5vcHRpb25zLnRvIDogbmV3IERhdGUoJzEgamFuIDMwMDAnKTtcbiAgICBpZiAodHlwZW9mIG1lc3NhZ2Uub3B0aW9ucy5mcm9tID09PSAnc3RyaW5nJykge1xuICAgICAgbWVzc2FnZS5vcHRpb25zLmZyb20gPSBuZXcgRGF0ZShEYXRlLnBhcnNlKG1lc3NhZ2Uub3B0aW9ucy5mcm9tLnJlcGxhY2UoLy0vZywgJyAnKSkpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIG1lc3NhZ2Uub3B0aW9ucy50byA9PT0gJ3N0cmluZycpIHtcbiAgICAgIG1lc3NhZ2Uub3B0aW9ucy50byA9IG5ldyBEYXRlKERhdGUucGFyc2UobWVzc2FnZS5vcHRpb25zLnRvLnJlcGxhY2UoLy0vZywgJyAnKSkpO1xuICAgIH1cbiAgICBpZiAoY3VycmVudERhdGUgPiBtZXNzYWdlLm9wdGlvbnMuZnJvbSAmJiBjdXJyZW50RGF0ZSA8IG1lc3NhZ2Uub3B0aW9ucy50bykge1xuICAgICAgaWYgKG1lc3NhZ2Uuc2hvd0ljb24gPT09IGZhbHNlKSB7XG4gICAgICAgIHRoaXMudG9hc3RyLnRvYXN0ckNvbmZpZy5pY29uQ2xhc3Nlc1ttZXNzYWdlVHlwZV0gPSBgdG9hc3QtJHttZXNzYWdlVHlwZX0gdG9hc3Qtbm8taWNvbmA7XG4gICAgICB9XG4gICAgICBtZXNzYWdlID0gdGhpcy5oYW5kbGVUZW1wbGF0ZShtZXNzYWdlKTtcblxuICAgICAgaWYgKG1lc3NhZ2UudGV4dCkge1xuICAgICAgICBsZXQgbWVzc2FnZVNob3duOiBBY3RpdmVUb2FzdDxhbnk+O1xuICAgICAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuU1VDQ0VTUzpcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuc3VjY2VzcyhcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0LFxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlLFxuICAgICAgICAgICAgICBtZXNzYWdlLm9wdGlvbnMsXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dEludGVycG9sYXRlUGFyYW1zLFxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBNZXNzYWdlVHlwZS5FUlJPUjpcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuZXJyb3IoXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuSU5GTzpcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuaW5mbyhcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0LFxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlLFxuICAgICAgICAgICAgICBtZXNzYWdlLm9wdGlvbnMsXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dEludGVycG9sYXRlUGFyYW1zLFxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBNZXNzYWdlVHlwZS5TSE9XOlxuICAgICAgICAgICAgbWVzc2FnZVNob3duID0gdGhpcy5zaG93KFxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHQsXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGUsXG4gICAgICAgICAgICAgIG1lc3NhZ2Uub3B0aW9ucyxcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGVJbnRlcnBvbGF0ZVBhcmFtcyk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIE1lc3NhZ2VUeXBlLkFMRVJUOlxuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuV0FSTklORzpcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuYWxlcnQoXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBtZXNzYWdlU2hvd24gPSB0aGlzLmluZm8oXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIG1lc3NhZ2Uub3B0aW9ucy5pZCA9IG1lc3NhZ2VTaG93bi50b2FzdElkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHN1Y2Nlc3MoXG4gICAgdGV4dDogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5zdWNjZXNzJyxcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge30sXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QpOiBBY3RpdmVUb2FzdDxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVOZ3hUb2FzdHIoJ3N1Y2Nlc3MnLCB0ZXh0LCB0aXRsZSwgb3B0aW9ucywgdGV4dEludGVycG9sYXRlUGFyYW1zLCB0aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgfVxuXG4gIGVycm9yKFxuICAgIHRleHQ6IHN0cmluZyxcbiAgICB0aXRsZTogc3RyaW5nID0gJ2lnby5jb3JlLm1lc3NhZ2UuZXJyb3InLFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcbiAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QsXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCk6IEFjdGl2ZVRvYXN0PGFueT4ge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZU5neFRvYXN0cignZXJyb3InLCB0ZXh0LCB0aXRsZSwgb3B0aW9ucywgdGV4dEludGVycG9sYXRlUGFyYW1zLCB0aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgfVxuXG4gIGluZm8oXG4gICAgdGV4dDogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5pbmZvJyxcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge30sXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QpOiBBY3RpdmVUb2FzdDxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVOZ3hUb2FzdHIoJ2luZm8nLCB0ZXh0LCB0aXRsZSwgb3B0aW9ucywgdGV4dEludGVycG9sYXRlUGFyYW1zLCB0aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgfVxuXG4gIGFsZXJ0KFxuICAgIHRleHQ6IHN0cmluZyxcbiAgICB0aXRsZTogc3RyaW5nID0gJ2lnby5jb3JlLm1lc3NhZ2UuYWxlcnQnLFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcbiAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QsXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCk6IEFjdGl2ZVRvYXN0PGFueT4ge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZU5neFRvYXN0cignYWxlcnQnLCB0ZXh0LCB0aXRsZSwgb3B0aW9ucywgdGV4dEludGVycG9sYXRlUGFyYW1zLCB0aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgfVxuXG4gIHNob3coXG4gICAgdGV4dDogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5pbmZvJyxcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge30sXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QpOiBBY3RpdmVUb2FzdDxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVOZ3hUb2FzdHIoJ3Nob3cnLCB0ZXh0LCB0aXRsZSwgb3B0aW9ucywgdGV4dEludGVycG9sYXRlUGFyYW1zLCB0aXRsZUludGVycG9sYXRlUGFyYW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlTmd4VG9hc3RyKFxuICAgIHR5cGU6ICdhbGVydCcgfCAnaW5mbycgfCAnZXJyb3InIHwgJ3N1Y2Nlc3MnIHwgJ3Nob3cnLFxuICAgIHRleHQ6IHN0cmluZyxcbiAgICB0aXRsZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcbiAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QsXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCk6IEFjdGl2ZVRvYXN0PGFueT4ge1xuXG4gICAgY29uc3QgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtcyA9IHsuLi50ZXh0SW50ZXJwb2xhdGVQYXJhbXN9O1xuICAgIGNvbnN0IHRyYW5zbGF0ZWRUaXRsZW50ZXJwb2xhdGVQYXJhbXMgPSB7Li4udGl0bGVJbnRlcnBvbGF0ZVBhcmFtc307XG5cbiAgICBpZiAodGV4dEludGVycG9sYXRlUGFyYW1zKSB7XG4gICAgICBPYmplY3Qua2V5cyh0ZXh0SW50ZXJwb2xhdGVQYXJhbXMpLm1hcChrID0+IHtcbiAgICAgICAgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtc1trXSA9XG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQodGV4dEludGVycG9sYXRlUGFyYW1zW2tdKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGl0bGVJbnRlcnBvbGF0ZVBhcmFtcykge1xuICAgICAgT2JqZWN0LmtleXModGl0bGVJbnRlcnBvbGF0ZVBhcmFtcykubWFwKGsgPT4ge1xuICAgICAgICB0cmFuc2xhdGVkVGl0bGVudGVycG9sYXRlUGFyYW1zW2tdID1cbiAgICAgICAgICB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCh0aXRsZUludGVycG9sYXRlUGFyYW1zW2tdKTtcbiAgICAgIH0pO1xuICAgIH1cblxuXG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KHRleHQsIHRyYW5zbGF0ZWRUZXh0SW50ZXJwb2xhdGVQYXJhbXMpO1xuICAgIGNvbnN0IHRyYW5zbGF0ZWRUaXRsZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KHRpdGxlLCB0cmFuc2xhdGVkVGl0bGVudGVycG9sYXRlUGFyYW1zKTtcblxuICAgIGxldCBhY3RpdmVUb2FzdDtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICBhY3RpdmVUb2FzdCA9IHRoaXMudG9hc3RyLnN1Y2Nlc3MobWVzc2FnZSwgdHJhbnNsYXRlZFRpdGxlLCBvcHRpb25zKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgIGFjdGl2ZVRvYXN0ID0gdGhpcy50b2FzdHIuZXJyb3IobWVzc2FnZSwgdHJhbnNsYXRlZFRpdGxlLCBvcHRpb25zKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdzaG93JzpcbiAgICAgIGNhc2UgJ2luZm8nOlxuICAgICAgICBhY3RpdmVUb2FzdCA9IHRoaXMudG9hc3RyLmluZm8obWVzc2FnZSwgdHJhbnNsYXRlZFRpdGxlLCBvcHRpb25zKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdhbGVydCc6XG4gICAgICAgIGFjdGl2ZVRvYXN0ID0gdGhpcy50b2FzdHIud2FybmluZyhtZXNzYWdlLCB0cmFuc2xhdGVkVGl0bGUsIG9wdGlvbnMpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgdGhpcy5hY3RpdmVNZXNzYWdlVHJhbnNsYXRpb25zLnB1c2goe1xuICAgICAgaWQ6IGFjdGl2ZVRvYXN0LnRvYXN0SWQsXG4gICAgICB0aXRsZUtleTogdGl0bGUsXG4gICAgICB0ZXh0S2V5OiB0ZXh0LFxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxuICAgICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcyB9KTtcbiAgICByZXR1cm4gYWN0aXZlVG9hc3Q7XG5cbiAgfVxuXG4gIHJlbW92ZShpZD86IG51bWJlcikge1xuICAgIHRoaXMudG9hc3RyLnJlbW92ZShpZCk7XG4gIH1cblxuICByZW1vdmVBbGxBcmVOb3RFcnJvcigpIHtcbiAgICBmb3IgKGNvbnN0IG1lc3Mgb2YgdGhpcy5tZXNzYWdlcyQudmFsdWUpIHtcbiAgICAgIGlmIChtZXNzLnR5cGUgIT09IE1lc3NhZ2VUeXBlLkVSUk9SKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlKG1lc3Mub3B0aW9ucy5pZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVUZW1wbGF0ZShtZXNzYWdlOiBNZXNzYWdlKTogTWVzc2FnZSB7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMudGVtcGxhdGUgfHwgbWVzc2FnZS5odG1sKSB7XG4gICAgICByZXR1cm4gbWVzc2FnZTtcbiAgICB9XG5cbiAgICBsZXQgaHRtbCA9IHRoaXMub3B0aW9ucy50ZW1wbGF0ZTtcbiAgICBodG1sID0gaHRtbC5yZXBsYWNlKCcke3RleHR9JywgbWVzc2FnZS50ZXh0KTtcbiAgICBodG1sID0gaHRtbC5yZXBsYWNlKCcke3RpdGxlfScsIG1lc3NhZ2UudGl0bGUpO1xuXG4gICAgbWVzc2FnZS5odG1sID0gdW5kZWZpbmVkO1xuICAgIG1lc3NhZ2UudGV4dCA9IGh0bWw7XG4gICAgbWVzc2FnZS50aXRsZSA9IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gbWVzc2FnZTtcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
- export * from './network.service';
2
- export * from './network.interfaces';
1
+ export * from './network.service';
2
+ export * from './network.interfaces';
3
3
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbmV0d29yay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25ldHdvcmsuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL25ldHdvcmsuaW50ZXJmYWNlcyc7XG4iXX0=
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5pbnRlcmZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL25ldHdvcmsvbmV0d29yay5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpb25TdGF0ZSB7XG4gICAgY29ubmVjdGlvbjogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -1,67 +1,67 @@
1
- import { Injectable, EventEmitter } from '@angular/core';
2
- import { fromEvent } from 'rxjs';
3
- import { debounceTime, startWith } from 'rxjs/operators';
4
- import { LanguageService } from '../language/shared/language.service';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../message/shared/message.service";
7
- export class NetworkService {
8
- constructor(messageService, injector) {
9
- this.messageService = messageService;
10
- this.injector = injector;
11
- this.stateChangeEventEmitter = new EventEmitter();
12
- this.state = {
13
- connection: window.navigator.onLine
14
- };
15
- this.checkNetworkState();
16
- }
17
- checkNetworkState() {
18
- this.onlineSubscription = fromEvent(window, 'online').subscribe(() => {
19
- if (this.previousMessageId) {
20
- this.messageService.remove(this.previousMessageId);
21
- }
22
- const translate = this.injector.get(LanguageService).translate;
23
- const message = translate.instant('igo.core.network.online.message');
24
- const title = translate.instant('igo.core.network.online.title');
25
- const messageObj = this.messageService.info(message, title);
26
- this.previousMessageId = messageObj.toastId;
27
- this.state.connection = true;
28
- this.emitEvent();
29
- });
30
- this.offlineSubscription = fromEvent(window, 'offline').subscribe(() => {
31
- if (this.previousMessageId) {
32
- this.messageService.remove(this.previousMessageId);
33
- }
34
- const translate = this.injector.get(LanguageService).translate;
35
- const message = translate.instant('igo.core.network.offline.message');
36
- const title = translate.instant('igo.core.network.offline.title');
37
- const messageObj = this.messageService.info(message, title);
38
- this.previousMessageId = messageObj.toastId;
39
- this.state.connection = false;
40
- this.emitEvent();
41
- });
42
- }
43
- emitEvent() {
44
- this.stateChangeEventEmitter.emit(this.state);
45
- }
46
- ngOnDestroy() {
47
- try {
48
- this.offlineSubscription.unsubscribe();
49
- this.onlineSubscription.unsubscribe();
50
- }
51
- catch (e) { }
52
- }
53
- currentState(reportState = true) {
54
- return reportState
55
- ? this.stateChangeEventEmitter.pipe(debounceTime(300), startWith(this.state))
56
- : this.stateChangeEventEmitter.pipe(debounceTime(300));
57
- }
58
- }
59
- NetworkService.ɵfac = function NetworkService_Factory(t) { return new (t || NetworkService)(i0.ɵɵinject(i1.MessageService), i0.ɵɵinject(i0.Injector)); };
60
- NetworkService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: NetworkService, factory: NetworkService.ɵfac, providedIn: 'root' });
61
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NetworkService, [{
62
- type: Injectable,
63
- args: [{
64
- providedIn: 'root'
65
- }]
66
- }], function () { return [{ type: i1.MessageService }, { type: i0.Injector }]; }, null); })();
1
+ import { Injectable, EventEmitter } from '@angular/core';
2
+ import { fromEvent } from 'rxjs';
3
+ import { debounceTime, startWith } from 'rxjs/operators';
4
+ import { LanguageService } from '../language/shared/language.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../message/shared/message.service";
7
+ export class NetworkService {
8
+ constructor(messageService, injector) {
9
+ this.messageService = messageService;
10
+ this.injector = injector;
11
+ this.stateChangeEventEmitter = new EventEmitter();
12
+ this.state = {
13
+ connection: window.navigator.onLine
14
+ };
15
+ this.checkNetworkState();
16
+ }
17
+ checkNetworkState() {
18
+ this.onlineSubscription = fromEvent(window, 'online').subscribe(() => {
19
+ if (this.previousMessageId) {
20
+ this.messageService.remove(this.previousMessageId);
21
+ }
22
+ const translate = this.injector.get(LanguageService).translate;
23
+ const message = translate.instant('igo.core.network.online.message');
24
+ const title = translate.instant('igo.core.network.online.title');
25
+ const messageObj = this.messageService.info(message, title);
26
+ this.previousMessageId = messageObj.toastId;
27
+ this.state.connection = true;
28
+ this.emitEvent();
29
+ });
30
+ this.offlineSubscription = fromEvent(window, 'offline').subscribe(() => {
31
+ if (this.previousMessageId) {
32
+ this.messageService.remove(this.previousMessageId);
33
+ }
34
+ const translate = this.injector.get(LanguageService).translate;
35
+ const message = translate.instant('igo.core.network.offline.message');
36
+ const title = translate.instant('igo.core.network.offline.title');
37
+ const messageObj = this.messageService.info(message, title);
38
+ this.previousMessageId = messageObj.toastId;
39
+ this.state.connection = false;
40
+ this.emitEvent();
41
+ });
42
+ }
43
+ emitEvent() {
44
+ this.stateChangeEventEmitter.emit(this.state);
45
+ }
46
+ ngOnDestroy() {
47
+ try {
48
+ this.offlineSubscription.unsubscribe();
49
+ this.onlineSubscription.unsubscribe();
50
+ }
51
+ catch (e) { }
52
+ }
53
+ currentState(reportState = true) {
54
+ return reportState
55
+ ? this.stateChangeEventEmitter.pipe(debounceTime(300), startWith(this.state))
56
+ : this.stateChangeEventEmitter.pipe(debounceTime(300));
57
+ }
58
+ }
59
+ NetworkService.ɵfac = function NetworkService_Factory(t) { return new (t || NetworkService)(i0.ɵɵinject(i1.MessageService), i0.ɵɵinject(i0.Injector)); };
60
+ NetworkService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: NetworkService, factory: NetworkService.ɵfac, providedIn: 'root' });
61
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NetworkService, [{
62
+ type: Injectable,
63
+ args: [{
64
+ providedIn: 'root'
65
+ }]
66
+ }], function () { return [{ type: i1.MessageService }, { type: i0.Injector }]; }, null); })();
67
67
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL25ldHdvcmsvbmV0d29yay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQTRCLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7O0FBTXRFLE1BQU0sT0FBTyxjQUFjO0lBVXpCLFlBQ1UsY0FBOEIsRUFDOUIsUUFBa0I7UUFEbEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFYcEIsNEJBQXVCLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFLOUQsVUFBSyxHQUFvQjtZQUMvQixVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNO1NBQ3BDLENBQUM7UUFNRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbkUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO2FBQ3BEO1lBQ0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQy9ELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQWlDLENBQUMsQ0FBQztZQUNyRSxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDakUsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO1lBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUM3QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3JFLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQzthQUNwRDtZQUNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUMvRCxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDdEUsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1lBQ2xFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztZQUM1QyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDOUIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUk7WUFDRixJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3ZDO1FBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRTtJQUNoQixDQUFDO0lBRUQsWUFBWSxDQUFDLFdBQVcsR0FBRyxJQUFJO1FBQzdCLE9BQU8sV0FBVztZQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FDL0IsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUN0QjtZQUNILENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7OzRFQS9EVSxjQUFjO29FQUFkLGNBQWMsV0FBZCxjQUFjLG1CQUZiLE1BQU07dUZBRVAsY0FBYztjQUgxQixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBFdmVudEVtaXR0ZXIsIE9uRGVzdHJveSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuLi9tZXNzYWdlL3NoYXJlZC9tZXNzYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vbGFuZ3VhZ2Uvc2hhcmVkL2xhbmd1YWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29ubmVjdGlvblN0YXRlIH0gZnJvbSAnLi9uZXR3b3JrLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZXR3b3JrU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgc3RhdGVDaGFuZ2VFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPENvbm5lY3Rpb25TdGF0ZT4oKTtcbiAgcHJpdmF0ZSBvbmxpbmVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBvZmZsaW5lU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgcHJldmlvdXNNZXNzYWdlSWQ7XG5cbiAgcHJpdmF0ZSBzdGF0ZTogQ29ubmVjdGlvblN0YXRlID0ge1xuICAgIGNvbm5lY3Rpb246IHdpbmRvdy5uYXZpZ2F0b3Iub25MaW5lXG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgICB0aGlzLmNoZWNrTmV0d29ya1N0YXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrTmV0d29ya1N0YXRlKCkge1xuICAgIHRoaXMub25saW5lU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KHdpbmRvdywgJ29ubGluZScpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wcmV2aW91c01lc3NhZ2VJZCkge1xuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnJlbW92ZSh0aGlzLnByZXZpb3VzTWVzc2FnZUlkKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KExhbmd1YWdlU2VydmljZSkudHJhbnNsYXRlO1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uY29yZS5uZXR3b3JrLm9ubGluZS5tZXNzYWdlJyk7XG4gICAgICBjb25zdCB0aXRsZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uY29yZS5uZXR3b3JrLm9ubGluZS50aXRsZScpO1xuICAgICAgY29uc3QgbWVzc2FnZU9iaiA9IHRoaXMubWVzc2FnZVNlcnZpY2UuaW5mbyhtZXNzYWdlLCB0aXRsZSk7XG4gICAgICB0aGlzLnByZXZpb3VzTWVzc2FnZUlkID0gbWVzc2FnZU9iai50b2FzdElkO1xuICAgICAgdGhpcy5zdGF0ZS5jb25uZWN0aW9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuZW1pdEV2ZW50KCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLm9mZmxpbmVTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQod2luZG93LCAnb2ZmbGluZScpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wcmV2aW91c01lc3NhZ2VJZCkge1xuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnJlbW92ZSh0aGlzLnByZXZpb3VzTWVzc2FnZUlkKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KExhbmd1YWdlU2VydmljZSkudHJhbnNsYXRlO1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uY29yZS5uZXR3b3JrLm9mZmxpbmUubWVzc2FnZScpO1xuICAgICAgY29uc3QgdGl0bGUgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmNvcmUubmV0d29yay5vZmZsaW5lLnRpdGxlJyk7XG4gICAgICBjb25zdCBtZXNzYWdlT2JqID0gdGhpcy5tZXNzYWdlU2VydmljZS5pbmZvKG1lc3NhZ2UsIHRpdGxlKTtcbiAgICAgIHRoaXMucHJldmlvdXNNZXNzYWdlSWQgPSBtZXNzYWdlT2JqLnRvYXN0SWQ7XG4gICAgICB0aGlzLnN0YXRlLmNvbm5lY3Rpb24gPSBmYWxzZTtcbiAgICAgIHRoaXMuZW1pdEV2ZW50KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRFdmVudCgpIHtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlRXZlbnRFbWl0dGVyLmVtaXQodGhpcy5zdGF0ZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5vZmZsaW5lU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLm9ubGluZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH0gY2F0Y2ggKGUpIHt9XG4gIH1cblxuICBjdXJyZW50U3RhdGUocmVwb3J0U3RhdGUgPSB0cnVlKTogT2JzZXJ2YWJsZTxDb25uZWN0aW9uU3RhdGU+IHtcbiAgICByZXR1cm4gcmVwb3J0U3RhdGVcbiAgICAgID8gdGhpcy5zdGF0ZUNoYW5nZUV2ZW50RW1pdHRlci5waXBlKFxuICAgICAgICAgIGRlYm91bmNlVGltZSgzMDApLFxuICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLnN0YXRlKVxuICAgICAgICApXG4gICAgICA6IHRoaXMuc3RhdGVDaGFuZ2VFdmVudEVtaXR0ZXIucGlwZShkZWJvdW5jZVRpbWUoMzAwKSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,3 +1,3 @@
1
- export * from './regex.service';
2
- export * from './regex.interface';
1
+ export * from './regex.service';
2
+ export * from './regex.interface';
3
3
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvcmVnZXgvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yZWdleC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVnZXguaW50ZXJmYWNlJztcbiJdfQ==
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnZXguaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3JlZ2V4L3JlZ2V4LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBSZWdleE9wdGlvbnMge1xuICBba2V5OiBzdHJpbmddOiBhbnlcbn1cbiJdfQ==