@sumaris-net/ngx-components 1.21.0-beta24 → 1.21.0-beta27

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.
@@ -19,17 +19,21 @@ export class DateDiffDurationPipe {
19
19
  return '';
20
20
  const startDate = this.dateAdapter.parse(value.startValue, DATE_ISO_PATTERN);
21
21
  const endDate = this.dateAdapter.parse(value.endValue, DATE_ISO_PATTERN);
22
- return this.format(startDate, endDate);
22
+ return this.format(startDate, endDate, args);
23
23
  }
24
- format(startDate, endDate) {
24
+ format(startDate, endDate, args) {
25
25
  const duration = moment.duration(endDate.diff(startDate));
26
26
  if (duration.asMinutes() < 0)
27
27
  return '';
28
+ const withSeconds = args === null || args === void 0 ? void 0 : args.seconds;
28
29
  const timeDuration = moment(0)
29
30
  .hour(duration.hours())
30
31
  .minute(duration.minutes());
32
+ if (withSeconds) {
33
+ timeDuration.second(duration.seconds());
34
+ }
31
35
  const days = Math.floor(duration.asDays());
32
- return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format('HH:mm');
36
+ return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format(withSeconds ? 'HH:mm:ss' : 'HH:mm');
33
37
  }
34
38
  }
35
39
  DateDiffDurationPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateDiffDurationPipe_Factory() { return new DateDiffDurationPipe(i0.ɵɵinject(i1.DateAdapter), i0.ɵɵinject(i2.TranslateService)); }, token: DateDiffDurationPipe, providedIn: "root" });
@@ -43,4 +47,4 @@ DateDiffDurationPipe.ctorParameters = () => [
43
47
  { type: DateAdapter },
44
48
  { type: TranslateService }
45
49
  ];
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1kaWZmLWR1cmF0aW9uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9kYXRlLWRpZmYtZHVyYXRpb24ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUM5QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEtBQUssY0FBYyxNQUFNLFFBQVEsQ0FBQzs7OztBQUN6QyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUM7QUFNOUIsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUNVLFdBQWdDLEVBQ2hDLFNBQTJCO1FBRDNCLGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUVuQyxJQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRCxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWlFLEVBQUUsSUFBVTtRQUNyRixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFcEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUV6RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBaUIsRUFBRSxPQUFlO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzFELElBQUksUUFBUSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUV4QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDdEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRTlCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDM0MsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakcsQ0FBQzs7OztZQW5DRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtZQUNBLFVBQVUsU0FBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OztZQVR4QixXQUFXO1lBRVgsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TW9tZW50fSBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtEYXRlQWRhcHRlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0RBVEVfSVNPX1BBVFRFUk59IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0ICogYXMgbW9tZW50SW1wb3J0ZWQgZnJvbSAnbW9tZW50JztcbmNvbnN0IG1vbWVudCA9IG1vbWVudEltcG9ydGVkO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdkYXRlRGlmZkR1cmF0aW9uJ1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIERhdGVEaWZmRHVyYXRpb25QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgcHJvdGVjdGVkIGRheVVuaXQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxNb21lbnQ+LFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG5cbiAgICB0aGlzLmRheVVuaXQgPSB0cmFuc2xhdGUuaW5zdGFudCgnQ09NTU9OLkRBWV9VTklUJyk7XG4gICAgdHJhbnNsYXRlLmdldCgnQ09NTU9OLkRBWV9VTklUJykuc3Vic2NyaWJlKGRheVVuaXQgPT4gdGhpcy5kYXlVbml0ID0gZGF5VW5pdCk7XG4gIH1cblxuICB0cmFuc2Zvcm0odmFsdWU6IHsgc3RhcnRWYWx1ZTogc3RyaW5nIHwgTW9tZW50OyBlbmRWYWx1ZTogc3RyaW5nIHwgTW9tZW50IH0sIGFyZ3M/OiBhbnkpOiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4ge1xuICAgIGlmICghdmFsdWUuc3RhcnRWYWx1ZSB8fCAhdmFsdWUuZW5kVmFsdWUpIHJldHVybiAnJztcblxuICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIucGFyc2UodmFsdWUuc3RhcnRWYWx1ZSwgREFURV9JU09fUEFUVEVSTik7XG4gICAgY29uc3QgZW5kRGF0ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIucGFyc2UodmFsdWUuZW5kVmFsdWUsIERBVEVfSVNPX1BBVFRFUk4pO1xuXG4gICAgcmV0dXJuIHRoaXMuZm9ybWF0KHN0YXJ0RGF0ZSwgZW5kRGF0ZSk7XG4gIH1cblxuICBmb3JtYXQoc3RhcnREYXRlOiBNb21lbnQsIGVuZERhdGU6IE1vbWVudCk6IHN0cmluZyB7XG4gICAgY29uc3QgZHVyYXRpb24gPSBtb21lbnQuZHVyYXRpb24oZW5kRGF0ZS5kaWZmKHN0YXJ0RGF0ZSkpO1xuICAgIGlmIChkdXJhdGlvbi5hc01pbnV0ZXMoKSA8IDApIHJldHVybiAnJztcblxuICAgIGNvbnN0IHRpbWVEdXJhdGlvbiA9IG1vbWVudCgwKVxuICAgICAgLmhvdXIoZHVyYXRpb24uaG91cnMoKSlcbiAgICAgIC5taW51dGUoZHVyYXRpb24ubWludXRlcygpKTtcblxuICAgIGNvbnN0IGRheXMgPSBNYXRoLmZsb29yKGR1cmF0aW9uLmFzRGF5cygpKTtcbiAgICByZXR1cm4gKGRheXMgPiAwID8gZGF5cy50b1N0cmluZygpICsgKHRoaXMuZGF5VW5pdCArICcgJykgOiAnJykgKyB0aW1lRHVyYXRpb24uZm9ybWF0KCdISDptbScpO1xuICB9XG59XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1kaWZmLWR1cmF0aW9uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9kYXRlLWRpZmYtZHVyYXRpb24ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUM5QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEtBQUssY0FBYyxNQUFNLFFBQVEsQ0FBQzs7OztBQUN6QyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUM7QUFNOUIsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUNVLFdBQWdDLEVBQ2hDLFNBQTJCO1FBRDNCLGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUVuQyxJQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRCxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWlFLEVBQUUsSUFBNEI7UUFDdkcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBRXBELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFFekUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxTQUFpQixFQUFFLE9BQWUsRUFBRSxJQUEyQjtRQUNwRSxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUMxRCxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDeEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLE9BQU8sQ0FBQztRQUVsQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDdEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLElBQUksV0FBVyxFQUFFO1lBQ2YsWUFBWSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUN6QztRQUVELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDM0MsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVILENBQUM7Ozs7WUF2Q0YsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxrQkFBa0I7YUFDekI7WUFDQSxVQUFVLFNBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOzs7WUFUeEIsV0FBVztZQUVYLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01vbWVudH0gZnJvbSAnbW9tZW50JztcbmltcG9ydCB7RGF0ZUFkYXB0ZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtEQVRFX0lTT19QQVRURVJOfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudCc7XG5jb25zdCBtb21lbnQgPSBtb21lbnRJbXBvcnRlZDtcblxuQFBpcGUoe1xuICBuYW1lOiAnZGF0ZURpZmZEdXJhdGlvbidcbn0pXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBEYXRlRGlmZkR1cmF0aW9uUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHByb3RlY3RlZCBkYXlVbml0OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8TW9tZW50PixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xuXG4gICAgdGhpcy5kYXlVbml0ID0gdHJhbnNsYXRlLmluc3RhbnQoJ0NPTU1PTi5EQVlfVU5JVCcpO1xuICAgIHRyYW5zbGF0ZS5nZXQoJ0NPTU1PTi5EQVlfVU5JVCcpLnN1YnNjcmliZShkYXlVbml0ID0+IHRoaXMuZGF5VW5pdCA9IGRheVVuaXQpO1xuICB9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiB7IHN0YXJ0VmFsdWU6IHN0cmluZyB8IE1vbWVudDsgZW5kVmFsdWU6IHN0cmluZyB8IE1vbWVudCB9LCBhcmdzPzogeyBzZWNvbmRzPzogYm9vbGVhbiB9KTogc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBpZiAoIXZhbHVlLnN0YXJ0VmFsdWUgfHwgIXZhbHVlLmVuZFZhbHVlKSByZXR1cm4gJyc7XG5cbiAgICBjb25zdCBzdGFydERhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLnBhcnNlKHZhbHVlLnN0YXJ0VmFsdWUsIERBVEVfSVNPX1BBVFRFUk4pO1xuICAgIGNvbnN0IGVuZERhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLnBhcnNlKHZhbHVlLmVuZFZhbHVlLCBEQVRFX0lTT19QQVRURVJOKTtcblxuICAgIHJldHVybiB0aGlzLmZvcm1hdChzdGFydERhdGUsIGVuZERhdGUsIGFyZ3MpO1xuICB9XG5cbiAgZm9ybWF0KHN0YXJ0RGF0ZTogTW9tZW50LCBlbmREYXRlOiBNb21lbnQsIGFyZ3M6IHsgc2Vjb25kcz86IGJvb2xlYW4gfSk6IHN0cmluZyB7XG4gICAgY29uc3QgZHVyYXRpb24gPSBtb21lbnQuZHVyYXRpb24oZW5kRGF0ZS5kaWZmKHN0YXJ0RGF0ZSkpO1xuICAgIGlmIChkdXJhdGlvbi5hc01pbnV0ZXMoKSA8IDApIHJldHVybiAnJztcbiAgICBjb25zdCB3aXRoU2Vjb25kcyA9IGFyZ3M/LnNlY29uZHM7XG5cbiAgICBjb25zdCB0aW1lRHVyYXRpb24gPSBtb21lbnQoMClcbiAgICAgIC5ob3VyKGR1cmF0aW9uLmhvdXJzKCkpXG4gICAgICAubWludXRlKGR1cmF0aW9uLm1pbnV0ZXMoKSk7XG4gICAgaWYgKHdpdGhTZWNvbmRzKSB7XG4gICAgICB0aW1lRHVyYXRpb24uc2Vjb25kKGR1cmF0aW9uLnNlY29uZHMoKSk7XG4gICAgfVxuXG4gICAgY29uc3QgZGF5cyA9IE1hdGguZmxvb3IoZHVyYXRpb24uYXNEYXlzKCkpO1xuICAgIHJldHVybiAoZGF5cyA+IDAgPyBkYXlzLnRvU3RyaW5nKCkgKyAodGhpcy5kYXlVbml0ICsgJyAnKSA6ICcnKSArIHRpbWVEdXJhdGlvbi5mb3JtYXQod2l0aFNlY29uZHMgPyAnSEg6bW06c3MnIDogJ0hIOm1tJyk7XG4gIH1cbn1cbiJdfQ==
@@ -59,7 +59,7 @@ export class UserEventNotificationList {
59
59
  UserEventNotificationList.decorators = [
60
60
  { type: Component, args: [{
61
61
  selector: 'app-user-event-notification-list',
62
- template: "\n<ion-list class=\"ion-list-popover\">\n\n <ion-row class=\"ion-list-header column\">\n <ion-col>\n <ion-label>{{titleI18n | translate}}</ion-label>\n </ion-col>\n </ion-row>\n\n <ion-item *ngIf=\"!(userEvents | async)?.length\">\n {{'SOCIAL.USER_EVENT.NOTIFICATION.EMPTY' | translate}}\n </ion-item>\n <ion-item\n *ngFor=\"let userEvent of userEvents | async\"\n (click)=\"read($event, userEvent)\"\n >\n\n <ion-avatar slot=\"start\">\n\n <img *ngIf=\"userEvent.avatar; else avatarIcon\" src=\"{{ userEvent.avatar }}\">\n\n <ng-template #avatarIcon>\n <app-icon\n *ngIf=\"userEvent.avatarIcon\"\n [ref]=\"userEvent.avatarIcon\"\n height=\"40\"\n width=\"40\"\n ></app-icon>\n </ng-template>\n\n </ion-avatar>\n\n <ion-grid class=\"ion-no-margin ion-no-padding\">\n <ion-row>\n <ion-col>\n <p [class.unread]=\"!userEvent.readDate\">\n {{userEvent.message}}\n </p>\n </ion-col>\n </ion-row>\n <ion-row *ngIf=\"userEvent.actions?.length\">\n <ion-col>\n <p>\n <span *ngFor=\"let action of userEvent.actions\">\n <a\n [style.margin-right.px]=\"10\"\n [style.cursor]=\"'pointer'\"\n (click)=\"executeAction(action, userEvent)\"\n >\n <app-icon *ngIf=\"action.iconRef\" slot=\"start\" [ref]=\"action.iconRef\" style=\"vertical-align: middle\"></app-icon>\n {{ action.name }}\n </a>\n </span>\n </p>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <app-icon\n *ngIf=\"userEvent.icon\"\n [ref]=\"userEvent.icon\"\n height=\"16\"\n width=\"16\"\n [style.vertical-align]=\"'sub'\"\n ></app-icon>\n <small>\n <span>{{userEvent.creationDate|dateFromNow}}</span>\n <span [style.color]=\"'gray'\">{{ ' | ' + (userEvent.creationDate|dateFormat:{time:true}) }}</span>\n </small>\n </ion-col>\n </ion-row>\n </ion-grid>\n </ion-item>\n\n <ion-row class=\"ion-list-footer column\">\n <ion-col>\n <a style=\"cursor: pointer\" (click)=\"readAll($event)\">{{'SOCIAL.USER_EVENT.NOTIFICATION.READ_ALL' | translate}}</a>\n </ion-col>\n </ion-row>\n\n</ion-list>\n",
62
+ template: "\n<ion-list class=\"ion-list-popover\">\n\n <ion-row class=\"ion-list-header column\">\n <ion-col>\n <ion-label>{{titleI18n | translate}}</ion-label>\n </ion-col>\n </ion-row>\n\n <ion-item *ngIf=\"!(userEvents | async)?.length\">\n {{'SOCIAL.USER_EVENT.NOTIFICATION.EMPTY' | translate}}\n </ion-item>\n <ion-item\n *ngFor=\"let userEvent of userEvents | async\"\n (click)=\"read($event, userEvent)\"\n >\n\n <ion-avatar slot=\"start\">\n\n <img *ngIf=\"userEvent.avatar; else avatarIcon\" src=\"{{ userEvent.avatar }}\">\n\n <ng-template #avatarIcon>\n <app-icon\n *ngIf=\"userEvent.avatarIcon\"\n [ref]=\"userEvent.avatarIcon\"\n height=\"40\"\n width=\"40\"\n ></app-icon>\n </ng-template>\n\n </ion-avatar>\n\n <ion-grid class=\"ion-no-margin ion-no-padding\">\n <ion-row>\n <ion-col>\n <p [class.unread]=\"!userEvent.readDate\" [innerHTML]=\"userEvent.message\"></p>\n </ion-col>\n </ion-row>\n <ion-row *ngIf=\"userEvent.actions?.length\">\n <ion-col>\n <span *ngFor=\"let action of userEvent.actions\">\n <a\n [style.margin-right.px]=\"10\"\n [style.cursor]=\"'pointer'\"\n (click)=\"executeAction(action, userEvent)\"\n >\n <app-icon *ngIf=\"action.iconRef\" slot=\"start\" [ref]=\"action.iconRef\" style=\"vertical-align: middle\"></app-icon>\n {{ action.name }}\n </a>\n </span>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <app-icon\n *ngIf=\"userEvent.icon\"\n [ref]=\"userEvent.icon\"\n height=\"16\"\n width=\"16\"\n style=\"vertical-align: sub; margin-right: 3px\"\n ></app-icon>\n <small>\n <span>{{userEvent.creationDate|dateFromNow}}</span>\n <span [style.color]=\"'gray'\">{{ ' | ' + (userEvent.creationDate|dateFormat:{time:true}) }}</span>\n </small>\n </ion-col>\n </ion-row>\n </ion-grid>\n </ion-item>\n\n <ion-row class=\"ion-list-footer column\">\n <ion-col>\n <a style=\"cursor: pointer\" (click)=\"readAll($event)\">{{'SOCIAL.USER_EVENT.NOTIFICATION.READ_ALL' | translate}}</a>\n </ion-col>\n </ion-row>\n\n</ion-list>\n",
63
63
  changeDetection: ChangeDetectionStrategy.OnPush,
64
64
  styles: [":host(.popover-viewport){overflow-y:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.unread{font-weight:700}"]
65
65
  },] }
@@ -75,4 +75,4 @@ UserEventNotificationList.propDecorators = {
75
75
  readEvent: [{ type: Output }],
76
76
  readEvents: [{ type: Output }]
77
77
  };
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBZ0IsTUFBTSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4SixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQXFCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFlakYsTUFBTSxPQUFPLHlCQUF5QjtJQVVwQyxZQUNZLEVBQXFCLEVBQ3JCLGlCQUFvQyxFQUNJLGdCQUEyRTtRQUZuSCxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ0kscUJBQWdCLEdBQWhCLGdCQUFnQixDQUEyRDtRQVh0SCxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBS3ZCLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBb0IsU0FBUyxDQUFDLENBQUM7UUFDckQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTzdDLENBQUM7SUFFRCxRQUFRO1FBRU4sd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsZ0JBQWdCO2FBQ2xCLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDO2FBQ2xELFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsNENBQTRDLE1BQU0sQ0FBQyxLQUFLLGNBQWMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ2pDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FDTCxDQUFDO1FBRUYsaUJBQWlCO1FBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQzthQUMzQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLDRDQUE0QyxJQUFJLENBQUMsTUFBTSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqSCxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBYyxFQUFFLFNBQTBCOztRQUM3QyxJQUFJLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxRQUFRO1lBQUUsT0FBTztRQUNoQyxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7SUFDbEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFjOztRQUNwQixNQUFNLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU07WUFBRSxPQUFPO1FBQ3JDLE1BQUEsSUFBSSxDQUFDLFVBQVUsMENBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFO0lBQzFDLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBdUIsRUFBRSxTQUEwQjtRQUMvRCw2QkFBNkI7UUFDN0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVTLFlBQVk7UUFDcEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs7WUF4RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQ0FBa0M7Z0JBQzVDLDA0RUFBa0Q7Z0JBRWxELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBbEJpQyxpQkFBaUI7WUFHMUMsaUJBQWlCOzRDQTZCckIsUUFBUSxZQUFJLE1BQU0sU0FBQyxxQkFBcUI7OztvQkFYMUMsS0FBSzt3QkFDTCxLQUFLO3dCQUNMLE1BQU07eUJBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVXNlckV2ZW50LCBJVXNlckV2ZW50RmlsdGVyLCBVc2VyRXZlbnRBY3Rpb24gfSBmcm9tICcuLi91c2VyLWV2ZW50Lm1vZGVsJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQb3BvdmVyQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IElVc2VyRXZlbnRTZXJ2aWNlLCBVc2VyRXZlbnRTZXJ2aWNlVG9rZW4gfSBmcm9tICcuLi91c2VyLWV2ZW50LnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJFdmVudE5vdGlmaWNhdGlvbkxpc3RPcHRpb25zIHtcbiAgZGVidWc/OiBib29sZWFuO1xuICB0aXRsZUkxOG4/OiBzdHJpbmc7XG4gIHJlYWRFdmVudD86IEV2ZW50RW1pdHRlcjxJVXNlckV2ZW50PGFueT4+O1xuICByZWFkRXZlbnRzPzogRXZlbnRFbWl0dGVyPElVc2VyRXZlbnQ8YW55PltdPjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXVzZXItZXZlbnQtbm90aWZpY2F0aW9uLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJFdmVudE5vdGlmaWNhdGlvbkxpc3QgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgVXNlckV2ZW50Tm90aWZpY2F0aW9uTGlzdE9wdGlvbnMge1xuXG4gIEBJbnB1dCgpIGRlYnVnID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpdGxlSTE4bjogc3RyaW5nO1xuICBAT3V0cHV0KCkgcmVhZEV2ZW50OiBFdmVudEVtaXR0ZXI8SVVzZXJFdmVudDxhbnk+PjtcbiAgQE91dHB1dCgpIHJlYWRFdmVudHM6IEV2ZW50RW1pdHRlcjxJVXNlckV2ZW50PGFueT5bXT47XG5cbiAgdXNlckV2ZW50cyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SVVzZXJFdmVudDxhbnk+W10+KHVuZGVmaW5lZCk7XG4gIHByb3RlY3RlZCBzdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJvdGVjdGVkIHBvcG92ZXJDb250cm9sbGVyOiBQb3BvdmVyQ29udHJvbGxlcixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFVzZXJFdmVudFNlcnZpY2VUb2tlbikgcHVibGljIHVzZXJFdmVudFNlcnZpY2U6IElVc2VyRXZlbnRTZXJ2aWNlPElVc2VyRXZlbnQ8YW55PiwgSVVzZXJFdmVudEZpbHRlcjxhbnk+PixcbiAgKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIC8vIFdhdGNoIGFsbCB1c2VyIGV2ZW50c1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnVzZXJFdmVudFNlcnZpY2VcbiAgICAgICAgLndhdGNoQWxsKDAsIDEwLCAnY3JlYXRpb25EYXRlJywgXCJkZXNjXCIsIHVuZGVmaW5lZClcbiAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmRlYnVnKSBjb25zb2xlLmRlYnVnKGBbdXNlci1ldmVudC1ub3RpZmljYXRpb24tbGlzdF0gcmVjZWl2aW5nICR7cmVzdWx0LnRvdGFsfSB1c2VyIGV2ZW50c2AsIHJlc3VsdC5kYXRhKTtcbiAgICAgICAgICB0aGlzLnVzZXJFdmVudHMubmV4dChyZXN1bHQuZGF0YSlcbiAgICAgICAgICB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KVxuICAgICk7XG5cbiAgICAvLyBMaXN0ZW4gY2hhbmdlc1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnVzZXJFdmVudFNlcnZpY2UubGlzdGVuQ2hhbmdlcyh1bmRlZmluZWQpXG4gICAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuZGVidWcpIGNvbnNvbGUuZGVidWcoYFt1c2VyLWV2ZW50LW5vdGlmaWNhdGlvbi1saXN0XSByZWNlaXZpbmcgJHtkYXRhLmxlbmd0aH0gbmV3IHVzZXIgZXZlbnRzYCwgZGF0YSk7XG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcmVhZChldmVudDogVUlFdmVudCwgdXNlckV2ZW50OiBJVXNlckV2ZW50PGFueT4pIHtcbiAgICBpZiAodXNlckV2ZW50Py5yZWFkRGF0ZSkgcmV0dXJuO1xuICAgIHRoaXMucmVhZEV2ZW50Py5lbWl0KHVzZXJFdmVudCk7XG4gIH1cblxuICByZWFkQWxsKGV2ZW50OiBVSUV2ZW50KSB7XG4gICAgY29uc3QgdW5yZWFkVXNlckV2ZW50cyA9ICh0aGlzLnVzZXJFdmVudHMudmFsdWUgfHwgW10pLmZpbHRlcih2YWx1ZSA9PiAhdmFsdWUucmVhZERhdGUpO1xuICAgIGlmICghdW5yZWFkVXNlckV2ZW50cy5sZW5ndGgpIHJldHVybjtcbiAgICB0aGlzLnJlYWRFdmVudHM/LmVtaXQodW5yZWFkVXNlckV2ZW50cyk7XG4gIH1cblxuICBleGVjdXRlQWN0aW9uKGFjdGlvbjogVXNlckV2ZW50QWN0aW9uLCB1c2VyRXZlbnQ6IElVc2VyRXZlbnQ8YW55Pikge1xuICAgIC8vIEV4ZWN1dGUgdGhlbiBjbG9zZSBwb3BvdmVyXG4gICAgYWN0aW9uLmV4ZWN1dGVBY3Rpb24odXNlckV2ZW50KTtcbiAgICB0aGlzLmRpc21pc3MoKTtcbiAgfVxuXG4gIGRpc21pc3MoKSB7XG4gICAgdGhpcy5wb3BvdmVyQ29udHJvbGxlci5kaXNtaXNzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbWFya0ZvckNoZWNrKCkge1xuICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBZ0IsTUFBTSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4SixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQXFCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFlakYsTUFBTSxPQUFPLHlCQUF5QjtJQVVwQyxZQUNZLEVBQXFCLEVBQ3JCLGlCQUFvQyxFQUNJLGdCQUEyRTtRQUZuSCxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ0kscUJBQWdCLEdBQWhCLGdCQUFnQixDQUEyRDtRQVh0SCxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBS3ZCLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBb0IsU0FBUyxDQUFDLENBQUM7UUFDckQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTzdDLENBQUM7SUFFRCxRQUFRO1FBRU4sd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsZ0JBQWdCO2FBQ2xCLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDO2FBQ2xELFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsNENBQTRDLE1BQU0sQ0FBQyxLQUFLLGNBQWMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ2pDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FDTCxDQUFDO1FBRUYsaUJBQWlCO1FBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQzthQUMzQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLDRDQUE0QyxJQUFJLENBQUMsTUFBTSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqSCxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBYyxFQUFFLFNBQTBCOztRQUM3QyxJQUFJLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxRQUFRO1lBQUUsT0FBTztRQUNoQyxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7SUFDbEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFjOztRQUNwQixNQUFNLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU07WUFBRSxPQUFPO1FBQ3JDLE1BQUEsSUFBSSxDQUFDLFVBQVUsMENBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFO0lBQzFDLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBdUIsRUFBRSxTQUEwQjtRQUMvRCw2QkFBNkI7UUFDN0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVTLFlBQVk7UUFDcEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs7WUF4RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQ0FBa0M7Z0JBQzVDLDAxRUFBa0Q7Z0JBRWxELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBbEJpQyxpQkFBaUI7WUFHMUMsaUJBQWlCOzRDQTZCckIsUUFBUSxZQUFJLE1BQU0sU0FBQyxxQkFBcUI7OztvQkFYMUMsS0FBSzt3QkFDTCxLQUFLO3dCQUNMLE1BQU07eUJBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVXNlckV2ZW50LCBJVXNlckV2ZW50RmlsdGVyLCBVc2VyRXZlbnRBY3Rpb24gfSBmcm9tICcuLi91c2VyLWV2ZW50Lm1vZGVsJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQb3BvdmVyQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IElVc2VyRXZlbnRTZXJ2aWNlLCBVc2VyRXZlbnRTZXJ2aWNlVG9rZW4gfSBmcm9tICcuLi91c2VyLWV2ZW50LnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJFdmVudE5vdGlmaWNhdGlvbkxpc3RPcHRpb25zIHtcbiAgZGVidWc/OiBib29sZWFuO1xuICB0aXRsZUkxOG4/OiBzdHJpbmc7XG4gIHJlYWRFdmVudD86IEV2ZW50RW1pdHRlcjxJVXNlckV2ZW50PGFueT4+O1xuICByZWFkRXZlbnRzPzogRXZlbnRFbWl0dGVyPElVc2VyRXZlbnQ8YW55PltdPjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXVzZXItZXZlbnQtbm90aWZpY2F0aW9uLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJFdmVudE5vdGlmaWNhdGlvbkxpc3QgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgVXNlckV2ZW50Tm90aWZpY2F0aW9uTGlzdE9wdGlvbnMge1xuXG4gIEBJbnB1dCgpIGRlYnVnID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpdGxlSTE4bjogc3RyaW5nO1xuICBAT3V0cHV0KCkgcmVhZEV2ZW50OiBFdmVudEVtaXR0ZXI8SVVzZXJFdmVudDxhbnk+PjtcbiAgQE91dHB1dCgpIHJlYWRFdmVudHM6IEV2ZW50RW1pdHRlcjxJVXNlckV2ZW50PGFueT5bXT47XG5cbiAgdXNlckV2ZW50cyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SVVzZXJFdmVudDxhbnk+W10+KHVuZGVmaW5lZCk7XG4gIHByb3RlY3RlZCBzdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJvdGVjdGVkIHBvcG92ZXJDb250cm9sbGVyOiBQb3BvdmVyQ29udHJvbGxlcixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFVzZXJFdmVudFNlcnZpY2VUb2tlbikgcHVibGljIHVzZXJFdmVudFNlcnZpY2U6IElVc2VyRXZlbnRTZXJ2aWNlPElVc2VyRXZlbnQ8YW55PiwgSVVzZXJFdmVudEZpbHRlcjxhbnk+PixcbiAgKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIC8vIFdhdGNoIGFsbCB1c2VyIGV2ZW50c1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnVzZXJFdmVudFNlcnZpY2VcbiAgICAgICAgLndhdGNoQWxsKDAsIDEwLCAnY3JlYXRpb25EYXRlJywgXCJkZXNjXCIsIHVuZGVmaW5lZClcbiAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmRlYnVnKSBjb25zb2xlLmRlYnVnKGBbdXNlci1ldmVudC1ub3RpZmljYXRpb24tbGlzdF0gcmVjZWl2aW5nICR7cmVzdWx0LnRvdGFsfSB1c2VyIGV2ZW50c2AsIHJlc3VsdC5kYXRhKTtcbiAgICAgICAgICB0aGlzLnVzZXJFdmVudHMubmV4dChyZXN1bHQuZGF0YSlcbiAgICAgICAgICB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KVxuICAgICk7XG5cbiAgICAvLyBMaXN0ZW4gY2hhbmdlc1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnVzZXJFdmVudFNlcnZpY2UubGlzdGVuQ2hhbmdlcyh1bmRlZmluZWQpXG4gICAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuZGVidWcpIGNvbnNvbGUuZGVidWcoYFt1c2VyLWV2ZW50LW5vdGlmaWNhdGlvbi1saXN0XSByZWNlaXZpbmcgJHtkYXRhLmxlbmd0aH0gbmV3IHVzZXIgZXZlbnRzYCwgZGF0YSk7XG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcmVhZChldmVudDogVUlFdmVudCwgdXNlckV2ZW50OiBJVXNlckV2ZW50PGFueT4pIHtcbiAgICBpZiAodXNlckV2ZW50Py5yZWFkRGF0ZSkgcmV0dXJuO1xuICAgIHRoaXMucmVhZEV2ZW50Py5lbWl0KHVzZXJFdmVudCk7XG4gIH1cblxuICByZWFkQWxsKGV2ZW50OiBVSUV2ZW50KSB7XG4gICAgY29uc3QgdW5yZWFkVXNlckV2ZW50cyA9ICh0aGlzLnVzZXJFdmVudHMudmFsdWUgfHwgW10pLmZpbHRlcih2YWx1ZSA9PiAhdmFsdWUucmVhZERhdGUpO1xuICAgIGlmICghdW5yZWFkVXNlckV2ZW50cy5sZW5ndGgpIHJldHVybjtcbiAgICB0aGlzLnJlYWRFdmVudHM/LmVtaXQodW5yZWFkVXNlckV2ZW50cyk7XG4gIH1cblxuICBleGVjdXRlQWN0aW9uKGFjdGlvbjogVXNlckV2ZW50QWN0aW9uLCB1c2VyRXZlbnQ6IElVc2VyRXZlbnQ8YW55Pikge1xuICAgIC8vIEV4ZWN1dGUgdGhlbiBjbG9zZSBwb3BvdmVyXG4gICAgYWN0aW9uLmV4ZWN1dGVBY3Rpb24odXNlckV2ZW50KTtcbiAgICB0aGlzLmRpc21pc3MoKTtcbiAgfVxuXG4gIGRpc21pc3MoKSB7XG4gICAgdGhpcy5wb3BvdmVyQ29udHJvbGxlci5kaXNtaXNzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbWFya0ZvckNoZWNrKCkge1xuICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1959,17 +1959,21 @@ class DateDiffDurationPipe {
1959
1959
  return '';
1960
1960
  const startDate = this.dateAdapter.parse(value.startValue, DATE_ISO_PATTERN);
1961
1961
  const endDate = this.dateAdapter.parse(value.endValue, DATE_ISO_PATTERN);
1962
- return this.format(startDate, endDate);
1962
+ return this.format(startDate, endDate, args);
1963
1963
  }
1964
- format(startDate, endDate) {
1964
+ format(startDate, endDate, args) {
1965
1965
  const duration = moment.duration(endDate.diff(startDate));
1966
1966
  if (duration.asMinutes() < 0)
1967
1967
  return '';
1968
+ const withSeconds = args === null || args === void 0 ? void 0 : args.seconds;
1968
1969
  const timeDuration = moment(0)
1969
1970
  .hour(duration.hours())
1970
1971
  .minute(duration.minutes());
1972
+ if (withSeconds) {
1973
+ timeDuration.second(duration.seconds());
1974
+ }
1971
1975
  const days = Math.floor(duration.asDays());
1972
- return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format('HH:mm');
1976
+ return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format(withSeconds ? 'HH:mm:ss' : 'HH:mm');
1973
1977
  }
1974
1978
  }
1975
1979
  DateDiffDurationPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateDiffDurationPipe_Factory() { return new DateDiffDurationPipe(ɵɵinject(DateAdapter), ɵɵinject(TranslateService)); }, token: DateDiffDurationPipe, providedIn: "root" });
@@ -26768,7 +26772,7 @@ class UserEventNotificationList {
26768
26772
  UserEventNotificationList.decorators = [
26769
26773
  { type: Component, args: [{
26770
26774
  selector: 'app-user-event-notification-list',
26771
- template: "\n<ion-list class=\"ion-list-popover\">\n\n <ion-row class=\"ion-list-header column\">\n <ion-col>\n <ion-label>{{titleI18n | translate}}</ion-label>\n </ion-col>\n </ion-row>\n\n <ion-item *ngIf=\"!(userEvents | async)?.length\">\n {{'SOCIAL.USER_EVENT.NOTIFICATION.EMPTY' | translate}}\n </ion-item>\n <ion-item\n *ngFor=\"let userEvent of userEvents | async\"\n (click)=\"read($event, userEvent)\"\n >\n\n <ion-avatar slot=\"start\">\n\n <img *ngIf=\"userEvent.avatar; else avatarIcon\" src=\"{{ userEvent.avatar }}\">\n\n <ng-template #avatarIcon>\n <app-icon\n *ngIf=\"userEvent.avatarIcon\"\n [ref]=\"userEvent.avatarIcon\"\n height=\"40\"\n width=\"40\"\n ></app-icon>\n </ng-template>\n\n </ion-avatar>\n\n <ion-grid class=\"ion-no-margin ion-no-padding\">\n <ion-row>\n <ion-col>\n <p [class.unread]=\"!userEvent.readDate\">\n {{userEvent.message}}\n </p>\n </ion-col>\n </ion-row>\n <ion-row *ngIf=\"userEvent.actions?.length\">\n <ion-col>\n <p>\n <span *ngFor=\"let action of userEvent.actions\">\n <a\n [style.margin-right.px]=\"10\"\n [style.cursor]=\"'pointer'\"\n (click)=\"executeAction(action, userEvent)\"\n >\n <app-icon *ngIf=\"action.iconRef\" slot=\"start\" [ref]=\"action.iconRef\" style=\"vertical-align: middle\"></app-icon>\n {{ action.name }}\n </a>\n </span>\n </p>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <app-icon\n *ngIf=\"userEvent.icon\"\n [ref]=\"userEvent.icon\"\n height=\"16\"\n width=\"16\"\n [style.vertical-align]=\"'sub'\"\n ></app-icon>\n <small>\n <span>{{userEvent.creationDate|dateFromNow}}</span>\n <span [style.color]=\"'gray'\">{{ ' | ' + (userEvent.creationDate|dateFormat:{time:true}) }}</span>\n </small>\n </ion-col>\n </ion-row>\n </ion-grid>\n </ion-item>\n\n <ion-row class=\"ion-list-footer column\">\n <ion-col>\n <a style=\"cursor: pointer\" (click)=\"readAll($event)\">{{'SOCIAL.USER_EVENT.NOTIFICATION.READ_ALL' | translate}}</a>\n </ion-col>\n </ion-row>\n\n</ion-list>\n",
26775
+ template: "\n<ion-list class=\"ion-list-popover\">\n\n <ion-row class=\"ion-list-header column\">\n <ion-col>\n <ion-label>{{titleI18n | translate}}</ion-label>\n </ion-col>\n </ion-row>\n\n <ion-item *ngIf=\"!(userEvents | async)?.length\">\n {{'SOCIAL.USER_EVENT.NOTIFICATION.EMPTY' | translate}}\n </ion-item>\n <ion-item\n *ngFor=\"let userEvent of userEvents | async\"\n (click)=\"read($event, userEvent)\"\n >\n\n <ion-avatar slot=\"start\">\n\n <img *ngIf=\"userEvent.avatar; else avatarIcon\" src=\"{{ userEvent.avatar }}\">\n\n <ng-template #avatarIcon>\n <app-icon\n *ngIf=\"userEvent.avatarIcon\"\n [ref]=\"userEvent.avatarIcon\"\n height=\"40\"\n width=\"40\"\n ></app-icon>\n </ng-template>\n\n </ion-avatar>\n\n <ion-grid class=\"ion-no-margin ion-no-padding\">\n <ion-row>\n <ion-col>\n <p [class.unread]=\"!userEvent.readDate\" [innerHTML]=\"userEvent.message\"></p>\n </ion-col>\n </ion-row>\n <ion-row *ngIf=\"userEvent.actions?.length\">\n <ion-col>\n <span *ngFor=\"let action of userEvent.actions\">\n <a\n [style.margin-right.px]=\"10\"\n [style.cursor]=\"'pointer'\"\n (click)=\"executeAction(action, userEvent)\"\n >\n <app-icon *ngIf=\"action.iconRef\" slot=\"start\" [ref]=\"action.iconRef\" style=\"vertical-align: middle\"></app-icon>\n {{ action.name }}\n </a>\n </span>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <app-icon\n *ngIf=\"userEvent.icon\"\n [ref]=\"userEvent.icon\"\n height=\"16\"\n width=\"16\"\n style=\"vertical-align: sub; margin-right: 3px\"\n ></app-icon>\n <small>\n <span>{{userEvent.creationDate|dateFromNow}}</span>\n <span [style.color]=\"'gray'\">{{ ' | ' + (userEvent.creationDate|dateFormat:{time:true}) }}</span>\n </small>\n </ion-col>\n </ion-row>\n </ion-grid>\n </ion-item>\n\n <ion-row class=\"ion-list-footer column\">\n <ion-col>\n <a style=\"cursor: pointer\" (click)=\"readAll($event)\">{{'SOCIAL.USER_EVENT.NOTIFICATION.READ_ALL' | translate}}</a>\n </ion-col>\n </ion-row>\n\n</ion-list>\n",
26772
26776
  changeDetection: ChangeDetectionStrategy.OnPush,
26773
26777
  styles: [":host(.popover-viewport){overflow-y:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.unread{font-weight:700}"]
26774
26778
  },] }