@alfresco/adf-content-services 8.1.0-13904151259 → 8.1.0-13917759001

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.
@@ -708,5 +708,13 @@
708
708
  "FOLDER_SELECTED": "Folders are not compatible with AI Agents."
709
709
  }
710
710
  }
711
+ },
712
+ "NODE_FAVORITE_DIRECTIVE": {
713
+ "MESSAGES": {
714
+ "NODE_ADDED": "Added {{ name }} to favorites",
715
+ "NODES_ADDED": "Added {{ number }} items to favorites",
716
+ "NODE_REMOVED": "Removed {{ name }} from favorites",
717
+ "NODES_REMOVED": "Removed {{ number }} items from favorites"
718
+ }
711
719
  }
712
720
  }
@@ -17,8 +17,10 @@
17
17
  import { Directive, HostListener, Input, Output, EventEmitter } from '@angular/core';
18
18
  import { FavoritesApi } from '@alfresco/js-api';
19
19
  import { AlfrescoApiService } from '../services/alfresco-api.service';
20
+ import { NotificationService } from '@alfresco/adf-core';
20
21
  import * as i0 from "@angular/core";
21
22
  import * as i1 from "../services/alfresco-api.service";
23
+ import * as i2 from "@alfresco/adf-core";
22
24
  export class LibraryFavoriteDirective {
23
25
  get favoritesApi() {
24
26
  this._favoritesApi = this._favoritesApi ?? new FavoritesApi(this.alfrescoApiService.getInstance());
@@ -39,8 +41,9 @@ export class LibraryFavoriteDirective {
39
41
  });
40
42
  }
41
43
  }
42
- constructor(alfrescoApiService) {
44
+ constructor(alfrescoApiService, notificationService) {
43
45
  this.alfrescoApiService = alfrescoApiService;
46
+ this.notificationService = notificationService;
44
47
  this.library = null;
45
48
  this.toggle = new EventEmitter();
46
49
  // eslint-disable-next-line @angular-eslint/no-output-native
@@ -77,6 +80,7 @@ export class LibraryFavoriteDirective {
77
80
  .createFavorite('-me-', favoriteBody)
78
81
  .then((libraryEntry) => {
79
82
  this.targetLibrary.isFavorite = true;
83
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_ADDED', null, { name: this.library.entry.title });
80
84
  this.toggle.emit(libraryEntry);
81
85
  })
82
86
  .catch((error) => this.error.emit(error));
@@ -86,11 +90,12 @@ export class LibraryFavoriteDirective {
86
90
  .deleteFavorite('-me-', favoriteId)
87
91
  .then((libraryBody) => {
88
92
  this.targetLibrary.isFavorite = false;
93
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_REMOVED', null, { name: this.library.entry.title });
89
94
  this.toggle.emit(libraryBody);
90
95
  })
91
96
  .catch((error) => this.error.emit(error));
92
97
  }
93
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LibraryFavoriteDirective, deps: [{ token: i1.AlfrescoApiService }], target: i0.ɵɵFactoryTarget.Directive }); }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LibraryFavoriteDirective, deps: [{ token: i1.AlfrescoApiService }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Directive }); }
94
99
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.3", type: LibraryFavoriteDirective, isStandalone: true, selector: "[adf-favorite-library]", inputs: { library: ["adf-favorite-library", "library"] }, outputs: { toggle: "toggle", error: "error" }, host: { listeners: { "click": "onClick()" } }, exportAs: ["favoriteLibrary"], usesOnChanges: true, ngImport: i0 }); }
95
100
  }
96
101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LibraryFavoriteDirective, decorators: [{
@@ -100,7 +105,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
100
105
  selector: '[adf-favorite-library]',
101
106
  exportAs: 'favoriteLibrary'
102
107
  }]
103
- }], ctorParameters: () => [{ type: i1.AlfrescoApiService }], propDecorators: { library: [{
108
+ }], ctorParameters: () => [{ type: i1.AlfrescoApiService }, { type: i2.NotificationService }], propDecorators: { library: [{
104
109
  type: Input,
105
110
  args: ['adf-favorite-library']
106
111
  }], toggle: [{
@@ -111,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
111
116
  type: HostListener,
112
117
  args: ['click']
113
118
  }] } });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS1mYXZvcml0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL2RpcmVjdGl2ZXMvbGlicmFyeS1mYXZvcml0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxZQUFZLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBc0IsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQVF0RSxNQUFNLE9BQU8sd0JBQXdCO0lBV2pDLElBQUksWUFBWTtRQUNaLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNuRyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUdELE9BQU87UUFDSCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFFM0MsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsV0FBVyxDQUFDO2dCQUNiLE1BQU0sRUFBRTtvQkFDSixJQUFJLEVBQUU7d0JBQ0YsSUFBSTtxQkFDUDtpQkFDSjthQUNKLENBQUMsQ0FBQztRQUNQLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBb0Isa0JBQXNDO1FBQXRDLHVCQUFrQixHQUFs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dGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmF2b3JpdGVCb2R5Q3JlYXRlLCBGYXZvcml0ZXNBcGkgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IEFsZnJlc2NvQXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FsZnJlc2NvLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IExpYnJhcnlFbnRpdHkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2xpYnJhcnktZW50aXR5LmludGVyZmFjZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdbYWRmLWZhdm9yaXRlLWxpYnJhcnldJyxcbiAgICBleHBvcnRBczogJ2Zhdm9yaXRlTGlicmFyeSdcbn0pXG5leHBvcnQgY2xhc3MgTGlicmFyeUZhdm9yaXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoJ2FkZi1mYXZvcml0ZS1saWJyYXJ5JylcbiAgICBsaWJyYXJ5OiBMaWJyYXJ5RW50aXR5ID0gbnVsbDtcblxuICAgIEBPdXRwdXQoKSB0b2dnbGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgICBAT3V0cHV0KCkgZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIHByaXZhdGUgdGFyZ2V0TGlicmFyeSA9IG51bGw7XG5cbiAgICBwcml2YXRlIF9mYXZvcml0ZXNBcGk6IEZhdm9yaXRlc0FwaTtcbiAgICBnZXQgZmF2b3JpdGVzQXBpKCk6IEZhdm9yaXRlc0FwaSB7XG4gICAgICAgIHRoaXMuX2Zhdm9yaXRlc0FwaSA9IHRoaXMuX2Zhdm9yaXRlc0FwaSA/PyBuZXcgRmF2b3JpdGVzQXBpKHRoaXMuYWxmcmVzY29BcGlTZXJ2aWNlLmdldEluc3RhbmNlKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fZmF2b3JpdGVzQXBpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBvbkNsaWNrKCkge1xuICAgICAgICBjb25zdCBndWlkID0gdGhpcy50YXJnZXRMaWJyYXJ5LmVudHJ5Lmd1aWQ7XG5cbiAgICAgICAgaWYgKHRoaXMudGFyZ2V0TGlicmFyeS5pc0Zhdm9yaXRlKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZUZhdm9yaXRlKGd1aWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hZGRGYXZvcml0ZSh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgICAgICAgICAgIHNpdGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGd1aWRcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhbGZyZXNjb0FwaVNlcnZpY2U6IEFsZnJlc2NvQXBpU2VydmljZSkge31cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzLmxpYnJhcnkuY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnRhcmdldExpYnJhcnkgPSBudWxsO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5ID0gY2hhbmdlcy5saWJyYXJ5LmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgdGhpcy5tYXJrRmF2b3JpdGVMaWJyYXJ5KGNoYW5nZXMubGlicmFyeS5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIGlzRmF2b3JpdGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhcmdldExpYnJhcnk/LmlzRmF2b3JpdGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBtYXJrRmF2b3JpdGVMaWJyYXJ5KGxpYnJhcnk6IExpYnJhcnlFbnRpdHkpIHtcbiAgICAgICAgaWYgKHRoaXMudGFyZ2V0TGlicmFyeS5pc0Zhdm9yaXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5mYXZvcml0ZXNBcGkuZ2V0RmF2b3JpdGVTaXRlKCctbWUtJywgbGlicmFyeS5lbnRyeS5pZCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5LmlzRmF2b3JpdGUgPSB0cnVlO1xuICAgICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5LmlzRmF2b3JpdGUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudGFyZ2V0TGlicmFyeSA9IGxpYnJhcnk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZEZhdm9yaXRlKGZhdm9yaXRlQm9keTogRmF2b3JpdGVCb2R5Q3JlYXRlKSB7XG4gICAgICAgIHRoaXMuZmF2b3JpdGVzQXBpXG4gICAgICAgICAgICAuY3JlYXRlRmF2b3JpdGUoJy1tZS0nLCBmYXZvcml0ZUJvZHkpXG4gICAgICAgICAgICAudGhlbigobGlicmFyeUVudHJ5KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5LmlzRmF2b3JpdGUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlLmVtaXQobGlicmFyeUVudHJ5KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB0aGlzLmVycm9yLmVtaXQoZXJyb3IpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZUZhdm9yaXRlKGZhdm9yaXRlSWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmZhdm9yaXRlc0FwaVxuICAgICAgICAgICAgLmRlbGV0ZUZhdm9yaXRlKCctbWUtJywgZmF2b3JpdGVJZClcbiAgICAgICAgICAgIC50aGVuKChsaWJyYXJ5Qm9keSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudGFyZ2V0TGlicmFyeS5pc0Zhdm9yaXRlID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy50b2dnbGUuZW1pdChsaWJyYXJ5Qm9keSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gdGhpcy5lcnJvci5lbWl0KGVycm9yKSk7XG4gICAgfVxufVxuIl19
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS1mYXZvcml0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL2RpcmVjdGl2ZXMvbGlicmFyeS1mYXZvcml0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxZQUFZLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBc0IsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFPekQsTUFBTSxPQUFPLHdCQUF3QjtJQVdqQyxJQUFJLFlBQVk7UUFDWixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDbkcsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFHRCxPQUFPO1FBQ0gsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBRTNDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLFdBQVcsQ0FBQztnQkFDYixNQUFNLEVBQUU7b0JBQ0osSUFBSSxFQUFFO3dCQUNGLElBQUk7cUJBQ1A7aUJBQ0o7YUFDSixDQUFDLENBQUM7UUFDUCxDQUFD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QUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDOzhHQWxGUSx3QkFBd0I7a0dBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsUUFBUSxFQUFFLGlCQUFpQjtpQkFDOUI7eUhBR0csT0FBTztzQkFETixLQUFLO3VCQUFDLHNCQUFzQjtnQkFHbkIsTUFBTTtzQkFBZixNQUFNO2dCQUVHLEtBQUs7c0JBQWQsTUFBTTtnQkFXUCxPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGYXZvcml0ZUJvZHlDcmVhdGUsIEZhdm9yaXRlc0FwaSB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHsgQWxmcmVzY29BcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWxmcmVzY28tYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGlicmFyeUVudGl0eSB9IGZyb20gJy4uL2ludGVyZmFjZXMvbGlicmFyeS1lbnRpdHkuaW50ZXJmYWNlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW2FkZi1mYXZvcml0ZS1saWJyYXJ5XScsXG4gICAgZXhwb3J0QXM6ICdmYXZvcml0ZUxpYnJhcnknXG59KVxuZXhwb3J0IGNsYXNzIExpYnJhcnlGYXZvcml0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCdhZGYtZmF2b3JpdGUtbGlicmFyeScpXG4gICAgbGlicmFyeTogTGlicmFyeUVudGl0eSA9IG51bGw7XG5cbiAgICBAT3V0cHV0KCkgdG9nZ2xlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgQE91dHB1dCgpIGVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBwcml2YXRlIHRhcmdldExpYnJhcnkgPSBudWxsO1xuXG4gICAgcHJpdmF0ZSBfZmF2b3JpdGVzQXBpOiBGYXZvcml0ZXNBcGk7XG4gICAgZ2V0IGZhdm9yaXRlc0FwaSgpOiBGYXZvcml0ZXNBcGkge1xuICAgICAgICB0aGlzLl9mYXZvcml0ZXNBcGkgPSB0aGlzLl9mYXZvcml0ZXNBcGkgPz8gbmV3IEZhdm9yaXRlc0FwaSh0aGlzLmFsZnJlc2NvQXBpU2VydmljZS5nZXRJbnN0YW5jZSgpKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zhdm9yaXRlc0FwaTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgb25DbGljaygpIHtcbiAgICAgICAgY29uc3QgZ3VpZCA9IHRoaXMudGFyZ2V0TGlicmFyeS5lbnRyeS5ndWlkO1xuXG4gICAgICAgIGlmICh0aGlzLnRhcmdldExpYnJhcnkuaXNGYXZvcml0ZSkge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVGYXZvcml0ZShndWlkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYWRkRmF2b3JpdGUoe1xuICAgICAgICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgICAgICAgICBzaXRlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBndWlkXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYWxmcmVzY29BcGlTZXJ2aWNlOiBBbGZyZXNjb0FwaVNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkge31cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzLmxpYnJhcnkuY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnRhcmdldExpYnJhcnkgPSBudWxsO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5ID0gY2hhbmdlcy5saWJyYXJ5LmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgdGhpcy5tYXJrRmF2b3JpdGVMaWJyYXJ5KGNoYW5nZXMubGlicmFyeS5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIGlzRmF2b3JpdGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhcmdldExpYnJhcnk/LmlzRmF2b3JpdGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBtYXJrRmF2b3JpdGVMaWJyYXJ5KGxpYnJhcnk6IExpYnJhcnlFbnRpdHkpIHtcbiAgICAgICAgaWYgKHRoaXMudGFyZ2V0TGlicmFyeS5pc0Zhdm9yaXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5mYXZvcml0ZXNBcGkuZ2V0RmF2b3JpdGVTaXRlKCctbWUtJywgbGlicmFyeS5lbnRyeS5pZCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5LmlzRmF2b3JpdGUgPSB0cnVlO1xuICAgICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5LmlzRmF2b3JpdGUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudGFyZ2V0TGlicmFyeSA9IGxpYnJhcnk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZEZhdm9yaXRlKGZhdm9yaXRlQm9keTogRmF2b3JpdGVCb2R5Q3JlYXRlKSB7XG4gICAgICAgIHRoaXMuZmF2b3JpdGVzQXBpXG4gICAgICAgICAgICAuY3JlYXRlRmF2b3JpdGUoJy1tZS0nLCBmYXZvcml0ZUJvZHkpXG4gICAgICAgICAgICAudGhlbigobGlicmFyeUVudHJ5KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMaWJyYXJ5LmlzRmF2b3JpdGUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zaG93SW5mbygnTk9ERV9GQVZPUklURV9ESVJFQ1RJVkUuTUVTU0FHRVMuTk9ERV9BRERFRCcsIG51bGwsIHsgbmFtZTogdGhpcy5saWJyYXJ5LmVudHJ5LnRpdGxlIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlLmVtaXQobGlicmFyeUVudHJ5KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB0aGlzLmVycm9yLmVtaXQoZXJyb3IpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZUZhdm9yaXRlKGZhdm9yaXRlSWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmZhdm9yaXRlc0FwaVxuICAgICAgICAgICAgLmRlbGV0ZUZhdm9yaXRlKCctbWUtJywgZmF2b3JpdGVJZClcbiAgICAgICAgICAgIC50aGVuKChsaWJyYXJ5Qm9keSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudGFyZ2V0TGlicmFyeS5pc0Zhdm9yaXRlID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnNob3dJbmZvKCdOT0RFX0ZBVk9SSVRFX0RJUkVDVElWRS5NRVNTQUdFUy5OT0RFX1JFTU9WRUQnLCBudWxsLCB7IG5hbWU6IHRoaXMubGlicmFyeS5lbnRyeS50aXRsZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnRvZ2dsZS5lbWl0KGxpYnJhcnlCb2R5KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB0aGlzLmVycm9yLmVtaXQoZXJyb3IpKTtcbiAgICB9XG59XG4iXX0=
@@ -20,8 +20,10 @@ import { FavoritesApi } from '@alfresco/js-api';
20
20
  import { from, forkJoin, of } from 'rxjs';
21
21
  import { catchError, map } from 'rxjs/operators';
22
22
  import { AlfrescoApiService } from '../services/alfresco-api.service';
23
+ import { NotificationService } from '@alfresco/adf-core';
23
24
  import * as i0 from "@angular/core";
24
25
  import * as i1 from "../services/alfresco-api.service";
26
+ import * as i2 from "@alfresco/adf-core";
25
27
  export class NodeFavoriteDirective {
26
28
  get favoritesApi() {
27
29
  this._favoritesApi = this._favoritesApi ?? new FavoritesApi(this.alfrescoApiService.getInstance());
@@ -30,8 +32,9 @@ export class NodeFavoriteDirective {
30
32
  onClick() {
31
33
  this.toggleFavorite();
32
34
  }
33
- constructor(alfrescoApiService) {
35
+ constructor(alfrescoApiService, notificationService) {
34
36
  this.alfrescoApiService = alfrescoApiService;
37
+ this.notificationService = notificationService;
35
38
  this.favorites = [];
36
39
  /** Array of nodes to toggle as favorites. */
37
40
  this.selection = [];
@@ -58,18 +61,38 @@ export class NodeFavoriteDirective {
58
61
  const id = selected.entry.nodeId || selected.entry.id;
59
62
  return from(this.favoritesApi.deleteFavorite('-me-', id));
60
63
  });
61
- forkJoin(batch).subscribe(() => {
62
- this.favorites.forEach((selected) => (selected.entry.isFavorite = false));
63
- this.toggle.emit();
64
- }, (error) => this.error.emit(error));
64
+ forkJoin(batch).subscribe({
65
+ next: () => {
66
+ this.favorites.forEach((selected) => (selected.entry.isFavorite = false));
67
+ if (this.favorites.length > 1) {
68
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODES_REMOVED', null, { number: this.favorites.length });
69
+ }
70
+ else {
71
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_REMOVED', null, {
72
+ name: this.favorites[0].entry.name
73
+ });
74
+ }
75
+ this.toggle.emit();
76
+ },
77
+ error: (error) => this.error.emit(error)
78
+ });
65
79
  }
66
80
  if (!every) {
67
81
  const notFavorite = this.favorites.filter((node) => !node.entry.isFavorite);
68
82
  const body = notFavorite.map((node) => this.createFavoriteBody(node));
69
- from(this.favoritesApi.createFavorite('-me-', body)).subscribe(() => {
70
- notFavorite.forEach((selected) => (selected.entry.isFavorite = true));
71
- this.toggle.emit();
72
- }, (error) => this.error.emit(error));
83
+ from(this.favoritesApi.createFavorite('-me-', body)).subscribe({
84
+ next: () => {
85
+ notFavorite.forEach((selected) => (selected.entry.isFavorite = true));
86
+ if (notFavorite.length > 1) {
87
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODES_ADDED', null, { number: notFavorite.length });
88
+ }
89
+ else {
90
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_ADDED', null, { name: notFavorite[0].entry.name });
91
+ }
92
+ this.toggle.emit();
93
+ },
94
+ error: (error) => this.error.emit(error)
95
+ });
73
96
  }
74
97
  }
75
98
  markFavoritesNodes(selection) {
@@ -146,7 +169,7 @@ export class NodeFavoriteDirective {
146
169
  const ids = comparator.map((item) => item.entry.id);
147
170
  return patch.filter((item) => (ids.includes(item.entry.id) ? item : null));
148
171
  }
149
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NodeFavoriteDirective, deps: [{ token: i1.AlfrescoApiService }], target: i0.ɵɵFactoryTarget.Directive }); }
172
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NodeFavoriteDirective, deps: [{ token: i1.AlfrescoApiService }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Directive }); }
150
173
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.3", type: NodeFavoriteDirective, isStandalone: true, selector: "[adf-node-favorite]", inputs: { selection: ["adf-node-favorite", "selection"] }, outputs: { toggle: "toggle", error: "error" }, host: { listeners: { "click": "onClick()" } }, exportAs: ["adfFavorite"], usesOnChanges: true, ngImport: i0 }); }
151
174
  }
152
175
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NodeFavoriteDirective, decorators: [{
@@ -156,7 +179,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
156
179
  selector: '[adf-node-favorite]',
157
180
  exportAs: 'adfFavorite'
158
181
  }]
159
- }], ctorParameters: () => [{ type: i1.AlfrescoApiService }], propDecorators: { selection: [{
182
+ }], ctorParameters: () => [{ type: i1.AlfrescoApiService }, { type: i2.NotificationService }], propDecorators: { selection: [{
160
183
  type: Input,
161
184
  args: ['adf-node-favorite']
162
185
  }], toggle: [{
@@ -167,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
167
190
  type: HostListener,
168
191
  args: ['click']
169
192
  }] } });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1mYXZvcml0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL2RpcmVjdGl2ZXMvbm9kZS1mYXZvcml0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsb0RBQW9EO0FBRXBELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQW9FLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xILE9BQU8sRUFBYyxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFPdEUsTUFBTSxPQUFPLHFCQUFxQjtJQUk5QixJQUFJLFlBQVk7UUFDWixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDbkcsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFhRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxZQUFvQixrQkFBc0M7UUFBdEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQXZCMUQsY0FBUyxHQUFVLEVBQUUsQ0FBQztRQVF0Qiw2Q0FBNkM7UUFFN0MsY0FBUyxHQUFnQixFQUFFLENBQUM7UUFFNUIscURBQXFEO1FBQzNDLFdBQU0sR0FBRyxJQUFJLFlBQVks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USxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLGFBQWE7aUJBQzFCO3VGQVlHLFNBQVM7c0JBRFIsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBSWhCLE1BQU07c0JBQWYsTUFBTTtnQkFHRyxLQUFLO3NCQUFkLE1BQU07Z0JBR1AsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWUgKi9cblxuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGYXZvcml0ZUJvZHlDcmVhdGUsIE5vZGVFbnRyeSwgU2hhcmVkTGlua0VudHJ5LCBOb2RlLCBTaGFyZWRMaW5rLCBGYXZvcml0ZXNBcGkgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb20sIGZvcmtKb2luLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWxmcmVzY29BcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWxmcmVzY28tYXBpLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW2FkZi1ub2RlLWZhdm9yaXRlXScsXG4gICAgZXhwb3J0QXM6ICdhZGZGYXZvcml0ZSdcbn0pXG5leHBvcnQgY2xhc3MgTm9kZUZhdm9yaXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBmYXZvcml0ZXM6IGFueVtdID0gW107XG5cbiAgICBwcml2YXRlIF9mYXZvcml0ZXNBcGk6IEZhdm9yaXRlc0FwaTtcbiAgICBnZXQgZmF2b3JpdGVzQXBpKCk6IEZhdm9yaXRlc0FwaSB7XG4gICAgICAgIHRoaXMuX2Zhdm9yaXRlc0FwaSA9IHRoaXMuX2Zhdm9yaXRlc0FwaSA/PyBuZXcgRmF2b3JpdGVzQXBpKHRoaXMuYWxmcmVzY29BcGlTZXJ2aWNlLmdldEluc3RhbmNlKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fZmF2b3JpdGVzQXBpO1xuICAgIH1cblxuICAgIC8qKiBBcnJheSBvZiBub2RlcyB0byB0b2dnbGUgYXMgZmF2b3JpdGVzLiAqL1xuICAgIEBJbnB1dCgnYWRmLW5vZGUtZmF2b3JpdGUnKVxuICAgIHNlbGVjdGlvbjogTm9kZUVudHJ5W10gPSBbXTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGZhdm9yaXRlIHNldHRpbmcgaXMgY29tcGxldGUuICovXG4gICAgQE91dHB1dCgpIHRvZ2dsZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZmF2b3JpdGUgc2V0dGluZyBmYWlscy4gKi9cbiAgICBAT3V0cHV0KCkgZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLnRvZ2dsZUZhdm9yaXRlKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhbGZyZXNjb0FwaVNlcnZpY2U6IEFsZnJlc2NvQXBpU2VydmljZSkge31cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzLnNlbGVjdGlvbi5jdXJyZW50VmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZhdm9yaXRlcyA9IFtdO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1hcmtGYXZvcml0ZXNOb2RlcyhjaGFuZ2VzLnNlbGVjdGlvbi5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIHRvZ2dsZUZhdm9yaXRlKCkge1xuICAgICAgICBpZiAoIXRoaXMuZmF2b3JpdGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXZlcnkgPSB0aGlzLmZhdm9yaXRlcy5ldmVyeSgoc2VsZWN0ZWQpID0+IHNlbGVjdGVkLmVudHJ5LmlzRmF2b3JpdGUpO1xuXG4gICAgICAgIGlmIChldmVyeSkge1xuICAgICAgICAgICAgY29uc3QgYmF0Y2ggPSB0aGlzLmZhdm9yaXRlcy5tYXAoKHNlbGVjdGVkOiBOb2RlRW50cnkgfCBTaGFyZWRMaW5rRW50cnkpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBzaGFyZWQgZmlsZXMgaGF2ZSBub2RlSWRcbiAgICAgICAgICAgICAgICBjb25zdCBpZCA9IChzZWxlY3RlZCBhcyBTaGFyZWRMaW5rRW50cnkpLmVudHJ5Lm5vZGVJZCB8fCBzZWxlY3RlZC5lbnRyeS5pZDtcblxuICAgICAgICAgICAgICAgIHJldHVybiBmcm9tKHRoaXMuZmF2b3JpdGVzQXBpLmRlbGV0ZUZhdm9yaXRlKCctbWUtJywgaWQpKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBmb3JrSm9pbihiYXRjaCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mYXZvcml0ZXMuZm9yRWFjaCgoc2VsZWN0ZWQpID0+IChzZWxlY3RlZC5lbnRyeS5pc0Zhdm9yaXRlID0gZmFsc2UpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b2dnbGUuZW1pdCgpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB0aGlzLmVycm9yLmVtaXQoZXJyb3IpXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFldmVyeSkge1xuICAgICAgICAgICAgY29uc3Qgbm90RmF2b3JpdGUgPSB0aGlzLmZhdm9yaXRlcy5maWx0ZXIoKG5vZGUpID0+ICFub2RlLmVudHJ5LmlzRmF2b3JpdGUpO1xuICAgICAgICAgICAgY29uc3QgYm9keSA9IG5vdEZhdm9yaXRlLm1hcCgobm9kZSkgPT4gdGhpcy5jcmVhdGVGYXZvcml0ZUJvZHkobm9kZSkpO1xuXG4gICAgICAgICAgICBmcm9tKHRoaXMuZmF2b3JpdGVzQXBpLmNyZWF0ZUZhdm9yaXRlKCctbWUtJywgYm9keSBhcyBhbnkpKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBub3RGYXZvcml0ZS5mb3JFYWNoKChzZWxlY3RlZCkgPT4gKHNlbGVjdGVkLmVudHJ5LmlzRmF2b3JpdGUgPSB0cnVlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlLmVtaXQoKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4gdGhpcy5lcnJvci5lbWl0KGVycm9yKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG1hcmtGYXZvcml0ZXNOb2RlcyhzZWxlY3Rpb246IE5vZGVFbnRyeVtdKSB7XG4gICAgICAgIGlmIChzZWxlY3Rpb24ubGVuZ3RoIDw9IHRoaXMuZmF2b3JpdGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5mYXZvcml0ZXMgPSB0aGlzLnJlZHVjZSh0aGlzLmZhdm9yaXRlcywgc2VsZWN0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZGlmZihzZWxlY3Rpb24sIHRoaXMuZmF2b3JpdGVzKTtcbiAgICAgICAgY29uc3QgYmF0Y2ggPSB0aGlzLmdldFByb2Nlc3NCYXRjaChyZXN1bHQpO1xuXG4gICAgICAgIGZvcmtKb2luKGJhdGNoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmF2b3JpdGVzLnB1c2goLi4uZGF0YSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGhhc0Zhdm9yaXRlcygpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuZmF2b3JpdGVzICYmICF0aGlzLmZhdm9yaXRlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmZhdm9yaXRlcy5ldmVyeSgoc2VsZWN0ZWQpID0+IHNlbGVjdGVkLmVudHJ5LmlzRmF2b3JpdGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHJvY2Vzc0JhdGNoKHNlbGVjdGlvbjogTm9kZUVudHJ5W10pOiBPYnNlcnZhYmxlPGFueT5bXSB7XG4gICAgICAgIHJldHVybiBzZWxlY3Rpb24ubWFwKChzZWxlY3RlZCkgPT4gdGhpcy5nZXRGYXZvcml0ZShzZWxlY3RlZCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmF2b3JpdGUoc2VsZWN0ZWQ6IE5vZGVFbnRyeSB8IFNoYXJlZExpbmtFbnRyeSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGNvbnN0IG5vZGU6IE5vZGUgfCBTaGFyZWRMaW5rID0gc2VsZWN0ZWQuZW50cnk7XG5cbiAgICAgICAgLy8gQUNTIDYueCB3aXRoICdpc0Zhdm9yaXRlJyBpbmNsdWRlXG4gICAgICAgIGlmIChub2RlICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChub2RlLCAnaXNGYXZvcml0ZScpKSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yoc2VsZWN0ZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQUNTIDUueCBhbmQgNi54IHdpdGhvdXQgJ2lzRmF2b3JpdGUnIGluY2x1ZGVcbiAgICAgICAgY29uc3QgeyBuYW1lLCBpc0ZpbGUsIGlzRm9sZGVyIH0gPSBub2RlIGFzIE5vZGU7XG4gICAgICAgIGNvbnN0IGlkID0gKG5vZGUgYXMgU2hhcmVkTGluaykubm9kZUlkIHx8IG5vZGUuaWQ7XG5cbiAgICAgICAgY29uc3QgcHJvbWlzZSA9IHRoaXMuZmF2b3JpdGVzQXBpLmdldEZhdm9yaXRlKCctbWUtJywgaWQpO1xuXG4gICAgICAgIHJldHVybiBmcm9tKHByb21pc2UpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKCkgPT4gKHtcbiAgICAgICAgICAgICAgICBlbnRyeToge1xuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgaXNGb2xkZXIsXG4gICAgICAgICAgICAgICAgICAgIGlzRmlsZSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgaXNGYXZvcml0ZTogdHJ1ZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT5cbiAgICAgICAgICAgICAgICBvZih7XG4gICAgICAgICAgICAgICAgICAgIGVudHJ5OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRm9sZGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNGaWxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRmF2b3JpdGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlRmF2b3JpdGVCb2R5KG5vZGU6IE5vZGVFbnRyeSk6IEZhdm9yaXRlQm9keUNyZWF0ZSB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldE5vZGVUeXBlKG5vZGUpO1xuICAgICAgICAvLyBzaGFyZWQgZmlsZXMgaGF2ZSBub2RlSWRcbiAgICAgICAgY29uc3QgaWQgPSBub2RlLmVudHJ5Wydub2RlSWQnXSB8fCBub2RlLmVudHJ5LmlkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgICAgICBbdHlwZV06IHtcbiAgICAgICAgICAgICAgICAgICAgZ3VpZDogaWRcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXROb2RlVHlwZShub2RlOiBOb2RlRW50cnkpOiBzdHJpbmcge1xuICAgICAgICAvLyBzaGFyZWQgY291bGQgb25seSBiZSBmaWxlc1xuICAgICAgICBpZiAoIW5vZGUuZW50cnkuaXNGaWxlICYmICFub2RlLmVudHJ5LmlzRm9sZGVyKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2ZpbGUnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5vZGUuZW50cnkuaXNGaWxlID8gJ2ZpbGUnIDogJ2ZvbGRlcic7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkaWZmKGxpc3Q6IE5vZGVFbnRyeVtdLCBwYXRjaDogYW55W10pOiBOb2RlRW50cnlbXSB7XG4gICAgICAgIGNvbnN0IGlkcyA9IHBhdGNoLm1hcCgoaXRlbSkgPT4gaXRlbS5lbnRyeS5pZCk7XG5cbiAgICAgICAgcmV0dXJuIGxpc3QuZmlsdGVyKChpdGVtKSA9PiAoaWRzLmluY2x1ZGVzKGl0ZW0uZW50cnkuaWQpID8gbnVsbCA6IGl0ZW0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZHVjZShwYXRjaDogYW55W10sIGNvbXBhcmF0b3I6IE5vZGVFbnRyeVtdKTogYW55W10ge1xuICAgICAgICBjb25zdCBpZHMgPSBjb21wYXJhdG9yLm1hcCgoaXRlbSkgPT4gaXRlbS5lbnRyeS5pZCk7XG5cbiAgICAgICAgcmV0dXJuIHBhdGNoLmZpbHRlcigoaXRlbSkgPT4gKGlkcy5pbmNsdWRlcyhpdGVtLmVudHJ5LmlkKSA/IGl0ZW0gOiBudWxsKSk7XG4gICAgfVxufVxuIl19
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1mYXZvcml0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL2RpcmVjdGl2ZXMvbm9kZS1mYXZvcml0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsb0RBQW9EO0FBRXBELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQW9FLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xILE9BQU8sRUFBYyxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBT3pELE1BQU0sT0FBTyxxQkFBcUI7SUFJOUIsSUFBSSxZQUFZO1FBQ1osSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ25HLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBYUQsT0FBTztRQUNILElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsWUFBNkIsa0JBQXNDLEVBQW1CLG1CQUF3QztRQUFqRyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQW1CLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUF2QjlILGNBQVMsR0FB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QjtnQkFJaEIsTUFBTTtzQkFBZixNQUFNO2dCQUdHLEtBQUs7c0JBQWQsTUFBTTtnQkFHUCxPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZSAqL1xuXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZhdm9yaXRlQm9keUNyZWF0ZSwgTm9kZUVudHJ5LCBTaGFyZWRMaW5rRW50cnksIE5vZGUsIFNoYXJlZExpbmssIEZhdm9yaXRlc0FwaSB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZnJvbSwgZm9ya0pvaW4sIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBbGZyZXNjb0FwaVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hbGZyZXNjby1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1thZGYtbm9kZS1mYXZvcml0ZV0nLFxuICAgIGV4cG9ydEFzOiAnYWRmRmF2b3JpdGUnXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVGYXZvcml0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgZmF2b3JpdGVzOiBhbnlbXSA9IFtdO1xuXG4gICAgcHJpdmF0ZSBfZmF2b3JpdGVzQXBpOiBGYXZvcml0ZXNBcGk7XG4gICAgZ2V0IGZhdm9yaXRlc0FwaSgpOiBGYXZvcml0ZXNBcGkge1xuICAgICAgICB0aGlzLl9mYXZvcml0ZXNBcGkgPSB0aGlzLl9mYXZvcml0ZXNBcGkgPz8gbmV3IEZhdm9yaXRlc0FwaSh0aGlzLmFsZnJlc2NvQXBpU2VydmljZS5nZXRJbnN0YW5jZSgpKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zhdm9yaXRlc0FwaTtcbiAgICB9XG5cbiAgICAvKiogQXJyYXkgb2Ygbm9kZXMgdG8gdG9nZ2xlIGFzIGZhdm9yaXRlcy4gKi9cbiAgICBASW5wdXQoJ2FkZi1ub2RlLWZhdm9yaXRlJylcbiAgICBzZWxlY3Rpb246IE5vZGVFbnRyeVtdID0gW107XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSBmYXZvcml0ZSBzZXR0aW5nIGlzIGNvbXBsZXRlLiAqL1xuICAgIEBPdXRwdXQoKSB0b2dnbGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGZhdm9yaXRlIHNldHRpbmcgZmFpbHMuICovXG4gICAgQE91dHB1dCgpIGVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgb25DbGljaygpIHtcbiAgICAgICAgdGhpcy50b2dnbGVGYXZvcml0ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYWxmcmVzY29BcGlTZXJ2aWNlOiBBbGZyZXNjb0FwaVNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkge31cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzLnNlbGVjdGlvbi5jdXJyZW50VmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZhdm9yaXRlcyA9IFtdO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1hcmtGYXZvcml0ZXNOb2RlcyhjaGFuZ2VzLnNlbGVjdGlvbi5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIHRvZ2dsZUZhdm9yaXRlKCkge1xuICAgICAgICBpZiAoIXRoaXMuZmF2b3JpdGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXZlcnkgPSB0aGlzLmZhdm9yaXRlcy5ldmVyeSgoc2VsZWN0ZWQpID0+IHNlbGVjdGVkLmVudHJ5LmlzRmF2b3JpdGUpO1xuXG4gICAgICAgIGlmIChldmVyeSkge1xuICAgICAgICAgICAgY29uc3QgYmF0Y2ggPSB0aGlzLmZhdm9yaXRlcy5tYXAoKHNlbGVjdGVkOiBOb2RlRW50cnkgfCBTaGFyZWRMaW5rRW50cnkpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBzaGFyZWQgZmlsZXMgaGF2ZSBub2RlSWRcbiAgICAgICAgICAgICAgICBjb25zdCBpZCA9IChzZWxlY3RlZCBhcyBTaGFyZWRMaW5rRW50cnkpLmVudHJ5Lm5vZGVJZCB8fCBzZWxlY3RlZC5lbnRyeS5pZDtcblxuICAgICAgICAgICAgICAgIHJldHVybiBmcm9tKHRoaXMuZmF2b3JpdGVzQXBpLmRlbGV0ZUZhdm9yaXRlKCctbWUtJywgaWQpKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBmb3JrSm9pbihiYXRjaCkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmF2b3JpdGVzLmZvckVhY2goKHNlbGVjdGVkKSA9PiAoc2VsZWN0ZWQuZW50cnkuaXNGYXZvcml0ZSA9IGZhbHNlKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmZhdm9yaXRlcy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc2hvd0luZm8oJ05PREVfRkFWT1JJVEVfRElSRUNUSVZFLk1FU1NBR0VTLk5PREVTX1JFTU9WRUQnLCBudWxsLCB7IG51bWJlcjogdGhpcy5mYXZvcml0ZXMubGVuZ3RoIH0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnNob3dJbmZvKCdOT0RFX0ZBVk9SSVRFX0RJUkVDVElWRS5NRVNTQUdFUy5OT0RFX1JFTU9WRUQnLCBudWxsLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogdGhpcy5mYXZvcml0ZXNbMF0uZW50cnkubmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b2dnbGUuZW1pdCgpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6IChlcnJvcikgPT4gdGhpcy5lcnJvci5lbWl0KGVycm9yKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWV2ZXJ5KSB7XG4gICAgICAgICAgICBjb25zdCBub3RGYXZvcml0ZSA9IHRoaXMuZmF2b3JpdGVzLmZpbHRlcigobm9kZSkgPT4gIW5vZGUuZW50cnkuaXNGYXZvcml0ZSk7XG4gICAgICAgICAgICBjb25zdCBib2R5ID0gbm90RmF2b3JpdGUubWFwKChub2RlKSA9PiB0aGlzLmNyZWF0ZUZhdm9yaXRlQm9keShub2RlKSk7XG5cbiAgICAgICAgICAgIGZyb20odGhpcy5mYXZvcml0ZXNBcGkuY3JlYXRlRmF2b3JpdGUoJy1tZS0nLCBib2R5IGFzIGFueSkpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBub3RGYXZvcml0ZS5mb3JFYWNoKChzZWxlY3RlZCkgPT4gKHNlbGVjdGVkLmVudHJ5LmlzRmF2b3JpdGUgPSB0cnVlKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChub3RGYXZvcml0ZS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc2hvd0luZm8oJ05PREVfRkFWT1JJVEVfRElSRUNUSVZFLk1FU1NBR0VTLk5PREVTX0FEREVEJywgbnVsbCwgeyBudW1iZXI6IG5vdEZhdm9yaXRlLmxlbmd0aCB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zaG93SW5mbygnTk9ERV9GQVZPUklURV9ESVJFQ1RJVkUuTUVTU0FHRVMuTk9ERV9BRERFRCcsIG51bGwsIHsgbmFtZTogbm90RmF2b3JpdGVbMF0uZW50cnkubmFtZSB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvZ2dsZS5lbWl0KCk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogKGVycm9yKSA9PiB0aGlzLmVycm9yLmVtaXQoZXJyb3IpXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG1hcmtGYXZvcml0ZXNOb2RlcyhzZWxlY3Rpb246IE5vZGVFbnRyeVtdKSB7XG4gICAgICAgIGlmIChzZWxlY3Rpb24ubGVuZ3RoIDw9IHRoaXMuZmF2b3JpdGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5mYXZvcml0ZXMgPSB0aGlzLnJlZHVjZSh0aGlzLmZhdm9yaXRlcywgc2VsZWN0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZGlmZihzZWxlY3Rpb24sIHRoaXMuZmF2b3JpdGVzKTtcbiAgICAgICAgY29uc3QgYmF0Y2ggPSB0aGlzLmdldFByb2Nlc3NCYXRjaChyZXN1bHQpO1xuXG4gICAgICAgIGZvcmtKb2luKGJhdGNoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmF2b3JpdGVzLnB1c2goLi4uZGF0YSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGhhc0Zhdm9yaXRlcygpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuZmF2b3JpdGVzICYmICF0aGlzLmZhdm9yaXRlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmZhdm9yaXRlcy5ldmVyeSgoc2VsZWN0ZWQpID0+IHNlbGVjdGVkLmVudHJ5LmlzRmF2b3JpdGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHJvY2Vzc0JhdGNoKHNlbGVjdGlvbjogTm9kZUVudHJ5W10pOiBPYnNlcnZhYmxlPGFueT5bXSB7XG4gICAgICAgIHJldHVybiBzZWxlY3Rpb24ubWFwKChzZWxlY3RlZCkgPT4gdGhpcy5nZXRGYXZvcml0ZShzZWxlY3RlZCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmF2b3JpdGUoc2VsZWN0ZWQ6IE5vZGVFbnRyeSB8IFNoYXJlZExpbmtFbnRyeSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGNvbnN0IG5vZGU6IE5vZGUgfCBTaGFyZWRMaW5rID0gc2VsZWN0ZWQuZW50cnk7XG5cbiAgICAgICAgLy8gQUNTIDYueCB3aXRoICdpc0Zhdm9yaXRlJyBpbmNsdWRlXG4gICAgICAgIGlmIChub2RlICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChub2RlLCAnaXNGYXZvcml0ZScpKSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yoc2VsZWN0ZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQUNTIDUueCBhbmQgNi54IHdpdGhvdXQgJ2lzRmF2b3JpdGUnIGluY2x1ZGVcbiAgICAgICAgY29uc3QgeyBuYW1lLCBpc0ZpbGUsIGlzRm9sZGVyIH0gPSBub2RlIGFzIE5vZGU7XG4gICAgICAgIGNvbnN0IGlkID0gKG5vZGUgYXMgU2hhcmVkTGluaykubm9kZUlkIHx8IG5vZGUuaWQ7XG5cbiAgICAgICAgY29uc3QgcHJvbWlzZSA9IHRoaXMuZmF2b3JpdGVzQXBpLmdldEZhdm9yaXRlKCctbWUtJywgaWQpO1xuXG4gICAgICAgIHJldHVybiBmcm9tKHByb21pc2UpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKCkgPT4gKHtcbiAgICAgICAgICAgICAgICBlbnRyeToge1xuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgaXNGb2xkZXIsXG4gICAgICAgICAgICAgICAgICAgIGlzRmlsZSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgaXNGYXZvcml0ZTogdHJ1ZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT5cbiAgICAgICAgICAgICAgICBvZih7XG4gICAgICAgICAgICAgICAgICAgIGVudHJ5OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRm9sZGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNGaWxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRmF2b3JpdGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlRmF2b3JpdGVCb2R5KG5vZGU6IE5vZGVFbnRyeSk6IEZhdm9yaXRlQm9keUNyZWF0ZSB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldE5vZGVUeXBlKG5vZGUpO1xuICAgICAgICAvLyBzaGFyZWQgZmlsZXMgaGF2ZSBub2RlSWRcbiAgICAgICAgY29uc3QgaWQgPSBub2RlLmVudHJ5Wydub2RlSWQnXSB8fCBub2RlLmVudHJ5LmlkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgICAgICBbdHlwZV06IHtcbiAgICAgICAgICAgICAgICAgICAgZ3VpZDogaWRcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXROb2RlVHlwZShub2RlOiBOb2RlRW50cnkpOiBzdHJpbmcge1xuICAgICAgICAvLyBzaGFyZWQgY291bGQgb25seSBiZSBmaWxlc1xuICAgICAgICBpZiAoIW5vZGUuZW50cnkuaXNGaWxlICYmICFub2RlLmVudHJ5LmlzRm9sZGVyKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2ZpbGUnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5vZGUuZW50cnkuaXNGaWxlID8gJ2ZpbGUnIDogJ2ZvbGRlcic7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkaWZmKGxpc3Q6IE5vZGVFbnRyeVtdLCBwYXRjaDogYW55W10pOiBOb2RlRW50cnlbXSB7XG4gICAgICAgIGNvbnN0IGlkcyA9IHBhdGNoLm1hcCgoaXRlbSkgPT4gaXRlbS5lbnRyeS5pZCk7XG5cbiAgICAgICAgcmV0dXJuIGxpc3QuZmlsdGVyKChpdGVtKSA9PiAoaWRzLmluY2x1ZGVzKGl0ZW0uZW50cnkuaWQpID8gbnVsbCA6IGl0ZW0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZHVjZShwYXRjaDogYW55W10sIGNvbXBhcmF0b3I6IE5vZGVFbnRyeVtdKTogYW55W10ge1xuICAgICAgICBjb25zdCBpZHMgPSBjb21wYXJhdG9yLm1hcCgoaXRlbSkgPT4gaXRlbS5lbnRyeS5pZCk7XG5cbiAgICAgICAgcmV0dXJuIHBhdGNoLmZpbHRlcigoaXRlbSkgPT4gKGlkcy5pbmNsdWRlcyhpdGVtLmVudHJ5LmlkKSA/IGl0ZW0gOiBudWxsKSk7XG4gICAgfVxufVxuIl19
@@ -12888,8 +12888,9 @@ class LibraryFavoriteDirective {
12888
12888
  });
12889
12889
  }
12890
12890
  }
12891
- constructor(alfrescoApiService) {
12891
+ constructor(alfrescoApiService, notificationService) {
12892
12892
  this.alfrescoApiService = alfrescoApiService;
12893
+ this.notificationService = notificationService;
12893
12894
  this.library = null;
12894
12895
  this.toggle = new EventEmitter();
12895
12896
  // eslint-disable-next-line @angular-eslint/no-output-native
@@ -12926,6 +12927,7 @@ class LibraryFavoriteDirective {
12926
12927
  .createFavorite('-me-', favoriteBody)
12927
12928
  .then((libraryEntry) => {
12928
12929
  this.targetLibrary.isFavorite = true;
12930
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_ADDED', null, { name: this.library.entry.title });
12929
12931
  this.toggle.emit(libraryEntry);
12930
12932
  })
12931
12933
  .catch((error) => this.error.emit(error));
@@ -12935,11 +12937,12 @@ class LibraryFavoriteDirective {
12935
12937
  .deleteFavorite('-me-', favoriteId)
12936
12938
  .then((libraryBody) => {
12937
12939
  this.targetLibrary.isFavorite = false;
12940
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_REMOVED', null, { name: this.library.entry.title });
12938
12941
  this.toggle.emit(libraryBody);
12939
12942
  })
12940
12943
  .catch((error) => this.error.emit(error));
12941
12944
  }
12942
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LibraryFavoriteDirective, deps: [{ token: AlfrescoApiService }], target: i0.ɵɵFactoryTarget.Directive }); }
12945
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LibraryFavoriteDirective, deps: [{ token: AlfrescoApiService }, { token: i1.NotificationService }], target: i0.ɵɵFactoryTarget.Directive }); }
12943
12946
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.3", type: LibraryFavoriteDirective, isStandalone: true, selector: "[adf-favorite-library]", inputs: { library: ["adf-favorite-library", "library"] }, outputs: { toggle: "toggle", error: "error" }, host: { listeners: { "click": "onClick()" } }, exportAs: ["favoriteLibrary"], usesOnChanges: true, ngImport: i0 }); }
12944
12947
  }
12945
12948
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LibraryFavoriteDirective, decorators: [{
@@ -12949,7 +12952,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
12949
12952
  selector: '[adf-favorite-library]',
12950
12953
  exportAs: 'favoriteLibrary'
12951
12954
  }]
12952
- }], ctorParameters: () => [{ type: AlfrescoApiService }], propDecorators: { library: [{
12955
+ }], ctorParameters: () => [{ type: AlfrescoApiService }, { type: i1.NotificationService }], propDecorators: { library: [{
12953
12956
  type: Input,
12954
12957
  args: ['adf-favorite-library']
12955
12958
  }], toggle: [{
@@ -13416,8 +13419,9 @@ class NodeFavoriteDirective {
13416
13419
  onClick() {
13417
13420
  this.toggleFavorite();
13418
13421
  }
13419
- constructor(alfrescoApiService) {
13422
+ constructor(alfrescoApiService, notificationService) {
13420
13423
  this.alfrescoApiService = alfrescoApiService;
13424
+ this.notificationService = notificationService;
13421
13425
  this.favorites = [];
13422
13426
  /** Array of nodes to toggle as favorites. */
13423
13427
  this.selection = [];
@@ -13444,18 +13448,38 @@ class NodeFavoriteDirective {
13444
13448
  const id = selected.entry.nodeId || selected.entry.id;
13445
13449
  return from(this.favoritesApi.deleteFavorite('-me-', id));
13446
13450
  });
13447
- forkJoin(batch).subscribe(() => {
13448
- this.favorites.forEach((selected) => (selected.entry.isFavorite = false));
13449
- this.toggle.emit();
13450
- }, (error) => this.error.emit(error));
13451
+ forkJoin(batch).subscribe({
13452
+ next: () => {
13453
+ this.favorites.forEach((selected) => (selected.entry.isFavorite = false));
13454
+ if (this.favorites.length > 1) {
13455
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODES_REMOVED', null, { number: this.favorites.length });
13456
+ }
13457
+ else {
13458
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_REMOVED', null, {
13459
+ name: this.favorites[0].entry.name
13460
+ });
13461
+ }
13462
+ this.toggle.emit();
13463
+ },
13464
+ error: (error) => this.error.emit(error)
13465
+ });
13451
13466
  }
13452
13467
  if (!every) {
13453
13468
  const notFavorite = this.favorites.filter((node) => !node.entry.isFavorite);
13454
13469
  const body = notFavorite.map((node) => this.createFavoriteBody(node));
13455
- from(this.favoritesApi.createFavorite('-me-', body)).subscribe(() => {
13456
- notFavorite.forEach((selected) => (selected.entry.isFavorite = true));
13457
- this.toggle.emit();
13458
- }, (error) => this.error.emit(error));
13470
+ from(this.favoritesApi.createFavorite('-me-', body)).subscribe({
13471
+ next: () => {
13472
+ notFavorite.forEach((selected) => (selected.entry.isFavorite = true));
13473
+ if (notFavorite.length > 1) {
13474
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODES_ADDED', null, { number: notFavorite.length });
13475
+ }
13476
+ else {
13477
+ this.notificationService.showInfo('NODE_FAVORITE_DIRECTIVE.MESSAGES.NODE_ADDED', null, { name: notFavorite[0].entry.name });
13478
+ }
13479
+ this.toggle.emit();
13480
+ },
13481
+ error: (error) => this.error.emit(error)
13482
+ });
13459
13483
  }
13460
13484
  }
13461
13485
  markFavoritesNodes(selection) {
@@ -13532,7 +13556,7 @@ class NodeFavoriteDirective {
13532
13556
  const ids = comparator.map((item) => item.entry.id);
13533
13557
  return patch.filter((item) => (ids.includes(item.entry.id) ? item : null));
13534
13558
  }
13535
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NodeFavoriteDirective, deps: [{ token: AlfrescoApiService }], target: i0.ɵɵFactoryTarget.Directive }); }
13559
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NodeFavoriteDirective, deps: [{ token: AlfrescoApiService }, { token: i1.NotificationService }], target: i0.ɵɵFactoryTarget.Directive }); }
13536
13560
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.3", type: NodeFavoriteDirective, isStandalone: true, selector: "[adf-node-favorite]", inputs: { selection: ["adf-node-favorite", "selection"] }, outputs: { toggle: "toggle", error: "error" }, host: { listeners: { "click": "onClick()" } }, exportAs: ["adfFavorite"], usesOnChanges: true, ngImport: i0 }); }
13537
13561
  }
13538
13562
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NodeFavoriteDirective, decorators: [{
@@ -13542,7 +13566,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
13542
13566
  selector: '[adf-node-favorite]',
13543
13567
  exportAs: 'adfFavorite'
13544
13568
  }]
13545
- }], ctorParameters: () => [{ type: AlfrescoApiService }], propDecorators: { selection: [{
13569
+ }], ctorParameters: () => [{ type: AlfrescoApiService }, { type: i1.NotificationService }], propDecorators: { selection: [{
13546
13570
  type: Input,
13547
13571
  args: ['adf-node-favorite']
13548
13572
  }], toggle: [{