ngx-histaff-alpha 3.0.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -82,13 +82,16 @@ export class AppService {
82
82
  }
83
83
  }
84
84
  showNotification(title, options) {
85
+ console.log("showNotification...");
85
86
  if ('Notification' in window) {
86
87
  // Check if notification permissions are granted
87
88
  if (Notification.permission === 'granted') {
89
+ console.log("permission === 'granted'");
88
90
  // Create and display the notification
89
91
  new Notification(title, options);
90
92
  }
91
93
  else if (Notification.permission !== 'denied') {
94
+ console.log("permission !== 'denied'");
92
95
  // Request permission from the user
93
96
  Notification.requestPermission().then(permission => {
94
97
  if (permission === 'granted') {
@@ -114,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
114
117
  providedIn: 'root'
115
118
  }]
116
119
  }], ctorParameters: () => [{ type: i1.CommonHttpRequestService }] });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9zZXJ2aWNlcy9hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0Msd0JBQXdCO0FBSXhCLE1BQU0sT0FBTyxVQUFVO0lBRXJCLFlBQW9CLHdCQUFrRDtRQUFsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO0lBQUksQ0FBQztJQUUzRSxHQUFHLENBQUMsR0FBVyxFQUFFLGVBQXdCLEtBQUs7UUFDNUMsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUE7SUFDL0UsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQVcsRUFBRSxlQUF3QixLQUFLO1FBQzNELE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDZCQUE2QixDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUE7SUFDOUYsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFXLEVBQUUsT0FBWTtRQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQ25DLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQzVFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxHQUFXLEVBQUUsT0FBWTtRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQ25DLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDhCQUE4QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUE7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QzVCLGdEQUFnRDtZQUNoRCxJQUFJLFlBQVksQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFO2dCQUN6QyxzQ0FBc0M7Z0JBQ3RDLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQzthQUNsQztpQkFBTSxJQUFJLFlBQVksQ0FBQyxVQUFVLEtBQUssUUFBUSxFQUFFO2dCQUMvQyxtQ0FBbUM7Z0JBQ25DLFlBQVksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtvQkFDakQsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFO3dCQUM1QixzQ0FBc0M7d0JBQ3RDLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztxQkFDbEM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7YUFDSjtpQkFBTTtnQkFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLGlEQUFpRCxDQUFDLENBQUM7YUFDakU7U0FDRjthQUFNO1lBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO1NBQ2xFO0lBQ0gsQ0FBQzs4R0EvR1UsVUFBVTtrSEFBVixVQUFVLGNBRlQsTUFBTTs7MkZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IENvbW1vbkh0dHBSZXF1ZXN0U2VydmljZSB9IGZyb20gJy4vY29tbW9uLWh0dHAtcmVxdWVzdC5zZXJ2aWNlJztcclxuXHJcbi8vZGVjbGFyZSBsZXQgWExTWDogYW55O1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb21tb25IdHRwUmVxdWVzdFNlcnZpY2U6IENvbW1vbkh0dHBSZXF1ZXN0U2VydmljZSkgeyB9XHJcblxyXG4gIGdldCh1cmw6IHN0cmluZywgY2FjaGVSZXF1ZXN0OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VHZXRSZXF1ZXN0KCdnZXQnLCB1cmwsIGNhY2hlUmVxdWVzdClcclxuICB9XHJcblxyXG4gIGdldFNraXBJbnRlcmNlcHRvcih1cmw6IHN0cmluZywgY2FjaGVSZXF1ZXN0OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VHZXRSZXF1ZXN0U2tpcEludGVyY2VwdG9yKCdnZXQnLCB1cmwsIGNhY2hlUmVxdWVzdClcclxuICB9XHJcblxyXG4gIHBvc3QodXJsOiBzdHJpbmcsIHBheWxvYWQ6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zb2xlLmxvZyhcImFwcFNlcnZpY2UgcG9zdFwiLCB1cmwpXHJcbiAgICByZXR1cm4gdGhpcy5jb21tb25IdHRwUmVxdWVzdFNlcnZpY2UubWFrZVBvc3RSZXF1ZXN0KCdwb3N0JywgdXJsLCBwYXlsb2FkKVxyXG4gIH1cclxuXHJcbiAgcG9zdFNraXBJbnRlcmNlcHRvcih1cmw6IHN0cmluZywgcGF5bG9hZDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnNvbGUubG9nKFwiYXBwU2VydmljZSBwb3N0XCIsIHVybClcclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3RTa2lwSW50ZXJjZXB0b3IoJ3Bvc3QnLCB1cmwsIHBheWxvYWQpXHJcbiAgfVxyXG5cclxuICBnZXRGdWxsVXJsKHVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlR2V0UmVxdWVzdEZ1bGxVcmwodXJsKVxyXG4gIH1cclxuXHJcbiAgcG9zdEZ1bGxVcmwodXJsOiBzdHJpbmcsIHBheWxvYWQ6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zb2xlLmxvZyhcImFwcFNlcnZpY2UgcG9zdFwiLCB1cmwpXHJcbiAgICByZXR1cm4gdGhpcy5jb21tb25IdHRwUmVxdWVzdFNlcnZpY2UubWFrZVBvc3RSZXF1ZXN0RnVsbFVybCh1cmwsIHBheWxvYWQpXHJcbiAgfVxyXG5cclxuICBibG9iUG9zdCh1cmw6IHN0cmluZywgcGF5bG9hZDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3RSZXBvbnNlQmxvYigncG9zdCcsIHVybCwgcGF5bG9hZClcclxuICB9XHJcblxyXG4gIGJsb2JQb3N0U2tpcEludGVyY2VwdG9yKHVybDogc3RyaW5nLCBwYXlsb2FkOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VQb3N0UmVxdWVzdFJlcG9uc2VCbG9iU2tpcEludGVyY2VwdG9yKCdwb3N0JywgdXJsLCBwYXlsb2FkKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlYWRFeGNlbChmaWxlOiBGaWxlKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGlmIChmaWxlKSB7XHJcbiAgICAgICAgdmFyIHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgICAgcmVhZGVyLnJlYWRBc0JpbmFyeVN0cmluZyhmaWxlKTtcclxuICAgICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgYWxlcnQoXCJYTFNYIHdhcyBub3QgZGVmaW5lZFwiKTtcclxuICAgICAgICAgIC8qXHJcbiAgICAgICAgICB2YXIgd29ya2Jvb2sgPSBYTFNYLnJlYWQocmVhZGVyLnJlc3VsdCwgeyB0eXBlOiBcImJpbmFyeVwiLCBjZWxsRGF0ZXM6IHRydWUgfSk7XHJcbiAgICAgICAgICB2YXIgd29ya3NoZWV0ID0gd29ya2Jvb2suU2hlZXRzW3dvcmtib29rLlNoZWV0TmFtZXNbMF1dO1xyXG4gICAgICAgICAgdmFyIGRhdGEgPSBYTFNYLnV0aWxzLnNoZWV0X3RvX2pzb24od29ya3NoZWV0KTtcclxuICAgICAgICAgICovXHJcbiAgICAgICAgICAvL3Jlc29sdmUoZGF0YSk7XHJcbiAgICAgICAgICByZXNvbHZlKG51bGwpO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVqZWN0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVVdWlkKCk6IHN0cmluZyB7XHJcbiAgICB0cnkge1xyXG4gICAgICAvLyBVc2UgdGhlIGNyeXB0byBtb2R1bGUgdG8gZ2VuZXJhdGUgYSByYW5kb20gYXJyYXkgb2YgYnl0ZXNcclxuICAgICAgdmFyIGFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoMTYpO1xyXG4gICAgICBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKGFycmF5KTtcclxuICBcclxuICAgICAgLy8gQ29udmVydCB0aGUgYXJyYXkgb2YgYnl0ZXMgdG8gYSBoZXhhZGVjaW1hbCBzdHJpbmdcclxuICAgICAgdmFyIHV1aWQgPSBcIlwiO1xyXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgdXVpZCArPSBhcnJheVtpXS50b1N0cmluZygxNikucGFkU3RhcnQoMiwgXCIwXCIpO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIC8vIEFkZCBoeXBoZW5zIHRvIHRoZSBVVUlEIHRvIHNlcGFyYXRlIGl0IGludG8gZ3JvdXBzXHJcbiAgICAgIHV1aWQgPSB1dWlkLnN1YnN0cmluZygwLCA4KSArIFwiLVwiICsgdXVpZC5zdWJzdHJpbmcoOCwgMTIpICsgXCItXCIgKyB1dWlkLnN1YnN0cmluZygxMiwgMTYpICsgXCItXCIgKyB1dWlkLnN1YnN0cmluZygxNiwgMjApICsgXCItXCIgKyB1dWlkLnN1YnN0cmluZygyMCwgMzIpO1xyXG4gIFxyXG4gICAgICByZXR1cm4gdXVpZDtcclxuXHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBnZW5lcmF0aW5nIFVVSUQ6JywgZXJyb3IpO1xyXG4gICAgICAvLyBIYW5kbGUgZXJyb3IgYXBwcm9wcmlhdGVseSwgZS5nLiwgZmFsbGJhY2sgdG8gYSBkaWZmZXJlbnQgbWV0aG9kIG9yIHRocm93IGFuIGVycm9yXHJcbiAgICAgIC8qXHJcbiAgICAgIFVzaW5nIGNyeXB0by5yYW5kb21VVUlEKCkgZGlyZWN0bHkgKGlmIGF2YWlsYWJsZSBpbiB5b3VyIGVudmlyb25tZW50KSBzaW1wbGlmaWVzIFxyXG4gICAgICB0aGUgdGFzayBvZiBnZW5lcmF0aW5nIFVVSURzIGJ5IGxldmVyYWdpbmcgYnVpbHQtaW4gY3J5cHRvZ3JhcGhpYyBmdW5jdGlvbnMuIFxyXG4gICAgICBUaGlzIGFwcHJvYWNoIGlzIGlkZWFsIGZvciBhcHBsaWNhdGlvbnMgcmVxdWlyaW5nIHVuaXF1ZSBpZGVudGlmaWVycyB3aXRob3V0IHRoZSBcclxuICAgICAgbmVlZCBmb3IgbWFudWFsIGJ5dGUgbWFuaXB1bGF0aW9uIG9yIHN0cmluZyBmb3JtYXR0aW5nLiBcclxuICAgICAgQWx3YXlzIHZlcmlmeSBjb21wYXRpYmlsaXR5IGFuZCBiZWhhdmlvciBpbiB5b3VyIHNwZWNpZmljIHJ1bnRpbWUgZW52aXJvbm1lbnQgdG8gZW5zdXJlIHNlYW1sZXNzIGludGVncmF0aW9uLlxyXG4gICAgICAqL1xyXG4gICAgICByZXR1cm4gY3J5cHRvLnJhbmRvbVVVSUQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dOb3RpZmljYXRpb24odGl0bGU6IHN0cmluZywgb3B0aW9uczogYW55KSB7XHJcbiAgICBpZiAoJ05vdGlmaWNhdGlvbicgaW4gd2luZG93KSB7XHJcbiAgICAgIC8vIENoZWNrIGlmIG5vdGlmaWNhdGlvbiBwZXJtaXNzaW9ucyBhcmUgZ3JhbnRlZFxyXG4gICAgICBpZiAoTm90aWZpY2F0aW9uLnBlcm1pc3Npb24gPT09ICdncmFudGVkJykge1xyXG4gICAgICAgIC8vIENyZWF0ZSBhbmQgZGlzcGxheSB0aGUgbm90aWZpY2F0aW9uXHJcbiAgICAgICAgbmV3IE5vdGlmaWNhdGlvbih0aXRsZSwgb3B0aW9ucyk7XHJcbiAgICAgIH0gZWxzZSBpZiAoTm90aWZpY2F0aW9uLnBlcm1pc3Npb24gIT09ICdkZW5pZWQnKSB7XHJcbiAgICAgICAgLy8gUmVxdWVzdCBwZXJtaXNzaW9uIGZyb20gdGhlIHVzZXJcclxuICAgICAgICBOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKHBlcm1pc3Npb24gPT4ge1xyXG4gICAgICAgICAgaWYgKHBlcm1pc3Npb24gPT09ICdncmFudGVkJykge1xyXG4gICAgICAgICAgICAvLyBDcmVhdGUgYW5kIGRpc3BsYXkgdGhlIG5vdGlmaWNhdGlvblxyXG4gICAgICAgICAgICBuZXcgTm90aWZpY2F0aW9uKHRpdGxlLCBvcHRpb25zKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zb2xlLndhcm4oJ05vdGlmaWNhdGlvbiBwZXJtaXNzaW9ucyBub3QgZ3JhbnRlZCBvciBkZW5pZWQuJyk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignTm90aWZpY2F0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGJyb3dzZXIuJyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG59XHJcbiJdfQ==
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9zZXJ2aWNlcy9hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0Msd0JBQXdCO0FBSXhCLE1BQU0sT0FBTyxVQUFVO0lBRXJCLFlBQW9CLHdCQUFrRDtRQUFsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO0lBQUksQ0FBQztJQUUzRSxHQUFHLENBQUMsR0FBVyxFQUFFLGVBQXdCLEtBQUs7UUFDNUMsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUE7SUFDL0UsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQVcsRUFBRSxlQUF3QixLQUFLO1FBQzNELE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDZCQUE2QixDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUE7SUFDOUYsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFXLEVBQUUsT0FBWTtRQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQ25DLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQzVFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxHQUFXLEVBQUUsT0FBWTtRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQ25DLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDhCQUE4QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUE7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Q0FBQyxDQUFBO1FBQ2xDLElBQUksY0FBYyxJQUFJLE1BQU0sRUFBRTtZQUM1QixnREFBZ0Q7WUFDaEQsSUFBSSxZQUFZLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtnQkFDekMsT0FBTyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO2dCQUN2QyxzQ0FBc0M7Z0JBQ3RDLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQzthQUNsQztpQkFBTSxJQUFJLFlBQVksQ0FBQyxVQUFVLEtBQUssUUFBUSxFQUFFO2dCQUMvQyxPQUFPLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUE7Z0JBQ3RDLG1DQUFtQztnQkFDbkMsWUFBWSxDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO29CQUNqRCxJQUFJLFVBQVUsS0FBSyxTQUFTLEVBQUU7d0JBQzVCLHNDQUFzQzt3QkFDdEMsSUFBSSxZQUFZLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO3FCQUNsQztnQkFDSCxDQUFDLENBQUMsQ0FBQzthQUNKO2lCQUFNO2dCQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsaURBQWlELENBQUMsQ0FBQzthQUNqRTtTQUNGO2FBQU07WUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDOzhHQWxIVSxVQUFVO2tIQUFWLFVBQVUsY0FGVCxNQUFNOzsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgQ29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlIH0gZnJvbSAnLi9jb21tb24taHR0cC1yZXF1ZXN0LnNlcnZpY2UnO1xyXG5cclxuLy9kZWNsYXJlIGxldCBYTFNYOiBhbnk7XHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcFNlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZTogQ29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlKSB7IH1cclxuXHJcbiAgZ2V0KHVybDogc3RyaW5nLCBjYWNoZVJlcXVlc3Q6IGJvb2xlYW4gPSBmYWxzZSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21tb25IdHRwUmVxdWVzdFNlcnZpY2UubWFrZUdldFJlcXVlc3QoJ2dldCcsIHVybCwgY2FjaGVSZXF1ZXN0KVxyXG4gIH1cclxuXHJcbiAgZ2V0U2tpcEludGVyY2VwdG9yKHVybDogc3RyaW5nLCBjYWNoZVJlcXVlc3Q6IGJvb2xlYW4gPSBmYWxzZSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21tb25IdHRwUmVxdWVzdFNlcnZpY2UubWFrZUdldFJlcXVlc3RTa2lwSW50ZXJjZXB0b3IoJ2dldCcsIHVybCwgY2FjaGVSZXF1ZXN0KVxyXG4gIH1cclxuXHJcbiAgcG9zdCh1cmw6IHN0cmluZywgcGF5bG9hZDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnNvbGUubG9nKFwiYXBwU2VydmljZSBwb3N0XCIsIHVybClcclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3QoJ3Bvc3QnLCB1cmwsIHBheWxvYWQpXHJcbiAgfVxyXG5cclxuICBwb3N0U2tpcEludGVyY2VwdG9yKHVybDogc3RyaW5nLCBwYXlsb2FkOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc29sZS5sb2coXCJhcHBTZXJ2aWNlIHBvc3RcIiwgdXJsKVxyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VQb3N0UmVxdWVzdFNraXBJbnRlcmNlcHRvcigncG9zdCcsIHVybCwgcGF5bG9hZClcclxuICB9XHJcblxyXG4gIGdldEZ1bGxVcmwodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VHZXRSZXF1ZXN0RnVsbFVybCh1cmwpXHJcbiAgfVxyXG5cclxuICBwb3N0RnVsbFVybCh1cmw6IHN0cmluZywgcGF5bG9hZDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnNvbGUubG9nKFwiYXBwU2VydmljZSBwb3N0XCIsIHVybClcclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3RGdWxsVXJsKHVybCwgcGF5bG9hZClcclxuICB9XHJcblxyXG4gIGJsb2JQb3N0KHVybDogc3RyaW5nLCBwYXlsb2FkOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VQb3N0UmVxdWVzdFJlcG9uc2VCbG9iKCdwb3N0JywgdXJsLCBwYXlsb2FkKVxyXG4gIH1cclxuXHJcbiAgYmxvYlBvc3RTa2lwSW50ZXJjZXB0b3IodXJsOiBzdHJpbmcsIHBheWxvYWQ6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21tb25IdHRwUmVxdWVzdFNlcnZpY2UubWFrZVBvc3RSZXF1ZXN0UmVwb25zZUJsb2JTa2lwSW50ZXJjZXB0b3IoJ3Bvc3QnLCB1cmwsIHBheWxvYWQpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVhZEV4Y2VsKGZpbGU6IEZpbGUpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgaWYgKGZpbGUpIHtcclxuICAgICAgICB2YXIgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICByZWFkZXIucmVhZEFzQmluYXJ5U3RyaW5nKGZpbGUpO1xyXG4gICAgICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XHJcbiAgICAgICAgICBhbGVydChcIlhMU1ggd2FzIG5vdCBkZWZpbmVkXCIpO1xyXG4gICAgICAgICAgLypcclxuICAgICAgICAgIHZhciB3b3JrYm9vayA9IFhMU1gucmVhZChyZWFkZXIucmVzdWx0LCB7IHR5cGU6IFwiYmluYXJ5XCIsIGNlbGxEYXRlczogdHJ1ZSB9KTtcclxuICAgICAgICAgIHZhciB3b3Jrc2hlZXQgPSB3b3JrYm9vay5TaGVldHNbd29ya2Jvb2suU2hlZXROYW1lc1swXV07XHJcbiAgICAgICAgICB2YXIgZGF0YSA9IFhMU1gudXRpbHMuc2hlZXRfdG9fanNvbih3b3Jrc2hlZXQpO1xyXG4gICAgICAgICAgKi9cclxuICAgICAgICAgIC8vcmVzb2x2ZShkYXRhKTtcclxuICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZWplY3QoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZW5lcmF0ZVV1aWQoKTogc3RyaW5nIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIC8vIFVzZSB0aGUgY3J5cHRvIG1vZHVsZSB0byBnZW5lcmF0ZSBhIHJhbmRvbSBhcnJheSBvZiBieXRlc1xyXG4gICAgICB2YXIgYXJyYXkgPSBuZXcgVWludDhBcnJheSgxNik7XHJcbiAgICAgIGNyeXB0by5nZXRSYW5kb21WYWx1ZXMoYXJyYXkpO1xyXG4gIFxyXG4gICAgICAvLyBDb252ZXJ0IHRoZSBhcnJheSBvZiBieXRlcyB0byBhIGhleGFkZWNpbWFsIHN0cmluZ1xyXG4gICAgICB2YXIgdXVpZCA9IFwiXCI7XHJcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICB1dWlkICs9IGFycmF5W2ldLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCBcIjBcIik7XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgLy8gQWRkIGh5cGhlbnMgdG8gdGhlIFVVSUQgdG8gc2VwYXJhdGUgaXQgaW50byBncm91cHNcclxuICAgICAgdXVpZCA9IHV1aWQuc3Vic3RyaW5nKDAsIDgpICsgXCItXCIgKyB1dWlkLnN1YnN0cmluZyg4LCAxMikgKyBcIi1cIiArIHV1aWQuc3Vic3RyaW5nKDEyLCAxNikgKyBcIi1cIiArIHV1aWQuc3Vic3RyaW5nKDE2LCAyMCkgKyBcIi1cIiArIHV1aWQuc3Vic3RyaW5nKDIwLCAzMik7XHJcbiAgXHJcbiAgICAgIHJldHVybiB1dWlkO1xyXG5cclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGdlbmVyYXRpbmcgVVVJRDonLCBlcnJvcik7XHJcbiAgICAgIC8vIEhhbmRsZSBlcnJvciBhcHByb3ByaWF0ZWx5LCBlLmcuLCBmYWxsYmFjayB0byBhIGRpZmZlcmVudCBtZXRob2Qgb3IgdGhyb3cgYW4gZXJyb3JcclxuICAgICAgLypcclxuICAgICAgVXNpbmcgY3J5cHRvLnJhbmRvbVVVSUQoKSBkaXJlY3RseSAoaWYgYXZhaWxhYmxlIGluIHlvdXIgZW52aXJvbm1lbnQpIHNpbXBsaWZpZXMgXHJcbiAgICAgIHRoZSB0YXNrIG9mIGdlbmVyYXRpbmcgVVVJRHMgYnkgbGV2ZXJhZ2luZyBidWlsdC1pbiBjcnlwdG9ncmFwaGljIGZ1bmN0aW9ucy4gXHJcbiAgICAgIFRoaXMgYXBwcm9hY2ggaXMgaWRlYWwgZm9yIGFwcGxpY2F0aW9ucyByZXF1aXJpbmcgdW5pcXVlIGlkZW50aWZpZXJzIHdpdGhvdXQgdGhlIFxyXG4gICAgICBuZWVkIGZvciBtYW51YWwgYnl0ZSBtYW5pcHVsYXRpb24gb3Igc3RyaW5nIGZvcm1hdHRpbmcuIFxyXG4gICAgICBBbHdheXMgdmVyaWZ5IGNvbXBhdGliaWxpdHkgYW5kIGJlaGF2aW9yIGluIHlvdXIgc3BlY2lmaWMgcnVudGltZSBlbnZpcm9ubWVudCB0byBlbnN1cmUgc2VhbWxlc3MgaW50ZWdyYXRpb24uXHJcbiAgICAgICovXHJcbiAgICAgIHJldHVybiBjcnlwdG8ucmFuZG9tVVVJRCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2hvd05vdGlmaWNhdGlvbih0aXRsZTogc3RyaW5nLCBvcHRpb25zOiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwic2hvd05vdGlmaWNhdGlvbi4uLlwiKVxyXG4gICAgaWYgKCdOb3RpZmljYXRpb24nIGluIHdpbmRvdykge1xyXG4gICAgICAvLyBDaGVjayBpZiBub3RpZmljYXRpb24gcGVybWlzc2lvbnMgYXJlIGdyYW50ZWRcclxuICAgICAgaWYgKE5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uID09PSAnZ3JhbnRlZCcpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcInBlcm1pc3Npb24gPT09ICdncmFudGVkJ1wiKVxyXG4gICAgICAgIC8vIENyZWF0ZSBhbmQgZGlzcGxheSB0aGUgbm90aWZpY2F0aW9uXHJcbiAgICAgICAgbmV3IE5vdGlmaWNhdGlvbih0aXRsZSwgb3B0aW9ucyk7XHJcbiAgICAgIH0gZWxzZSBpZiAoTm90aWZpY2F0aW9uLnBlcm1pc3Npb24gIT09ICdkZW5pZWQnKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJwZXJtaXNzaW9uICE9PSAnZGVuaWVkJ1wiKVxyXG4gICAgICAgIC8vIFJlcXVlc3QgcGVybWlzc2lvbiBmcm9tIHRoZSB1c2VyXHJcbiAgICAgICAgTm90aWZpY2F0aW9uLnJlcXVlc3RQZXJtaXNzaW9uKCkudGhlbihwZXJtaXNzaW9uID0+IHtcclxuICAgICAgICAgIGlmIChwZXJtaXNzaW9uID09PSAnZ3JhbnRlZCcpIHtcclxuICAgICAgICAgICAgLy8gQ3JlYXRlIGFuZCBkaXNwbGF5IHRoZSBub3RpZmljYXRpb25cclxuICAgICAgICAgICAgbmV3IE5vdGlmaWNhdGlvbih0aXRsZSwgb3B0aW9ucyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc29sZS53YXJuKCdOb3RpZmljYXRpb24gcGVybWlzc2lvbnMgbm90IGdyYW50ZWQgb3IgZGVuaWVkLicpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ05vdGlmaWNhdGlvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBicm93c2VyLicpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxufVxyXG4iXX0=
@@ -56,11 +56,12 @@ export class SocketService {
56
56
  case EnumSignalRType.LOG_IN:
57
57
  if (isDevMode())
58
58
  this.alertService.info(activity.message, alertOptions);
59
+ console.log("Someone has logged in...");
59
60
  if ((this.appConfigService.SHOW_LOGIN_NOTIFICATION ||
60
61
  ['TANNV', 'ROOT'].includes((this.authService.data$.value?.userName || 'UNKNOWN').toUpperCase())) && activity.sid !== this.authService.data$.value?.id) {
61
62
  this.appService.showNotification("Information", {
62
63
  body: activity.message,
63
- icon: activity.avatar,
64
+ icon: `${this.appConfigService.BASE_URL}/${this.appConfigService.STATIC_FOLDER}/${this.appConfigService.AVATAR_FOLDER}/${activity.avatar}`,
64
65
  });
65
66
  }
66
67
  break;
@@ -153,4 +154,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
153
154
  providedIn: 'root'
154
155
  }]
155
156
  }], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.UserActivityService }, { type: i3.HubConnectionService }, { type: i4.AppConfigService }, { type: i5.AlertService }, { type: i6.Router }, { type: i7.LongTaskService }, { type: i8.AppService }] });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9zZXJ2aWNlcy9zb2NrZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd0RCxPQUFPLEVBQWlCLG9CQUFvQixFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBTW5GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7QUFPMUQsTUFBTSxPQUFPLGFBQWE7SUFFeEIsWUFDVSxXQUF3QixFQUN4QixtQkFBd0MsRUFDeEMsb0JBQTBDLEVBQzFDLGdCQUFrQyxFQUNsQyxZQUEwQixFQUMxQixNQUFjLEVBQ2QsZUFBZ0MsRUFDaEMsVUFBc0I7UUFQdEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQzVCLENBQUM7SUFFTCxtQkFBbUI7UUFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUNsRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRTtZQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FB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b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIdWJDb25uZWN0aW9uU2VydmljZSB9IGZyb20gJy4vaHViLWNvbm5lY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEh1YkNvbm5lY3Rpb24sIEh1YkNvbm5lY3Rpb25CdWlsZGVyLCBMb2dMZXZlbCB9IGZyb20gJ0BtaWNyb3NvZnQvc2lnbmFscic7XHJcbmltcG9ydCB7IElVc2VyQWN0aXZpdHlEYXRhLCBVc2VyQWN0aXZpdHlTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWFjdGl2aXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJSHViQ29ubmVjdGlvbkFjdGl2aXR5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9JSHViQ29ubmVjdGlvbkFjdGl2aXR5JztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vbGlicmFyaWVzL2FsZXJ0L2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb25nVGFza1NlcnZpY2UgfSBmcm9tICcuLi9saWJyYXJpZXMvc2VydmljZXMvbG9uZy10YXNrLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBhbGVydE9wdGlvbnMgfSBmcm9tICcuLi9jb25zdGFudHMvYWxlcnRPcHRpb25zJztcclxuaW1wb3J0IHsgRW51bVNpZ25hbFJUeXBlIH0gZnJvbSAnLi4vZW51bS9FbnVtU2lnbmFsUlR5cGUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBcHBTZXJ2aWNlIH0gZnJvbSAnLi9hcHAuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTb2NrZXRTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgdXNlckFjdGl2aXR5U2VydmljZTogVXNlckFjdGl2aXR5U2VydmljZSxcclxuICAgIHByaXZhdGUgaHViQ29ubmVjdGlvblNlcnZpY2U6IEh1YkNvbm5lY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGxvbmdUYXNrU2VydmljZTogTG9uZ1Rhc2tTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlLFxyXG4gICkgeyB9XHJcblxyXG4gIGNyZWF0ZUh1YkNvbm5lY3Rpb24oKSB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LnRva2VuO1xyXG4gICAgaWYgKCEhIXRva2VuKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihcIk5vIHVzZXIgbG9nZ2VkIGluXCIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY29ubmVjdGlvbjogSHViQ29ubmVjdGlvbiA9IG5ldyBIdWJDb25uZWN0aW9uQnVpbGRlcigpXHJcbiAgICAgIC53aXRoVXJsKHRoaXMuYXBwQ29uZmlnU2VydmljZS5CQVNFX1VSTCArICcvaHVicy9zaWduYWwnLCB7XHJcbiAgICAgICAgLy8gLndpdGhVcmwoJ2h0dHBzOi8vdGFubGVpY2EuY29tL2h1YnMvc2lnbmFsJywge1xyXG4gICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgIFwiQWNjZXNzLUNvbnRyb2wtQWxsb3ctQ3JlZGVudGlhbHNcIjogdHJ1ZSxcclxuICAgICAgICAgIFwiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luXCI6IHRydWUsXHJcbiAgICAgICAgfSBhcyBhbnksXHJcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiBmYWxzZSxcclxuICAgICAgICBhY2Nlc3NUb2tlbkZhY3Rvcnk6ICgpID0+IHRva2VuLFxyXG4gICAgICB9KVxyXG4gICAgICAuY29uZmlndXJlTG9nZ2luZyhMb2dMZXZlbC5Ob25lKVxyXG4gICAgICAuYnVpbGQoKVxyXG5cclxuICAgIGNvbm5lY3Rpb24ub24oXCJSZWNlaXZlU3lzdGVtTWVzc2FnZVwiLCBtZXNzYWdlID0+IHtcclxuICAgICAgY29uc29sZS5sb2coXCJTeXN0ZW0gbWVzc2FnZTogXCIsIG1lc3NhZ2UpXHJcbiAgICB9KVxyXG5cclxuICAgIGNvbm5lY3Rpb24ub24oXCJSZWNlaXZlTWVzc2FnZVwiLCAoYWN0aXZpdHk6IElIdWJDb25uZWN0aW9uQWN0aXZpdHkpID0+IHtcclxuXHJcbiAgICAgIGNvbnNvbGUubG9nKFwiTU9OSVRPUklORzogXCIsIGFjdGl2aXR5KTtcclxuICAgICAgaWYgKHRoaXMuYXBwQ29uZmlnU2VydmljZS5ERUJVR19FTkFCTEVEKSBkZWJ1Z2dlclxyXG5cclxuICAgICAgc3dpdGNoIChhY3Rpdml0eS5zaWduYWxUeXBlKSB7XHJcbiAgICAgICAgY2FzZSBFbnVtU2lnbmFsUlR5cGUuVEFTS19QUk9HUkVTUzpcclxuICAgICAgICAgIHRoaXMubG9uZ1Rhc2tTZXJ2aWNlLm1lc3NhZ2UkLm5leHQoYWN0aXZpdHkubWVzc2FnZSlcclxuICAgICAgICAgIHRoaXMubG9uZ1Rhc2tTZXJ2aWNlLmRhdGEkLm5leHQoKGFjdGl2aXR5IGFzIGFueSkuZGF0YSlcclxuICAgICAgICAgIHRoaXMubG9uZ1Rhc2tTZXJ2aWNlLmVycm9yJC5uZXh0KChhY3Rpdml0eSBhcyBhbnkpLmVycm9yKVxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBFbnVtU2lnbmFsUlR5cGUuTE9HX0lOOlxyXG4gICAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB0aGlzLmFsZXJ0U2VydmljZS5pbmZvKGFjdGl2aXR5Lm1lc3NhZ2UsIGFsZXJ0T3B0aW9ucylcclxuXHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIChcclxuICAgICAgICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0hPV19MT0dJTl9OT1RJRklDQVRJT04gfHxcclxuICAgICAgICAgICAgICBbJ1RBTk5WJywgJ1JPT1QnXS5pbmNsdWRlcygodGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8udXNlck5hbWUgfHwgJ1VOS05PV04nKS50b1VwcGVyQ2FzZSgpKVxyXG4gICAgICAgICAgICApICYmIGFjdGl2aXR5LnNpZCAhPT0gdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaWRcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmFwcFNlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbihcIkluZm9ybWF0aW9uXCIsIHtcclxuICAgICAgICAgICAgICBib2R5OiBhY3Rpdml0eS5tZXNzYWdlLFxyXG4gICAgICAgICAgICAgIGljb246IGFjdGl2aXR5LmF2YXRhcixcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIEVudW1TaWduYWxSVHlwZS5FTlRJVFlfQ0hBTkdFRDpcclxuICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkgdGhpcy5hbGVydFNlcnZpY2UuaW5mbyhhY3Rpdml0eS5tZXNzYWdlLCBhbGVydE9wdGlvbnMpXHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIEVudW1TaWduYWxSVHlwZS5BQ1RJVklUWTpcclxuICAgICAgICAgIGNvbnN0IHsgbG9naW5UaW1lIH0gPSBhY3Rpdml0eTtcclxuICAgICAgICAgIGNvbnN0IHsgc2lkLCB1c2VybmFtZSwgcGF0aG5hbWUsIGF2YXRhciwgaHViQ29ubmVjdGlvbklkLCBhY2Nlc3NUaW1lLCB1c2VyQWN0aXZpdHkgfSA9IGFjdGl2aXR5LmRhdGE7XHJcblxyXG4gICAgICAgICAgY29uc3QgY3VycmVudFNpZCA9IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmZ1bGxOYW1lO1xyXG5cclxuICAgICAgICAgIGNvbnNvbGUuZ3JvdXAoXCJBQ1RJVklUWVwiKVxyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJpc0Rldk1vZGUoKVwiLCBpc0Rldk1vZGUoKSk7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIkluY29taW5nIGxvZ2luVGltZVwiLCBsb2dpblRpbWUpO1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJZb3VyIGxvZ2luVGltZVwiLCB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5sb2dpblRpbWUhKTtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiSW5jb21pbmcgc2lkXCIsIHNpZCk7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIllvdXIgc2lkXCIsIGN1cnJlbnRTaWQpO1xyXG5cclxuICAgICAgICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTtcclxuXHJcbiAgICAgICAgICBpZiAobG9naW5UaW1lIDwgdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8ubG9naW5UaW1lISAmJiBzaWQgPT09IGN1cnJlbnRTaWQgLyomJiBpc0Rldk1vZGUoKSovKSB7XHJcblxyXG4gICAgICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuXHJcbiAgICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICAgICAgICBgVHJvbmcgbcO0aSB0csaw4budbmcgRGV2LCB0w6BpIGtob+G6o24gKCR7c2lkfSkgxJHDoyDEkcaw4bujYyBkw7luZyB0csaw4bubYyBy4buTaSBuaMOpLiBYaW4gxJHEg25nIG5o4bqtcCBi4bqxbmcgdMOgaSBraG/huqNuIGtow6FjYCxcclxuICAgICAgICAgICAgICAgIHsgLi4uYWxlcnRPcHRpb25zLCBhdXRvQ2xvc2U6IGZhbHNlIH1cclxuICAgICAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS51c2VyTG9nb3V0KCkuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgICAgICBpZiAoeC5vayAmJiB4LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5wb3N0TG9nb3V0KCk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0sIDMwMDApXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgY29uc3QgbWVyZ2VkID0gdGhpcy51c2VyQWN0aXZpdHlTZXJ2aWNlLm1lcmdlQWN0aXZpdGllcyh1c2VyQWN0aXZpdHkpXHJcbiAgICAgICAgICBjb25zdCBmb3VuZCA9IG1lcmdlZC5maWx0ZXIoaXRlbSA9PiBpdGVtLnNpZCA9PT0gc2lkKVxyXG4gICAgICAgICAgaWYgKGZvdW5kLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdTdGF0ZTogSVVzZXJBY3Rpdml0eURhdGEgPSB7IHNpZCwgdXNlcm5hbWUsIHBhdGhuYW1lLCBhdmF0YXIsIGh1YkNvbm5lY3Rpb25JZCwgYWNjZXNzVGltZSB9XHJcbiAgICAgICAgICAgIG1lcmdlZC5maWx0ZXIoaXRlbSA9PiBpdGVtLnNpZCAhPT0gc2lkKS5wdXNoKG5ld1N0YXRlKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbWVyZ2VkLnB1c2goeyBzaWQsIHVzZXJuYW1lLCBwYXRobmFtZSwgYXZhdGFyLCBodWJDb25uZWN0aW9uSWQsIGFjY2Vzc1RpbWUgfSlcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLnVzZXJBY3Rpdml0eVNlcnZpY2UudXNlckFjdGl2aXR5JC5uZXh0KG1lcmdlZCk7XHJcblxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBFbnVtU2lnbmFsUlR5cGUuQUNUSVZJVFlfSElTVE9SWV9SRVNFVDpcclxuICAgICAgICAgIHRoaXMudXNlckFjdGl2aXR5U2VydmljZS51c2VyQWN0aXZpdHkkLm5leHQoW10pO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG5cclxuXHJcbiAgICB9KVxyXG5cclxuICAgIGNvbnN0IHN0YXJ0ID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgICBsZXQgaWRcclxuICAgICAgdHJ5IHtcclxuICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLm1lc3NhZ2UgPSBcIkh1YkNvbm5lY3Rpb24gY3JlYXRpbmcgcmVxdWVzdGVkLlwiXHJcbiAgICAgICAgYXdhaXQgY29ubmVjdGlvbi5zdGFydCgpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwi8J+fovCfn6Lwn5+iIFNpZ25hbFIgQ29ubmVjdGVkLlwiKTtcclxuICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLm1lc3NhZ2UgPSBcIkh1YkNvbm5lY3Rpb24gY3JlYXRlZC5cIjtcclxuICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLmh1YkNvbm5lY3Rpb24kLm5leHQoY29ubmVjdGlvbik7XHJcblxyXG4gICAgICAgIGlmIChpZCkgY2xlYXJUaW1lb3V0KGlkKVxyXG5cclxuICAgICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcclxuICAgICAgICBjb25zb2xlLmdyb3VwKGDwn5S08J+UtPCflLQgSFVCIENPTk5FQ1RJT04gUFJPQkxFTSA9PT09PT09PT09PT09PT09PT09PWApXHJcbiAgICAgICAgdGhpcy5odWJDb25uZWN0aW9uU2VydmljZS5tZXNzYWdlID0gZXJyO1xyXG4gICAgICAgIGNvbnNvbGUud2FybihcImh1YkNvbm5lY3Rpb24gc3RhcnQoKSBlcnJvcjogXCIsIGVycilcclxuXHJcbiAgICAgICAgaWYgKHR5cGVvZiBlcnIgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICBpZiAoZXJyLmluZGV4T2YoYFN0YXR1cyBjb2RlICc0MDEnYCkgPj0gMCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXCJUaGUgdG9rZW4gZXhwaXJlZFwiKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWQgPSBzZXRUaW1lb3V0KHN0YXJ0LCA1MDAwKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZCA9IHNldFRpbWVvdXQoc3RhcnQsIDUwMDApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUuZ3JvdXBFbmQoKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29ubmVjdGlvbi5vbmNsb3NlKGFzeW5jICgpID0+IHtcclxuICAgICAgYXdhaXQgc3RhcnQoKTtcclxuICAgIH0pXHJcblxyXG4gICAgLy8gU3RhcnQgdGhlIGNvbm5lY3Rpb24uXHJcbiAgICBzdGFydCgpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9zZXJ2aWNlcy9zb2NrZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd0RCxPQUFPLEVBQWlCLG9CQUFvQixFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBTW5GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7QUFPMUQsTUFBTSxPQUFPLGFBQWE7SUFFeEIsWUFDVSxXQUF3QixFQUN4QixtQkFBd0MsRUFDeEMsb0JBQTBDLEVBQzFDLGdCQUFrQyxFQUNsQyxZQUEwQixFQUMxQixNQUFjLEVBQ2QsZUFBZ0MsRUFDaEMsVUFBc0I7UUFQdEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQzVCLENBQUM7SUFFTCxtQkFBbUI7UUFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUNsRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRTtZQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FB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NUIsTUFBTSxLQUFLLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQTtRQUVGLHdCQUF3QjtRQUN4QixLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7OEdBaEtVLGFBQWE7a0hBQWIsYUFBYSxjQUZaLE1BQU07OzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIdWJDb25uZWN0aW9uU2VydmljZSB9IGZyb20gJy4vaHViLWNvbm5lY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEh1YkNvbm5lY3Rpb24sIEh1YkNvbm5lY3Rpb25CdWlsZGVyLCBMb2dMZXZlbCB9IGZyb20gJ0BtaWNyb3NvZnQvc2lnbmFscic7XHJcbmltcG9ydCB7IElVc2VyQWN0aXZpdHlEYXRhLCBVc2VyQWN0aXZpdHlTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWFjdGl2aXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJSHViQ29ubmVjdGlvbkFjdGl2aXR5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9JSHViQ29ubmVjdGlvbkFjdGl2aXR5JztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vbGlicmFyaWVzL2FsZXJ0L2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb25nVGFza1NlcnZpY2UgfSBmcm9tICcuLi9saWJyYXJpZXMvc2VydmljZXMvbG9uZy10YXNrLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBhbGVydE9wdGlvbnMgfSBmcm9tICcuLi9jb25zdGFudHMvYWxlcnRPcHRpb25zJztcclxuaW1wb3J0IHsgRW51bVNpZ25hbFJUeXBlIH0gZnJvbSAnLi4vZW51bS9FbnVtU2lnbmFsUlR5cGUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBcHBTZXJ2aWNlIH0gZnJvbSAnLi9hcHAuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTb2NrZXRTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgdXNlckFjdGl2aXR5U2VydmljZTogVXNlckFjdGl2aXR5U2VydmljZSxcclxuICAgIHByaXZhdGUgaHViQ29ubmVjdGlvblNlcnZpY2U6IEh1YkNvbm5lY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGxvbmdUYXNrU2VydmljZTogTG9uZ1Rhc2tTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlLFxyXG4gICkgeyB9XHJcblxyXG4gIGNyZWF0ZUh1YkNvbm5lY3Rpb24oKSB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LnRva2VuO1xyXG4gICAgaWYgKCEhIXRva2VuKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihcIk5vIHVzZXIgbG9nZ2VkIGluXCIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY29ubmVjdGlvbjogSHViQ29ubmVjdGlvbiA9IG5ldyBIdWJDb25uZWN0aW9uQnVpbGRlcigpXHJcbiAgICAgIC53aXRoVXJsKHRoaXMuYXBwQ29uZmlnU2VydmljZS5CQVNFX1VSTCArICcvaHVicy9zaWduYWwnLCB7XHJcbiAgICAgICAgLy8gLndpdGhVcmwoJ2h0dHBzOi8vdGFubGVpY2EuY29tL2h1YnMvc2lnbmFsJywge1xyXG4gICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgIFwiQWNjZXNzLUNvbnRyb2wtQWxsb3ctQ3JlZGVudGlhbHNcIjogdHJ1ZSxcclxuICAgICAgICAgIFwiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luXCI6IHRydWUsXHJcbiAgICAgICAgfSBhcyBhbnksXHJcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiBmYWxzZSxcclxuICAgICAgICBhY2Nlc3NUb2tlbkZhY3Rvcnk6ICgpID0+IHRva2VuLFxyXG4gICAgICB9KVxyXG4gICAgICAuY29uZmlndXJlTG9nZ2luZyhMb2dMZXZlbC5Ob25lKVxyXG4gICAgICAuYnVpbGQoKVxyXG5cclxuICAgIGNvbm5lY3Rpb24ub24oXCJSZWNlaXZlU3lzdGVtTWVzc2FnZVwiLCBtZXNzYWdlID0+IHtcclxuICAgICAgY29uc29sZS5sb2coXCJTeXN0ZW0gbWVzc2FnZTogXCIsIG1lc3NhZ2UpXHJcbiAgICB9KVxyXG5cclxuICAgIGNvbm5lY3Rpb24ub24oXCJSZWNlaXZlTWVzc2FnZVwiLCAoYWN0aXZpdHk6IElIdWJDb25uZWN0aW9uQWN0aXZpdHkpID0+IHtcclxuXHJcbiAgICAgIGNvbnNvbGUubG9nKFwiTU9OSVRPUklORzogXCIsIGFjdGl2aXR5KTtcclxuICAgICAgaWYgKHRoaXMuYXBwQ29uZmlnU2VydmljZS5ERUJVR19FTkFCTEVEKSBkZWJ1Z2dlclxyXG5cclxuICAgICAgc3dpdGNoIChhY3Rpdml0eS5zaWduYWxUeXBlKSB7XHJcbiAgICAgICAgY2FzZSBFbnVtU2lnbmFsUlR5cGUuVEFTS19QUk9HUkVTUzpcclxuICAgICAgICAgIHRoaXMubG9uZ1Rhc2tTZXJ2aWNlLm1lc3NhZ2UkLm5leHQoYWN0aXZpdHkubWVzc2FnZSlcclxuICAgICAgICAgIHRoaXMubG9uZ1Rhc2tTZXJ2aWNlLmRhdGEkLm5leHQoKGFjdGl2aXR5IGFzIGFueSkuZGF0YSlcclxuICAgICAgICAgIHRoaXMubG9uZ1Rhc2tTZXJ2aWNlLmVycm9yJC5uZXh0KChhY3Rpdml0eSBhcyBhbnkpLmVycm9yKVxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBFbnVtU2lnbmFsUlR5cGUuTE9HX0lOOlxyXG4gICAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB0aGlzLmFsZXJ0U2VydmljZS5pbmZvKGFjdGl2aXR5Lm1lc3NhZ2UsIGFsZXJ0T3B0aW9ucylcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJTb21lb25lIGhhcyBsb2dnZWQgaW4uLi5cIik7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIChcclxuICAgICAgICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0hPV19MT0dJTl9OT1RJRklDQVRJT04gfHxcclxuICAgICAgICAgICAgICBbJ1RBTk5WJywgJ1JPT1QnXS5pbmNsdWRlcygodGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8udXNlck5hbWUgfHwgJ1VOS05PV04nKS50b1VwcGVyQ2FzZSgpKVxyXG4gICAgICAgICAgICApICYmIGFjdGl2aXR5LnNpZCAhPT0gdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaWRcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmFwcFNlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbihcIkluZm9ybWF0aW9uXCIsIHtcclxuICAgICAgICAgICAgICBib2R5OiBhY3Rpdml0eS5tZXNzYWdlLFxyXG4gICAgICAgICAgICAgIGljb246IGAke3RoaXMuYXBwQ29uZmlnU2VydmljZS5CQVNFX1VSTH0vJHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU1RBVElDX0ZPTERFUn0vJHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQVZBVEFSX0ZPTERFUn0vJHthY3Rpdml0eS5hdmF0YXJ9YCxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIEVudW1TaWduYWxSVHlwZS5FTlRJVFlfQ0hBTkdFRDpcclxuICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkgdGhpcy5hbGVydFNlcnZpY2UuaW5mbyhhY3Rpdml0eS5tZXNzYWdlLCBhbGVydE9wdGlvbnMpXHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIEVudW1TaWduYWxSVHlwZS5BQ1RJVklUWTpcclxuICAgICAgICAgIGNvbnN0IHsgbG9naW5UaW1lIH0gPSBhY3Rpdml0eTtcclxuICAgICAgICAgIGNvbnN0IHsgc2lkLCB1c2VybmFtZSwgcGF0aG5hbWUsIGF2YXRhciwgaHViQ29ubmVjdGlvbklkLCBhY2Nlc3NUaW1lLCB1c2VyQWN0aXZpdHkgfSA9IGFjdGl2aXR5LmRhdGE7XHJcblxyXG4gICAgICAgICAgY29uc3QgY3VycmVudFNpZCA9IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmZ1bGxOYW1lO1xyXG5cclxuICAgICAgICAgIGNvbnNvbGUuZ3JvdXAoXCJBQ1RJVklUWVwiKVxyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJpc0Rldk1vZGUoKVwiLCBpc0Rldk1vZGUoKSk7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIkluY29taW5nIGxvZ2luVGltZVwiLCBsb2dpblRpbWUpO1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJZb3VyIGxvZ2luVGltZVwiLCB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5sb2dpblRpbWUhKTtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiSW5jb21pbmcgc2lkXCIsIHNpZCk7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIllvdXIgc2lkXCIsIGN1cnJlbnRTaWQpO1xyXG5cclxuICAgICAgICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTtcclxuXHJcbiAgICAgICAgICBpZiAobG9naW5UaW1lIDwgdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8ubG9naW5UaW1lISAmJiBzaWQgPT09IGN1cnJlbnRTaWQgLyomJiBpc0Rldk1vZGUoKSovKSB7XHJcblxyXG4gICAgICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuXHJcbiAgICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICAgICAgICBgVHJvbmcgbcO0aSB0csaw4budbmcgRGV2LCB0w6BpIGtob+G6o24gKCR7c2lkfSkgxJHDoyDEkcaw4bujYyBkw7luZyB0csaw4bubYyBy4buTaSBuaMOpLiBYaW4gxJHEg25nIG5o4bqtcCBi4bqxbmcgdMOgaSBraG/huqNuIGtow6FjYCxcclxuICAgICAgICAgICAgICAgIHsgLi4uYWxlcnRPcHRpb25zLCBhdXRvQ2xvc2U6IGZhbHNlIH1cclxuICAgICAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS51c2VyTG9nb3V0KCkuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgICAgICBpZiAoeC5vayAmJiB4LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5wb3N0TG9nb3V0KCk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0sIDMwMDApXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgY29uc3QgbWVyZ2VkID0gdGhpcy51c2VyQWN0aXZpdHlTZXJ2aWNlLm1lcmdlQWN0aXZpdGllcyh1c2VyQWN0aXZpdHkpXHJcbiAgICAgICAgICBjb25zdCBmb3VuZCA9IG1lcmdlZC5maWx0ZXIoaXRlbSA9PiBpdGVtLnNpZCA9PT0gc2lkKVxyXG4gICAgICAgICAgaWYgKGZvdW5kLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdTdGF0ZTogSVVzZXJBY3Rpdml0eURhdGEgPSB7IHNpZCwgdXNlcm5hbWUsIHBhdGhuYW1lLCBhdmF0YXIsIGh1YkNvbm5lY3Rpb25JZCwgYWNjZXNzVGltZSB9XHJcbiAgICAgICAgICAgIG1lcmdlZC5maWx0ZXIoaXRlbSA9PiBpdGVtLnNpZCAhPT0gc2lkKS5wdXNoKG5ld1N0YXRlKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbWVyZ2VkLnB1c2goeyBzaWQsIHVzZXJuYW1lLCBwYXRobmFtZSwgYXZhdGFyLCBodWJDb25uZWN0aW9uSWQsIGFjY2Vzc1RpbWUgfSlcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLnVzZXJBY3Rpdml0eVNlcnZpY2UudXNlckFjdGl2aXR5JC5uZXh0KG1lcmdlZCk7XHJcblxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBFbnVtU2lnbmFsUlR5cGUuQUNUSVZJVFlfSElTVE9SWV9SRVNFVDpcclxuICAgICAgICAgIHRoaXMudXNlckFjdGl2aXR5U2VydmljZS51c2VyQWN0aXZpdHkkLm5leHQoW10pO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG5cclxuXHJcbiAgICB9KVxyXG5cclxuICAgIGNvbnN0IHN0YXJ0ID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgICBsZXQgaWRcclxuICAgICAgdHJ5IHtcclxuICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLm1lc3NhZ2UgPSBcIkh1YkNvbm5lY3Rpb24gY3JlYXRpbmcgcmVxdWVzdGVkLlwiXHJcbiAgICAgICAgYXdhaXQgY29ubmVjdGlvbi5zdGFydCgpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwi8J+fovCfn6Lwn5+iIFNpZ25hbFIgQ29ubmVjdGVkLlwiKTtcclxuICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLm1lc3NhZ2UgPSBcIkh1YkNvbm5lY3Rpb24gY3JlYXRlZC5cIjtcclxuICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLmh1YkNvbm5lY3Rpb24kLm5leHQoY29ubmVjdGlvbik7XHJcblxyXG4gICAgICAgIGlmIChpZCkgY2xlYXJUaW1lb3V0KGlkKVxyXG5cclxuICAgICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcclxuICAgICAgICBjb25zb2xlLmdyb3VwKGDwn5S08J+UtPCflLQgSFVCIENPTk5FQ1RJT04gUFJPQkxFTSA9PT09PT09PT09PT09PT09PT09PWApXHJcbiAgICAgICAgdGhpcy5odWJDb25uZWN0aW9uU2VydmljZS5tZXNzYWdlID0gZXJyO1xyXG4gICAgICAgIGNvbnNvbGUud2FybihcImh1YkNvbm5lY3Rpb24gc3RhcnQoKSBlcnJvcjogXCIsIGVycilcclxuXHJcbiAgICAgICAgaWYgKHR5cGVvZiBlcnIgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICBpZiAoZXJyLmluZGV4T2YoYFN0YXR1cyBjb2RlICc0MDEnYCkgPj0gMCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXCJUaGUgdG9rZW4gZXhwaXJlZFwiKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWQgPSBzZXRUaW1lb3V0KHN0YXJ0LCA1MDAwKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZCA9IHNldFRpbWVvdXQoc3RhcnQsIDUwMDApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUuZ3JvdXBFbmQoKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29ubmVjdGlvbi5vbmNsb3NlKGFzeW5jICgpID0+IHtcclxuICAgICAgYXdhaXQgc3RhcnQoKTtcclxuICAgIH0pXHJcblxyXG4gICAgLy8gU3RhcnQgdGhlIGNvbm5lY3Rpb24uXHJcbiAgICBzdGFydCgpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -2550,13 +2550,16 @@ class AppService {
2550
2550
  }
2551
2551
  }
2552
2552
  showNotification(title, options) {
2553
+ console.log("showNotification...");
2553
2554
  if ('Notification' in window) {
2554
2555
  // Check if notification permissions are granted
2555
2556
  if (Notification.permission === 'granted') {
2557
+ console.log("permission === 'granted'");
2556
2558
  // Create and display the notification
2557
2559
  new Notification(title, options);
2558
2560
  }
2559
2561
  else if (Notification.permission !== 'denied') {
2562
+ console.log("permission !== 'denied'");
2560
2563
  // Request permission from the user
2561
2564
  Notification.requestPermission().then(permission => {
2562
2565
  if (permission === 'granted') {
@@ -4398,11 +4401,12 @@ class SocketService {
4398
4401
  case EnumSignalRType.LOG_IN:
4399
4402
  if (isDevMode())
4400
4403
  this.alertService.info(activity.message, alertOptions);
4404
+ console.log("Someone has logged in...");
4401
4405
  if ((this.appConfigService.SHOW_LOGIN_NOTIFICATION ||
4402
4406
  ['TANNV', 'ROOT'].includes((this.authService.data$.value?.userName || 'UNKNOWN').toUpperCase())) && activity.sid !== this.authService.data$.value?.id) {
4403
4407
  this.appService.showNotification("Information", {
4404
4408
  body: activity.message,
4405
- icon: activity.avatar,
4409
+ icon: `${this.appConfigService.BASE_URL}/${this.appConfigService.STATIC_FOLDER}/${this.appConfigService.AVATAR_FOLDER}/${activity.avatar}`,
4406
4410
  });
4407
4411
  }
4408
4412
  break;