@acontplus/ng-notifications 1.0.1 → 1.0.3
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.
|
@@ -0,0 +1,398 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, Injectable, inject, Inject } from '@angular/core';
|
|
3
|
+
import { ToastrService } from 'ngx-toastr';
|
|
4
|
+
import { of, from } from 'rxjs';
|
|
5
|
+
import { MatSnackBar } from '@angular/material/snack-bar';
|
|
6
|
+
import { map } from 'rxjs/operators';
|
|
7
|
+
import Swal from 'sweetalert2';
|
|
8
|
+
|
|
9
|
+
const NOTIFICATION_MESSAGES = {
|
|
10
|
+
SUCCESS: {
|
|
11
|
+
SAVE: 'Data saved successfully',
|
|
12
|
+
DELETE: 'Item deleted successfully',
|
|
13
|
+
UPDATE: 'Data updated successfully',
|
|
14
|
+
UPLOAD: 'File uploaded successfully',
|
|
15
|
+
CREATE: 'Item created successfully',
|
|
16
|
+
SYNC: 'Data synchronized successfully',
|
|
17
|
+
},
|
|
18
|
+
ERROR: {
|
|
19
|
+
SAVE: 'Failed to save data',
|
|
20
|
+
DELETE: 'Failed to delete item',
|
|
21
|
+
UPDATE: 'Failed to update data',
|
|
22
|
+
UPLOAD: 'Failed to upload file',
|
|
23
|
+
NETWORK: 'Network error occurred',
|
|
24
|
+
UNKNOWN: 'An unexpected error occurred',
|
|
25
|
+
VALIDATION: 'Validation error',
|
|
26
|
+
UNAUTHORIZED: 'Unauthorized access',
|
|
27
|
+
SERVER: 'Server error occurred',
|
|
28
|
+
},
|
|
29
|
+
WARNING: {
|
|
30
|
+
UNSAVED_CHANGES: 'You have unsaved changes',
|
|
31
|
+
SESSION_EXPIRING: 'Your session is about to expire',
|
|
32
|
+
STORAGE_FULL: 'Storage is running low',
|
|
33
|
+
DEPRECATED: 'This feature is deprecated',
|
|
34
|
+
LIMIT_REACHED: 'Limit reached',
|
|
35
|
+
},
|
|
36
|
+
INFO: {
|
|
37
|
+
LOADING: 'Loading data...',
|
|
38
|
+
PROCESSING: 'Processing request...',
|
|
39
|
+
MAINTENANCE: 'System maintenance scheduled',
|
|
40
|
+
UPDATE_AVAILABLE: 'Update available',
|
|
41
|
+
BACKUP_COMPLETE: 'Backup completed',
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
const NOTIFICATION_DURATIONS = {
|
|
45
|
+
SHORT: 3000,
|
|
46
|
+
MEDIUM: 5000,
|
|
47
|
+
LONG: 8000,
|
|
48
|
+
PERSISTENT: 0,
|
|
49
|
+
};
|
|
50
|
+
const NOTIFICATION_ICONS = {
|
|
51
|
+
success: 'check_circle',
|
|
52
|
+
error: 'error',
|
|
53
|
+
warning: 'warning',
|
|
54
|
+
info: 'info',
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const TOASTR_NOTIFICATION_CONFIG = new InjectionToken('toastr-notification-config', {
|
|
58
|
+
providedIn: 'root',
|
|
59
|
+
factory: () => ({
|
|
60
|
+
positionClass: 'toast-bottom-center',
|
|
61
|
+
timeOut: 5000,
|
|
62
|
+
extendedTimeOut: 1500,
|
|
63
|
+
closeButton: true,
|
|
64
|
+
newestOnTop: true,
|
|
65
|
+
}),
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
const DEFAULT_SNACKBAR_CONFIG = {
|
|
69
|
+
duration: 5000,
|
|
70
|
+
horizontalPosition: 'center',
|
|
71
|
+
verticalPosition: 'bottom',
|
|
72
|
+
panelClass: [],
|
|
73
|
+
defaultAction: 'Close',
|
|
74
|
+
iconEnabled: true,
|
|
75
|
+
titleEnabled: true,
|
|
76
|
+
};
|
|
77
|
+
const SNACKBAR_CONFIG = new InjectionToken('acontplus-snackbar-config', {
|
|
78
|
+
providedIn: 'root',
|
|
79
|
+
factory: () => DEFAULT_SNACKBAR_CONFIG,
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
const NOTIFICATION_CONFIG = new InjectionToken('NOTIFICATION_CONFIG');
|
|
83
|
+
class NotificationProviderBase {
|
|
84
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: NotificationProviderBase, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
85
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: NotificationProviderBase });
|
|
86
|
+
}
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: NotificationProviderBase, decorators: [{
|
|
88
|
+
type: Injectable
|
|
89
|
+
}] });
|
|
90
|
+
|
|
91
|
+
class ToastrProvider extends NotificationProviderBase {
|
|
92
|
+
toastrService = inject(ToastrService);
|
|
93
|
+
config = inject(TOASTR_NOTIFICATION_CONFIG);
|
|
94
|
+
/**
|
|
95
|
+
* Generic show method for dynamic toast types
|
|
96
|
+
*/
|
|
97
|
+
show(props) {
|
|
98
|
+
const { type, message, title, options: overrideOptions } = props;
|
|
99
|
+
const finalOptions = { ...this.config, ...overrideOptions };
|
|
100
|
+
this.toastrService[type](message, title, finalOptions);
|
|
101
|
+
}
|
|
102
|
+
success(props) {
|
|
103
|
+
this.show({
|
|
104
|
+
type: 'success',
|
|
105
|
+
message: props.message,
|
|
106
|
+
title: props.title,
|
|
107
|
+
options: props.config,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
error(props) {
|
|
111
|
+
this.show({
|
|
112
|
+
type: 'error',
|
|
113
|
+
message: props.message,
|
|
114
|
+
title: props.title,
|
|
115
|
+
options: props.config,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
warning(props) {
|
|
119
|
+
this.show({
|
|
120
|
+
type: 'warning',
|
|
121
|
+
message: props.message,
|
|
122
|
+
title: props.title,
|
|
123
|
+
options: props.config,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
info(props) {
|
|
127
|
+
this.show({
|
|
128
|
+
type: 'info',
|
|
129
|
+
message: props.message,
|
|
130
|
+
title: props.title,
|
|
131
|
+
options: props.config,
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
confirm(config) {
|
|
135
|
+
const result = confirm(`${config.title || ''}\n${config.message}`);
|
|
136
|
+
return of({ isConfirmed: result });
|
|
137
|
+
}
|
|
138
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ToastrProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
139
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ToastrProvider, providedIn: 'root' });
|
|
140
|
+
}
|
|
141
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ToastrProvider, decorators: [{
|
|
142
|
+
type: Injectable,
|
|
143
|
+
args: [{
|
|
144
|
+
providedIn: 'root',
|
|
145
|
+
}]
|
|
146
|
+
}] });
|
|
147
|
+
|
|
148
|
+
class SnackbarProvider extends NotificationProviderBase {
|
|
149
|
+
snackBar = inject(MatSnackBar);
|
|
150
|
+
config = inject(SNACKBAR_CONFIG);
|
|
151
|
+
/**
|
|
152
|
+
* Display a snackbar with specific type and configuration
|
|
153
|
+
*/
|
|
154
|
+
show(props) {
|
|
155
|
+
const { type, message, title, action = this.config.defaultAction, config: userConfig = {}, } = props;
|
|
156
|
+
const typeClass = `acontplus-snackbar-${type}`;
|
|
157
|
+
const panelClasses = this.buildPanelClasses(typeClass, userConfig.panelClass);
|
|
158
|
+
const finalConfig = {
|
|
159
|
+
...this.config,
|
|
160
|
+
...userConfig,
|
|
161
|
+
panelClass: panelClasses,
|
|
162
|
+
};
|
|
163
|
+
const displayMessage = this.buildMessage(message, title);
|
|
164
|
+
this.snackBar.open(displayMessage, action, finalConfig);
|
|
165
|
+
}
|
|
166
|
+
success(props) {
|
|
167
|
+
this.show({
|
|
168
|
+
type: 'success',
|
|
169
|
+
message: props.message,
|
|
170
|
+
title: props.title,
|
|
171
|
+
config: {
|
|
172
|
+
duration: NOTIFICATION_DURATIONS.MEDIUM,
|
|
173
|
+
...props.config,
|
|
174
|
+
},
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
error(props) {
|
|
178
|
+
this.show({
|
|
179
|
+
type: 'error',
|
|
180
|
+
message: props.message,
|
|
181
|
+
title: props.title,
|
|
182
|
+
config: {
|
|
183
|
+
duration: NOTIFICATION_DURATIONS.LONG,
|
|
184
|
+
...props.config,
|
|
185
|
+
},
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
warning(props) {
|
|
189
|
+
this.show({
|
|
190
|
+
type: 'warning',
|
|
191
|
+
message: props.message,
|
|
192
|
+
title: props.title,
|
|
193
|
+
config: {
|
|
194
|
+
duration: NOTIFICATION_DURATIONS.MEDIUM,
|
|
195
|
+
...props.config,
|
|
196
|
+
},
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
info(props) {
|
|
200
|
+
this.show({
|
|
201
|
+
type: 'info',
|
|
202
|
+
message: props.message,
|
|
203
|
+
title: props.title,
|
|
204
|
+
config: {
|
|
205
|
+
duration: NOTIFICATION_DURATIONS.MEDIUM,
|
|
206
|
+
...props.config,
|
|
207
|
+
},
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
confirm(config) {
|
|
211
|
+
const result = confirm(`${config.title || ''}\n${config.message}`);
|
|
212
|
+
return of({ isConfirmed: result });
|
|
213
|
+
}
|
|
214
|
+
buildPanelClasses(typeClass, userClasses) {
|
|
215
|
+
const classes = ['acontplus-snackbar', typeClass];
|
|
216
|
+
if (userClasses) {
|
|
217
|
+
const normalizedClasses = Array.isArray(userClasses) ? userClasses : [userClasses];
|
|
218
|
+
classes.push(...normalizedClasses);
|
|
219
|
+
}
|
|
220
|
+
return classes;
|
|
221
|
+
}
|
|
222
|
+
buildMessage(message, title) {
|
|
223
|
+
if (!this.config.titleEnabled || !title) {
|
|
224
|
+
return message;
|
|
225
|
+
}
|
|
226
|
+
return `${title}: ${message}`;
|
|
227
|
+
}
|
|
228
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SnackbarProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
229
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SnackbarProvider, providedIn: 'root' });
|
|
230
|
+
}
|
|
231
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SnackbarProvider, decorators: [{
|
|
232
|
+
type: Injectable,
|
|
233
|
+
args: [{
|
|
234
|
+
providedIn: 'root',
|
|
235
|
+
}]
|
|
236
|
+
}] });
|
|
237
|
+
|
|
238
|
+
class SweetAlertProvider extends NotificationProviderBase {
|
|
239
|
+
success(props) {
|
|
240
|
+
return this.showAlert({ ...props, type: 'success' });
|
|
241
|
+
}
|
|
242
|
+
error(props) {
|
|
243
|
+
return this.showAlert({ ...props, type: 'error' });
|
|
244
|
+
}
|
|
245
|
+
warning(props) {
|
|
246
|
+
return this.showAlert({ ...props, type: 'warning' });
|
|
247
|
+
}
|
|
248
|
+
info(props) {
|
|
249
|
+
return this.showAlert({ ...props, type: 'info' });
|
|
250
|
+
}
|
|
251
|
+
confirm(config) {
|
|
252
|
+
const swalConfig = {
|
|
253
|
+
title: config.title,
|
|
254
|
+
text: config.message,
|
|
255
|
+
html: config.html,
|
|
256
|
+
icon: 'question',
|
|
257
|
+
showCancelButton: config.showCancelButton !== false,
|
|
258
|
+
confirmButtonText: config.confirmButtonText || 'Confirm',
|
|
259
|
+
cancelButtonText: config.cancelButtonText || 'Cancel',
|
|
260
|
+
allowOutsideClick: config.allowOutsideClick !== false,
|
|
261
|
+
customClass: config.customClass ? { container: config.customClass } : undefined,
|
|
262
|
+
};
|
|
263
|
+
return from(Swal.fire(swalConfig)).pipe(map(result => ({
|
|
264
|
+
isConfirmed: result.isConfirmed,
|
|
265
|
+
isDenied: result.isDenied,
|
|
266
|
+
isDismissed: result.isDismissed,
|
|
267
|
+
value: result.value,
|
|
268
|
+
})));
|
|
269
|
+
}
|
|
270
|
+
showAlert(props) {
|
|
271
|
+
const swalConfig = {
|
|
272
|
+
title: props.title,
|
|
273
|
+
text: props.message,
|
|
274
|
+
icon: props.type,
|
|
275
|
+
timer: props.config?.duration || 5000,
|
|
276
|
+
showConfirmButton: true,
|
|
277
|
+
timerProgressBar: true,
|
|
278
|
+
...props.config,
|
|
279
|
+
};
|
|
280
|
+
return from(Swal.fire(swalConfig)).pipe(map(result => ({
|
|
281
|
+
isConfirmed: result.isConfirmed,
|
|
282
|
+
isDenied: result.isDenied,
|
|
283
|
+
isDismissed: result.isDismissed,
|
|
284
|
+
value: result.value,
|
|
285
|
+
})));
|
|
286
|
+
}
|
|
287
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SweetAlertProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
288
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SweetAlertProvider, providedIn: 'root' });
|
|
289
|
+
}
|
|
290
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SweetAlertProvider, decorators: [{
|
|
291
|
+
type: Injectable,
|
|
292
|
+
args: [{
|
|
293
|
+
providedIn: 'root',
|
|
294
|
+
}]
|
|
295
|
+
}] });
|
|
296
|
+
|
|
297
|
+
class NotificationService {
|
|
298
|
+
config;
|
|
299
|
+
toastrProvider;
|
|
300
|
+
snackbarProvider;
|
|
301
|
+
sweetAlertProvider;
|
|
302
|
+
providers = new Map();
|
|
303
|
+
currentProvider;
|
|
304
|
+
// Expose predefined messages
|
|
305
|
+
messages = NOTIFICATION_MESSAGES;
|
|
306
|
+
constructor(config, toastrProvider, snackbarProvider, sweetAlertProvider) {
|
|
307
|
+
this.config = config;
|
|
308
|
+
this.toastrProvider = toastrProvider;
|
|
309
|
+
this.snackbarProvider = snackbarProvider;
|
|
310
|
+
this.sweetAlertProvider = sweetAlertProvider;
|
|
311
|
+
this.providers.set('toastr', this.toastrProvider);
|
|
312
|
+
this.providers.set('snackbar', this.snackbarProvider);
|
|
313
|
+
this.providers.set('sweetalert', this.sweetAlertProvider);
|
|
314
|
+
this.currentProvider =
|
|
315
|
+
this.providers.get(this.config.defaultProvider) || this.sweetAlertProvider;
|
|
316
|
+
}
|
|
317
|
+
setProvider(provider) {
|
|
318
|
+
const providerInstance = this.providers.get(provider);
|
|
319
|
+
if (providerInstance) {
|
|
320
|
+
this.currentProvider = providerInstance;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
success(props) {
|
|
324
|
+
return this.currentProvider.success(props);
|
|
325
|
+
}
|
|
326
|
+
error(props) {
|
|
327
|
+
return this.currentProvider.error(props);
|
|
328
|
+
}
|
|
329
|
+
warning(props) {
|
|
330
|
+
return this.currentProvider.warning(props);
|
|
331
|
+
}
|
|
332
|
+
info(props) {
|
|
333
|
+
return this.currentProvider.info(props);
|
|
334
|
+
}
|
|
335
|
+
confirm(config) {
|
|
336
|
+
return this.currentProvider.confirm(config);
|
|
337
|
+
}
|
|
338
|
+
show(props) {
|
|
339
|
+
return this.currentProvider[props.type]({
|
|
340
|
+
message: props.message,
|
|
341
|
+
title: props.title,
|
|
342
|
+
config: props.config,
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
// Provider-specific methods maintaining your current API
|
|
346
|
+
get toastr() {
|
|
347
|
+
return this.providers.get('toastr');
|
|
348
|
+
}
|
|
349
|
+
get snackbar() {
|
|
350
|
+
return this.providers.get('snackbar');
|
|
351
|
+
}
|
|
352
|
+
get sweetAlert() {
|
|
353
|
+
return this.providers.get('sweetalert');
|
|
354
|
+
}
|
|
355
|
+
// Quick methods using predefined messages
|
|
356
|
+
quickSave(type = 'success') {
|
|
357
|
+
const message = type === 'success' ? this.messages.SUCCESS.SAVE : this.messages.ERROR.SAVE;
|
|
358
|
+
this.currentProvider[type]({ message });
|
|
359
|
+
}
|
|
360
|
+
quickDelete(type = 'success') {
|
|
361
|
+
const message = type === 'success' ? this.messages.SUCCESS.DELETE : this.messages.ERROR.DELETE;
|
|
362
|
+
this.currentProvider[type]({ message });
|
|
363
|
+
}
|
|
364
|
+
quickUpdate(type = 'success') {
|
|
365
|
+
const message = type === 'success' ? this.messages.SUCCESS.UPDATE : this.messages.ERROR.UPDATE;
|
|
366
|
+
this.currentProvider[type]({ message });
|
|
367
|
+
}
|
|
368
|
+
networkError() {
|
|
369
|
+
this.currentProvider.error({
|
|
370
|
+
message: this.messages.ERROR.NETWORK,
|
|
371
|
+
title: 'Connection Error',
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
sessionWarning() {
|
|
375
|
+
this.currentProvider.warning({
|
|
376
|
+
message: this.messages.WARNING.SESSION_EXPIRING,
|
|
377
|
+
title: 'Session Alert',
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: NotificationService, deps: [{ token: NOTIFICATION_CONFIG }, { token: ToastrProvider }, { token: SnackbarProvider }, { token: SweetAlertProvider }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
381
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: NotificationService, providedIn: 'root' });
|
|
382
|
+
}
|
|
383
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: NotificationService, decorators: [{
|
|
384
|
+
type: Injectable,
|
|
385
|
+
args: [{
|
|
386
|
+
providedIn: 'root',
|
|
387
|
+
}]
|
|
388
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
389
|
+
type: Inject,
|
|
390
|
+
args: [NOTIFICATION_CONFIG]
|
|
391
|
+
}] }, { type: ToastrProvider }, { type: SnackbarProvider }, { type: SweetAlertProvider }] });
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* Generated bundle index. Do not edit.
|
|
395
|
+
*/
|
|
396
|
+
|
|
397
|
+
export { DEFAULT_SNACKBAR_CONFIG, NOTIFICATION_CONFIG, NOTIFICATION_DURATIONS, NOTIFICATION_ICONS, NOTIFICATION_MESSAGES, NotificationProviderBase, NotificationService, SNACKBAR_CONFIG, SnackbarProvider, SweetAlertProvider, TOASTR_NOTIFICATION_CONFIG, ToastrProvider };
|
|
398
|
+
//# sourceMappingURL=acontplus-ng-notifications.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acontplus-ng-notifications.mjs","sources":["../tmp-esm2022/lib/constants/notification.constants.js","../tmp-esm2022/lib/config/toastr.config.js","../tmp-esm2022/lib/config/snackbar.config.js","../tmp-esm2022/lib/providers/notification.provider.js","../tmp-esm2022/lib/providers/toastr.provider.js","../tmp-esm2022/lib/providers/snackbar.provider.js","../tmp-esm2022/lib/providers/sweetalert.provider.js","../tmp-esm2022/lib/services/notification.service.js","../tmp-esm2022/acontplus-ng-notifications.js"],"sourcesContent":["export const NOTIFICATION_MESSAGES = {\n SUCCESS: {\n SAVE: 'Data saved successfully',\n DELETE: 'Item deleted successfully',\n UPDATE: 'Data updated successfully',\n UPLOAD: 'File uploaded successfully',\n CREATE: 'Item created successfully',\n SYNC: 'Data synchronized successfully',\n },\n ERROR: {\n SAVE: 'Failed to save data',\n DELETE: 'Failed to delete item',\n UPDATE: 'Failed to update data',\n UPLOAD: 'Failed to upload file',\n NETWORK: 'Network error occurred',\n UNKNOWN: 'An unexpected error occurred',\n VALIDATION: 'Validation error',\n UNAUTHORIZED: 'Unauthorized access',\n SERVER: 'Server error occurred',\n },\n WARNING: {\n UNSAVED_CHANGES: 'You have unsaved changes',\n SESSION_EXPIRING: 'Your session is about to expire',\n STORAGE_FULL: 'Storage is running low',\n DEPRECATED: 'This feature is deprecated',\n LIMIT_REACHED: 'Limit reached',\n },\n INFO: {\n LOADING: 'Loading data...',\n PROCESSING: 'Processing request...',\n MAINTENANCE: 'System maintenance scheduled',\n UPDATE_AVAILABLE: 'Update available',\n BACKUP_COMPLETE: 'Backup completed',\n },\n};\nexport const NOTIFICATION_DURATIONS = {\n SHORT: 3000,\n MEDIUM: 5000,\n LONG: 8000,\n PERSISTENT: 0,\n};\nexport const NOTIFICATION_ICONS = {\n success: 'check_circle',\n error: 'error',\n warning: 'warning',\n info: 'info',\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLW5vdGlmaWNhdGlvbnMvc3JjL2xpYi9jb25zdGFudHMvbm90aWZpY2F0aW9uLmNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUNuQyxPQUFPLEVBQUU7UUFDUCxJQUFJLEVBQUUseUJBQXlCO1FBQy9CLE1BQU0sRUFBRSwyQkFBMkI7UUFDbkMsTUFBTSxFQUFFLDJCQUEyQjtRQUNuQyxNQUFNLEVBQUUsNEJBQTRCO1FBQ3BDLE1BQU0sRUFBRSwyQkFBMkI7UUFDbkMsSUFBSSxFQUFFLGdDQUFnQztLQUN2QztJQUNELEtBQUssRUFBRTtRQUNMLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsTUFBTSxFQUFFLHVCQUF1QjtRQUMvQixNQUFNLEVBQUUsdUJBQXVCO1FBQy9CLE1BQU0sRUFBRSx1QkFBdUI7UUFDL0IsT0FBTyxFQUFFLHdCQUF3QjtRQUNqQyxPQUFPLEVBQUUsOEJBQThCO1FBQ3ZDLFVBQVUsRUFBRSxrQkFBa0I7UUFDOUIsWUFBWSxFQUFFLHFCQUFxQjtRQUNuQyxNQUFNLEVBQUUsdUJBQXVCO0tBQ2hDO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsZUFBZSxFQUFFLDBCQUEwQjtRQUMzQyxnQkFBZ0IsRUFBRSxpQ0FBaUM7UUFDbkQsWUFBWSxFQUFFLHdCQUF3QjtRQUN0QyxVQUFVLEVBQUUsNEJBQTRCO1FBQ3hDLGFBQWEsRUFBRSxlQUFlO0tBQy9CO0lBQ0QsSUFBSSxFQUFFO1FBQ0osT0FBTyxFQUFFLGlCQUFpQjtRQUMxQixVQUFVLEVBQUUsdUJBQXVCO1FBQ25DLFdBQVcsRUFBRSw4QkFBOEI7UUFDM0MsZ0JBQWdCLEVBQUUsa0JBQWtCO1FBQ3BDLGVBQWUsRUFBRSxrQkFBa0I7S0FDcEM7Q0FDTyxDQUFDO0FBRVgsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUc7SUFDcEMsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLElBQUksRUFBRSxJQUFJO0lBQ1YsVUFBVSxFQUFFLENBQUM7Q0FDTCxDQUFDO0FBRVgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUc7SUFDaEMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsS0FBSyxFQUFFLE9BQU87SUFDZCxPQUFPLEVBQUUsU0FBUztJQUNsQixJQUFJLEVBQUUsTUFBTTtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTk9USUZJQ0FUSU9OX01FU1NBR0VTID0ge1xuICBTVUNDRVNTOiB7XG4gICAgU0FWRTogJ0RhdGEgc2F2ZWQgc3VjY2Vzc2Z1bGx5JyxcbiAgICBERUxFVEU6ICdJdGVtIGRlbGV0ZWQgc3VjY2Vzc2Z1bGx5JyxcbiAgICBVUERBVEU6ICdEYXRhIHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5JyxcbiAgICBVUExPQUQ6ICdGaWxlIHVwbG9hZGVkIHN1Y2Nlc3NmdWxseScsXG4gICAgQ1JFQVRFOiAnSXRlbSBjcmVhdGVkIHN1Y2Nlc3NmdWxseScsXG4gICAgU1lOQzogJ0RhdGEgc3luY2hyb25pemVkIHN1Y2Nlc3NmdWxseScsXG4gIH0sXG4gIEVSUk9SOiB7XG4gICAgU0FWRTogJ0ZhaWxlZCB0byBzYXZlIGRhdGEnLFxuICAgIERFTEVURTogJ0ZhaWxlZCB0byBkZWxldGUgaXRlbScsXG4gICAgVVBEQVRFOiAnRmFpbGVkIHRvIHVwZGF0ZSBkYXRhJyxcbiAgICBVUExPQUQ6ICdGYWlsZWQgdG8gdXBsb2FkIGZpbGUnLFxuICAgIE5FVFdPUks6ICdOZXR3b3JrIGVycm9yIG9jY3VycmVkJyxcbiAgICBVTktOT1dOOiAnQW4gdW5leHBlY3RlZCBlcnJvciBvY2N1cnJlZCcsXG4gICAgVkFMSURBVElPTjogJ1ZhbGlkYXRpb24gZXJyb3InLFxuICAgIFVOQVVUSE9SSVpFRDogJ1VuYXV0aG9yaXplZCBhY2Nlc3MnLFxuICAgIFNFUlZFUjogJ1NlcnZlciBlcnJvciBvY2N1cnJlZCcsXG4gIH0sXG4gIFdBUk5JTkc6IHtcbiAgICBVTlNBVkVEX0NIQU5HRVM6ICdZb3UgaGF2ZSB1bnNhdmVkIGNoYW5nZXMnLFxuICAgIFNFU1NJT05fRVhQSVJJTkc6ICdZb3VyIHNlc3Npb24gaXMgYWJvdXQgdG8gZXhwaXJlJyxcbiAgICBTVE9SQUdFX0ZVTEw6ICdTdG9yYWdlIGlzIHJ1bm5pbmcgbG93JyxcbiAgICBERVBSRUNBVEVEOiAnVGhpcyBmZWF0dXJlIGlzIGRlcHJlY2F0ZWQnLFxuICAgIExJTUlUX1JFQUNIRUQ6ICdMaW1pdCByZWFjaGVkJyxcbiAgfSxcbiAgSU5GTzoge1xuICAgIExPQURJTkc6ICdMb2FkaW5nIGRhdGEuLi4nLFxuICAgIFBST0NFU1NJTkc6ICdQcm9jZXNzaW5nIHJlcXVlc3QuLi4nLFxuICAgIE1BSU5URU5BTkNFOiAnU3lzdGVtIG1haW50ZW5hbmNlIHNjaGVkdWxlZCcsXG4gICAgVVBEQVRFX0FWQUlMQUJMRTogJ1VwZGF0ZSBhdmFpbGFibGUnLFxuICAgIEJBQ0tVUF9DT01QTEVURTogJ0JhY2t1cCBjb21wbGV0ZWQnLFxuICB9LFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IE5PVElGSUNBVElPTl9EVVJBVElPTlMgPSB7XG4gIFNIT1JUOiAzMDAwLFxuICBNRURJVU06IDUwMDAsXG4gIExPTkc6IDgwMDAsXG4gIFBFUlNJU1RFTlQ6IDAsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgTk9USUZJQ0FUSU9OX0lDT05TID0ge1xuICBzdWNjZXNzOiAnY2hlY2tfY2lyY2xlJyxcbiAgZXJyb3I6ICdlcnJvcicsXG4gIHdhcm5pbmc6ICd3YXJuaW5nJyxcbiAgaW5mbzogJ2luZm8nLFxufSBhcyBjb25zdDtcbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const TOASTR_NOTIFICATION_CONFIG = new InjectionToken('toastr-notification-config', {\n providedIn: 'root',\n factory: () => ({\n positionClass: 'toast-bottom-center',\n timeOut: 5000,\n extendedTimeOut: 1500,\n closeButton: true,\n newestOnTop: true,\n }),\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3RyLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLW5vdGlmaWNhdGlvbnMvc3JjL2xpYi9jb25maWcvdG9hc3RyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSzNELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUMxRCw0QkFBNEIsRUFDNUI7SUFDRSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLGFBQWEsRUFBRSxxQkFBcUI7UUFDcEMsT0FBTyxFQUFFLElBQUk7UUFDYixlQUFlLEVBQUUsSUFBSTtRQUNyQixXQUFXLEVBQUUsSUFBSTtRQUNqQixXQUFXLEVBQUUsSUFBSTtLQUNsQixDQUFDO0NBQ0gsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEluZGl2aWR1YWxDb25maWcgfSBmcm9tICduZ3gtdG9hc3RyJztcblxuZXhwb3J0IHR5cGUgVG9hc3RyTm90aWZpY2F0aW9uQ29uZmlnID0gUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPjtcblxuZXhwb3J0IGNvbnN0IFRPQVNUUl9OT1RJRklDQVRJT05fQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPFRvYXN0ck5vdGlmaWNhdGlvbkNvbmZpZz4oXG4gICd0b2FzdHItbm90aWZpY2F0aW9uLWNvbmZpZycsXG4gIHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG4gICAgZmFjdG9yeTogKCkgPT4gKHtcbiAgICAgIHBvc2l0aW9uQ2xhc3M6ICd0b2FzdC1ib3R0b20tY2VudGVyJyxcbiAgICAgIHRpbWVPdXQ6IDUwMDAsXG4gICAgICBleHRlbmRlZFRpbWVPdXQ6IDE1MDAsXG4gICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgICAgIG5ld2VzdE9uVG9wOiB0cnVlLFxuICAgIH0pLFxuICB9LFxuKTtcbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const DEFAULT_SNACKBAR_CONFIG = {\n duration: 5000,\n horizontalPosition: 'center',\n verticalPosition: 'bottom',\n panelClass: [],\n defaultAction: 'Close',\n iconEnabled: true,\n titleEnabled: true,\n};\nexport const SNACKBAR_CONFIG = new InjectionToken('acontplus-snackbar-config', {\n providedIn: 'root',\n factory: () => DEFAULT_SNACKBAR_CONFIG,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXIuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctbm90aWZpY2F0aW9ucy9zcmMvbGliL2NvbmZpZy9zbmFja2Jhci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVMvQyxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBbUI7SUFDckQsUUFBUSxFQUFFLElBQUk7SUFDZCxrQkFBa0IsRUFBRSxRQUFRO0lBQzVCLGdCQUFnQixFQUFFLFFBQVE7SUFDMUIsVUFBVSxFQUFFLEVBQUU7SUFDZCxhQUFhLEVBQUUsT0FBTztJQUN0QixXQUFXLEVBQUUsSUFBSTtJQUNqQixZQUFZLEVBQUUsSUFBSTtDQUNuQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFpQiwyQkFBMkIsRUFBRTtJQUM3RixVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsdUJBQXVCO0NBQ3ZDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTbmFja0JhckNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU25hY2tiYXJDb25maWcgZXh0ZW5kcyBNYXRTbmFja0JhckNvbmZpZyB7XG4gIHJlYWRvbmx5IGRlZmF1bHRBY3Rpb24/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGljb25FbmFibGVkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgdGl0bGVFbmFibGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfU05BQ0tCQVJfQ09ORklHOiBTbmFja2JhckNvbmZpZyA9IHtcbiAgZHVyYXRpb246IDUwMDAsXG4gIGhvcml6b250YWxQb3NpdGlvbjogJ2NlbnRlcicsXG4gIHZlcnRpY2FsUG9zaXRpb246ICdib3R0b20nLFxuICBwYW5lbENsYXNzOiBbXSxcbiAgZGVmYXVsdEFjdGlvbjogJ0Nsb3NlJyxcbiAgaWNvbkVuYWJsZWQ6IHRydWUsXG4gIHRpdGxlRW5hYmxlZDogdHJ1ZSxcbn07XG5cbmV4cG9ydCBjb25zdCBTTkFDS0JBUl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48U25hY2tiYXJDb25maWc+KCdhY29udHBsdXMtc25hY2tiYXItY29uZmlnJywge1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGZhY3Rvcnk6ICgpID0+IERFRkFVTFRfU05BQ0tCQVJfQ09ORklHLFxufSk7XG4iXX0=","import { Injectable, InjectionToken } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport const NOTIFICATION_CONFIG = new InjectionToken('NOTIFICATION_CONFIG');\nexport class NotificationProviderBase {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: NotificationProviderBase, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: NotificationProviderBase });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: NotificationProviderBase, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctbm90aWZpY2F0aW9ucy9zcmMvbGliL3Byb3ZpZGVycy9ub3RpZmljYXRpb24ucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzNELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUNuRCxxQkFBcUIsQ0FDdEIsQ0FBQztBQVVGLE1BQU0sT0FBZ0Isd0JBQXdCO3VHQUF4Qix3QkFBd0I7MkdBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEN0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBOb3RpZmljYXRpb25DYWxsUHJvcHMsXG4gIE5vdGlmaWNhdGlvblJlc3VsdCxcbiAgU3dlZXRBbGVydENvbmZpZyxcbiAgTm90aWZpY2F0aW9uUHJvdmlkZXIsXG59IGZyb20gJy4uL3R5cGVzL25vdGlmaWNhdGlvbi50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBOT1RJRklDQVRJT05fQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPE5vdGlmaWNhdGlvblByb3ZpZGVyQ29uZmlnPihcbiAgJ05PVElGSUNBVElPTl9DT05GSUcnLFxuKTtcblxuZXhwb3J0IGludGVyZmFjZSBOb3RpZmljYXRpb25Qcm92aWRlckNvbmZpZyB7XG4gIGRlZmF1bHRQcm92aWRlcjogTm90aWZpY2F0aW9uUHJvdmlkZXI7XG4gIHRvYXN0cj86IGFueTtcbiAgc25hY2tiYXI/OiBhbnk7XG4gIHN3ZWV0YWxlcnQ/OiBhbnk7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOb3RpZmljYXRpb25Qcm92aWRlckJhc2Uge1xuICBhYnN0cmFjdCBzdWNjZXNzKHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMpOiB2b2lkIHwgT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25SZXN1bHQ+O1xuICBhYnN0cmFjdCBlcnJvcihwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PjtcbiAgYWJzdHJhY3Qgd2FybmluZyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PjtcbiAgYWJzdHJhY3QgaW5mbyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PjtcbiAgYWJzdHJhY3QgY29uZmlybShjb25maWc6IFN3ZWV0QWxlcnRDb25maWcpOiBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvblJlc3VsdD47XG59XG4iXX0=","import { Injectable, inject } from '@angular/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { of } from 'rxjs';\nimport { NotificationProviderBase } from './notification.provider';\nimport { TOASTR_NOTIFICATION_CONFIG } from '../config/toastr.config';\nimport * as i0 from \"@angular/core\";\nexport class ToastrProvider extends NotificationProviderBase {\n toastrService = inject(ToastrService);\n config = inject(TOASTR_NOTIFICATION_CONFIG);\n /**\n * Generic show method for dynamic toast types\n */\n show(props) {\n const { type, message, title, options: overrideOptions } = props;\n const finalOptions = { ...this.config, ...overrideOptions };\n this.toastrService[type](message, title, finalOptions);\n }\n success(props) {\n this.show({\n type: 'success',\n message: props.message,\n title: props.title,\n options: props.config,\n });\n }\n error(props) {\n this.show({\n type: 'error',\n message: props.message,\n title: props.title,\n options: props.config,\n });\n }\n warning(props) {\n this.show({\n type: 'warning',\n message: props.message,\n title: props.title,\n options: props.config,\n });\n }\n info(props) {\n this.show({\n type: 'info',\n message: props.message,\n title: props.title,\n options: props.config,\n });\n }\n confirm(config) {\n const result = confirm(`${config.title || ''}\\n${config.message}`);\n return of({ isConfirmed: result });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: ToastrProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: ToastrProvider, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: ToastrProvider, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3RyLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctbm90aWZpY2F0aW9ucy9zcmMvbGliL3Byb3ZpZGVycy90b2FzdHIucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFvQixhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0QsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFtQnJFLE1BQU0sT0FBTyxjQUFlLFNBQVEsd0JBQXdCO0lBQ3pDLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEMsTUFBTSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBRTdEOztPQUVHO0lBQ0gsSUFBSSxDQUFDLEtBQXNCO1FBQ3pCLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ2pFLE1BQU0sWUFBWSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsZUFBZSxFQUFFLENBQUM7UUFFNUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxPQUFPLENBQUMsS0FBNEI7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNSLElBQUksRUFBRSxTQUFTO1lBQ2YsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztZQUNsQixPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU07U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUE0QjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ1IsSUFBSSxFQUFFLE9BQU87WUFDYixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLE9BQU8sRUFBRSxLQUFLLENBQUMsTUFBTTtTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQTRCO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDUixJQUFJLEVBQUUsU0FBUztZQUNmLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBNEI7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNSLElBQUksRUFBRSxNQUFNO1lBQ1osT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztZQUNsQixPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU07U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUF3QjtRQUM5QixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsS0FBSyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNuRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7dUdBckRVLGNBQWM7MkdBQWQsY0FBYyxjQUZiLE1BQU07OzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbmRpdmlkdWFsQ29uZmlnLCBUb2FzdHJTZXJ2aWNlIH0gZnJvbSAnbmd4LXRvYXN0cic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uUHJvdmlkZXJCYXNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb24ucHJvdmlkZXInO1xuaW1wb3J0IHsgVE9BU1RSX05PVElGSUNBVElPTl9DT05GSUcgfSBmcm9tICcuLi9jb25maWcvdG9hc3RyLmNvbmZpZyc7XG5pbXBvcnQge1xuICBOb3RpZmljYXRpb25DYWxsUHJvcHMsXG4gIE5vdGlmaWNhdGlvblJlc3VsdCxcbiAgU3dlZXRBbGVydENvbmZpZyxcbn0gZnJvbSAnLi4vdHlwZXMvbm90aWZpY2F0aW9uLnR5cGVzJztcblxuZXhwb3J0IHR5cGUgVG9hc3RyVHlwZSA9ICdzdWNjZXNzJyB8ICdlcnJvcicgfCAnd2FybmluZycgfCAnaW5mbyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9hc3RyU2hvd1Byb3BzIHtcbiAgcmVhZG9ubHkgdHlwZTogVG9hc3RyVHlwZTtcbiAgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nO1xuICByZWFkb25seSB0aXRsZT86IHN0cmluZztcbiAgcmVhZG9ubHkgb3B0aW9ucz86IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz47XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUb2FzdHJQcm92aWRlciBleHRlbmRzIE5vdGlmaWNhdGlvblByb3ZpZGVyQmFzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdG9hc3RyU2VydmljZSA9IGluamVjdChUb2FzdHJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWcgPSBpbmplY3QoVE9BU1RSX05PVElGSUNBVElPTl9DT05GSUcpO1xuXG4gIC8qKlxuICAgKiBHZW5lcmljIHNob3cgbWV0aG9kIGZvciBkeW5hbWljIHRvYXN0IHR5cGVzXG4gICAqL1xuICBzaG93KHByb3BzOiBUb2FzdHJTaG93UHJvcHMpOiB2b2lkIHtcbiAgICBjb25zdCB7IHR5cGUsIG1lc3NhZ2UsIHRpdGxlLCBvcHRpb25zOiBvdmVycmlkZU9wdGlvbnMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGZpbmFsT3B0aW9ucyA9IHsgLi4udGhpcy5jb25maWcsIC4uLm92ZXJyaWRlT3B0aW9ucyB9O1xuXG4gICAgdGhpcy50b2FzdHJTZXJ2aWNlW3R5cGVdKG1lc3NhZ2UsIHRpdGxlLCBmaW5hbE9wdGlvbnMpO1xuICB9XG5cbiAgc3VjY2Vzcyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHR5cGU6ICdzdWNjZXNzJyxcbiAgICAgIG1lc3NhZ2U6IHByb3BzLm1lc3NhZ2UsXG4gICAgICB0aXRsZTogcHJvcHMudGl0bGUsXG4gICAgICBvcHRpb25zOiBwcm9wcy5jb25maWcsXG4gICAgfSk7XG4gIH1cblxuICBlcnJvcihwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICBtZXNzYWdlOiBwcm9wcy5tZXNzYWdlLFxuICAgICAgdGl0bGU6IHByb3BzLnRpdGxlLFxuICAgICAgb3B0aW9uczogcHJvcHMuY29uZmlnLFxuICAgIH0pO1xuICB9XG5cbiAgd2FybmluZyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHR5cGU6ICd3YXJuaW5nJyxcbiAgICAgIG1lc3NhZ2U6IHByb3BzLm1lc3NhZ2UsXG4gICAgICB0aXRsZTogcHJvcHMudGl0bGUsXG4gICAgICBvcHRpb25zOiBwcm9wcy5jb25maWcsXG4gICAgfSk7XG4gIH1cblxuICBpbmZvKHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMpOiB2b2lkIHtcbiAgICB0aGlzLnNob3coe1xuICAgICAgdHlwZTogJ2luZm8nLFxuICAgICAgbWVzc2FnZTogcHJvcHMubWVzc2FnZSxcbiAgICAgIHRpdGxlOiBwcm9wcy50aXRsZSxcbiAgICAgIG9wdGlvbnM6IHByb3BzLmNvbmZpZyxcbiAgICB9KTtcbiAgfVxuXG4gIGNvbmZpcm0oY29uZmlnOiBTd2VldEFsZXJ0Q29uZmlnKTogT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25SZXN1bHQ+IHtcbiAgICBjb25zdCByZXN1bHQgPSBjb25maXJtKGAke2NvbmZpZy50aXRsZSB8fCAnJ31cXG4ke2NvbmZpZy5tZXNzYWdlfWApO1xuICAgIHJldHVybiBvZih7IGlzQ29uZmlybWVkOiByZXN1bHQgfSk7XG4gIH1cbn1cbiJdfQ==","import { inject, Injectable } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { of } from 'rxjs';\nimport { NotificationProviderBase } from './notification.provider';\nimport { SNACKBAR_CONFIG } from '../config/snackbar.config';\nimport { NOTIFICATION_DURATIONS } from '../constants/notification.constants';\nimport * as i0 from \"@angular/core\";\nexport class SnackbarProvider extends NotificationProviderBase {\n snackBar = inject(MatSnackBar);\n config = inject(SNACKBAR_CONFIG);\n /**\n * Display a snackbar with specific type and configuration\n */\n show(props) {\n const { type, message, title, action = this.config.defaultAction, config: userConfig = {}, } = props;\n const typeClass = `acontplus-snackbar-${type}`;\n const panelClasses = this.buildPanelClasses(typeClass, userConfig.panelClass);\n const finalConfig = {\n ...this.config,\n ...userConfig,\n panelClass: panelClasses,\n };\n const displayMessage = this.buildMessage(message, title);\n this.snackBar.open(displayMessage, action, finalConfig);\n }\n success(props) {\n this.show({\n type: 'success',\n message: props.message,\n title: props.title,\n config: {\n duration: NOTIFICATION_DURATIONS.MEDIUM,\n ...props.config,\n },\n });\n }\n error(props) {\n this.show({\n type: 'error',\n message: props.message,\n title: props.title,\n config: {\n duration: NOTIFICATION_DURATIONS.LONG,\n ...props.config,\n },\n });\n }\n warning(props) {\n this.show({\n type: 'warning',\n message: props.message,\n title: props.title,\n config: {\n duration: NOTIFICATION_DURATIONS.MEDIUM,\n ...props.config,\n },\n });\n }\n info(props) {\n this.show({\n type: 'info',\n message: props.message,\n title: props.title,\n config: {\n duration: NOTIFICATION_DURATIONS.MEDIUM,\n ...props.config,\n },\n });\n }\n confirm(config) {\n const result = confirm(`${config.title || ''}\\n${config.message}`);\n return of({ isConfirmed: result });\n }\n buildPanelClasses(typeClass, userClasses) {\n const classes = ['acontplus-snackbar', typeClass];\n if (userClasses) {\n const normalizedClasses = Array.isArray(userClasses) ? userClasses : [userClasses];\n classes.push(...normalizedClasses);\n }\n return classes;\n }\n buildMessage(message, title) {\n if (!this.config.titleEnabled || !title) {\n return message;\n }\n return `${title}: ${message}`;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: SnackbarProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: SnackbarProvider, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: SnackbarProvider, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXIucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy1ub3RpZmljYXRpb25zL3NyYy9saWIvcHJvdmlkZXJzL3NuYWNrYmFyLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFZN0UsTUFBTSxPQUFPLGdCQUFpQixTQUFRLHdCQUF3QjtJQUMzQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFbEQ7O09BRUc7SUFDSCxJQUFJLENBQUMsS0FBb0I7UUFDdkIsTUFBTSxFQUNKLElBQUksRUFDSixPQUFPLEVBQ1AsS0FBSyxFQUNMLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFDbEMsTUFBTSxFQUFFLFVBQVUsR0FBRyxFQUFFLEdBQ3hCLEdBQUcsS0FBSyxDQUFDO1FBRVYsTUFBTSxTQUFTLEdBQUcsc0JBQXNCLElBQUksRUFBRSxDQUFDO1FBQy9DLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTlFLE1BQU0sV0FBVyxHQUFHO1lBQ2xCLEdBQUcsSUFBSSxDQUFDLE1BQU07WUFD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QUFDO3VHQWxHVSxnQkFBZ0I7MkdBQWhCLGdCQUFnQixjQUZmLE1BQU07OzJGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Qcm92aWRlckJhc2UgfSBmcm9tICcuL25vdGlmaWNhdGlvbi5wcm92aWRlcic7XG5pbXBvcnQgeyBTTkFDS0JBUl9DT05GSUcgfSBmcm9tICcuLi9jb25maWcvc25hY2tiYXIuY29uZmlnJztcbmltcG9ydCB7IE5PVElGSUNBVElPTl9EVVJBVElPTlMgfSBmcm9tICcuLi9jb25zdGFudHMvbm90aWZpY2F0aW9uLmNvbnN0YW50cyc7XG5pbXBvcnQge1xuICBOb3RpZmljYXRpb25DYWxsUHJvcHMsXG4gIE5vdGlmaWNhdGlvblJlc3VsdCxcbiAgU3dlZXRBbGVydENvbmZpZyxcbiAgTm90aWZpY2F0aW9uVHlwZSxcbn0gZnJvbSAnLi4vdHlwZXMvbm90aWZpY2F0aW9uLnR5cGVzJztcbmltcG9ydCB7IFNuYWNrYmFyUHJvcHMgfSBmcm9tICcuLi9tb2RlbHMvbm90aWZpY2F0aW9uLm1vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTbmFja2JhclByb3ZpZGVyIGV4dGVuZHMgTm90aWZpY2F0aW9uUHJvdmlkZXJCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzbmFja0JhciA9IGluamVjdChNYXRTbmFja0Jhcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KFNOQUNLQkFSX0NPTkZJRyk7XG5cbiAgLyoqXG4gICAqIERpc3BsYXkgYSBzbmFja2JhciB3aXRoIHNwZWNpZmljIHR5cGUgYW5kIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHNob3cocHJvcHM6IFNuYWNrYmFyUHJvcHMpOiB2b2lkIHtcbiAgICBjb25zdCB7XG4gICAgICB0eXBlLFxuICAgICAgbWVzc2FnZSxcbiAgICAgIHRpdGxlLFxuICAgICAgYWN0aW9uID0gdGhpcy5jb25maWcuZGVmYXVsdEFjdGlvbixcbiAgICAgIGNvbmZpZzogdXNlckNvbmZpZyA9IHt9LFxuICAgIH0gPSBwcm9wcztcblxuICAgIGNvbnN0IHR5cGVDbGFzcyA9IGBhY29udHBsdXMtc25hY2tiYXItJHt0eXBlfWA7XG4gICAgY29uc3QgcGFuZWxDbGFzc2VzID0gdGhpcy5idWlsZFBhbmVsQ2xhc3Nlcyh0eXBlQ2xhc3MsIHVzZXJDb25maWcucGFuZWxDbGFzcyk7XG5cbiAgICBjb25zdCBmaW5hbENvbmZpZyA9IHtcbiAgICAgIC4uLnRoaXMuY29uZmlnLFxuICAgICAgLi4udXNlckNvbmZpZyxcbiAgICAgIHBhbmVsQ2xhc3M6IHBhbmVsQ2xhc3NlcyxcbiAgICB9O1xuXG4gICAgY29uc3QgZGlzcGxheU1lc3NhZ2UgPSB0aGlzLmJ1aWxkTWVzc2FnZShtZXNzYWdlLCB0aXRsZSk7XG4gICAgdGhpcy5zbmFja0Jhci5vcGVuKGRpc3BsYXlNZXNzYWdlLCBhY3Rpb24sIGZpbmFsQ29uZmlnKTtcbiAgfVxuXG4gIHN1Y2Nlc3MocHJvcHM6IE5vdGlmaWNhdGlvbkNhbGxQcm9wcyk6IHZvaWQge1xuICAgIHRoaXMuc2hvdyh7XG4gICAgICB0eXBlOiAnc3VjY2VzcycsXG4gICAgICBtZXNzYWdlOiBwcm9wcy5tZXNzYWdlLFxuICAgICAgdGl0bGU6IHByb3BzLnRpdGxlLFxuICAgICAgY29uZmlnOiB7XG4gICAgICAgIGR1cmF0aW9uOiBOT1RJRklDQVRJT05fRFVSQVRJT05TLk1FRElVTSxcbiAgICAgICAgLi4ucHJvcHMuY29uZmlnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGVycm9yKHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMpOiB2b2lkIHtcbiAgICB0aGlzLnNob3coe1xuICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgIG1lc3NhZ2U6IHByb3BzLm1lc3NhZ2UsXG4gICAgICB0aXRsZTogcHJvcHMudGl0bGUsXG4gICAgICBjb25maWc6IHtcbiAgICAgICAgZHVyYXRpb246IE5PVElGSUNBVElPTl9EVVJBVElPTlMuTE9ORyxcbiAgICAgICAgLi4ucHJvcHMuY29uZmlnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHdhcm5pbmcocHJvcHM6IE5vdGlmaWNhdGlvbkNhbGxQcm9wcyk6IHZvaWQge1xuICAgIHRoaXMuc2hvdyh7XG4gICAgICB0eXBlOiAnd2FybmluZycsXG4gICAgICBtZXNzYWdlOiBwcm9wcy5tZXNzYWdlLFxuICAgICAgdGl0bGU6IHByb3BzLnRpdGxlLFxuICAgICAgY29uZmlnOiB7XG4gICAgICAgIGR1cmF0aW9uOiBOT1RJRklDQVRJT05fRFVSQVRJT05TLk1FRElVTSxcbiAgICAgICAgLi4ucHJvcHMuY29uZmlnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGluZm8ocHJvcHM6IE5vdGlmaWNhdGlvbkNhbGxQcm9wcyk6IHZvaWQge1xuICAgIHRoaXMuc2hvdyh7XG4gICAgICB0eXBlOiAnaW5mbycsXG4gICAgICBtZXNzYWdlOiBwcm9wcy5tZXNzYWdlLFxuICAgICAgdGl0bGU6IHByb3BzLnRpdGxlLFxuICAgICAgY29uZmlnOiB7XG4gICAgICAgIGR1cmF0aW9uOiBOT1RJRklDQVRJT05fRFVSQVRJT05TLk1FRElVTSxcbiAgICAgICAgLi4ucHJvcHMuY29uZmlnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGNvbmZpcm0oY29uZmlnOiBTd2VldEFsZXJ0Q29uZmlnKTogT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25SZXN1bHQ+IHtcbiAgICBjb25zdCByZXN1bHQgPSBjb25maXJtKGAke2NvbmZpZy50aXRsZSB8fCAnJ31cXG4ke2NvbmZpZy5tZXNzYWdlfWApO1xuICAgIHJldHVybiBvZih7IGlzQ29uZmlybWVkOiByZXN1bHQgfSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkUGFuZWxDbGFzc2VzKHR5cGVDbGFzczogc3RyaW5nLCB1c2VyQ2xhc3Nlcz86IHN0cmluZyB8IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGNsYXNzZXMgPSBbJ2Fjb250cGx1cy1zbmFja2JhcicsIHR5cGVDbGFzc107XG5cbiAgICBpZiAodXNlckNsYXNzZXMpIHtcbiAgICAgIGNvbnN0IG5vcm1hbGl6ZWRDbGFzc2VzID0gQXJyYXkuaXNBcnJheSh1c2VyQ2xhc3NlcykgPyB1c2VyQ2xhc3NlcyA6IFt1c2VyQ2xhc3Nlc107XG4gICAgICBjbGFzc2VzLnB1c2goLi4ubm9ybWFsaXplZENsYXNzZXMpO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZE1lc3NhZ2UobWVzc2FnZTogc3RyaW5nLCB0aXRsZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZy50aXRsZUVuYWJsZWQgfHwgIXRpdGxlKSB7XG4gICAgICByZXR1cm4gbWVzc2FnZTtcbiAgICB9XG4gICAgcmV0dXJuIGAke3RpdGxlfTogJHttZXNzYWdlfWA7XG4gIH1cbn1cbiJdfQ==","import { Injectable } from '@angular/core';\nimport { from } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport Swal from 'sweetalert2';\nimport { NotificationProviderBase } from './notification.provider';\nimport * as i0 from \"@angular/core\";\nexport class SweetAlertProvider extends NotificationProviderBase {\n success(props) {\n return this.showAlert({ ...props, type: 'success' });\n }\n error(props) {\n return this.showAlert({ ...props, type: 'error' });\n }\n warning(props) {\n return this.showAlert({ ...props, type: 'warning' });\n }\n info(props) {\n return this.showAlert({ ...props, type: 'info' });\n }\n confirm(config) {\n const swalConfig = {\n title: config.title,\n text: config.message,\n html: config.html,\n icon: 'question',\n showCancelButton: config.showCancelButton !== false,\n confirmButtonText: config.confirmButtonText || 'Confirm',\n cancelButtonText: config.cancelButtonText || 'Cancel',\n allowOutsideClick: config.allowOutsideClick !== false,\n customClass: config.customClass ? { container: config.customClass } : undefined,\n };\n return from(Swal.fire(swalConfig)).pipe(map(result => ({\n isConfirmed: result.isConfirmed,\n isDenied: result.isDenied,\n isDismissed: result.isDismissed,\n value: result.value,\n })));\n }\n showAlert(props) {\n const swalConfig = {\n title: props.title,\n text: props.message,\n icon: props.type,\n timer: props.config?.duration || 5000,\n showConfirmButton: true,\n timerProgressBar: true,\n ...props.config,\n };\n return from(Swal.fire(swalConfig)).pipe(map(result => ({\n isConfirmed: result.isConfirmed,\n isDenied: result.isDenied,\n isDismissed: result.isDismissed,\n value: result.value,\n })));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: SweetAlertProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: SweetAlertProvider, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: SweetAlertProvider, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dlZXRhbGVydC5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLW5vdGlmaWNhdGlvbnMvc3JjL2xpYi9wcm92aWRlcnMvc3dlZXRhbGVydC5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUMvQixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFXbkUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHdCQUF3QjtJQUM5RCxPQUFPLENBQUMsS0FBNEI7UUFDbEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUE0QjtRQUNoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQTRCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUFJLENBQUMsS0FBNEI7UUFDL0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUF3QjtRQUM5QixNQUFNLFVBQVUsR0FBRztZQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7WUFDbkIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxPQUFPO1lBQ3BCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNqQixJQUFJLEVBQUUsVUFBaUI7WUFDdkIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixLQUFLLEtBQUs7WUFDbkQsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLGlCQUFpQixJQUFJLFNBQVM7WUFDeEQsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixJQUFJLFFBQVE7WUFDckQsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLGlCQUFpQixLQUFLLEtBQUs7WUFDckQsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUNoRixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNiLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVztZQUMvQixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7WUFDekIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztTQUNwQixDQUFDLENBQUMsQ0FDSixDQUFDO0lBQ0osQ0FBQztJQUVPLFNBQVMsQ0FDZixLQUF5RDtRQUV6RCxNQUFNLFVBQVUsR0FBRztZQUNqQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ25CLElBQUksRUFBRSxLQUFLLENBQUMsSUFBVztZQUN2QixLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxRQUFRLElBQUksSUFBSTtZQUNyQyxpQkFBaUIsRUFBRSxJQUFJO1lBQ3ZCLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsR0FBRyxLQUFLLENBQUMsTUFBTTtTQUNoQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNiLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVztZQUMvQixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7WUFDekIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztTQUNwQixDQUFDLENBQUMsQ0FDSixDQUFDO0lBQ0osQ0FBQzt1R0E3RFUsa0JBQWtCOzJHQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblByb3ZpZGVyQmFzZSB9IGZyb20gJy4vbm90aWZpY2F0aW9uLnByb3ZpZGVyJztcbmltcG9ydCB7XG4gIE5vdGlmaWNhdGlvbkNhbGxQcm9wcyxcbiAgTm90aWZpY2F0aW9uUmVzdWx0LFxuICBOb3RpZmljYXRpb25UeXBlLFxuICBTd2VldEFsZXJ0Q29uZmlnLFxufSBmcm9tICcuLi90eXBlcy9ub3RpZmljYXRpb24udHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU3dlZXRBbGVydFByb3ZpZGVyIGV4dGVuZHMgTm90aWZpY2F0aW9uUHJvdmlkZXJCYXNlIHtcbiAgc3VjY2Vzcyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25SZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93QWxlcnQoeyAuLi5wcm9wcywgdHlwZTogJ3N1Y2Nlc3MnIH0pO1xuICB9XG5cbiAgZXJyb3IocHJvcHM6IE5vdGlmaWNhdGlvbkNhbGxQcm9wcyk6IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvd0FsZXJ0KHsgLi4ucHJvcHMsIHR5cGU6ICdlcnJvcicgfSk7XG4gIH1cblxuICB3YXJuaW5nKHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMpOiBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLnNob3dBbGVydCh7IC4uLnByb3BzLCB0eXBlOiAnd2FybmluZycgfSk7XG4gIH1cblxuICBpbmZvKHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMpOiBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLnNob3dBbGVydCh7IC4uLnByb3BzLCB0eXBlOiAnaW5mbycgfSk7XG4gIH1cblxuICBjb25maXJtKGNvbmZpZzogU3dlZXRBbGVydENvbmZpZyk6IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PiB7XG4gICAgY29uc3Qgc3dhbENvbmZpZyA9IHtcbiAgICAgIHRpdGxlOiBjb25maWcudGl0bGUsXG4gICAgICB0ZXh0OiBjb25maWcubWVzc2FnZSxcbiAgICAgIGh0bWw6IGNvbmZpZy5odG1sLFxuICAgICAgaWNvbjogJ3F1ZXN0aW9uJyBhcyBhbnksXG4gICAgICBzaG93Q2FuY2VsQnV0dG9uOiBjb25maWcuc2hvd0NhbmNlbEJ1dHRvbiAhPT0gZmFsc2UsXG4gICAgICBjb25maXJtQnV0dG9uVGV4dDogY29uZmlnLmNvbmZpcm1CdXR0b25UZXh0IHx8ICdDb25maXJtJyxcbiAgICAgIGNhbmNlbEJ1dHRvblRleHQ6IGNvbmZpZy5jYW5jZWxCdXR0b25UZXh0IHx8ICdDYW5jZWwnLFxuICAgICAgYWxsb3dPdXRzaWRlQ2xpY2s6IGNvbmZpZy5hbGxvd091dHNpZGVDbGljayAhPT0gZmFsc2UsXG4gICAgICBjdXN0b21DbGFzczogY29uZmlnLmN1c3RvbUNsYXNzID8geyBjb250YWluZXI6IGNvbmZpZy5jdXN0b21DbGFzcyB9IDogdW5kZWZpbmVkLFxuICAgIH07XG5cbiAgICByZXR1cm4gZnJvbShTd2FsLmZpcmUoc3dhbENvbmZpZykpLnBpcGUoXG4gICAgICBtYXAocmVzdWx0ID0+ICh7XG4gICAgICAgIGlzQ29uZmlybWVkOiByZXN1bHQuaXNDb25maXJtZWQsXG4gICAgICAgIGlzRGVuaWVkOiByZXN1bHQuaXNEZW5pZWQsXG4gICAgICAgIGlzRGlzbWlzc2VkOiByZXN1bHQuaXNEaXNtaXNzZWQsXG4gICAgICAgIHZhbHVlOiByZXN1bHQudmFsdWUsXG4gICAgICB9KSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hvd0FsZXJ0KFxuICAgIHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMgJiB7IHR5cGU6IE5vdGlmaWNhdGlvblR5cGUgfSxcbiAgKTogT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25SZXN1bHQ+IHtcbiAgICBjb25zdCBzd2FsQ29uZmlnID0ge1xuICAgICAgdGl0bGU6IHByb3BzLnRpdGxlLFxuICAgICAgdGV4dDogcHJvcHMubWVzc2FnZSxcbiAgICAgIGljb246IHByb3BzLnR5cGUgYXMgYW55LFxuICAgICAgdGltZXI6IHByb3BzLmNvbmZpZz8uZHVyYXRpb24gfHwgNTAwMCxcbiAgICAgIHNob3dDb25maXJtQnV0dG9uOiB0cnVlLFxuICAgICAgdGltZXJQcm9ncmVzc0JhcjogdHJ1ZSxcbiAgICAgIC4uLnByb3BzLmNvbmZpZyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGZyb20oU3dhbC5maXJlKHN3YWxDb25maWcpKS5waXBlKFxuICAgICAgbWFwKHJlc3VsdCA9PiAoe1xuICAgICAgICBpc0NvbmZpcm1lZDogcmVzdWx0LmlzQ29uZmlybWVkLFxuICAgICAgICBpc0RlbmllZDogcmVzdWx0LmlzRGVuaWVkLFxuICAgICAgICBpc0Rpc21pc3NlZDogcmVzdWx0LmlzRGlzbWlzc2VkLFxuICAgICAgICB2YWx1ZTogcmVzdWx0LnZhbHVlLFxuICAgICAgfSkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { Injectable, Inject } from '@angular/core';\nimport { NOTIFICATION_CONFIG, } from '../providers/notification.provider';\nimport { NOTIFICATION_MESSAGES } from '../constants/notification.constants';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../providers/toastr.provider\";\nimport * as i2 from \"../providers/snackbar.provider\";\nimport * as i3 from \"../providers/sweetalert.provider\";\nexport class NotificationService {\n config;\n toastrProvider;\n snackbarProvider;\n sweetAlertProvider;\n providers = new Map();\n currentProvider;\n // Expose predefined messages\n messages = NOTIFICATION_MESSAGES;\n constructor(config, toastrProvider, snackbarProvider, sweetAlertProvider) {\n this.config = config;\n this.toastrProvider = toastrProvider;\n this.snackbarProvider = snackbarProvider;\n this.sweetAlertProvider = sweetAlertProvider;\n this.providers.set('toastr', this.toastrProvider);\n this.providers.set('snackbar', this.snackbarProvider);\n this.providers.set('sweetalert', this.sweetAlertProvider);\n this.currentProvider =\n this.providers.get(this.config.defaultProvider) || this.sweetAlertProvider;\n }\n setProvider(provider) {\n const providerInstance = this.providers.get(provider);\n if (providerInstance) {\n this.currentProvider = providerInstance;\n }\n }\n success(props) {\n return this.currentProvider.success(props);\n }\n error(props) {\n return this.currentProvider.error(props);\n }\n warning(props) {\n return this.currentProvider.warning(props);\n }\n info(props) {\n return this.currentProvider.info(props);\n }\n confirm(config) {\n return this.currentProvider.confirm(config);\n }\n show(props) {\n return this.currentProvider[props.type]({\n message: props.message,\n title: props.title,\n config: props.config,\n });\n }\n // Provider-specific methods maintaining your current API\n get toastr() {\n return this.providers.get('toastr');\n }\n get snackbar() {\n return this.providers.get('snackbar');\n }\n get sweetAlert() {\n return this.providers.get('sweetalert');\n }\n // Quick methods using predefined messages\n quickSave(type = 'success') {\n const message = type === 'success' ? this.messages.SUCCESS.SAVE : this.messages.ERROR.SAVE;\n this.currentProvider[type]({ message });\n }\n quickDelete(type = 'success') {\n const message = type === 'success' ? this.messages.SUCCESS.DELETE : this.messages.ERROR.DELETE;\n this.currentProvider[type]({ message });\n }\n quickUpdate(type = 'success') {\n const message = type === 'success' ? this.messages.SUCCESS.UPDATE : this.messages.ERROR.UPDATE;\n this.currentProvider[type]({ message });\n }\n networkError() {\n this.currentProvider.error({\n message: this.messages.ERROR.NETWORK,\n title: 'Connection Error',\n });\n }\n sessionWarning() {\n this.currentProvider.warning({\n message: this.messages.WARNING.SESSION_EXPIRING,\n title: 'Session Alert',\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: NotificationService, deps: [{ token: NOTIFICATION_CONFIG }, { token: i1.ToastrProvider }, { token: i2.SnackbarProvider }, { token: i3.SweetAlertProvider }], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: NotificationService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: NotificationService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [{ type: undefined, decorators: [{\n type: Inject,\n args: [NOTIFICATION_CONFIG]\n }] }, { type: i1.ToastrProvider }, { type: i2.SnackbarProvider }, { type: i3.SweetAlertProvider }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy1ub3RpZmljYXRpb25zL3NyYy9saWIvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUVMLG1CQUFtQixHQUVwQixNQUFNLG9DQUFvQyxDQUFDO0FBVzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7OztBQUs1RSxNQUFNLE9BQU8sbUJBQW1CO0lBUVM7SUFDN0I7SUFDQTtJQUNBO0lBVkYsU0FBUyxHQUF3RCxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQzNFLGVBQWUsQ0FBMkI7SUFFbEQsNkJBQTZCO0lBQ3BCLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQztJQUUxQyxZQUN1QyxNQUFrQyxFQUMvRCxjQUE4QixFQUM5QixnQkFBa0MsRUFDbEMsa0JBQXNDO1FBSFQsV0FBTSxHQUFOLE1BQU0sQ0FBNEI7UUFDL0QsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUU5QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFMUQsSUFBSSxDQUFDLGVBQWU7WUFDbEIsSUFBSSxDQUFDLFNBQVMs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QyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQy9GLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7WUFDekIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU87WUFDcEMsS0FBSyxFQUFFLGtCQUFrQjtTQUMxQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDO1lBQzNCLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0I7WUFDL0MsS0FBSyxFQUFFLGVBQWU7U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FqR1UsbUJBQW1CLGtCQVFwQixtQkFBbUI7MkdBUmxCLG1CQUFtQixjQUZsQixNQUFNOzsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIE5vdGlmaWNhdGlvblByb3ZpZGVyQmFzZSxcbiAgTk9USUZJQ0FUSU9OX0NPTkZJRyxcbiAgTm90aWZpY2F0aW9uUHJvdmlkZXJDb25maWcsXG59IGZyb20gJy4uL3Byb3ZpZGVycy9ub3RpZmljYXRpb24ucHJvdmlkZXInO1xuaW1wb3J0IHsgVG9hc3RyUHJvdmlkZXIgfSBmcm9tICcuLi9wcm92aWRlcnMvdG9hc3RyLnByb3ZpZGVyJztcbmltcG9ydCB7IFNuYWNrYmFyUHJvdmlkZXIgfSBmcm9tICcuLi9wcm92aWRlcnMvc25hY2tiYXIucHJvdmlkZXInO1xuaW1wb3J0IHsgU3dlZXRBbGVydFByb3ZpZGVyIH0gZnJvbSAnLi4vcHJvdmlkZXJzL3N3ZWV0YWxlcnQucHJvdmlkZXInO1xuaW1wb3J0IHtcbiAgTm90aWZpY2F0aW9uQ2FsbFByb3BzLFxuICBOb3RpZmljYXRpb25SZXN1bHQsXG4gIFN3ZWV0QWxlcnRDb25maWcsXG4gIE5vdGlmaWNhdGlvblByb3ZpZGVyLFxuICBOb3RpZmljYXRpb25UeXBlLFxufSBmcm9tICcuLi90eXBlcy9ub3RpZmljYXRpb24udHlwZXMnO1xuaW1wb3J0IHsgTk9USUZJQ0FUSU9OX01FU1NBR0VTIH0gZnJvbSAnLi4vY29uc3RhbnRzL25vdGlmaWNhdGlvbi5jb25zdGFudHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgcHJvdmlkZXJzOiBNYXA8Tm90aWZpY2F0aW9uUHJvdmlkZXIsIE5vdGlmaWNhdGlvblByb3ZpZGVyQmFzZT4gPSBuZXcgTWFwKCk7XG4gIHByaXZhdGUgY3VycmVudFByb3ZpZGVyOiBOb3RpZmljYXRpb25Qcm92aWRlckJhc2U7XG5cbiAgLy8gRXhwb3NlIHByZWRlZmluZWQgbWVzc2FnZXNcbiAgcmVhZG9ubHkgbWVzc2FnZXMgPSBOT1RJRklDQVRJT05fTUVTU0FHRVM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChOT1RJRklDQVRJT05fQ09ORklHKSBwcml2YXRlIGNvbmZpZzogTm90aWZpY2F0aW9uUHJvdmlkZXJDb25maWcsXG4gICAgcHJpdmF0ZSB0b2FzdHJQcm92aWRlcjogVG9hc3RyUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSBzbmFja2JhclByb3ZpZGVyOiBTbmFja2JhclByb3ZpZGVyLFxuICAgIHByaXZhdGUgc3dlZXRBbGVydFByb3ZpZGVyOiBTd2VldEFsZXJ0UHJvdmlkZXIsXG4gICkge1xuICAgIHRoaXMucHJvdmlkZXJzLnNldCgndG9hc3RyJywgdGhpcy50b2FzdHJQcm92aWRlcik7XG4gICAgdGhpcy5wcm92aWRlcnMuc2V0KCdzbmFja2JhcicsIHRoaXMuc25hY2tiYXJQcm92aWRlcik7XG4gICAgdGhpcy5wcm92aWRlcnMuc2V0KCdzd2VldGFsZXJ0JywgdGhpcy5zd2VldEFsZXJ0UHJvdmlkZXIpO1xuXG4gICAgdGhpcy5jdXJyZW50UHJvdmlkZXIgPVxuICAgICAgdGhpcy5wcm92aWRlcnMuZ2V0KHRoaXMuY29uZmlnLmRlZmF1bHRQcm92aWRlcikgfHwgdGhpcy5zd2VldEFsZXJ0UHJvdmlkZXI7XG4gIH1cblxuICBzZXRQcm92aWRlcihwcm92aWRlcjogTm90aWZpY2F0aW9uUHJvdmlkZXIpOiB2b2lkIHtcbiAgICBjb25zdCBwcm92aWRlckluc3RhbmNlID0gdGhpcy5wcm92aWRlcnMuZ2V0KHByb3ZpZGVyKTtcbiAgICBpZiAocHJvdmlkZXJJbnN0YW5jZSkge1xuICAgICAgdGhpcy5jdXJyZW50UHJvdmlkZXIgPSBwcm92aWRlckluc3RhbmNlO1xuICAgIH1cbiAgfVxuXG4gIHN1Y2Nlc3MocHJvcHM6IE5vdGlmaWNhdGlvbkNhbGxQcm9wcyk6IHZvaWQgfCBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRQcm92aWRlci5zdWNjZXNzKHByb3BzKTtcbiAgfVxuXG4gIGVycm9yKHByb3BzOiBOb3RpZmljYXRpb25DYWxsUHJvcHMpOiB2b2lkIHwgT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25SZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UHJvdmlkZXIuZXJyb3IocHJvcHMpO1xuICB9XG5cbiAgd2FybmluZyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFByb3ZpZGVyLndhcm5pbmcocHJvcHMpO1xuICB9XG5cbiAgaW5mbyhwcm9wczogTm90aWZpY2F0aW9uQ2FsbFByb3BzKTogdm9pZCB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFByb3ZpZGVyLmluZm8ocHJvcHMpO1xuICB9XG5cbiAgY29uZmlybShjb25maWc6IFN3ZWV0QWxlcnRDb25maWcpOiBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRQcm92aWRlci5jb25maXJtKGNvbmZpZyk7XG4gIH1cblxuICBzaG93KHByb3BzOiB7IHR5cGU6IE5vdGlmaWNhdGlvblR5cGUgfSAmIE5vdGlmaWNhdGlvbkNhbGxQcm9wcyk6IHZvaWQgfCBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRQcm92aWRlcltwcm9wcy50eXBlXSh7XG4gICAgICBtZXNzYWdlOiBwcm9wcy5tZXNzYWdlLFxuICAgICAgdGl0bGU6IHByb3BzLnRpdGxlLFxuICAgICAgY29uZmlnOiBwcm9wcy5jb25maWcsXG4gICAgfSk7XG4gIH1cblxuICAvLyBQcm92aWRlci1zcGVjaWZpYyBtZXRob2RzIG1haW50YWluaW5nIHlvdXIgY3VycmVudCBBUElcbiAgZ2V0IHRvYXN0cigpOiBUb2FzdHJQcm92aWRlciB7XG4gICAgcmV0dXJuIHRoaXMucHJvdmlkZXJzLmdldCgndG9hc3RyJykgYXMgVG9hc3RyUHJvdmlkZXI7XG4gIH1cblxuICBnZXQgc25hY2tiYXIoKTogU25hY2tiYXJQcm92aWRlciB7XG4gICAgcmV0dXJuIHRoaXMucHJvdmlkZXJzLmdldCgnc25hY2tiYXInKSBhcyBTbmFja2JhclByb3ZpZGVyO1xuICB9XG5cbiAgZ2V0IHN3ZWV0QWxlcnQoKTogU3dlZXRBbGVydFByb3ZpZGVyIHtcbiAgICByZXR1cm4gdGhpcy5wcm92aWRlcnMuZ2V0KCdzd2VldGFsZXJ0JykgYXMgU3dlZXRBbGVydFByb3ZpZGVyO1xuICB9XG5cbiAgLy8gUXVpY2sgbWV0aG9kcyB1c2luZyBwcmVkZWZpbmVkIG1lc3NhZ2VzXG4gIHF1aWNrU2F2ZSh0eXBlOiAnc3VjY2VzcycgfCAnZXJyb3InID0gJ3N1Y2Nlc3MnKTogdm9pZCB7XG4gICAgY29uc3QgbWVzc2FnZSA9IHR5cGUgPT09ICdzdWNjZXNzJyA/IHRoaXMubWVzc2FnZXMuU1VDQ0VTUy5TQVZFIDogdGhpcy5tZXNzYWdlcy5FUlJPUi5TQVZFO1xuICAgIHRoaXMuY3VycmVudFByb3ZpZGVyW3R5cGVdKHsgbWVzc2FnZSB9KTtcbiAgfVxuXG4gIHF1aWNrRGVsZXRlKHR5cGU6ICdzdWNjZXNzJyB8ICdlcnJvcicgPSAnc3VjY2VzcycpOiB2b2lkIHtcbiAgICBjb25zdCBtZXNzYWdlID0gdHlwZSA9PT0gJ3N1Y2Nlc3MnID8gdGhpcy5tZXNzYWdlcy5TVUNDRVNTLkRFTEVURSA6IHRoaXMubWVzc2FnZXMuRVJST1IuREVMRVRFO1xuICAgIHRoaXMuY3VycmVudFByb3ZpZGVyW3R5cGVdKHsgbWVzc2FnZSB9KTtcbiAgfVxuXG4gIHF1aWNrVXBkYXRlKHR5cGU6ICdzdWNjZXNzJyB8ICdlcnJvcicgPSAnc3VjY2VzcycpOiB2b2lkIHtcbiAgICBjb25zdCBtZXNzYWdlID0gdHlwZSA9PT0gJ3N1Y2Nlc3MnID8gdGhpcy5tZXNzYWdlcy5TVUNDRVNTLlVQREFURSA6IHRoaXMubWVzc2FnZXMuRVJST1IuVVBEQVRFO1xuICAgIHRoaXMuY3VycmVudFByb3ZpZGVyW3R5cGVdKHsgbWVzc2FnZSB9KTtcbiAgfVxuXG4gIG5ldHdvcmtFcnJvcigpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnJlbnRQcm92aWRlci5lcnJvcih7XG4gICAgICBtZXNzYWdlOiB0aGlzLm1lc3NhZ2VzLkVSUk9SLk5FVFdPUkssXG4gICAgICB0aXRsZTogJ0Nvbm5lY3Rpb24gRXJyb3InLFxuICAgIH0pO1xuICB9XG5cbiAgc2Vzc2lvbldhcm5pbmcoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50UHJvdmlkZXIud2FybmluZyh7XG4gICAgICBtZXNzYWdlOiB0aGlzLm1lc3NhZ2VzLldBUk5JTkcuU0VTU0lPTl9FWFBJUklORyxcbiAgICAgIHRpdGxlOiAnU2Vzc2lvbiBBbGVydCcsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvbnRwbHVzLW5nLW5vdGlmaWNhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy1ub3RpZmljYXRpb25zL3NyYy9hY29udHBsdXMtbmctbm90aWZpY2F0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":["i1.ToastrProvider","i2.SnackbarProvider","i3.SweetAlertProvider"],"mappings":"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"}
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken } from '@angular/core';
|
|
3
|
+
import { IndividualConfig } from 'ngx-toastr';
|
|
4
|
+
import { MatSnackBarConfig } from '@angular/material/snack-bar';
|
|
5
|
+
import { Observable } from 'rxjs';
|
|
6
|
+
|
|
7
|
+
type NotificationType = 'success' | 'error' | 'warning' | 'info';
|
|
8
|
+
type NotificationPosition = 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center';
|
|
9
|
+
type NotificationProvider = 'toastr' | 'snackbar' | 'sweetalert';
|
|
10
|
+
interface BaseNotificationConfig {
|
|
11
|
+
readonly message: string;
|
|
12
|
+
readonly title?: string;
|
|
13
|
+
readonly type?: NotificationType;
|
|
14
|
+
}
|
|
15
|
+
interface NotificationCallProps extends BaseNotificationConfig {
|
|
16
|
+
readonly config?: any;
|
|
17
|
+
}
|
|
18
|
+
interface SweetAlertConfig extends BaseNotificationConfig {
|
|
19
|
+
readonly confirmButtonText?: string;
|
|
20
|
+
readonly cancelButtonText?: string;
|
|
21
|
+
readonly showCancelButton?: boolean;
|
|
22
|
+
readonly allowOutsideClick?: boolean;
|
|
23
|
+
readonly customClass?: string;
|
|
24
|
+
readonly html?: string;
|
|
25
|
+
}
|
|
26
|
+
interface NotificationResult {
|
|
27
|
+
isConfirmed?: boolean;
|
|
28
|
+
isDenied?: boolean;
|
|
29
|
+
isDismissed?: boolean;
|
|
30
|
+
value?: any;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
declare const NOTIFICATION_MESSAGES: {
|
|
34
|
+
readonly SUCCESS: {
|
|
35
|
+
readonly SAVE: "Data saved successfully";
|
|
36
|
+
readonly DELETE: "Item deleted successfully";
|
|
37
|
+
readonly UPDATE: "Data updated successfully";
|
|
38
|
+
readonly UPLOAD: "File uploaded successfully";
|
|
39
|
+
readonly CREATE: "Item created successfully";
|
|
40
|
+
readonly SYNC: "Data synchronized successfully";
|
|
41
|
+
};
|
|
42
|
+
readonly ERROR: {
|
|
43
|
+
readonly SAVE: "Failed to save data";
|
|
44
|
+
readonly DELETE: "Failed to delete item";
|
|
45
|
+
readonly UPDATE: "Failed to update data";
|
|
46
|
+
readonly UPLOAD: "Failed to upload file";
|
|
47
|
+
readonly NETWORK: "Network error occurred";
|
|
48
|
+
readonly UNKNOWN: "An unexpected error occurred";
|
|
49
|
+
readonly VALIDATION: "Validation error";
|
|
50
|
+
readonly UNAUTHORIZED: "Unauthorized access";
|
|
51
|
+
readonly SERVER: "Server error occurred";
|
|
52
|
+
};
|
|
53
|
+
readonly WARNING: {
|
|
54
|
+
readonly UNSAVED_CHANGES: "You have unsaved changes";
|
|
55
|
+
readonly SESSION_EXPIRING: "Your session is about to expire";
|
|
56
|
+
readonly STORAGE_FULL: "Storage is running low";
|
|
57
|
+
readonly DEPRECATED: "This feature is deprecated";
|
|
58
|
+
readonly LIMIT_REACHED: "Limit reached";
|
|
59
|
+
};
|
|
60
|
+
readonly INFO: {
|
|
61
|
+
readonly LOADING: "Loading data...";
|
|
62
|
+
readonly PROCESSING: "Processing request...";
|
|
63
|
+
readonly MAINTENANCE: "System maintenance scheduled";
|
|
64
|
+
readonly UPDATE_AVAILABLE: "Update available";
|
|
65
|
+
readonly BACKUP_COMPLETE: "Backup completed";
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
declare const NOTIFICATION_DURATIONS: {
|
|
69
|
+
readonly SHORT: 3000;
|
|
70
|
+
readonly MEDIUM: 5000;
|
|
71
|
+
readonly LONG: 8000;
|
|
72
|
+
readonly PERSISTENT: 0;
|
|
73
|
+
};
|
|
74
|
+
declare const NOTIFICATION_ICONS: {
|
|
75
|
+
readonly success: "check_circle";
|
|
76
|
+
readonly error: "error";
|
|
77
|
+
readonly warning: "warning";
|
|
78
|
+
readonly info: "info";
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
type ToastrNotificationConfig = Partial<IndividualConfig>;
|
|
82
|
+
declare const TOASTR_NOTIFICATION_CONFIG: InjectionToken<Partial<IndividualConfig<any>>>;
|
|
83
|
+
|
|
84
|
+
interface SnackbarConfig extends MatSnackBarConfig {
|
|
85
|
+
readonly defaultAction?: string;
|
|
86
|
+
readonly iconEnabled?: boolean;
|
|
87
|
+
readonly titleEnabled?: boolean;
|
|
88
|
+
}
|
|
89
|
+
declare const DEFAULT_SNACKBAR_CONFIG: SnackbarConfig;
|
|
90
|
+
declare const SNACKBAR_CONFIG: InjectionToken<SnackbarConfig>;
|
|
91
|
+
|
|
92
|
+
interface ToastrCallProps {
|
|
93
|
+
readonly message: string;
|
|
94
|
+
readonly title?: string;
|
|
95
|
+
readonly options?: Partial<IndividualConfig>;
|
|
96
|
+
}
|
|
97
|
+
interface SnackbarProps {
|
|
98
|
+
readonly type: NotificationType;
|
|
99
|
+
readonly message: string;
|
|
100
|
+
readonly title?: string;
|
|
101
|
+
readonly action?: string;
|
|
102
|
+
readonly config?: Partial<SnackbarConfig>;
|
|
103
|
+
}
|
|
104
|
+
interface SnackbarCallProps {
|
|
105
|
+
readonly message: string;
|
|
106
|
+
readonly title?: string;
|
|
107
|
+
readonly action?: string;
|
|
108
|
+
readonly config?: Partial<SnackbarConfig>;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
declare const NOTIFICATION_CONFIG: InjectionToken<NotificationProviderConfig>;
|
|
112
|
+
interface NotificationProviderConfig {
|
|
113
|
+
defaultProvider: NotificationProvider;
|
|
114
|
+
toastr?: any;
|
|
115
|
+
snackbar?: any;
|
|
116
|
+
sweetalert?: any;
|
|
117
|
+
}
|
|
118
|
+
declare abstract class NotificationProviderBase {
|
|
119
|
+
abstract success(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
120
|
+
abstract error(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
121
|
+
abstract warning(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
122
|
+
abstract info(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
123
|
+
abstract confirm(config: SweetAlertConfig): Observable<NotificationResult>;
|
|
124
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NotificationProviderBase, never>;
|
|
125
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<NotificationProviderBase>;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
type ToastrType = 'success' | 'error' | 'warning' | 'info';
|
|
129
|
+
interface ToastrShowProps {
|
|
130
|
+
readonly type: ToastrType;
|
|
131
|
+
readonly message: string;
|
|
132
|
+
readonly title?: string;
|
|
133
|
+
readonly options?: Partial<IndividualConfig>;
|
|
134
|
+
}
|
|
135
|
+
declare class ToastrProvider extends NotificationProviderBase {
|
|
136
|
+
private readonly toastrService;
|
|
137
|
+
private readonly config;
|
|
138
|
+
/**
|
|
139
|
+
* Generic show method for dynamic toast types
|
|
140
|
+
*/
|
|
141
|
+
show(props: ToastrShowProps): void;
|
|
142
|
+
success(props: NotificationCallProps): void;
|
|
143
|
+
error(props: NotificationCallProps): void;
|
|
144
|
+
warning(props: NotificationCallProps): void;
|
|
145
|
+
info(props: NotificationCallProps): void;
|
|
146
|
+
confirm(config: SweetAlertConfig): Observable<NotificationResult>;
|
|
147
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ToastrProvider, never>;
|
|
148
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ToastrProvider>;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
declare class SnackbarProvider extends NotificationProviderBase {
|
|
152
|
+
private readonly snackBar;
|
|
153
|
+
private readonly config;
|
|
154
|
+
/**
|
|
155
|
+
* Display a snackbar with specific type and configuration
|
|
156
|
+
*/
|
|
157
|
+
show(props: SnackbarProps): void;
|
|
158
|
+
success(props: NotificationCallProps): void;
|
|
159
|
+
error(props: NotificationCallProps): void;
|
|
160
|
+
warning(props: NotificationCallProps): void;
|
|
161
|
+
info(props: NotificationCallProps): void;
|
|
162
|
+
confirm(config: SweetAlertConfig): Observable<NotificationResult>;
|
|
163
|
+
private buildPanelClasses;
|
|
164
|
+
private buildMessage;
|
|
165
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SnackbarProvider, never>;
|
|
166
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SnackbarProvider>;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
declare class SweetAlertProvider extends NotificationProviderBase {
|
|
170
|
+
success(props: NotificationCallProps): Observable<NotificationResult>;
|
|
171
|
+
error(props: NotificationCallProps): Observable<NotificationResult>;
|
|
172
|
+
warning(props: NotificationCallProps): Observable<NotificationResult>;
|
|
173
|
+
info(props: NotificationCallProps): Observable<NotificationResult>;
|
|
174
|
+
confirm(config: SweetAlertConfig): Observable<NotificationResult>;
|
|
175
|
+
private showAlert;
|
|
176
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SweetAlertProvider, never>;
|
|
177
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SweetAlertProvider>;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
declare class NotificationService {
|
|
181
|
+
private config;
|
|
182
|
+
private toastrProvider;
|
|
183
|
+
private snackbarProvider;
|
|
184
|
+
private sweetAlertProvider;
|
|
185
|
+
private providers;
|
|
186
|
+
private currentProvider;
|
|
187
|
+
readonly messages: {
|
|
188
|
+
readonly SUCCESS: {
|
|
189
|
+
readonly SAVE: "Data saved successfully";
|
|
190
|
+
readonly DELETE: "Item deleted successfully";
|
|
191
|
+
readonly UPDATE: "Data updated successfully";
|
|
192
|
+
readonly UPLOAD: "File uploaded successfully";
|
|
193
|
+
readonly CREATE: "Item created successfully";
|
|
194
|
+
readonly SYNC: "Data synchronized successfully";
|
|
195
|
+
};
|
|
196
|
+
readonly ERROR: {
|
|
197
|
+
readonly SAVE: "Failed to save data";
|
|
198
|
+
readonly DELETE: "Failed to delete item";
|
|
199
|
+
readonly UPDATE: "Failed to update data";
|
|
200
|
+
readonly UPLOAD: "Failed to upload file";
|
|
201
|
+
readonly NETWORK: "Network error occurred";
|
|
202
|
+
readonly UNKNOWN: "An unexpected error occurred";
|
|
203
|
+
readonly VALIDATION: "Validation error";
|
|
204
|
+
readonly UNAUTHORIZED: "Unauthorized access";
|
|
205
|
+
readonly SERVER: "Server error occurred";
|
|
206
|
+
};
|
|
207
|
+
readonly WARNING: {
|
|
208
|
+
readonly UNSAVED_CHANGES: "You have unsaved changes";
|
|
209
|
+
readonly SESSION_EXPIRING: "Your session is about to expire";
|
|
210
|
+
readonly STORAGE_FULL: "Storage is running low";
|
|
211
|
+
readonly DEPRECATED: "This feature is deprecated";
|
|
212
|
+
readonly LIMIT_REACHED: "Limit reached";
|
|
213
|
+
};
|
|
214
|
+
readonly INFO: {
|
|
215
|
+
readonly LOADING: "Loading data...";
|
|
216
|
+
readonly PROCESSING: "Processing request...";
|
|
217
|
+
readonly MAINTENANCE: "System maintenance scheduled";
|
|
218
|
+
readonly UPDATE_AVAILABLE: "Update available";
|
|
219
|
+
readonly BACKUP_COMPLETE: "Backup completed";
|
|
220
|
+
};
|
|
221
|
+
};
|
|
222
|
+
constructor(config: NotificationProviderConfig, toastrProvider: ToastrProvider, snackbarProvider: SnackbarProvider, sweetAlertProvider: SweetAlertProvider);
|
|
223
|
+
setProvider(provider: NotificationProvider): void;
|
|
224
|
+
success(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
225
|
+
error(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
226
|
+
warning(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
227
|
+
info(props: NotificationCallProps): void | Observable<NotificationResult>;
|
|
228
|
+
confirm(config: SweetAlertConfig): Observable<NotificationResult>;
|
|
229
|
+
show(props: {
|
|
230
|
+
type: NotificationType;
|
|
231
|
+
} & NotificationCallProps): void | Observable<NotificationResult>;
|
|
232
|
+
get toastr(): ToastrProvider;
|
|
233
|
+
get snackbar(): SnackbarProvider;
|
|
234
|
+
get sweetAlert(): SweetAlertProvider;
|
|
235
|
+
quickSave(type?: 'success' | 'error'): void;
|
|
236
|
+
quickDelete(type?: 'success' | 'error'): void;
|
|
237
|
+
quickUpdate(type?: 'success' | 'error'): void;
|
|
238
|
+
networkError(): void;
|
|
239
|
+
sessionWarning(): void;
|
|
240
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NotificationService, never>;
|
|
241
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<NotificationService>;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
export { DEFAULT_SNACKBAR_CONFIG, NOTIFICATION_CONFIG, NOTIFICATION_DURATIONS, NOTIFICATION_ICONS, NOTIFICATION_MESSAGES, NotificationProviderBase, NotificationService, SNACKBAR_CONFIG, SnackbarProvider, SweetAlertProvider, TOASTR_NOTIFICATION_CONFIG, ToastrProvider };
|
|
245
|
+
export type { BaseNotificationConfig, NotificationCallProps, NotificationPosition, NotificationProvider, NotificationProviderConfig, NotificationResult, NotificationType, SnackbarCallProps, SnackbarConfig, SnackbarProps, SweetAlertConfig, ToastrCallProps, ToastrNotificationConfig, ToastrShowProps, ToastrType };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acontplus/ng-notifications",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "A library of Angular components for notifications, including custom buttons, dialogs, and snackbars, built with Angular Material and styled with SCSS.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^20.3.1",
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"sweetalert2": "^11.23.0"
|
|
12
12
|
},
|
|
13
13
|
"sideEffects": false,
|
|
14
|
-
"main": "fesm2022/ng-notifications.mjs",
|
|
15
|
-
"module": "fesm2022/ng-notifications.mjs",
|
|
14
|
+
"main": "fesm2022/acontplus-ng-notifications.mjs",
|
|
15
|
+
"module": "fesm2022/acontplus-ng-notifications.mjs",
|
|
16
16
|
"typings": "index.d.ts",
|
|
17
17
|
"files": [
|
|
18
18
|
"index.d.ts",
|
|
@@ -59,5 +59,17 @@
|
|
|
59
59
|
"branches": [
|
|
60
60
|
"main"
|
|
61
61
|
]
|
|
62
|
+
},
|
|
63
|
+
"exports": {
|
|
64
|
+
"./package.json": {
|
|
65
|
+
"default": "./package.json"
|
|
66
|
+
},
|
|
67
|
+
".": {
|
|
68
|
+
"types": "./index.d.ts",
|
|
69
|
+
"default": "./fesm2022/acontplus-ng-notifications.mjs"
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"dependencies": {
|
|
73
|
+
"tslib": "^2.3.0"
|
|
62
74
|
}
|
|
63
|
-
}
|
|
75
|
+
}
|