@provoly/dashboard 0.23.10 → 0.23.11

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.
@@ -170,7 +170,7 @@ export class PryRestitutionComponent extends SubscriptionnerDirective {
170
170
  }
171
171
  lastStepCompleted() {
172
172
  this.form.image = this.image;
173
- if (this.edit) {
173
+ if (!this.consultMode) {
174
174
  this.store.dispatch(ConfigActions.saveWidget({
175
175
  widget: {
176
176
  id: this.selectedRestitution?.id ?? v4(),
@@ -204,4 +204,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
204
204
  }], bindId: [{
205
205
  type: Input
206
206
  }] } });
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdGl0dXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvcmVzdGl0dXRpb24vY29tcG9uZW50cy9yZXN0aXR1dGlvbi9yZXN0aXR1dGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9yZXN0aXR1dGlvbi9jb21wb25lbnRzL3Jlc3RpdHV0aW9uL3Jlc3RpdHV0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUdMLFlBQVksRUFDWixjQUFjLEVBQ2QsYUFBYSxFQUNiLGdCQUFnQixFQUVoQixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLDRCQUE0QixFQUM1QixZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLFlBQVksRUFFWixpQkFBaUIsRUFDakIsYUFBYSxFQUNiLHdCQUF3QixFQUd4QixRQUFRLEVBR1QsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsR0FBRyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQU8xQixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsd0JBQXdCO0lBaUNuRSxZQUNVLHNCQUE4QyxFQUM5QyxLQUFZLEVBQ1osa0JBQXNDO1FBRTlDLEtBQUssRUFBRSxDQUFDO1FBSkEsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQWpDaEQsbUJBQWMsR0FBbUI7WUFDL0IsSUFBSSxF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QUFXO29CQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtvQkFDNUIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO29CQUMzQixVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxFQUFFO29CQUMvQyxnQkFBZ0IsRUFBRSxFQUFFO2lCQUNyQjthQUNGLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDOzhHQW5OVSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwyUUNuQ3BDLDJvS0FtSUE7OzJGRGhHYSx1QkFBdUI7a0JBSm5DLFNBQVM7K0JBQ0UsaUJBQWlCO2dKQXlCbEIsbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBR0Usb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgQ2F0YWxvZ0VudHJ5LFxuICBDbGFzcyxcbiAgQ2xhc3NBY3Rpb25zLFxuICBDbGFzc1NlbGVjdG9ycyxcbiAgQ29uZmlnQWN0aW9ucyxcbiAgRGFzaGJvYXJkQWN0aW9ucyxcbiAgRGF0YVNvdXJjZSxcbiAgRGF0YVNvdXJjZUFjdGlvbnMsXG4gIERhdGFTb3VyY2VTZWxlY3RvcnMsXG4gIERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwsXG4gIEZpZWxkQWN0aW9ucyxcbiAgZ2V0RGlzcGxheU9wdGlvbnMsXG4gIExpYnJhcnlUeXBlcyxcbiAgUHJ5VmlzaWJpbGl0eSxcbiAgUHJ5VmlzaWJpbGl0eVR5cGUsXG4gIFNlYXJjaEFjdGlvbnMsXG4gIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSxcbiAgVG9vbGJveE1hbmlmZXN0U2VydmljZSxcbiAgVG9vbGJveE1lbnVTZXJ2aWNlLFxuICBWaWV3TW9kZSxcbiAgV2lkZ2V0LFxuICBXaWRnZXRNYW5pZmVzdFxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgUHJ5U3RlcHBlckNvbXBvbmVudCB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3N0ZXBwZXInO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB2NCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgUmVzdGl0dXRpb25Gb3JtIH0gZnJvbSAnLi4vLi4vbW9kZWwvcmVzdGl0dXRpb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktcmVzdGl0dXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzdGl0dXRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFByeVJlc3RpdHV0aW9uQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgdHlwZXMkOiBPYnNlcnZhYmxlPHsgaWNvbjogc3RyaW5nOyBsYWJlbDogc3RyaW5nOyB0eXBlOiBzdHJpbmc7IG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdCB9W10+O1xuICBjbGFzc2VzJDogT2JzZXJ2YWJsZTxDbGFzc1tdPjtcbiAgY3VzdG9tTWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0ID0ge1xuICAgIHR5cGU6ICdkZXRhaWwnLFxuICAgIGxheW91dDogeyB4OiAxLCB5OiAxLCB3aWR0aDogMSwgaGVpZ2h0OiAxIH0sXG4gICAgb3B0aW9uczogeyBpdGVtSWRzOiBbXSBhcyBzdHJpbmdbXSB9XG4gIH07XG4gIGZvcm06IFJlc3RpdHV0aW9uRm9ybSA9IHtcbiAgICBzZWxlY3RlZFdpZGdldDogJycsXG4gICAgc2VsZWN0ZWREYXRhU291cmNlczogW10sXG4gICAgdGl0bGU6ICcnLFxuICAgIGltYWdlOiBERUZBVUxUX1JFU1RJVFVUSU9OX0lDT05fVVJMLFxuICAgIGRlc2NyaXB0aW9uOiAnJ1xuICB9O1xuICB2aXNpYmlsaXR5OiBQcnlWaXNpYmlsaXR5ID0ge1xuICAgIHR5cGU6IFByeVZpc2liaWxpdHlUeXBlLlBSSVZBVEUsXG4gICAgdXNlcnM6IFtdXG4gIH07XG4gIG9wZW5TZXR0aW5ncyQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICB1c2VycyQ6IE9ic2VydmFibGU8YW55W10+IHwgbnVsbCA9IG51bGw7XG4gIGNvbnN1bHRNb2RlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlbGVjdGVkUmVzdGl0dXRpb246IFdpZGdldCB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBlZGl0OiBib29sZWFuID0gdHJ1ZTtcbiAgQE91dHB1dCgpIHJlc3RpdHV0aW9uQ3JlYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgd2lkZ2V0c0xpc3QkOiBPYnNlcnZhYmxlPENhdGFsb2dFbnRyeVtdPjtcbiAgdHlwZTogTGlicmFyeVR5cGVzID0gTGlicmFyeVR5cGVzLklMTFVTVFJBVElPTjtcbiAgQElucHV0KCkgaXNEYXRhU291cmNlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgYmluZElkOiBhbnk7XG4gIGltYWdlOiBzdHJpbmcgPSBERUZBVUxUX1JFU1RJVFVUSU9OX0lDT05fVVJMO1xuICB3aWRnZXRUeXBlczogeyBpY29uOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IHR5cGU6IHN0cmluZzsgbWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0IH1bXSA9IFtdO1xuICB1c2VkRGF0YXNvdXJjZXMkOiBPYnNlcnZhYmxlPERhdGFTb3VyY2VbXT47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0b29sYm94TWFuaWZlc3RTZXJ2aWNlOiBUb29sYm94TWFuaWZlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlLFxuICAgIHByaXZhdGUgdG9vbGJveE1lbnVTZXJ2aWNlOiBUb29sYm94TWVudVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKERhdGFTb3VyY2VBY3Rpb25zLmxvYWQoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDbGFzc0FjdGlvbnMubG9hZCgpKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENvbmZpZ0FjdGlvbnMubG9hZEN1c3RvbWl6YXRpb24oKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChGaWVsZEFjdGlvbnMubG9hZCgpKTtcblxuICAgIHRoaXMudHlwZXMkID0gdGhpcy50b29sYm94TWVudVNlcnZpY2UudHlwZXMkLnBpcGUoXG4gICAgICBtYXAoKHR5cGUpID0+IHR5cGUuZmlsdGVyKChmaWx0ZXJlZFR5cGUpID0+IGZpbHRlcmVkVHlwZS50eXBlICE9PSAnZGV0YWlsJykpXG4gICAgKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKHRoaXMudHlwZXMkLnN1YnNjcmliZSgodHlwZXMpID0+ICh0aGlzLndpZGdldFR5cGVzID0gdHlwZXMpKSk7XG4gICAgdGhpcy5jbGFzc2VzJCA9IHRoaXMuc3RvcmUuc2VsZWN0KENsYXNzU2VsZWN0b3JzLmNsYXNzZXMpO1xuICAgIHRoaXMud2lkZ2V0c0xpc3QkID0gdGhpcy50b29sYm94TWVudVNlcnZpY2UubWVudVN0cnVjdHVyZSQucGlwZShcbiAgICAgIG1hcCgobWVudSkgPT5cbiAgICAgICAgbWVudVxuICAgICAgICAgIC5tYXAoKGl0ZW1zKSA9PiBbLi4uaXRlbXMuc3ViLmZpbHRlcigocykgPT4gdGhpcy50b29sYm94TWFuaWZlc3RTZXJ2aWNlLmlzTW9kZWwocy50eXBlKSldKVxuICAgICAgICAgIC5yZWR1Y2UoKGFjYywgaXRlbXMpID0+IFsuLi5hY2MsIC4uLml0ZW1zXSwgW10pXG4gICAgICApXG4gICAgKTtcbiAgICB0aGlzLnVzZWREYXRhc291cmNlcyQgPSB0aGlzLnN0b3JlXG4gICAgICAuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuZ2V0RGF0YVNvdXJjZXNTb3J0ZWQpXG4gICAgICAucGlwZShtYXAoKGFsbERzcykgPT4gYWxsRHNzLmZpbHRlcigoZGF0YXNvdXJjZSkgPT4gdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMuaW5jbHVkZXMoZGF0YXNvdXJjZS5pZCkpKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZFJlc3RpdHV0aW9uKSB7XG4gICAgICBpZiAoIXRoaXMuZWRpdCkge1xuICAgICAgICB0aGlzLmNvbnN1bHRNb2RlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZURpc3BsYXlPcHRpb25zKHsgbW9kZTogVmlld01vZGUuQ09OU1VMVCB9KSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgIERhc2hib2FyZEFjdGlvbnMudXBkYXRlRGlzcGxheU9wdGlvbnMoe1xuICAgICAgICAgICAgbW9kZTogVmlld01vZGUuQ1VTVE9NLFxuICAgICAgICAgICAgY3VzdG9tRGlzcGxheToge1xuICAgICAgICAgICAgICAuLi5nZXREaXNwbGF5T3B0aW9ucyhWaWV3TW9kZS5FRElUSU9OKSxcbiAgICAgICAgICAgICAgd2lkZ2V0Q29udGV4dE1lbnU6IHtcbiAgICAgICAgICAgICAgICBkYXRhc291cmNlU2VsZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB0cnVlLFxuICAgICAgICAgICAgICAgIHdpbmRvdzogZmFsc2UsXG4gICAgICAgICAgICAgICAgbWF4aW1pemU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGFkZFRvQ2F0YWxvZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgZGVsZXRlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBjaGFuZ2VTcG90OiBmYWxzZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VzdG9tTWFuaWZlc3QgPSBKU09OLnBhcnNlKHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbi5jb250ZW50KTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuY3VzdG9tTWFuaWZlc3QuZGF0YXNvdXJjZSkpIHtcbiAgICAgICAgdGhpcy5jdXN0b21NYW5pZmVzdC5kYXRhc291cmNlLmZvckVhY2goKGRhdGFTb3VyY2U6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBTZWFyY2hBY3Rpb25zLmdldERhdGFzb3VyY2VJdGVtcyh7XG4gICAgICAgICAgICAgIGlkOiBkYXRhU291cmNlLFxuICAgICAgICAgICAgICBleGNsdWRlR2VvOiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUgPT09ICdtYXAnLFxuICAgICAgICAgICAgICBmcm9tOiAnUHJ5UmVzdGl0dXRpb25Db21wb25lbnQubmdPbkluaXQoKS0xJ1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgU2VhcmNoQWN0aW9ucy5nZXREYXRhc291cmNlSXRlbXMoe1xuICAgICAgICAgICAgaWQ6IHRoaXMuY3VzdG9tTWFuaWZlc3QuZGF0YXNvdXJjZSBhcyBzdHJpbmcsXG4gICAgICAgICAgICBleGNsdWRlR2VvOiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUgPT09ICdtYXAnLFxuICAgICAgICAgICAgZnJvbTogJ1ByeVJlc3RpdHV0aW9uQ29tcG9uZW50Lm5nT25Jbml0KCktMidcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbi52aXNpYmlsaXR5KSB7XG4gICAgICAgIHRoaXMudmlzaWJpbGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbi52aXNpYmlsaXR5O1xuICAgICAgfVxuICAgICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMuZm9yRWFjaCgoZGF0YVNvdXJjZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgU2VhcmNoQWN0aW9ucy5nZXREYXRhc291cmNlSXRlbXMoe1xuICAgICAgICAgICAgaWQ6IGRhdGFTb3VyY2UsXG4gICAgICAgICAgICBleGNsdWRlR2VvOiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUgPT09ICdtYXAnLFxuICAgICAgICAgICAgZnJvbTogJ1ByeVJlc3RpdHV0aW9uQ29tcG9uZW50Lm5nT25Jbml0KCktMydcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmN1c3RvbU1hbmlmZXN0ID0gSlNPTi5wYXJzZSh0aGlzLnNlbGVjdGVkUmVzdGl0dXRpb24uY29udGVudCk7XG4gICAgICB0aGlzLmZvcm0gPSB7XG4gICAgICAgIHNlbGVjdGVkV2lkZ2V0OiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUsXG4gICAgICAgIHNlbGVjdGVkRGF0YVNvdXJjZXM6ICh0aGlzLmN1c3RvbU1hbmlmZXN0LmRhdGFzb3VyY2UgPz8gW10pIGFzIHN0cmluZ1tdLFxuICAgICAgICB0aXRsZTogdGhpcy5zZWxlY3RlZFJlc3RpdHV0aW9uLm5hbWUsXG4gICAgICAgIC4uLnRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvblxuICAgICAgfTtcbiAgICB9XG4gICAgdGhpcy5pbWFnZSA9IHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbj8uaW1hZ2UgPz8gREVGQVVMVF9SRVNUSVRVVElPTl9JQ09OX1VSTDtcbiAgfVxuXG4gIGNhbmNlbChzdGVwcGVyOiBQcnlTdGVwcGVyQ29tcG9uZW50KSB7XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkV2lkZ2V0ID0gJyc7XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMgPSBbXTtcbiAgICB0aGlzLmZvcm0udGl0bGUgPSAnJztcbiAgICB0aGlzLmZvcm0uZGVzY3JpcHRpb24gPSAnJztcbiAgICB0aGlzLmZvcm0uaW1hZ2UgPSAnJztcbiAgICBpZiAodGhpcy5jb25zdWx0TW9kZSB8fCB0aGlzLnNlbGVjdGVkUmVzdGl0dXRpb24pIHtcbiAgICAgIHRoaXMucmVzdGl0dXRpb25DcmVhdGVkLmVtaXQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5wcmV2KHN0ZXBwZXIpO1xuICB9XG5cbiAgZGF0YXNvdXJjZXNDaGFuZ2VkKCRldmVudDogRGF0YVNvdXJjZVtdKSB7XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMgPSAoJGV2ZW50ID8/IFtdKS5tYXAoKGRzKSA9PiBkcy5pZCk7XG4gIH1cblxuICBzdWJtaXQoc3RlcHBlcjogUHJ5U3RlcHBlckNvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLmNvbnN1bHRNb2RlKSB7XG4gICAgICB0aGlzLmdvTmV4dChzdGVwcGVyKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB3aWRnZXRUeXBlID0gdGhpcy53aWRnZXRUeXBlcy5maW5kKCh3aWRnZXRUeXBlKSA9PiB3aWRnZXRUeXBlLnR5cGUgPT09IHRoaXMuZm9ybS5zZWxlY3RlZFdpZGdldCk7XG5cbiAgICB0aGlzLmN1c3RvbU1hbmlmZXN0ID0ge1xuICAgICAgLi4udGhpcy5jdXN0b21NYW5pZmVzdCxcbiAgICAgIHR5cGU6IHRoaXMuZm9ybS5zZWxlY3RlZFdpZGdldCxcbiAgICAgIHRpdGxlOiB0aGlzLmZvcm0udGl0bGUsXG4gICAgICBkYXRhc291cmNlOiB0aGlzLmZvcm0uc2VsZWN0ZWREYXRhU291cmNlcyA/PyBbXSxcbiAgICAgIGhlYWRlcjogdHJ1ZSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgLi4ud2lkZ2V0VHlwZT8ubWFuaWZlc3Qub3B0aW9ucyxcbiAgICAgICAgdGl0bGU6IHRoaXMuZm9ybS50aXRsZVxuICAgICAgfVxuICAgIH07XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMuZm9yRWFjaCgobmFtZVF1ZXJ5OiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIFNlYXJjaEFjdGlvbnMuZ2V0RGF0YXNvdXJjZUl0ZW1zKHtcbiAgICAgICAgICBpZDogbmFtZVF1ZXJ5LFxuICAgICAgICAgIGV4Y2x1ZGVHZW86IHRoaXMuY3VzdG9tTWFuaWZlc3QudHlwZSA9PT0gJ21hcCcsXG4gICAgICAgICAgZnJvbTogJ1ByeVJlc3RpdHV0aW9uQ29tcG9uZW50LnN1Ym1pdCgpJ1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9KTtcbiAgICB0aGlzLmdvTmV4dChzdGVwcGVyKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMub3BlblNldHRpbmdzJC5uZXh0KCk7XG4gICAgfSwgMTUwKTtcbiAgfVxuXG4gIGdvTmV4dChzdGVwcGVyOiBQcnlTdGVwcGVyQ29tcG9uZW50LCBzdWJtaXQ/OiBib29sZWFuKSB7XG4gICAgc3VibWl0ID8gdGhpcy5zdWJtaXQoc3RlcHBlcikgOiBzdGVwcGVyLm5leHQoKTtcbiAgfVxuXG4gIHByZXYoc3RlcHBlcjogUHJ5U3RlcHBlckNvbXBvbmVudCkge1xuICAgIHN0ZXBwZXIucHJldigpO1xuICB9XG5cbiAgdXBkYXRlTWFuaWZlc3QoJGV2ZW50OiB7IHdpZGdldEluZGV4OiBudW1iZXI7IG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdCB9KSB7XG4gICAgdGhpcy5jdXN0b21NYW5pZmVzdCA9ICRldmVudC5tYW5pZmVzdDtcbiAgfVxuXG4gIGxhc3RTdGVwQ29tcGxldGVkKCkge1xuICAgIHRoaXMuZm9ybS5pbWFnZSA9IHRoaXMuaW1hZ2U7XG4gICAgaWYgKHRoaXMuZWRpdCkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgQ29uZmlnQWN0aW9ucy5zYXZlV2lkZ2V0KHtcbiAgICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICAgIGlkOiB0aGlzLnNlbGVjdGVkUmVzdGl0dXRpb24/LmlkID8/IHY0KCksXG4gICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh0aGlzLmN1c3RvbU1hbmlmZXN0KSxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuZm9ybS50aXRsZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmZvcm0uZGVzY3JpcHRpb24sXG4gICAgICAgICAgICBpbWFnZTogdGhpcy5mb3JtLmltYWdlID8/ICcnLFxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdGhpcy52aXNpYmlsaXR5LFxuICAgICAgICAgICAgZGF0YXNvdXJjZTogdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMgPz8gW10sXG4gICAgICAgICAgICBtb2RpZmljYXRpb25EYXRlOiAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ29uZmlnQWN0aW9ucy5sb2FkV2lkZ2V0cygpKTtcbiAgICB0aGlzLnJlc3RpdHV0aW9uQ3JlYXRlZC5lbWl0KCk7XG4gIH1cbn1cbiIsIjxwcnktcmVzdGl0dXRpb24tY3NzPjwvcHJ5LXJlc3RpdHV0aW9uLWNzcz5cbjxkaXYgY2xhc3M9XCJvLXJlc3RpdHV0aW9uXCI+XG4gIDxoMyBjbGFzcz1cImEtaDIgby1yZXN0aXR1dGlvbl9fdGl0bGVcIj5cbiAgICB7eyAoY29uc3VsdE1vZGUgPyAnQHByeS5yZXN0aXR1dGlvbi5jb25zdWx0JyA6IGVkaXQgPyAnQHByeS5yZXN0aXR1dGlvbi5lZGl0JyA6ICdAcHJ5LnJlc3RpdHV0aW9uLmNyZWF0ZScpIHwgaTE4biB9fVxuICA8L2gzPlxuICA8cHJ5LXN0ZXBwZXIgI3N0ZXBwZXIgW2lzQ29uc3VsdE1vZGVdPVwiY29uc3VsdE1vZGVcIiAobGFzdFN0ZXBDb21wbGV0ZWQpPVwibGFzdFN0ZXBDb21wbGV0ZWQoKVwiPlxuICAgIDxwcnktc3RlcD5cbiAgICAgIDxoNCBjbGFzcz1cIm0tc3RlcHBlci1pdGVtX190aXRsZVwiICpzdGVwVGl0bGU+e3sgJ0BwcnkucmVzdGl0dXRpb24uY29uZmlndXJlJyB8IGkxOG4gfX08L2g0PlxuICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZFwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwicmVzdGl0dXRpb25cIiBjbGFzcz1cImEtbGFiZWxcIj57eyAnQHByeS5yZXN0aXR1dGlvbi5yZXN0aXR1dGlvbl90eXBlJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICA8cHJ5LXNlbGVjdFxuICAgICAgICAgIGlkPVwicmVzdGl0dXRpb25cIlxuICAgICAgICAgIFtpdGVtc109XCJ0eXBlcyQgfCBhc3luY1wiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJmb3JtLnNlbGVjdGVkV2lkZ2V0XCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uc3VsdE1vZGVcIlxuICAgICAgICAgIFtjbG9zZU9uU2VsZWN0XT1cInRydWVcIlxuICAgICAgICAgIGJpbmRJY29uPVwiaWNvblwiXG4gICAgICAgICAgYmluZExhYmVsPVwibGFiZWxcIlxuICAgICAgICAgIGJpbmRWYWx1ZT1cInR5cGVcIlxuICAgICAgICA+XG4gICAgICAgIDwvcHJ5LXNlbGVjdD5cbiAgICAgIDwvZGl2PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm0uc2VsZWN0ZWRXaWRnZXQgIT09ICcnXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtLWZvcm0tbGFiZWwtZmllbGRcIj5cbiAgICAgICAgICA8bGFiZWwgZm9yPVwiZ3JhcGhUaXRsZVwiIGNsYXNzPVwiYS1sYWJlbFwiPnt7ICdAcHJ5LnJlc3RpdHV0aW9uLmdyYXBoX3RpdGxlJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbmFtZT1cInRpdGxlXCJcbiAgICAgICAgICAgIGlkPVwiZ3JhcGhUaXRsZVwiXG4gICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZvcm0udGl0bGVcIlxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbnN1bHRNb2RlXCJcbiAgICAgICAgICAgIG1heGxlbmd0aD1cIjMwXCJcbiAgICAgICAgICAgIG5nRGVmYXVsdENvbnRyb2xcbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZFwiPlxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJkZXNjcmlwdGlvblwiIGNsYXNzPVwiYS1sYWJlbFwiPnt7ICdAcHJ5LnJlc3RpdHV0aW9uLmRlc2NyaXB0aW9uJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgbmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIGlkPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgY2xhc3M9XCJhLWZvcm0tZmllbGRcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmb3JtLmRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIHN0eWxlPVwicmVzaXplOiBub25lXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb25zdWx0TW9kZVwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCIyNTVcIlxuICAgICAgICAgICAgbmdEZWZhdWx0Q29udHJvbFxuICAgICAgICAgID5cbiAgICAgICAgICA8L3RleHRhcmVhPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtZnVsbFwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIj57eyAnQHByeS5wcmVzZW50YXRpb24uZm9ybS5pbWFnZScgfCBpMThuIH19PC9sYWJlbD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1maWxlLWlucHV0XCI+XG4gICAgICAgICAgICA8cHJ5LXNlbGVjdC1pbWFnZSAoY2hhbmdlZCk9XCJpbWFnZSA9ICRldmVudFwiIFtpY29uVXJsXT1cImltYWdlXCIgW21vZGVdPVwidHlwZVwiPjwvcHJ5LXNlbGVjdC1pbWFnZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtLWJ0bi1ncm91cCAtc3BhY2UtZXZlbmx5IGFjdGlvbnNcIj5cbiAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjYW5jZWwoc3RlcHBlcilcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tc2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICB7eyAnQHByeS5yZXN0aXR1dGlvbi5jbG9zZScgfCBpMThuIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cImdvTmV4dChzdGVwcGVyKVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZm9ybS5zZWxlY3RlZFdpZGdldCA9PT0gJycgfHwgZm9ybS50aXRsZS50cmltKCkubGVuZ3RoID09PSAwXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYS1idG4gYS1idG4tLXByaW1hcnlcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7ICdAcHJ5LnJlc3RpdHV0aW9uLnZhbGlkYXRlJyB8IGkxOG4gfX1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3ByeS1zdGVwPlxuICAgIDxwcnktc3RlcD5cbiAgICAgIDxoNCBjbGFzcz1cIm0tc3RlcHBlci1pdGVtX190aXRsZVwiICpzdGVwVGl0bGU+e3sgJ0BwcnkucmVzdGl0dXRpb24uZGF0YVNvdXJjZScgfCBpMThuIH19PC9oND5cbiAgICAgIDxwcnktZGF0YXNvdXJjZS1zZWxlY3RvclxuICAgICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICAgICAgYmluZFZhbHVlPVwiaWRcIlxuICAgICAgICB0cmFuc2xhdGlvblN0cmluZ0Jhc2U9XCJAcHJ5LmNvbXBvbmVudHMuY2hpcHNTZWxlY3Rvci5kYXRhc291cmNlLlwiXG4gICAgICAgIChpdGVtc0NoYW5nZWQpPVwiZGF0YXNvdXJjZXNDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICBbdXNlZEl0ZW1zXT1cIih1c2VkRGF0YXNvdXJjZXMkIHwgYXN5bmMpID8/IFtdXCJcbiAgICAgICAgW3Nob3dBY3Rpb25CdXR0b25zXT1cImZhbHNlXCJcbiAgICAgID48L3ByeS1kYXRhc291cmNlLXNlbGVjdG9yPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25zXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgc3VibWl0OiB0cnVlIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3ByeS1zdGVwPlxuICAgIDxwcnktc3RlcD5cbiAgICAgIDxoNCBjbGFzcz1cIm0tc3RlcHBlci1pdGVtX190aXRsZVwiICpzdGVwVGl0bGU+e3sgJ0BwcnkucmVzdGl0dXRpb24udmlzdWFsaXplJyB8IGkxOG4gfX08L2g0PlxuICAgICAgPGRpdiBjbGFzcz1cIndpZGdldC1pbnN0YW5jaWF0b3JcIj5cbiAgICAgICAgPHByeS13aWRnZXQtaW5zdGFuY2lhdG9yXG4gICAgICAgICAgW3N0YW5kYWxvbmVdPVwidHJ1ZVwiXG4gICAgICAgICAgW3N0YXRpY01hbmlmZXN0XT1cImN1c3RvbU1hbmlmZXN0XCJcbiAgICAgICAgICBbb3BlbiRdPVwib3BlblNldHRpbmdzJFwiXG4gICAgICAgICAgKG1hbmlmZXN0TW9kaWZpZWQpPVwidXBkYXRlTWFuaWZlc3QoJGV2ZW50KVwiXG4gICAgICAgID48L3ByeS13aWRnZXQtaW5zdGFuY2lhdG9yPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3ByeS1zdGVwPlxuICAgIDxwcnktc3RlcD5cbiAgICAgIDxoNCBjbGFzcz1cIm0tc3RlcHBlci1pdGVtX190aXRsZVwiICpzdGVwVGl0bGU+e3sgJ0BwcnkucmVzdGl0dXRpb24uc2hhcmUnIHwgaTE4biB9fTwvaDQ+XG4gICAgICA8aDM+e3sgJ0BwcnkucmVzdGl0dXRpb24uYWNjZXNzJyB8IGkxOG4gfX08L2gzPlxuICAgICAge3sgJ0BwcnkucmVzdGl0dXRpb24uY2hvaWNlJyB8IGkxOG4gfX1cbiAgICAgIDx1bD5cbiAgICAgICAgPGxpPlxuICAgICAgICAgIHt7ICdAcHJ5LnJlc3RpdHV0aW9uLnB1YmxpYycgfCBpMThuIH19XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAge3sgJ0BwcnkucmVzdGl0dXRpb24ub3InIHwgaTE4biB9fVxuICAgICAgPHVsPlxuICAgICAgICA8bGk+XG4gICAgICAgICAge3sgJ0BwcnkucmVzdGl0dXRpb24ucHJpdmF0ZScgfCBpMThuIH19XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPHByeS1zaGFyZVxuICAgICAgICBbKG5nTW9kZWwpXT1cInZpc2liaWxpdHlcIlxuICAgICAgICBbdXNlcnMkXT1cInVzZXJzJFwiXG4gICAgICAgIGxhYmVsUHJvcGVydHk9XCJuYW1lXCJcbiAgICAgICAgdmFsdWVQcm9wZXJ0eT1cImlkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNvbnN1bHRNb2RlXCJcbiAgICAgID48L3ByeS1zaGFyZT5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvcHJ5LXN0ZXA+XG4gIDwvcHJ5LXN0ZXBwZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNidXR0b25zIGxldC1zdWJtaXQ9XCJzdWJtaXRcIj5cbiAgPGRpdiBjbGFzcz1cIm0tYnRuLWdyb3VwIC1zcGFjZS1ldmVubHkgYWN0aW9uc1wiPlxuICAgIDxidXR0b24gKGNsaWNrKT1cInByZXYoc3RlcHBlcilcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tc2Vjb25kYXJ5XCI+XG4gICAgICB7eyAnQHByeS5yZXN0aXR1dGlvbi5jbG9zZScgfCBpMThuIH19XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiZ29OZXh0KHN0ZXBwZXIsIHN1Ym1pdClcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiPlxuICAgICAge3sgKGNvbnN1bHRNb2RlID8gJ0BwcnkucmVzdGl0dXRpb24uc2hhcmUnIDogJ0BwcnkucmVzdGl0dXRpb24ubmV4dCcpIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdGl0dXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvcmVzdGl0dXRpb24vY29tcG9uZW50cy9yZXN0aXR1dGlvbi9yZXN0aXR1dGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9yZXN0aXR1dGlvbi9jb21wb25lbnRzL3Jlc3RpdHV0aW9uL3Jlc3RpdHV0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUdMLFlBQVksRUFDWixjQUFjLEVBQ2QsYUFBYSxFQUNiLGdCQUFnQixFQUVoQixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLDRCQUE0QixFQUM1QixZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLFlBQVksRUFFWixpQkFBaUIsRUFDakIsYUFBYSxFQUNiLHdCQUF3QixFQUd4QixRQUFRLEVBR1QsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsR0FBRyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQU8xQixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsd0JBQXdCO0lBaUNuRSxZQUNVLHNCQUE4QyxFQUM5QyxLQUFZLEVBQ1osa0JBQXNDO1FBRTlDLEtBQUssRUFBRSxDQUFDO1FBSkEsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQWpDaEQsbUJBQWMsR0FBbUI7WUFDL0IsSUFBSSxFQUFFLFFBQVE7WUFDZCxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFO1lBQzNDLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFjLEVBQUU7U0FDckMsQ0FBQztRQUNGLFNBQUksR0FBb0I7WUFDdEIsY0FBYyxFQUFFLEVBQUU7WUFDbEIsbUJBQW1CLEVBQUUsRUFBRTtZQUN2QixLQUFLLEVBQUUsRUFBRTtZQUNULEtBQUssRUFBRSw0QkFBNEI7WUFDbkMsV0FBVyxFQUFFLEVBQUU7U0FDaEIsQ0FBQztRQUNGLGVBQVUsR0FBa0I7WUFDMUIsSUFBSSxFQUFFLGlCQUFpQixDQUFDLE9BQU87WUFDL0IsS0FBSyxFQUFFLEVBQUU7U0FDVixDQUFDO1FBQ0Ysa0JBQWEsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNuRCxXQUFNLEdBQTZCLElBQUksQ0FBQztRQUN4QyxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUNwQix3QkFBbUIsR0FBa0IsSUFBSSxDQUFDO1FBQzFDLFNBQUksR0FBWSxJQUFJLENBQUM7UUFDcEIsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV4RCxTQUFJLEdBQWlCLFlBQVksQ0FBQyxZQUFZLENBQUM7UUFDdEMseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBRXRDLFVBQUssR0FBVyw0QkFBNEIsQ0FBQztRQUM3QyxnQkFBVyxHQUE4RSxFQUFFLENBQUM7UUFTMUYsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQy9DLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUM3RSxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDN0QsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDWCxJQUFJO2FBQ0QsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUN6RixNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ2xELENBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSzthQUMvQixNQUFNLENBQUMsbUJBQW1CLENBQUMsb0JBQW9CLENBQUM7YUFDaEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNmLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUM7b0JBQ3BDLElBQUksRUFBRSxRQUFRLENBQUMsTUFBTTtvQkFDckIsYUFBYSxFQUFFO3dCQUNiLEdBQUcsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQzt3QkFDdEMsaUJBQWlCLEVBQUU7NEJBQ2pCLG1CQUFtQixFQUFFLEtBQUs7NEJBQzFCLFVBQVUsRUFBRSxJQUFJOzRCQUNoQixNQUFNLEVBQUUsS0FBSzs0QkFDYixRQUFRLEVBQUUsS0FBSzs0QkFDZixZQUFZLEVBQUUsS0FBSzs0QkFDbkIsTUFBTSxFQUFFLEtBQUs7NEJBQ2IsVUFBVSxFQUFFLEtBQUs7eUJBQ2xCO3FCQUNGO2lCQUNGLENBQUMsQ0FDSCxDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBa0IsRUFBRSxFQUFFO29CQUM1RCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsYUFBYSxDQUFDLGtCQUFrQixDQUFDO3dCQUMvQixFQUFFLEVBQUUsVUFBVTt3QkFDZCxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUssS0FBSzt3QkFDOUMsSUFBSSxFQUFFLHNDQUFzQztxQkFDN0MsQ0FBQyxDQUNILENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDL0IsRUFBRSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBb0I7b0JBQzVDLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksS0FBSyxLQUFLO29CQUM5QyxJQUFJLEVBQUUsc0NBQXNDO2lCQUM3QyxDQUFDLENBQ0gsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDO1lBQ3hELENBQUM7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQWtCLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDL0IsRUFBRSxFQUFFLFVBQVU7b0JBQ2QsVUFBVSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxLQUFLLEtBQUs7b0JBQzlDLElBQUksRUFBRSxzQ0FBc0M7aUJBQzdDLENBQUMsQ0FDSCxDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25FLElBQUksQ0FBQyxJQUFJLEdBQUc7Z0JBQ1YsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSTtnQkFDeEMsbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQWE7Z0JBQ3ZFLEtBQUssRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSTtnQkFDcEMsR0FBRyxJQUFJLENBQUMsbUJBQW1CO2FBQzVCLENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxJQUFJLDRCQUE0QixDQUFDO0lBQy9FLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBNEI7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDL0IsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxNQUFvQjtRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBNEI7UUFDakMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFdkcsSUFBSSxDQUFDLGNBQWMsR0FBRztZQUNwQixHQUFHLElBQUksQ0FBQyxjQUFjO1lBQ3RCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7WUFDOUIsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUN0QixVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxFQUFFO1lBQy9DLE1BQU0sRUFBRSxJQUFJO1lBQ1osT0FBTyxFQUFFO2dCQUNQLEdBQUcsVUFBVSxFQUFFLFFBQVEsQ0FBQyxPQUFPO2dCQUMvQixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLO2FBQ3ZCO1NBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBaUIsRUFBRSxFQUFFO1lBQzFELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixhQUFhLENBQUMsa0JBQWtCLENBQUM7Z0JBQy9CLEVBQUUsRUFBRSxTQUFTO2dCQUNiLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksS0FBSyxLQUFLO2dCQUM5QyxJQUFJLEVBQUUsa0NBQWtDO2FBQ3pDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBNEIsRUFBRSxNQUFnQjtRQUNuRCxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQTRCO1FBQy9CLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQXlEO1FBQ3RFLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixhQUFhLENBQUMsVUFBVSxDQUFDO2dCQUN2QixNQUFNLEVBQUU7b0JBQ04sRUFBRSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFO29CQUN4QyxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO29CQUM1QyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLO29CQUNyQixXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXO29CQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtvQkFDNUIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO29CQUMzQixVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxFQUFFO29CQUMvQyxnQkFBZ0IsRUFBRSxFQUFFO2lCQUNyQjthQUNGLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDOzhHQW5OVSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwyUUNuQ3BDLDJvS0FtSUE7OzJGRGhHYSx1QkFBdUI7a0JBSm5DLFNBQVM7K0JBQ0UsaUJBQWlCO2dKQXlCbEIsbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBR0Usb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgQ2F0YWxvZ0VudHJ5LFxuICBDbGFzcyxcbiAgQ2xhc3NBY3Rpb25zLFxuICBDbGFzc1NlbGVjdG9ycyxcbiAgQ29uZmlnQWN0aW9ucyxcbiAgRGFzaGJvYXJkQWN0aW9ucyxcbiAgRGF0YVNvdXJjZSxcbiAgRGF0YVNvdXJjZUFjdGlvbnMsXG4gIERhdGFTb3VyY2VTZWxlY3RvcnMsXG4gIERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwsXG4gIEZpZWxkQWN0aW9ucyxcbiAgZ2V0RGlzcGxheU9wdGlvbnMsXG4gIExpYnJhcnlUeXBlcyxcbiAgUHJ5VmlzaWJpbGl0eSxcbiAgUHJ5VmlzaWJpbGl0eVR5cGUsXG4gIFNlYXJjaEFjdGlvbnMsXG4gIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSxcbiAgVG9vbGJveE1hbmlmZXN0U2VydmljZSxcbiAgVG9vbGJveE1lbnVTZXJ2aWNlLFxuICBWaWV3TW9kZSxcbiAgV2lkZ2V0LFxuICBXaWRnZXRNYW5pZmVzdFxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgUHJ5U3RlcHBlckNvbXBvbmVudCB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL3N0ZXBwZXInO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB2NCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgUmVzdGl0dXRpb25Gb3JtIH0gZnJvbSAnLi4vLi4vbW9kZWwvcmVzdGl0dXRpb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktcmVzdGl0dXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzdGl0dXRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFByeVJlc3RpdHV0aW9uQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgdHlwZXMkOiBPYnNlcnZhYmxlPHsgaWNvbjogc3RyaW5nOyBsYWJlbDogc3RyaW5nOyB0eXBlOiBzdHJpbmc7IG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdCB9W10+O1xuICBjbGFzc2VzJDogT2JzZXJ2YWJsZTxDbGFzc1tdPjtcbiAgY3VzdG9tTWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0ID0ge1xuICAgIHR5cGU6ICdkZXRhaWwnLFxuICAgIGxheW91dDogeyB4OiAxLCB5OiAxLCB3aWR0aDogMSwgaGVpZ2h0OiAxIH0sXG4gICAgb3B0aW9uczogeyBpdGVtSWRzOiBbXSBhcyBzdHJpbmdbXSB9XG4gIH07XG4gIGZvcm06IFJlc3RpdHV0aW9uRm9ybSA9IHtcbiAgICBzZWxlY3RlZFdpZGdldDogJycsXG4gICAgc2VsZWN0ZWREYXRhU291cmNlczogW10sXG4gICAgdGl0bGU6ICcnLFxuICAgIGltYWdlOiBERUZBVUxUX1JFU1RJVFVUSU9OX0lDT05fVVJMLFxuICAgIGRlc2NyaXB0aW9uOiAnJ1xuICB9O1xuICB2aXNpYmlsaXR5OiBQcnlWaXNpYmlsaXR5ID0ge1xuICAgIHR5cGU6IFByeVZpc2liaWxpdHlUeXBlLlBSSVZBVEUsXG4gICAgdXNlcnM6IFtdXG4gIH07XG4gIG9wZW5TZXR0aW5ncyQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICB1c2VycyQ6IE9ic2VydmFibGU8YW55W10+IHwgbnVsbCA9IG51bGw7XG4gIGNvbnN1bHRNb2RlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlbGVjdGVkUmVzdGl0dXRpb246IFdpZGdldCB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBlZGl0OiBib29sZWFuID0gdHJ1ZTtcbiAgQE91dHB1dCgpIHJlc3RpdHV0aW9uQ3JlYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgd2lkZ2V0c0xpc3QkOiBPYnNlcnZhYmxlPENhdGFsb2dFbnRyeVtdPjtcbiAgdHlwZTogTGlicmFyeVR5cGVzID0gTGlicmFyeVR5cGVzLklMTFVTVFJBVElPTjtcbiAgQElucHV0KCkgaXNEYXRhU291cmNlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgYmluZElkOiBhbnk7XG4gIGltYWdlOiBzdHJpbmcgPSBERUZBVUxUX1JFU1RJVFVUSU9OX0lDT05fVVJMO1xuICB3aWRnZXRUeXBlczogeyBpY29uOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IHR5cGU6IHN0cmluZzsgbWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0IH1bXSA9IFtdO1xuICB1c2VkRGF0YXNvdXJjZXMkOiBPYnNlcnZhYmxlPERhdGFTb3VyY2VbXT47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0b29sYm94TWFuaWZlc3RTZXJ2aWNlOiBUb29sYm94TWFuaWZlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlLFxuICAgIHByaXZhdGUgdG9vbGJveE1lbnVTZXJ2aWNlOiBUb29sYm94TWVudVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKERhdGFTb3VyY2VBY3Rpb25zLmxvYWQoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDbGFzc0FjdGlvbnMubG9hZCgpKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENvbmZpZ0FjdGlvbnMubG9hZEN1c3RvbWl6YXRpb24oKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChGaWVsZEFjdGlvbnMubG9hZCgpKTtcblxuICAgIHRoaXMudHlwZXMkID0gdGhpcy50b29sYm94TWVudVNlcnZpY2UudHlwZXMkLnBpcGUoXG4gICAgICBtYXAoKHR5cGUpID0+IHR5cGUuZmlsdGVyKChmaWx0ZXJlZFR5cGUpID0+IGZpbHRlcmVkVHlwZS50eXBlICE9PSAnZGV0YWlsJykpXG4gICAgKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKHRoaXMudHlwZXMkLnN1YnNjcmliZSgodHlwZXMpID0+ICh0aGlzLndpZGdldFR5cGVzID0gdHlwZXMpKSk7XG4gICAgdGhpcy5jbGFzc2VzJCA9IHRoaXMuc3RvcmUuc2VsZWN0KENsYXNzU2VsZWN0b3JzLmNsYXNzZXMpO1xuICAgIHRoaXMud2lkZ2V0c0xpc3QkID0gdGhpcy50b29sYm94TWVudVNlcnZpY2UubWVudVN0cnVjdHVyZSQucGlwZShcbiAgICAgIG1hcCgobWVudSkgPT5cbiAgICAgICAgbWVudVxuICAgICAgICAgIC5tYXAoKGl0ZW1zKSA9PiBbLi4uaXRlbXMuc3ViLmZpbHRlcigocykgPT4gdGhpcy50b29sYm94TWFuaWZlc3RTZXJ2aWNlLmlzTW9kZWwocy50eXBlKSldKVxuICAgICAgICAgIC5yZWR1Y2UoKGFjYywgaXRlbXMpID0+IFsuLi5hY2MsIC4uLml0ZW1zXSwgW10pXG4gICAgICApXG4gICAgKTtcbiAgICB0aGlzLnVzZWREYXRhc291cmNlcyQgPSB0aGlzLnN0b3JlXG4gICAgICAuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuZ2V0RGF0YVNvdXJjZXNTb3J0ZWQpXG4gICAgICAucGlwZShtYXAoKGFsbERzcykgPT4gYWxsRHNzLmZpbHRlcigoZGF0YXNvdXJjZSkgPT4gdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMuaW5jbHVkZXMoZGF0YXNvdXJjZS5pZCkpKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZFJlc3RpdHV0aW9uKSB7XG4gICAgICBpZiAoIXRoaXMuZWRpdCkge1xuICAgICAgICB0aGlzLmNvbnN1bHRNb2RlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZURpc3BsYXlPcHRpb25zKHsgbW9kZTogVmlld01vZGUuQ09OU1VMVCB9KSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgIERhc2hib2FyZEFjdGlvbnMudXBkYXRlRGlzcGxheU9wdGlvbnMoe1xuICAgICAgICAgICAgbW9kZTogVmlld01vZGUuQ1VTVE9NLFxuICAgICAgICAgICAgY3VzdG9tRGlzcGxheToge1xuICAgICAgICAgICAgICAuLi5nZXREaXNwbGF5T3B0aW9ucyhWaWV3TW9kZS5FRElUSU9OKSxcbiAgICAgICAgICAgICAgd2lkZ2V0Q29udGV4dE1lbnU6IHtcbiAgICAgICAgICAgICAgICBkYXRhc291cmNlU2VsZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzOiB0cnVlLFxuICAgICAgICAgICAgICAgIHdpbmRvdzogZmFsc2UsXG4gICAgICAgICAgICAgICAgbWF4aW1pemU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGFkZFRvQ2F0YWxvZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgZGVsZXRlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBjaGFuZ2VTcG90OiBmYWxzZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VzdG9tTWFuaWZlc3QgPSBKU09OLnBhcnNlKHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbi5jb250ZW50KTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuY3VzdG9tTWFuaWZlc3QuZGF0YXNvdXJjZSkpIHtcbiAgICAgICAgdGhpcy5jdXN0b21NYW5pZmVzdC5kYXRhc291cmNlLmZvckVhY2goKGRhdGFTb3VyY2U6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBTZWFyY2hBY3Rpb25zLmdldERhdGFzb3VyY2VJdGVtcyh7XG4gICAgICAgICAgICAgIGlkOiBkYXRhU291cmNlLFxuICAgICAgICAgICAgICBleGNsdWRlR2VvOiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUgPT09ICdtYXAnLFxuICAgICAgICAgICAgICBmcm9tOiAnUHJ5UmVzdGl0dXRpb25Db21wb25lbnQubmdPbkluaXQoKS0xJ1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgU2VhcmNoQWN0aW9ucy5nZXREYXRhc291cmNlSXRlbXMoe1xuICAgICAgICAgICAgaWQ6IHRoaXMuY3VzdG9tTWFuaWZlc3QuZGF0YXNvdXJjZSBhcyBzdHJpbmcsXG4gICAgICAgICAgICBleGNsdWRlR2VvOiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUgPT09ICdtYXAnLFxuICAgICAgICAgICAgZnJvbTogJ1ByeVJlc3RpdHV0aW9uQ29tcG9uZW50Lm5nT25Jbml0KCktMidcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbi52aXNpYmlsaXR5KSB7XG4gICAgICAgIHRoaXMudmlzaWJpbGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbi52aXNpYmlsaXR5O1xuICAgICAgfVxuICAgICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMuZm9yRWFjaCgoZGF0YVNvdXJjZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgU2VhcmNoQWN0aW9ucy5nZXREYXRhc291cmNlSXRlbXMoe1xuICAgICAgICAgICAgaWQ6IGRhdGFTb3VyY2UsXG4gICAgICAgICAgICBleGNsdWRlR2VvOiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUgPT09ICdtYXAnLFxuICAgICAgICAgICAgZnJvbTogJ1ByeVJlc3RpdHV0aW9uQ29tcG9uZW50Lm5nT25Jbml0KCktMydcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmN1c3RvbU1hbmlmZXN0ID0gSlNPTi5wYXJzZSh0aGlzLnNlbGVjdGVkUmVzdGl0dXRpb24uY29udGVudCk7XG4gICAgICB0aGlzLmZvcm0gPSB7XG4gICAgICAgIHNlbGVjdGVkV2lkZ2V0OiB0aGlzLmN1c3RvbU1hbmlmZXN0LnR5cGUsXG4gICAgICAgIHNlbGVjdGVkRGF0YVNvdXJjZXM6ICh0aGlzLmN1c3RvbU1hbmlmZXN0LmRhdGFzb3VyY2UgPz8gW10pIGFzIHN0cmluZ1tdLFxuICAgICAgICB0aXRsZTogdGhpcy5zZWxlY3RlZFJlc3RpdHV0aW9uLm5hbWUsXG4gICAgICAgIC4uLnRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvblxuICAgICAgfTtcbiAgICB9XG4gICAgdGhpcy5pbWFnZSA9IHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbj8uaW1hZ2UgPz8gREVGQVVMVF9SRVNUSVRVVElPTl9JQ09OX1VSTDtcbiAgfVxuXG4gIGNhbmNlbChzdGVwcGVyOiBQcnlTdGVwcGVyQ29tcG9uZW50KSB7XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkV2lkZ2V0ID0gJyc7XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMgPSBbXTtcbiAgICB0aGlzLmZvcm0udGl0bGUgPSAnJztcbiAgICB0aGlzLmZvcm0uZGVzY3JpcHRpb24gPSAnJztcbiAgICB0aGlzLmZvcm0uaW1hZ2UgPSAnJztcbiAgICBpZiAodGhpcy5jb25zdWx0TW9kZSB8fCB0aGlzLnNlbGVjdGVkUmVzdGl0dXRpb24pIHtcbiAgICAgIHRoaXMucmVzdGl0dXRpb25DcmVhdGVkLmVtaXQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5wcmV2KHN0ZXBwZXIpO1xuICB9XG5cbiAgZGF0YXNvdXJjZXNDaGFuZ2VkKCRldmVudDogRGF0YVNvdXJjZVtdKSB7XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMgPSAoJGV2ZW50ID8/IFtdKS5tYXAoKGRzKSA9PiBkcy5pZCk7XG4gIH1cblxuICBzdWJtaXQoc3RlcHBlcjogUHJ5U3RlcHBlckNvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLmNvbnN1bHRNb2RlKSB7XG4gICAgICB0aGlzLmdvTmV4dChzdGVwcGVyKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB3aWRnZXRUeXBlID0gdGhpcy53aWRnZXRUeXBlcy5maW5kKCh3aWRnZXRUeXBlKSA9PiB3aWRnZXRUeXBlLnR5cGUgPT09IHRoaXMuZm9ybS5zZWxlY3RlZFdpZGdldCk7XG5cbiAgICB0aGlzLmN1c3RvbU1hbmlmZXN0ID0ge1xuICAgICAgLi4udGhpcy5jdXN0b21NYW5pZmVzdCxcbiAgICAgIHR5cGU6IHRoaXMuZm9ybS5zZWxlY3RlZFdpZGdldCxcbiAgICAgIHRpdGxlOiB0aGlzLmZvcm0udGl0bGUsXG4gICAgICBkYXRhc291cmNlOiB0aGlzLmZvcm0uc2VsZWN0ZWREYXRhU291cmNlcyA/PyBbXSxcbiAgICAgIGhlYWRlcjogdHJ1ZSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgLi4ud2lkZ2V0VHlwZT8ubWFuaWZlc3Qub3B0aW9ucyxcbiAgICAgICAgdGl0bGU6IHRoaXMuZm9ybS50aXRsZVxuICAgICAgfVxuICAgIH07XG4gICAgdGhpcy5mb3JtLnNlbGVjdGVkRGF0YVNvdXJjZXMuZm9yRWFjaCgobmFtZVF1ZXJ5OiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIFNlYXJjaEFjdGlvbnMuZ2V0RGF0YXNvdXJjZUl0ZW1zKHtcbiAgICAgICAgICBpZDogbmFtZVF1ZXJ5LFxuICAgICAgICAgIGV4Y2x1ZGVHZW86IHRoaXMuY3VzdG9tTWFuaWZlc3QudHlwZSA9PT0gJ21hcCcsXG4gICAgICAgICAgZnJvbTogJ1ByeVJlc3RpdHV0aW9uQ29tcG9uZW50LnN1Ym1pdCgpJ1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9KTtcbiAgICB0aGlzLmdvTmV4dChzdGVwcGVyKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMub3BlblNldHRpbmdzJC5uZXh0KCk7XG4gICAgfSwgMTUwKTtcbiAgfVxuXG4gIGdvTmV4dChzdGVwcGVyOiBQcnlTdGVwcGVyQ29tcG9uZW50LCBzdWJtaXQ/OiBib29sZWFuKSB7XG4gICAgc3VibWl0ID8gdGhpcy5zdWJtaXQoc3RlcHBlcikgOiBzdGVwcGVyLm5leHQoKTtcbiAgfVxuXG4gIHByZXYoc3RlcHBlcjogUHJ5U3RlcHBlckNvbXBvbmVudCkge1xuICAgIHN0ZXBwZXIucHJldigpO1xuICB9XG5cbiAgdXBkYXRlTWFuaWZlc3QoJGV2ZW50OiB7IHdpZGdldEluZGV4OiBudW1iZXI7IG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdCB9KSB7XG4gICAgdGhpcy5jdXN0b21NYW5pZmVzdCA9ICRldmVudC5tYW5pZmVzdDtcbiAgfVxuXG4gIGxhc3RTdGVwQ29tcGxldGVkKCkge1xuICAgIHRoaXMuZm9ybS5pbWFnZSA9IHRoaXMuaW1hZ2U7XG4gICAgaWYgKCF0aGlzLmNvbnN1bHRNb2RlKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBDb25maWdBY3Rpb25zLnNhdmVXaWRnZXQoe1xuICAgICAgICAgIHdpZGdldDoge1xuICAgICAgICAgICAgaWQ6IHRoaXMuc2VsZWN0ZWRSZXN0aXR1dGlvbj8uaWQgPz8gdjQoKSxcbiAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHRoaXMuY3VzdG9tTWFuaWZlc3QpLFxuICAgICAgICAgICAgbmFtZTogdGhpcy5mb3JtLnRpdGxlLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuZm9ybS5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGltYWdlOiB0aGlzLmZvcm0uaW1hZ2UgPz8gJycsXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB0aGlzLnZpc2liaWxpdHksXG4gICAgICAgICAgICBkYXRhc291cmNlOiB0aGlzLmZvcm0uc2VsZWN0ZWREYXRhU291cmNlcyA/PyBbXSxcbiAgICAgICAgICAgIG1vZGlmaWNhdGlvbkRhdGU6ICcnXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDb25maWdBY3Rpb25zLmxvYWRXaWRnZXRzKCkpO1xuICAgIHRoaXMucmVzdGl0dXRpb25DcmVhdGVkLmVtaXQoKTtcbiAgfVxufVxuIiwiPHByeS1yZXN0aXR1dGlvbi1jc3M+PC9wcnktcmVzdGl0dXRpb24tY3NzPlxuPGRpdiBjbGFzcz1cIm8tcmVzdGl0dXRpb25cIj5cbiAgPGgzIGNsYXNzPVwiYS1oMiBvLXJlc3RpdHV0aW9uX190aXRsZVwiPlxuICAgIHt7IChjb25zdWx0TW9kZSA/ICdAcHJ5LnJlc3RpdHV0aW9uLmNvbnN1bHQnIDogZWRpdCA/ICdAcHJ5LnJlc3RpdHV0aW9uLmVkaXQnIDogJ0BwcnkucmVzdGl0dXRpb24uY3JlYXRlJykgfCBpMThuIH19XG4gIDwvaDM+XG4gIDxwcnktc3RlcHBlciAjc3RlcHBlciBbaXNDb25zdWx0TW9kZV09XCJjb25zdWx0TW9kZVwiIChsYXN0U3RlcENvbXBsZXRlZCk9XCJsYXN0U3RlcENvbXBsZXRlZCgpXCI+XG4gICAgPHByeS1zdGVwPlxuICAgICAgPGg0IGNsYXNzPVwibS1zdGVwcGVyLWl0ZW1fX3RpdGxlXCIgKnN0ZXBUaXRsZT57eyAnQHByeS5yZXN0aXR1dGlvbi5jb25maWd1cmUnIHwgaTE4biB9fTwvaDQ+XG4gICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkXCI+XG4gICAgICAgIDxsYWJlbCBmb3I9XCJyZXN0aXR1dGlvblwiIGNsYXNzPVwiYS1sYWJlbFwiPnt7ICdAcHJ5LnJlc3RpdHV0aW9uLnJlc3RpdHV0aW9uX3R5cGUnIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgaWQ9XCJyZXN0aXR1dGlvblwiXG4gICAgICAgICAgW2l0ZW1zXT1cInR5cGVzJCB8IGFzeW5jXCJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImZvcm0uc2VsZWN0ZWRXaWRnZXRcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJjb25zdWx0TW9kZVwiXG4gICAgICAgICAgW2Nsb3NlT25TZWxlY3RdPVwidHJ1ZVwiXG4gICAgICAgICAgYmluZEljb249XCJpY29uXCJcbiAgICAgICAgICBiaW5kTGFiZWw9XCJsYWJlbFwiXG4gICAgICAgICAgYmluZFZhbHVlPVwidHlwZVwiXG4gICAgICAgID5cbiAgICAgICAgPC9wcnktc2VsZWN0PlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS5zZWxlY3RlZFdpZGdldCAhPT0gJydcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZFwiPlxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJncmFwaFRpdGxlXCIgY2xhc3M9XCJhLWxhYmVsXCI+e3sgJ0BwcnkucmVzdGl0dXRpb24uZ3JhcGhfdGl0bGUnIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBuYW1lPVwidGl0bGVcIlxuICAgICAgICAgICAgaWQ9XCJncmFwaFRpdGxlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZm9ybS50aXRsZVwiXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uc3VsdE1vZGVcIlxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMzBcIlxuICAgICAgICAgICAgbmdEZWZhdWx0Q29udHJvbFxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkXCI+XG4gICAgICAgICAgPGxhYmVsIGZvcj1cImRlc2NyaXB0aW9uXCIgY2xhc3M9XCJhLWxhYmVsXCI+e3sgJ0BwcnkucmVzdGl0dXRpb24uZGVzY3JpcHRpb24nIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICBuYW1lPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgaWQ9XCJkZXNjcmlwdGlvblwiXG4gICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZvcm0uZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgc3R5bGU9XCJyZXNpemU6IG5vbmVcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbnN1bHRNb2RlXCJcbiAgICAgICAgICAgIG1heGxlbmd0aD1cIjI1NVwiXG4gICAgICAgICAgICBuZ0RlZmF1bHRDb250cm9sXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvdGV4dGFyZWE+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1mdWxsXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiPnt7ICdAcHJ5LnByZXNlbnRhdGlvbi5mb3JtLmltYWdlJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLWZpbGUtaW5wdXRcIj5cbiAgICAgICAgICAgIDxwcnktc2VsZWN0LWltYWdlIChjaGFuZ2VkKT1cImltYWdlID0gJGV2ZW50XCIgW2ljb25VcmxdPVwiaW1hZ2VcIiBbbW9kZV09XCJ0eXBlXCI+PC9wcnktc2VsZWN0LWltYWdlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tYnRuLWdyb3VwIC1zcGFjZS1ldmVubHkgYWN0aW9uc1wiPlxuICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImNhbmNlbChzdGVwcGVyKVwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIj5cbiAgICAgICAgICAgIHt7ICdAcHJ5LnJlc3RpdHV0aW9uLmNsb3NlJyB8IGkxOG4gfX1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiZ29OZXh0KHN0ZXBwZXIpXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtLnNlbGVjdGVkV2lkZ2V0ID09PSAnJyB8fCBmb3JtLnRpdGxlLnRyaW0oKS5sZW5ndGggPT09IDBcIlxuICAgICAgICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgJ0BwcnkucmVzdGl0dXRpb24udmFsaWRhdGUnIHwgaTE4biB9fVxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvcHJ5LXN0ZXA+XG4gICAgPHByeS1zdGVwPlxuICAgICAgPGg0IGNsYXNzPVwibS1zdGVwcGVyLWl0ZW1fX3RpdGxlXCIgKnN0ZXBUaXRsZT57eyAnQHByeS5yZXN0aXR1dGlvbi5kYXRhU291cmNlJyB8IGkxOG4gfX08L2g0PlxuICAgICAgPHByeS1kYXRhc291cmNlLXNlbGVjdG9yXG4gICAgICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgICAgICBiaW5kVmFsdWU9XCJpZFwiXG4gICAgICAgIHRyYW5zbGF0aW9uU3RyaW5nQmFzZT1cIkBwcnkuY29tcG9uZW50cy5jaGlwc1NlbGVjdG9yLmRhdGFzb3VyY2UuXCJcbiAgICAgICAgKGl0ZW1zQ2hhbmdlZCk9XCJkYXRhc291cmNlc0NoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgIFt1c2VkSXRlbXNdPVwiKHVzZWREYXRhc291cmNlcyQgfCBhc3luYykgPz8gW11cIlxuICAgICAgICBbc2hvd0FjdGlvbkJ1dHRvbnNdPVwiZmFsc2VcIlxuICAgICAgPjwvcHJ5LWRhdGFzb3VyY2Utc2VsZWN0b3I+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbnNcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzdWJtaXQ6IHRydWUgfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvcHJ5LXN0ZXA+XG4gICAgPHByeS1zdGVwPlxuICAgICAgPGg0IGNsYXNzPVwibS1zdGVwcGVyLWl0ZW1fX3RpdGxlXCIgKnN0ZXBUaXRsZT57eyAnQHByeS5yZXN0aXR1dGlvbi52aXN1YWxpemUnIHwgaTE4biB9fTwvaDQ+XG4gICAgICA8ZGl2IGNsYXNzPVwid2lkZ2V0LWluc3RhbmNpYXRvclwiPlxuICAgICAgICA8cHJ5LXdpZGdldC1pbnN0YW5jaWF0b3JcbiAgICAgICAgICBbc3RhbmRhbG9uZV09XCJ0cnVlXCJcbiAgICAgICAgICBbc3RhdGljTWFuaWZlc3RdPVwiY3VzdG9tTWFuaWZlc3RcIlxuICAgICAgICAgIFtvcGVuJF09XCJvcGVuU2V0dGluZ3MkXCJcbiAgICAgICAgICAobWFuaWZlc3RNb2RpZmllZCk9XCJ1cGRhdGVNYW5pZmVzdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvcHJ5LXdpZGdldC1pbnN0YW5jaWF0b3I+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvcHJ5LXN0ZXA+XG4gICAgPHByeS1zdGVwPlxuICAgICAgPGg0IGNsYXNzPVwibS1zdGVwcGVyLWl0ZW1fX3RpdGxlXCIgKnN0ZXBUaXRsZT57eyAnQHByeS5yZXN0aXR1dGlvbi5zaGFyZScgfCBpMThuIH19PC9oND5cbiAgICAgIDxoMz57eyAnQHByeS5yZXN0aXR1dGlvbi5hY2Nlc3MnIHwgaTE4biB9fTwvaDM+XG4gICAgICB7eyAnQHByeS5yZXN0aXR1dGlvbi5jaG9pY2UnIHwgaTE4biB9fVxuICAgICAgPHVsPlxuICAgICAgICA8bGk+XG4gICAgICAgICAge3sgJ0BwcnkucmVzdGl0dXRpb24ucHVibGljJyB8IGkxOG4gfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICB7eyAnQHByeS5yZXN0aXR1dGlvbi5vcicgfCBpMThuIH19XG4gICAgICA8dWw+XG4gICAgICAgIDxsaT5cbiAgICAgICAgICB7eyAnQHByeS5yZXN0aXR1dGlvbi5wcml2YXRlJyB8IGkxOG4gfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8cHJ5LXNoYXJlXG4gICAgICAgIFsobmdNb2RlbCldPVwidmlzaWJpbGl0eVwiXG4gICAgICAgIFt1c2VycyRdPVwidXNlcnMkXCJcbiAgICAgICAgbGFiZWxQcm9wZXJ0eT1cIm5hbWVcIlxuICAgICAgICB2YWx1ZVByb3BlcnR5PVwiaWRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiY29uc3VsdE1vZGVcIlxuICAgICAgPjwvcHJ5LXNoYXJlPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25zXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9wcnktc3RlcD5cbiAgPC9wcnktc3RlcHBlcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2J1dHRvbnMgbGV0LXN1Ym1pdD1cInN1Ym1pdFwiPlxuICA8ZGl2IGNsYXNzPVwibS1idG4tZ3JvdXAgLXNwYWNlLWV2ZW5seSBhY3Rpb25zXCI+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwicHJldihzdGVwcGVyKVwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIj5cbiAgICAgIHt7ICdAcHJ5LnJlc3RpdHV0aW9uLmNsb3NlJyB8IGkxOG4gfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJnb05leHQoc3RlcHBlciwgc3VibWl0KVwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCI+XG4gICAgICB7eyAoY29uc3VsdE1vZGUgPyAnQHByeS5yZXN0aXR1dGlvbi5zaGFyZScgOiAnQHByeS5yZXN0aXR1dGlvbi5uZXh0JykgfCBpMThuIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -2,10 +2,10 @@ import { Component, ViewEncapsulation } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class PryCatalogCssComponent {
4
4
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryCatalogCssComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: PryCatalogCssComponent, selector: "pry-restitution-css", ngImport: i0, template: '', isInline: true, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"], encapsulation: i0.ViewEncapsulation.None }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: PryCatalogCssComponent, selector: "pry-restitution-css", ngImport: i0, template: '', isInline: true, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%;width:100%;overflow:hidden}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"], encapsulation: i0.ViewEncapsulation.None }); }
6
6
  }
7
7
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryCatalogCssComponent, decorators: [{
8
8
  type: Component,
9
- args: [{ selector: 'pry-restitution-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"] }]
9
+ args: [{ selector: 'pry-restitution-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%;width:100%;overflow:hidden}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"] }]
10
10
  }] });
11
11
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL3Jlc3RpdHV0aW9uL3N0eWxlL2Nzcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRN0QsTUFBTSxPQUFPLHNCQUFzQjs4R0FBdEIsc0JBQXNCO2tHQUF0QixzQkFBc0IsMkRBSnZCLEVBQUU7OzJGQUlELHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxxQkFBcUIsWUFDckIsRUFBRSxpQkFFRyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktcmVzdGl0dXRpb24tY3NzJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi9fby1yZXN0aXR1dGlvbi1saXN0LnNjc3MnLCAnLi9fby1yZXN0aXR1dGlvbi5zY3NzJywgJy4vcmVzdGl0dXRpb24tY2F0YWxvZy5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFByeUNhdGFsb2dDc3NDb21wb25lbnQge31cbiJdfQ==
@@ -22,11 +22,11 @@ import { v4 } from 'uuid';
22
22
 
23
23
  class PryCatalogCssComponent {
24
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryCatalogCssComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: PryCatalogCssComponent, selector: "pry-restitution-css", ngImport: i0, template: '', isInline: true, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"], encapsulation: i0.ViewEncapsulation.None }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: PryCatalogCssComponent, selector: "pry-restitution-css", ngImport: i0, template: '', isInline: true, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%;width:100%;overflow:hidden}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"], encapsulation: i0.ViewEncapsulation.None }); }
26
26
  }
27
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PryCatalogCssComponent, decorators: [{
28
28
  type: Component,
29
- args: [{ selector: 'pry-restitution-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"] }]
29
+ args: [{ selector: 'pry-restitution-css', template: '', encapsulation: ViewEncapsulation.None, styles: [".o-catalog__filters__by-type__list,.o-catalog__list{margin:0;padding:0}.o-catalog__filters__by-type__list li,.o-catalog__list li{list-style:none}.o-catalog{display:flex;flex-direction:column;overflow:scroll;width:28.125rem;height:100%;padding:.9375rem;border-right-width:.0625rem;border-right-style:solid}.o-catalog .a-h2{padding-top:.625rem}.o-catalog pry-restitution{flex:1}.o-catalog__filters{padding-top:.3125rem}.o-catalog__filters__by-name{position:relative;margin-bottom:1.25rem}.o-catalog__filters__by-name .a-icon{position:absolute;left:.6875rem;bottom:.5625rem;pointer-events:none}.o-catalog__filters__by-name .a-form-field{width:60%;padding-left:2.1875rem}.o-catalog__filters__by-type{display:flex;flex-wrap:wrap;column-gap:1.25rem}.o-catalog__filters__by-type__list{display:flex;gap:.3125rem}.o-catalog__filters__by-type__list li{width:2.1875rem;height:2.1875rem}.o-catalog__filters__by-type__list li .a-label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;border-width:.0625rem;border-style:solid;border-radius:.3125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like{margin-top:5px;font-weight:300;font-size:.8125rem}.o-catalog__filters__by-type .a-btn.a-btn--icon-text.-link-like[disabled]{opacity:0}.o-catalog .is-point{cursor:default}.o-catalog__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9375rem;justify-content:space-around;padding:1.875rem 0}.o-catalog__list__icon{cursor:pointer}.o-catalog__list pry-catalog-item{max-height:13.125rem}.o-catalog__list__item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;max-width:8.125rem;height:100%;text-align:center;cursor:move}.o-catalog__list__item .is-private{position:absolute;top:.3125rem;left:.3125rem}.o-catalog__list__item img{margin-top:.625rem}.o-catalog__list__item img.is-full-width{width:100%;height:30%;object-fit:cover}.o-catalog__list__item .a-btn--icon-only{margin-bottom:.6875rem;padding:.8125rem}.o-catalog__list__item__libelle{width:100%;margin-bottom:0;padding:.9375rem .625rem;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o-catalog__list__item__action{width:100%;padding:.375rem .625rem;text-align:center}.o-catalog__list__item__action .a-btn--secondary{height:auto;padding:0 .3125rem}.o-catalog__create{align-self:center;width:fit-content;margin-bottom:1rem}.o-catalog .o-accordion pry-accordion-item:first-child .o-accordion__title{border-top-style:solid;border-top-width:.0625rem;margin-top:.625rem}\n", ".o-restitution{display:flex;flex-direction:column;flex:1;max-height:100%;width:100%;overflow:hidden}.o-restitution pry-stepper{display:flex;flex:1;max-height:100%}.o-restitution .widget-instanciator{position:relative;height:100%;margin-bottom:.9375rem}.o-restitution .m-btn-group.actions{margin-top:auto}\n", ".o-presentation{margin:0;padding:0}.o-presentation li{list-style:none}.o-manifest-layout__toolbox div:first-child{margin-left:auto}.o-manifest-layout__toolbox.-u-hidden{display:none}.o-manifest-layout__content{height:100%;overflow:auto}.o-manifest-layout__content .pointer{cursor:pointer}.pry-viewingpresentation{display:flex;overflow-y:scroll}.pry-viewingpresentation .o-manifest-layout__content,.pry-viewingpresentation .o-dashboard-widget{grid-area:middle;flex:100% 1 1}.o-presentation{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.875rem;padding:.25rem .25rem 1.25rem;overflow-y:visible}.o-presentation .a-h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-presentation__item{display:flex;flex-direction:column;align-items:stretch}.o-presentation__item:hover{cursor:pointer}.o-presentation__item:hover .o-presentation__item__footer pry-icon{visibility:visible;opacity:1}.o-presentation__item__image{cursor:pointer;overflow:hidden;height:6.875rem;display:flex;align-items:center;justify-content:center}.o-presentation__item__image img{width:100px}.o-presentation__item__image .is-full-width{width:100%;height:100%;object-fit:cover}.o-presentation__item__header{position:relative;display:flex;align-items:flex-start;justify-content:center;height:6.875rem}.o-presentation__item__header pry-icon.is-private{position:absolute;top:.625rem;left:.625rem;z-index:1}.o-presentation__item__header .a-tooltip{width:100%}.o-presentation__item__txt{flex-grow:1;padding:.625rem .9375rem;display:flex;flex-direction:column;justify-content:space-between}.o-presentation__item__txt .a-h3{padding-bottom:.3125rem}.o-presentation__item__txt .a-p.-date{padding-top:.625rem;margin-bottom:0}.o-presentation__item__title-container.a-tooltip[data-tooltip]:after{top:calc(100% - 15px)}.o-presentation__item__description-container{position:relative;width:100%;display:flex;align-content:center;min-height:1.25rem}.o-presentation__item__description-container.a-tooltip[data-tooltip]:after{width:100%}.o-presentation__item__description{width:100%;max-height:2.5rem}.o-presentation__item__footer{display:flex;align-content:center;justify-content:center;font-size:.875rem;line-height:1.125rem;padding:.1875rem 0;max-height:2.3125rem}.o-presentation__item__footer .a-btn{margin-left:1.25rem}.o-presentation__item__footer pry-icon{visibility:hidden;opacity:0;transition:visibility .1s linear,opacity .1s linear;margin-left:.1875rem}.o-presentation-consult{width:100%;padding:.9375rem}.more-button{position:absolute;top:.375rem;right:.625rem}.more-button .a-btn{padding:.125rem 0;border-radius:50%}.m-context-menu{position:absolute}.o-restitution-catalog .o-manifest-layout__toolbox{justify-content:space-between;align-items:center}.o-restitution-catalog .o-manifest-layout__content{display:flex;flex-direction:column}.o-restitution-catalog .o-manifest-layout__content .restitution{display:flex;flex:1;max-height:100%}.m-context-menu__list__item .a-btn{white-space:nowrap}\n"] }]
30
30
  }] });
31
31
 
32
32
  class PryRestitutionComponent extends SubscriptionnerDirective {
@@ -190,7 +190,7 @@ class PryRestitutionComponent extends SubscriptionnerDirective {
190
190
  }
191
191
  lastStepCompleted() {
192
192
  this.form.image = this.image;
193
- if (this.edit) {
193
+ if (!this.consultMode) {
194
194
  this.store.dispatch(ConfigActions.saveWidget({
195
195
  widget: {
196
196
  id: this.selectedRestitution?.id ?? v4(),
@@ -1 +1 @@
1
- {"version":3,"file":"provoly-dashboard-restitution.mjs","sources":["../../../../projects/provoly/dashboard/restitution/style/css.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution/restitution.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution/restitution.component.html","../../../../projects/provoly/dashboard/restitution/components/restitution-catalog/restitution-catalog.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution-catalog/restitution-catalog.component.html","../../../../projects/provoly/dashboard/restitution/components/restitution-list-item/restitution-list-item.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution-list-item/restitution-list-item.component.html","../../../../projects/provoly/dashboard/restitution/components/restitution-list/restitution-list.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution-list/restitution-list.component.html","../../../../projects/provoly/dashboard/restitution/i18n/en.translations.ts","../../../../projects/provoly/dashboard/restitution/i18n/fr.translations.ts","../../../../projects/provoly/dashboard/restitution/restitution.module.ts","../../../../projects/provoly/dashboard/restitution/provoly-dashboard-restitution.ts"],"sourcesContent":["import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'pry-restitution-css',\n template: '',\n styleUrls: ['./_o-restitution-list.scss', './_o-restitution.scss', './restitution-catalog.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class PryCatalogCssComponent {}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n CatalogEntry,\n Class,\n ClassActions,\n ClassSelectors,\n ConfigActions,\n DashboardActions,\n DataSource,\n DataSourceActions,\n DataSourceSelectors,\n DEFAULT_RESTITUTION_ICON_URL,\n FieldActions,\n getDisplayOptions,\n LibraryTypes,\n PryVisibility,\n PryVisibilityType,\n SearchActions,\n SubscriptionnerDirective,\n ToolboxManifestService,\n ToolboxMenuService,\n ViewMode,\n Widget,\n WidgetManifest\n} from '@provoly/dashboard';\nimport { PryStepperComponent } from '@provoly/dashboard/components/stepper';\nimport { map, Observable, Subject } from 'rxjs';\nimport { v4 } from 'uuid';\nimport { RestitutionForm } from '../../model/restitution.model';\n\n@Component({\n selector: 'pry-restitution',\n templateUrl: './restitution.component.html'\n})\nexport class PryRestitutionComponent extends SubscriptionnerDirective implements OnInit {\n types$: Observable<{ icon: string; label: string; type: string; manifest: WidgetManifest }[]>;\n classes$: Observable<Class[]>;\n customManifest: WidgetManifest = {\n type: 'detail',\n layout: { x: 1, y: 1, width: 1, height: 1 },\n options: { itemIds: [] as string[] }\n };\n form: RestitutionForm = {\n selectedWidget: '',\n selectedDataSources: [],\n title: '',\n image: DEFAULT_RESTITUTION_ICON_URL,\n description: ''\n };\n visibility: PryVisibility = {\n type: PryVisibilityType.PRIVATE,\n users: []\n };\n openSettings$: Subject<void> = new Subject<void>();\n users$: Observable<any[]> | null = null;\n consultMode: boolean = false;\n @Input() selectedRestitution: Widget | null = null;\n @Input() edit: boolean = true;\n @Output() restitutionCreated = new EventEmitter<void>();\n widgetsList$: Observable<CatalogEntry[]>;\n type: LibraryTypes = LibraryTypes.ILLUSTRATION;\n @Input() isDataSourceSelected = false;\n @Input() bindId: any;\n image: string = DEFAULT_RESTITUTION_ICON_URL;\n widgetTypes: { icon: string; label: string; type: string; manifest: WidgetManifest }[] = [];\n usedDatasources$: Observable<DataSource[]>;\n\n constructor(\n private toolboxManifestService: ToolboxManifestService,\n private store: Store,\n private toolboxMenuService: ToolboxMenuService\n ) {\n super();\n this.store.dispatch(DataSourceActions.load());\n this.store.dispatch(ClassActions.load());\n this.store.dispatch(ConfigActions.loadCustomization());\n this.store.dispatch(FieldActions.load());\n\n this.types$ = this.toolboxMenuService.types$.pipe(\n map((type) => type.filter((filteredType) => filteredType.type !== 'detail'))\n );\n this.subscriptions.add(this.types$.subscribe((types) => (this.widgetTypes = types)));\n this.classes$ = this.store.select(ClassSelectors.classes);\n this.widgetsList$ = this.toolboxMenuService.menuStructure$.pipe(\n map((menu) =>\n menu\n .map((items) => [...items.sub.filter((s) => this.toolboxManifestService.isModel(s.type))])\n .reduce((acc, items) => [...acc, ...items], [])\n )\n );\n this.usedDatasources$ = this.store\n .select(DataSourceSelectors.getDataSourcesSorted)\n .pipe(map((allDss) => allDss.filter((datasource) => this.form.selectedDataSources.includes(datasource.id))));\n }\n\n ngOnInit(): void {\n if (this.selectedRestitution) {\n if (!this.edit) {\n this.consultMode = true;\n this.store.dispatch(DashboardActions.updateDisplayOptions({ mode: ViewMode.CONSULT }));\n } else {\n this.store.dispatch(\n DashboardActions.updateDisplayOptions({\n mode: ViewMode.CUSTOM,\n customDisplay: {\n ...getDisplayOptions(ViewMode.EDITION),\n widgetContextMenu: {\n datasourceSelection: false,\n parameters: true,\n window: false,\n maximize: false,\n addToCatalog: false,\n delete: false,\n changeSpot: false\n }\n }\n })\n );\n }\n this.customManifest = JSON.parse(this.selectedRestitution.content);\n if (Array.isArray(this.customManifest.datasource)) {\n this.customManifest.datasource.forEach((dataSource: string) => {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: dataSource,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.ngOnInit()-1'\n })\n );\n });\n } else {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: this.customManifest.datasource as string,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.ngOnInit()-2'\n })\n );\n }\n if (this.selectedRestitution.visibility) {\n this.visibility = this.selectedRestitution.visibility;\n }\n this.form.selectedDataSources.forEach((dataSource: string) => {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: dataSource,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.ngOnInit()-3'\n })\n );\n });\n this.customManifest = JSON.parse(this.selectedRestitution.content);\n this.form = {\n selectedWidget: this.customManifest.type,\n selectedDataSources: (this.customManifest.datasource ?? []) as string[],\n title: this.selectedRestitution.name,\n ...this.selectedRestitution\n };\n }\n this.image = this.selectedRestitution?.image ?? DEFAULT_RESTITUTION_ICON_URL;\n }\n\n cancel(stepper: PryStepperComponent) {\n this.form.selectedWidget = '';\n this.form.selectedDataSources = [];\n this.form.title = '';\n this.form.description = '';\n this.form.image = '';\n if (this.consultMode || this.selectedRestitution) {\n this.restitutionCreated.emit();\n return;\n }\n this.prev(stepper);\n }\n\n datasourcesChanged($event: DataSource[]) {\n this.form.selectedDataSources = ($event ?? []).map((ds) => ds.id);\n }\n\n submit(stepper: PryStepperComponent) {\n if (this.consultMode) {\n this.goNext(stepper);\n return;\n }\n\n const widgetType = this.widgetTypes.find((widgetType) => widgetType.type === this.form.selectedWidget);\n\n this.customManifest = {\n ...this.customManifest,\n type: this.form.selectedWidget,\n title: this.form.title,\n datasource: this.form.selectedDataSources ?? [],\n header: true,\n options: {\n ...widgetType?.manifest.options,\n title: this.form.title\n }\n };\n this.form.selectedDataSources.forEach((nameQuery: string) => {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: nameQuery,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.submit()'\n })\n );\n });\n this.goNext(stepper);\n setTimeout(() => {\n this.openSettings$.next();\n }, 150);\n }\n\n goNext(stepper: PryStepperComponent, submit?: boolean) {\n submit ? this.submit(stepper) : stepper.next();\n }\n\n prev(stepper: PryStepperComponent) {\n stepper.prev();\n }\n\n updateManifest($event: { widgetIndex: number; manifest: WidgetManifest }) {\n this.customManifest = $event.manifest;\n }\n\n lastStepCompleted() {\n this.form.image = this.image;\n if (this.edit) {\n this.store.dispatch(\n ConfigActions.saveWidget({\n widget: {\n id: this.selectedRestitution?.id ?? v4(),\n content: JSON.stringify(this.customManifest),\n name: this.form.title,\n description: this.form.description,\n image: this.form.image ?? '',\n visibility: this.visibility,\n datasource: this.form.selectedDataSources ?? [],\n modificationDate: ''\n }\n })\n );\n }\n this.store.dispatch(ConfigActions.loadWidgets());\n this.restitutionCreated.emit();\n }\n}\n","<pry-restitution-css></pry-restitution-css>\n<div class=\"o-restitution\">\n <h3 class=\"a-h2 o-restitution__title\">\n {{ (consultMode ? '@pry.restitution.consult' : edit ? '@pry.restitution.edit' : '@pry.restitution.create') | i18n }}\n </h3>\n <pry-stepper #stepper [isConsultMode]=\"consultMode\" (lastStepCompleted)=\"lastStepCompleted()\">\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.configure' | i18n }}</h4>\n <div class=\"m-form-label-field\">\n <label for=\"restitution\" class=\"a-label\">{{ '@pry.restitution.restitution_type' | i18n }}</label>\n <pry-select\n id=\"restitution\"\n [items]=\"types$ | async\"\n [(ngModel)]=\"form.selectedWidget\"\n [disabled]=\"consultMode\"\n [closeOnSelect]=\"true\"\n bindIcon=\"icon\"\n bindLabel=\"label\"\n bindValue=\"type\"\n >\n </pry-select>\n </div>\n <ng-container *ngIf=\"form.selectedWidget !== ''\">\n <div class=\"m-form-label-field\">\n <label for=\"graphTitle\" class=\"a-label\">{{ '@pry.restitution.graph_title' | i18n }}</label>\n <input\n name=\"title\"\n id=\"graphTitle\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.title\"\n type=\"text\"\n [disabled]=\"consultMode\"\n maxlength=\"30\"\n ngDefaultControl\n />\n </div>\n <div class=\"m-form-label-field\">\n <label for=\"description\" class=\"a-label\">{{ '@pry.restitution.description' | i18n }}</label>\n <textarea\n name=\"description\"\n id=\"description\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.description\"\n style=\"resize: none\"\n [disabled]=\"consultMode\"\n maxlength=\"255\"\n ngDefaultControl\n >\n </textarea>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image (changed)=\"image = $event\" [iconUrl]=\"image\" [mode]=\"type\"></pry-select-image>\n </div>\n </div>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"cancel(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button\n (click)=\"goNext(stepper)\"\n [disabled]=\"form.selectedWidget === '' || form.title.trim().length === 0\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </ng-container>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.dataSource' | i18n }}</h4>\n <pry-datasource-selector\n bindLabel=\"name\"\n bindValue=\"id\"\n translationStringBase=\"@pry.components.chipsSelector.datasource.\"\n (itemsChanged)=\"datasourcesChanged($event)\"\n [usedItems]=\"(usedDatasources$ | async) ?? []\"\n [showActionButtons]=\"false\"\n ></pry-datasource-selector>\n <ng-container [ngTemplateOutlet]=\"buttons\" [ngTemplateOutletContext]=\"{ submit: true }\"></ng-container>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.visualize' | i18n }}</h4>\n <div class=\"widget-instanciator\">\n <pry-widget-instanciator\n [standalone]=\"true\"\n [staticManifest]=\"customManifest\"\n [open$]=\"openSettings$\"\n (manifestModified)=\"updateManifest($event)\"\n ></pry-widget-instanciator>\n </div>\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.share' | i18n }}</h4>\n <h3>{{ '@pry.restitution.access' | i18n }}</h3>\n {{ '@pry.restitution.choice' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.public' | i18n }}\n </li>\n </ul>\n {{ '@pry.restitution.or' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.private' | i18n }}\n </li>\n </ul>\n <pry-share\n [(ngModel)]=\"visibility\"\n [users$]=\"users$\"\n labelProperty=\"name\"\n valueProperty=\"id\"\n [disabled]=\"consultMode\"\n ></pry-share>\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </pry-step>\n </pry-stepper>\n</div>\n\n<ng-template #buttons let-submit=\"submit\">\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper, submit)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ (consultMode ? '@pry.restitution.share' : '@pry.restitution.next') | i18n }}\n </button>\n </div>\n</ng-template>\n","import { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { Component, TemplateRef, ViewChild, ViewContainerRef } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { ConfigActions, ConfigSelectors, PryVisibilityType, ViewMode, Widget } from '@provoly/dashboard';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Component({\n selector: 'pry-restitution-catalog',\n templateUrl: './restitution-catalog.component.html'\n})\nexport class PryRestitutionCatalogComponent {\n restitutions$: Observable<Widget[]>;\n search$ = new BehaviorSubject('');\n filteredRestitution$: Observable<Widget[]>;\n mode = ViewMode;\n selectedMode: ViewMode = ViewMode.CATALOG;\n selectedRestitution: Widget | null = null;\n restitution?: Widget;\n PryVisibilityType = PryVisibilityType;\n overlayRef?: OverlayRef;\n @ViewChild('modalActions', { read: TemplateRef }) templateActions!: TemplateRef<any>;\n\n constructor(private store: Store, protected overlay: Overlay, protected viewContainerRef: ViewContainerRef) {\n this.store.dispatch(ConfigActions.loadWidgets());\n this.store.dispatch(ConfigActions.getMapStyles());\n\n this.restitutions$ = this.store\n .select(ConfigSelectors.catalog)\n .pipe(\n map((restitutionList) =>\n [...restitutionList].sort((a, b) =>\n a.modificationDate ? b.modificationDate.localeCompare(a.modificationDate) : 1\n )\n )\n );\n this.filteredRestitution$ = combineLatest([this.restitutions$, this.search$]).pipe(\n map(([restitutions, search]) =>\n restitutions.filter(\n (restitution) => search.length === 0 || restitution.name.toLowerCase().includes(search.toLowerCase())\n )\n )\n );\n }\n\n selectMode(newMode: ViewMode) {\n this.selectedMode = newMode;\n }\n\n selectRestitution(restitution: Widget) {\n this.selectedRestitution = restitution;\n this.selectMode(this.mode.CONSULT);\n this.search$.next('');\n }\n\n closeRestitution($event: void) {\n this.selectedRestitution = null;\n this.selectMode(this.mode.CATALOG);\n }\n\n deleteRestitution(id: string) {\n this.store.dispatch(ConfigActions.confirmRestitutionDeletion({ id }));\n this.toggleModalActions();\n }\n\n editRestitution(restitution: Widget) {\n this.selectedRestitution = restitution;\n this.selectMode(ViewMode.EDITION);\n this.search$.next('');\n this.overlayRef?.dispose();\n this.overlayRef = undefined;\n }\n\n toggleModalActions(restitution?: Widget, moreButton?: HTMLButtonElement) {\n if (!this.overlayRef && restitution) {\n this.selectedRestitution = restitution;\n this.overlayRef = this.overlay.create(\n new OverlayConfig({\n hasBackdrop: true,\n panelClass: ['m-context-menu-wrapper'],\n backdropClass: 'backdrop'\n })\n );\n this.overlayRef.backdropClick().subscribe(() => this.toggleModalActions(restitution));\n this.overlayRef.attach(new TemplatePortal(this.templateActions, this.viewContainerRef));\n const contextMenu = document.querySelector('div.m-context-menu') as HTMLDivElement;\n if (!!contextMenu && moreButton) {\n const rect = moreButton?.getBoundingClientRect();\n contextMenu.style.left = (rect?.left ?? 0) - (contextMenu?.clientWidth ?? 0) + 23 + 'px';\n contextMenu.style.top = (rect?.top ?? 0) + 30 + 'px';\n }\n } else {\n this.overlayRef?.dispose();\n this.overlayRef = undefined;\n this.selectedRestitution = null;\n }\n }\n}\n","<pry-restitution-css></pry-restitution-css>\n<div class=\"o-manifest-layout o-restitution-catalog\">\n <ng-template [ngIf]=\"selectedMode === mode.CATALOG\">\n <div class=\"o-manifest-layout__toolbox\">\n <button\n type=\"button\"\n (click)=\"selectMode(mode.CREATION)\"\n class=\"a-btn a-btn--primary\"\n data-tooltip-position=\"bottom\"\n *pryAccess=\"{ module: 'dashboard', page: 'restitution', action: 'create' }\"\n >\n <pry-icon iconSvg=\"add\"></pry-icon>\n {{ '@pry.restitution.create' | i18n }}\n </button>\n <div>\n <div class=\"o-catalog__search o-manifest-layout__toolbox__search\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.restitution.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n </div>\n </div>\n <div class=\"o-manifest-layout__content\">\n <h1 class=\"a-h1\">{{ '@pry.restitution.catalog' | i18n }}</h1>\n\n <div class=\"o-presentation-wrapper\">\n <ul class=\"o-presentation\">\n <li class=\"o-presentation__item\" *ngFor=\"let restitution of filteredRestitution$ | async; let index = index\">\n <div class=\"o-presentation__item__header\">\n <ng-container *ngIf=\"restitution.visibility?.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n iconSvg=\"private\"\n class=\"is-private a-tooltip -tooltip-no-wrap\"\n [attr.data-tooltip]=\"'@pry.restitution.lock' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div\n class=\"a-tooltip -tooltip-no-wrap\"\n (click)=\"selectRestitution(restitution)\"\n [attr.data-tooltip]=\"'@pry.restitution.consultRestitution' | i18n\"\n >\n <div class=\"o-presentation__item__image\">\n <img\n alt=\"\"\n class=\"is-full-width\"\n [src]=\"restitution.image | getSecuredImage : [600, 600] | async\"\n />\n </div>\n </div>\n <ng-container *ngIf=\"restitution.owner\">\n <div class=\"more-button\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--more a-tooltip -tooltip-no-wrap\"\n [id]=\"'more-actions-' + index\"\n [attr.data-tooltip]=\"'@pry.restitution.more' | i18n\"\n (click)=\"toggleModalActions(restitution, button)\"\n #button\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n </button>\n </div>\n </ng-container>\n </div>\n <div\n class=\"o-presentation__item__txt\"\n (click)=\"selectRestitution(restitution)\"\n [attr.data-tooltip]=\"'@pry.restitution.consultRestitution' | i18n\"\n >\n <div class=\"o-presentation__item__title-container\" ellipsis textElementSelector=\".a-h3\">\n <h3 class=\"a-h3\">{{ restitution.name }}</h3>\n </div>\n <div class=\"o-presentation__item__description-container\" ellipsis textElementSelector=\".a-p\">\n <div class=\"o-presentation__item__description a-p\">\n {{ restitution.description }}\n </div>\n </div>\n <p class=\"a-p -date\">{{ restitution.modificationDate | sinceDate }}</p>\n </div>\n\n <div\n class=\"o-presentation__item__footer a-tooltip -tooltip-no-wrap\"\n (click)=\"selectRestitution(restitution)\"\n [attr.data-tooltip]=\"'@pry.restitution.consultRestitution' | i18n\"\n >\n <button class=\"a-btn\">\n {{ '@pry.restitution.view' | i18n }}\n <pry-icon [width]=\"20\" [height]=\"20\" iconSvg=\"arrow_right\"></pry-icon>\n </button>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </ng-template>\n <ng-template #modalActions>\n <div class=\"m-context-menu\">\n <ul\n *ngIf=\"selectedRestitution\"\n class=\"m-context-menu__list\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog restitution options\"\n >\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n (click)=\"editRestitution(selectedRestitution)\"\n [disabled]=\"!selectedRestitution.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'restitution', action: 'edit' }\"\n >\n {{ '@pry.restitution.update' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n #openModal\n (click)=\"deleteRestitution(selectedRestitution.id)\"\n [disabled]=\"!selectedRestitution.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'restitution', action: 'delete' }\"\n >\n {{ '@pry.restitution.delete' | i18n }}\n </button>\n </li>\n </ul>\n </div>\n </ng-template>\n\n <ng-template [ngIf]=\"selectedMode === mode.CONSULT\">\n <div class=\"o-manifest-layout__toolbox\">\n <button type=\"button\" (click)=\"selectMode(mode.CATALOG)\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.backToCatalog' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content\">\n <pry-restitution\n [selectedRestitution]=\"selectedRestitution\"\n [edit]=\"false\"\n (restitutionCreated)=\"closeRestitution($event)\"\n class=\"restitution\"\n ></pry-restitution>\n </div>\n </ng-template>\n <ng-template [ngIf]=\"selectedMode === mode.CREATION\">\n <div class=\"o-manifest-layout__toolbox\">\n <button type=\"button\" (click)=\"selectMode(mode.CATALOG)\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.backToCatalog' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content\">\n <pry-restitution\n [edit]=\"false\"\n (restitutionCreated)=\"closeRestitution($event)\"\n class=\"restitution\"\n ></pry-restitution>\n </div>\n </ng-template>\n <ng-template [ngIf]=\"selectedMode === mode.EDITION\">\n <div class=\"o-manifest-layout__toolbox\">\n <button type=\"button\" (click)=\"selectMode(mode.CATALOG)\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.backToCatalog' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content\">\n <pry-restitution\n (restitutionCreated)=\"closeRestitution($event)\"\n [selectedRestitution]=\"selectedRestitution\"\n class=\"restitution\"\n ></pry-restitution>\n </div>\n </ng-template>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n CatalogEntry,\n ConfigSelectors,\n DashboardActions,\n DashboardGridLayout,\n DashboardSelectors,\n PryVisibilityType,\n SubscriptionnerDirective,\n ToolboxManifestService,\n Widget\n} from '@provoly/dashboard';\nimport { map, Observable } from 'rxjs';\n\n@Component({\n selector: 'pry-catalog-item',\n templateUrl: './restitution-list-item.component.html'\n})\nexport class PryRestitutionListItemComponent extends SubscriptionnerDirective {\n @Input() widget!: CatalogEntry;\n @Input() translate: boolean = true;\n @Output() selectRestitution = new EventEmitter<Widget>();\n catalog: Widget[] | undefined;\n automaticGridMode$: Observable<boolean>;\n automaticGridMode: boolean = false;\n PryVisibilityType = PryVisibilityType;\n\n constructor(private store: Store, private toolboxManifestService: ToolboxManifestService) {\n super();\n this.store.select(ConfigSelectors.catalog).subscribe((catalog: Widget[]) => (this.catalog = catalog));\n this.automaticGridMode$ = this.store\n .select(DashboardSelectors.gridLayout)\n .pipe(map((layout) => layout !== DashboardGridLayout.MANUAL));\n this.subscriptions.add(this.automaticGridMode$.subscribe((modeAuto) => (this.automaticGridMode = modeAuto)));\n }\n\n dragStart($event: DragEvent, type: string) {\n if (!this.automaticGridMode) {\n this.toolboxManifestService.dataTransfer($event, type);\n }\n }\n\n emitSelectedRestitution(catalogEntry: CatalogEntry) {\n if (catalogEntry.isCustom) {\n this.catalog?.forEach((widget: Widget) => {\n if (widget.id === catalogEntry.type) {\n this.selectRestitution.emit(widget);\n }\n });\n }\n }\n\n viewInDashboard(widget: CatalogEntry) {\n this.store.dispatch(DashboardActions.addWidgetToPresentation({ widgetType: widget.type }));\n }\n}\n","<li\n class=\"o-catalog__list__item\"\n [class.is-point]=\"automaticGridMode$ | async\"\n [draggable]=\"!(automaticGridMode$ | async)\"\n role=\"listitem\"\n aria-grabbed=\"false\"\n aria-haspopup=\"true\"\n tabindex=\"-1\"\n [title]=\"widget.description ?? widget.label | i18n : { warn: false }\"\n (dragstart)=\"dragStart($event, widget.type)\"\n>\n <ng-container *ngIf=\"automaticGridMode$ | async\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n (click)=\"viewInDashboard(widget)\"\n [title]=\"'@pry.restitution.add_icon' | i18n\"\n >\n <pry-icon [width]=\"25\" [height]=\"25\" iconSvg=\"add_column\" class=\"o-catalog__list__icon\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.restitution.add_icon' | i18n }}</span>\n </button>\n </ng-container>\n <img\n [alt]=\"widget.label | i18n : { warn: false }\"\n [src]=\"widget.icon | getSecuredImage : [53, 53] | async\"\n [height]=\"53\"\n [width]=\"53\"\n />\n <p class=\"o-catalog__list__item__libelle\" *ngIf=\"widget.isCustom; else translate\">{{ widget.label }}</p>\n <ng-template #translate>\n <p class=\"o-catalog__list__item__libelle\">{{ widget.label | i18n : { warn: false } }}</p>\n </ng-template>\n <ng-container *ngIf=\"widget.visibility?.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n iconSvg=\"private\"\n class=\"is-private a-tooltip\"\n [attr.data-tooltip]=\"'@pry.restitution.lock' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div class=\"o-catalog__list__item__action\" *ngIf=\"widget.isCustom\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"emitSelectedRestitution(widget)\">\n {{ '@pry.restitution.view' | i18n }}\n </button>\n </div>\n</li>\n","import { Component, Input } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n CatalogEntry,\n ConfigActions,\n PryI18nService,\n PryVisibilityType,\n SubscriptionnerDirective,\n ToolboxManifestService,\n ToolboxMenuService,\n ViewMode,\n Widget\n} from '@provoly/dashboard';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\n\n@Component({\n selector: 'pry-catalog',\n templateUrl: './restitution-list.component.html'\n})\nexport class PryRestitutionListComponent extends SubscriptionnerDirective {\n @Input() showTabs = true;\n @Input()\n get customModels(): string[] {\n return this._customModels;\n }\n set customModels(models: string[]) {\n this._customModels = ['detail', 'iframe', ...models];\n }\n private _customModels = ['detail', 'iframe'];\n search$ = new BehaviorSubject('');\n type$ = new BehaviorSubject<undefined | string>(undefined);\n filteredWidgets$: Observable<CatalogEntry[]>;\n nonCustomWidgets$: Observable<CatalogEntry[]>;\n customWidgets$: Observable<CatalogEntry[]>;\n types$: Observable<{ icon: string; label: string; type: string }[]>;\n selectedRestitution: Widget | null = null;\n mode = ViewMode;\n selectedMode: ViewMode = ViewMode.CATALOG;\n categories = ['model', 'noModel'];\n PryVisibilityType = PryVisibilityType;\n\n constructor(\n private toolboxMenuService: ToolboxMenuService,\n private translateService: PryI18nService,\n private toolboxManifestService: ToolboxManifestService,\n private store: Store\n ) {\n super();\n this.store.dispatch(ConfigActions.loadWidgets());\n this.types$ = this.toolboxMenuService.types$;\n this.filteredWidgets$ = combineLatest([this.toolboxMenuService.menuList$, this.search$, this.type$]).pipe(\n map(([widgets, search, type]) =>\n widgets.filter(\n (widget) =>\n (search.length === 0 ||\n this.translateService.instant(widget.label).toLocaleLowerCase().includes(search.toLocaleLowerCase())) &&\n (!type || this.toolboxManifestService.get(widget.type).type === type)\n )\n )\n );\n this.nonCustomWidgets$ = this.filteredWidgets$.pipe(\n map((widgets) =>\n widgets.filter(\n (widget) => this.toolboxManifestService.isModel(widget.type) || this.customModels.includes(widget.type)\n )\n )\n );\n this.customWidgets$ = this.filteredWidgets$.pipe(\n map((widgets) =>\n widgets.filter(\n (widget) => !this.toolboxManifestService.isModel(widget.type) && !this.customModels.includes(widget.type)\n )\n )\n );\n }\n\n selectMode(newMode: ViewMode) {\n this.selectedMode = newMode;\n }\n\n selectRestitution($event: Widget) {\n this.selectedRestitution = $event;\n this.selectMode(ViewMode.CONSULT);\n }\n\n closeRestitution() {\n this.selectedRestitution = null;\n this.selectMode(this.mode.CATALOG);\n }\n}\n","<pry-restitution-css></pry-restitution-css>\n<div class=\"o-catalog\">\n <ng-template [ngIf]=\"selectedMode === mode.CATALOG\">\n <h2 class=\"a-h2\">{{ '@pry.restitution.catalog' | i18n }}</h2>\n <div class=\"o-catalog__filters\">\n <div class=\"o-catalog__filters__by-name\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"a-label u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <pry-icon class=\"search-icon\" iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.action.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n </div>\n <label class=\"a-label\">{{ '@pry.action.filterByType' | i18n }}</label>\n <div class=\"o-catalog__filters__by-type\">\n <ul class=\"o-catalog__filters__by-type__list\">\n <li *ngFor=\"let typeOpt of types$ | async\">\n <input\n type=\"radio\"\n class=\"a-form-field u-sr-only\"\n name=\"catalog-filter\"\n id=\"catalog-button-{{ typeOpt.type }}\"\n [checked]=\"typeOpt.type === (type$ | async)\"\n (change)=\"type$.next(typeOpt.type)\"\n />\n <label\n class=\"a-label\"\n id=\"catalog-button-label-{{ typeOpt.type }}\"\n for=\"catalog-button-{{ typeOpt.type }}\"\n [title]=\"typeOpt.label | i18n : { warn: false }\"\n >\n <span class=\"u-sr-only\">{{ typeOpt.label | i18n : { warn: false } }} </span>\n <pry-icon [width]=\"18\" [height]=\"18\" [iconSvg]=\"typeOpt.icon\"></pry-icon>\n </label>\n </li>\n </ul>\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-text -link-like\"\n (click)=\"type$.next(undefined)\"\n [disabled]=\"!type$.getValue()\"\n [class.u-visually-hidden]=\"!type$.getValue()\"\n >\n <pry-icon [width]=\"15\" [height]=\"15\" iconSvg=\"delete\"></pry-icon>\n {{ '@pry.toolbox.catalog.filter.delete' | i18n }}\n </button>\n </div>\n </div>\n <ng-container *ngIf=\"showTabs; else list\">\n <div class=\"o-accordion\" role=\"tablist\" aria-multiselectable=\"false\">\n <pry-accordion>\n <pry-accordion-item\n *ngFor=\"let category of categories; let index = index\"\n [item]=\"category\"\n [index]=\"index\"\n translationStringBase=\"@pry.restitution.catalogTabs.\"\n [length]=\"\n (category === 'model' ? (nonCustomWidgets$ | async)?.length : (customWidgets$ | async)?.length) ?? 0\n \"\n >\n <ul class=\"o-catalog__list\" role=\"list\" aria-live=\"polite\">\n <ng-container *ngIf=\"category === 'model'\">\n <pry-catalog-item\n *ngFor=\"let widget of nonCustomWidgets$ | async\"\n [widget]=\"widget\"\n (selectRestitution)=\"selectRestitution($event)\"\n ></pry-catalog-item>\n </ng-container>\n <ng-container *ngIf=\"category === 'noModel'\">\n <pry-catalog-item\n *ngFor=\"let widget of customWidgets$ | async\"\n [translate]=\"false\"\n [widget]=\"widget\"\n (selectRestitution)=\"selectRestitution($event)\"\n ></pry-catalog-item>\n </ng-container>\n </ul>\n </pry-accordion-item>\n </pry-accordion>\n </div>\n </ng-container>\n\n <ng-template #list>\n <ul class=\"o-catalog__list\" role=\"list\" aria-live=\"polite\">\n <pry-catalog-item\n *ngFor=\"let widget of filteredWidgets$ | async\"\n [widget]=\"widget\"\n (selectRestitution)=\"selectRestitution($event)\"\n ></pry-catalog-item>\n </ul>\n </ng-template>\n </ng-template>\n\n <ng-template [ngIf]=\"selectedMode === mode.CONSULT\">\n <div class=\"o-catalog__create\">\n <button class=\"a-btn a-btn--secondary\" (click)=\"closeRestitution()\">\n {{ '@pry.restitution.cancel' | i18n }}\n </button>\n </div>\n\n <pry-restitution\n [selectedRestitution]=\"selectedRestitution\"\n [edit]=\"false\"\n (restitutionCreated)=\"closeRestitution()\"\n ></pry-restitution>\n </ng-template>\n\n <ng-template [ngIf]=\"selectedMode === mode.CREATION\">\n <div class=\"o-catalog__create\">\n <button class=\"a-btn a-btn--secondary\" (click)=\"selectMode(mode.CATALOG)\">\n {{ '@pry.restitution.cancel' | i18n }}\n </button>\n </div>\n\n <pry-restitution (restitutionCreated)=\"closeRestitution()\"></pry-restitution>\n </ng-template>\n</div>\n","export const enTranslations = {\n '@pry': {\n restitution: {\n restitution_type: 'Restitution type',\n data_type: 'Data type',\n graph_title: 'Title',\n description: 'Description',\n image: 'Image',\n close: 'Cancel',\n validate: 'Save',\n share: 'Share',\n view: 'View',\n create: 'Create restitution',\n cancel: 'Cancel',\n configure: 'Configure',\n visualize: 'Visualize',\n access: 'Do you want to give access / invite users?',\n public: 'Make this participatory survey accessible to all users in the restitution catalog',\n private: 'Invite certain users of your choice to respond to this participatory survey',\n choice: 'You can :',\n or: 'Or',\n create_title: 'Create a restitution',\n consultRestitution: 'Consult the restitution',\n search: 'Search',\n backToCatalog: 'Back to catalog',\n options: 'Restitution options',\n consult: 'Consult',\n catalog: 'Restitutions catalog',\n add_icon: 'Add this restitution on the presentation',\n dataSource: 'Data',\n noDataSource: 'No data available',\n delete: 'Delete restitution',\n next: 'Next',\n lock: 'Private restitution',\n update: 'Edit information',\n cover: 'Image will cover the whole restitution card',\n catalogTabs: {\n model: 'Restitution models',\n noModel: 'Restitutions catalog'\n }\n }\n }\n};\n","export const frTranslations = {\n '@pry': {\n restitution: {\n restitution_type: 'Type de restitution',\n data_type: 'Type de données',\n graph_title: 'Titre de la restitution',\n description: 'Description',\n image: 'Image',\n close: 'Annuler',\n validate: 'Valider',\n share: 'Partager',\n more: 'Options',\n options: 'Options de la restitution',\n view: 'Consulter',\n create: 'Créer une restitution',\n edit: 'Modifier la restitution',\n cancel: 'Annuler',\n configure: 'Configurer',\n visualize: 'Visualiser',\n access: 'Vous souhaitez donner accès / inviter des utilisateurs ?',\n public: 'Rendre accessible cette restitution à tous les utilisateurs',\n private: 'Rendre accessible à certains utilisateurs de votre choix cette restitution',\n choice: 'Vous pouvez :',\n or: 'Ou',\n search: 'Rechercher',\n backToCatalog: 'Retour au catalogue',\n consult: 'Consulter',\n consultRestitution: 'Consulter la restitution',\n catalog: 'Catalogue des restitutions',\n add_icon: 'Ajouter cette restitution sur la présentation',\n dataSource: 'Donnée(s)',\n noDataSource: 'Aucune donnée disponible',\n delete: 'Supprimer la restitution',\n next: 'Suivant',\n lock: 'Restitution privée',\n update: 'Modifier les informations',\n cover: \"L'image doit couvrir la carte de la restitution\",\n catalogTabs: {\n model: 'Modèles de restitution',\n noModel: 'Restitutions du catalogue'\n }\n }\n }\n};\n","import { CommonModule, DatePipe } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport {\n PryCoreModule,\n PryDashboardModule,\n PryI18nModule,\n PryI18nService,\n PryIconModule,\n PryOverlayModule,\n PrySelectModule,\n PryShareModule\n} from '@provoly/dashboard';\nimport { PryCardModule } from '@provoly/dashboard/components/card';\nimport { PryCheckboxModule } from '@provoly/dashboard/components/checkbox';\nimport { PrySinceDateModule } from '@provoly/dashboard/components/sinceDate';\nimport { PryStepperModule } from '@provoly/dashboard/components/stepper';\nimport { PrySearchModule } from '@provoly/dashboard/search';\nimport { PryRestitutionCatalogComponent } from './components/restitution-catalog/restitution-catalog.component';\nimport { PryRestitutionListComponent } from './components/restitution-list/restitution-list.component';\nimport { PryRestitutionComponent } from './components/restitution/restitution.component';\nimport { enTranslations } from './i18n/en.translations';\nimport { frTranslations } from './i18n/fr.translations';\nimport { PryCatalogCssComponent } from './style/css.component';\nimport { PryRestitutionListItemComponent } from './components/restitution-list-item/restitution-list-item.component';\n\n@NgModule({\n providers: [DatePipe],\n declarations: [\n PryRestitutionListComponent,\n PryRestitutionComponent,\n PryCatalogCssComponent,\n PryRestitutionCatalogComponent,\n PryRestitutionListItemComponent\n ],\n imports: [\n CommonModule,\n PryCoreModule,\n PryIconModule,\n FormsModule,\n PryStepperModule,\n PrySelectModule,\n PryDashboardModule,\n PryShareModule,\n PrySearchModule,\n PryI18nModule,\n PryCardModule,\n PryCheckboxModule,\n PryOverlayModule,\n PrySinceDateModule\n ],\n exports: [\n PryRestitutionListComponent,\n PryRestitutionComponent,\n PryRestitutionCatalogComponent,\n PryRestitutionListItemComponent\n ]\n})\nexport class PryRestitutionModule {\n constructor(private pryTranslateService: PryI18nService) {\n this.pryTranslateService.addLangObject('fr', 'restitution', frTranslations);\n this.pryTranslateService.addLangObject('en', 'restitution', enTranslations);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i6.PryCatalogCssComponent","i1","i4","i5","i6.PryRestitutionComponent","i7.PryCatalogCssComponent","i5.PryRestitutionComponent","i7.PryRestitutionListItemComponent"],"mappings":"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"}
1
+ {"version":3,"file":"provoly-dashboard-restitution.mjs","sources":["../../../../projects/provoly/dashboard/restitution/style/css.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution/restitution.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution/restitution.component.html","../../../../projects/provoly/dashboard/restitution/components/restitution-catalog/restitution-catalog.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution-catalog/restitution-catalog.component.html","../../../../projects/provoly/dashboard/restitution/components/restitution-list-item/restitution-list-item.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution-list-item/restitution-list-item.component.html","../../../../projects/provoly/dashboard/restitution/components/restitution-list/restitution-list.component.ts","../../../../projects/provoly/dashboard/restitution/components/restitution-list/restitution-list.component.html","../../../../projects/provoly/dashboard/restitution/i18n/en.translations.ts","../../../../projects/provoly/dashboard/restitution/i18n/fr.translations.ts","../../../../projects/provoly/dashboard/restitution/restitution.module.ts","../../../../projects/provoly/dashboard/restitution/provoly-dashboard-restitution.ts"],"sourcesContent":["import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'pry-restitution-css',\n template: '',\n styleUrls: ['./_o-restitution-list.scss', './_o-restitution.scss', './restitution-catalog.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class PryCatalogCssComponent {}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n CatalogEntry,\n Class,\n ClassActions,\n ClassSelectors,\n ConfigActions,\n DashboardActions,\n DataSource,\n DataSourceActions,\n DataSourceSelectors,\n DEFAULT_RESTITUTION_ICON_URL,\n FieldActions,\n getDisplayOptions,\n LibraryTypes,\n PryVisibility,\n PryVisibilityType,\n SearchActions,\n SubscriptionnerDirective,\n ToolboxManifestService,\n ToolboxMenuService,\n ViewMode,\n Widget,\n WidgetManifest\n} from '@provoly/dashboard';\nimport { PryStepperComponent } from '@provoly/dashboard/components/stepper';\nimport { map, Observable, Subject } from 'rxjs';\nimport { v4 } from 'uuid';\nimport { RestitutionForm } from '../../model/restitution.model';\n\n@Component({\n selector: 'pry-restitution',\n templateUrl: './restitution.component.html'\n})\nexport class PryRestitutionComponent extends SubscriptionnerDirective implements OnInit {\n types$: Observable<{ icon: string; label: string; type: string; manifest: WidgetManifest }[]>;\n classes$: Observable<Class[]>;\n customManifest: WidgetManifest = {\n type: 'detail',\n layout: { x: 1, y: 1, width: 1, height: 1 },\n options: { itemIds: [] as string[] }\n };\n form: RestitutionForm = {\n selectedWidget: '',\n selectedDataSources: [],\n title: '',\n image: DEFAULT_RESTITUTION_ICON_URL,\n description: ''\n };\n visibility: PryVisibility = {\n type: PryVisibilityType.PRIVATE,\n users: []\n };\n openSettings$: Subject<void> = new Subject<void>();\n users$: Observable<any[]> | null = null;\n consultMode: boolean = false;\n @Input() selectedRestitution: Widget | null = null;\n @Input() edit: boolean = true;\n @Output() restitutionCreated = new EventEmitter<void>();\n widgetsList$: Observable<CatalogEntry[]>;\n type: LibraryTypes = LibraryTypes.ILLUSTRATION;\n @Input() isDataSourceSelected = false;\n @Input() bindId: any;\n image: string = DEFAULT_RESTITUTION_ICON_URL;\n widgetTypes: { icon: string; label: string; type: string; manifest: WidgetManifest }[] = [];\n usedDatasources$: Observable<DataSource[]>;\n\n constructor(\n private toolboxManifestService: ToolboxManifestService,\n private store: Store,\n private toolboxMenuService: ToolboxMenuService\n ) {\n super();\n this.store.dispatch(DataSourceActions.load());\n this.store.dispatch(ClassActions.load());\n this.store.dispatch(ConfigActions.loadCustomization());\n this.store.dispatch(FieldActions.load());\n\n this.types$ = this.toolboxMenuService.types$.pipe(\n map((type) => type.filter((filteredType) => filteredType.type !== 'detail'))\n );\n this.subscriptions.add(this.types$.subscribe((types) => (this.widgetTypes = types)));\n this.classes$ = this.store.select(ClassSelectors.classes);\n this.widgetsList$ = this.toolboxMenuService.menuStructure$.pipe(\n map((menu) =>\n menu\n .map((items) => [...items.sub.filter((s) => this.toolboxManifestService.isModel(s.type))])\n .reduce((acc, items) => [...acc, ...items], [])\n )\n );\n this.usedDatasources$ = this.store\n .select(DataSourceSelectors.getDataSourcesSorted)\n .pipe(map((allDss) => allDss.filter((datasource) => this.form.selectedDataSources.includes(datasource.id))));\n }\n\n ngOnInit(): void {\n if (this.selectedRestitution) {\n if (!this.edit) {\n this.consultMode = true;\n this.store.dispatch(DashboardActions.updateDisplayOptions({ mode: ViewMode.CONSULT }));\n } else {\n this.store.dispatch(\n DashboardActions.updateDisplayOptions({\n mode: ViewMode.CUSTOM,\n customDisplay: {\n ...getDisplayOptions(ViewMode.EDITION),\n widgetContextMenu: {\n datasourceSelection: false,\n parameters: true,\n window: false,\n maximize: false,\n addToCatalog: false,\n delete: false,\n changeSpot: false\n }\n }\n })\n );\n }\n this.customManifest = JSON.parse(this.selectedRestitution.content);\n if (Array.isArray(this.customManifest.datasource)) {\n this.customManifest.datasource.forEach((dataSource: string) => {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: dataSource,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.ngOnInit()-1'\n })\n );\n });\n } else {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: this.customManifest.datasource as string,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.ngOnInit()-2'\n })\n );\n }\n if (this.selectedRestitution.visibility) {\n this.visibility = this.selectedRestitution.visibility;\n }\n this.form.selectedDataSources.forEach((dataSource: string) => {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: dataSource,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.ngOnInit()-3'\n })\n );\n });\n this.customManifest = JSON.parse(this.selectedRestitution.content);\n this.form = {\n selectedWidget: this.customManifest.type,\n selectedDataSources: (this.customManifest.datasource ?? []) as string[],\n title: this.selectedRestitution.name,\n ...this.selectedRestitution\n };\n }\n this.image = this.selectedRestitution?.image ?? DEFAULT_RESTITUTION_ICON_URL;\n }\n\n cancel(stepper: PryStepperComponent) {\n this.form.selectedWidget = '';\n this.form.selectedDataSources = [];\n this.form.title = '';\n this.form.description = '';\n this.form.image = '';\n if (this.consultMode || this.selectedRestitution) {\n this.restitutionCreated.emit();\n return;\n }\n this.prev(stepper);\n }\n\n datasourcesChanged($event: DataSource[]) {\n this.form.selectedDataSources = ($event ?? []).map((ds) => ds.id);\n }\n\n submit(stepper: PryStepperComponent) {\n if (this.consultMode) {\n this.goNext(stepper);\n return;\n }\n\n const widgetType = this.widgetTypes.find((widgetType) => widgetType.type === this.form.selectedWidget);\n\n this.customManifest = {\n ...this.customManifest,\n type: this.form.selectedWidget,\n title: this.form.title,\n datasource: this.form.selectedDataSources ?? [],\n header: true,\n options: {\n ...widgetType?.manifest.options,\n title: this.form.title\n }\n };\n this.form.selectedDataSources.forEach((nameQuery: string) => {\n this.store.dispatch(\n SearchActions.getDatasourceItems({\n id: nameQuery,\n excludeGeo: this.customManifest.type === 'map',\n from: 'PryRestitutionComponent.submit()'\n })\n );\n });\n this.goNext(stepper);\n setTimeout(() => {\n this.openSettings$.next();\n }, 150);\n }\n\n goNext(stepper: PryStepperComponent, submit?: boolean) {\n submit ? this.submit(stepper) : stepper.next();\n }\n\n prev(stepper: PryStepperComponent) {\n stepper.prev();\n }\n\n updateManifest($event: { widgetIndex: number; manifest: WidgetManifest }) {\n this.customManifest = $event.manifest;\n }\n\n lastStepCompleted() {\n this.form.image = this.image;\n if (!this.consultMode) {\n this.store.dispatch(\n ConfigActions.saveWidget({\n widget: {\n id: this.selectedRestitution?.id ?? v4(),\n content: JSON.stringify(this.customManifest),\n name: this.form.title,\n description: this.form.description,\n image: this.form.image ?? '',\n visibility: this.visibility,\n datasource: this.form.selectedDataSources ?? [],\n modificationDate: ''\n }\n })\n );\n }\n this.store.dispatch(ConfigActions.loadWidgets());\n this.restitutionCreated.emit();\n }\n}\n","<pry-restitution-css></pry-restitution-css>\n<div class=\"o-restitution\">\n <h3 class=\"a-h2 o-restitution__title\">\n {{ (consultMode ? '@pry.restitution.consult' : edit ? '@pry.restitution.edit' : '@pry.restitution.create') | i18n }}\n </h3>\n <pry-stepper #stepper [isConsultMode]=\"consultMode\" (lastStepCompleted)=\"lastStepCompleted()\">\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.configure' | i18n }}</h4>\n <div class=\"m-form-label-field\">\n <label for=\"restitution\" class=\"a-label\">{{ '@pry.restitution.restitution_type' | i18n }}</label>\n <pry-select\n id=\"restitution\"\n [items]=\"types$ | async\"\n [(ngModel)]=\"form.selectedWidget\"\n [disabled]=\"consultMode\"\n [closeOnSelect]=\"true\"\n bindIcon=\"icon\"\n bindLabel=\"label\"\n bindValue=\"type\"\n >\n </pry-select>\n </div>\n <ng-container *ngIf=\"form.selectedWidget !== ''\">\n <div class=\"m-form-label-field\">\n <label for=\"graphTitle\" class=\"a-label\">{{ '@pry.restitution.graph_title' | i18n }}</label>\n <input\n name=\"title\"\n id=\"graphTitle\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.title\"\n type=\"text\"\n [disabled]=\"consultMode\"\n maxlength=\"30\"\n ngDefaultControl\n />\n </div>\n <div class=\"m-form-label-field\">\n <label for=\"description\" class=\"a-label\">{{ '@pry.restitution.description' | i18n }}</label>\n <textarea\n name=\"description\"\n id=\"description\"\n class=\"a-form-field\"\n [(ngModel)]=\"form.description\"\n style=\"resize: none\"\n [disabled]=\"consultMode\"\n maxlength=\"255\"\n ngDefaultControl\n >\n </textarea>\n </div>\n <div class=\"m-form-label-field -width-full\">\n <label class=\"a-label\">{{ '@pry.presentation.form.image' | i18n }}</label>\n <div class=\"o-file-input\">\n <pry-select-image (changed)=\"image = $event\" [iconUrl]=\"image\" [mode]=\"type\"></pry-select-image>\n </div>\n </div>\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"cancel(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button\n (click)=\"goNext(stepper)\"\n [disabled]=\"form.selectedWidget === '' || form.title.trim().length === 0\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.restitution.validate' | i18n }}\n </button>\n </div>\n </ng-container>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.dataSource' | i18n }}</h4>\n <pry-datasource-selector\n bindLabel=\"name\"\n bindValue=\"id\"\n translationStringBase=\"@pry.components.chipsSelector.datasource.\"\n (itemsChanged)=\"datasourcesChanged($event)\"\n [usedItems]=\"(usedDatasources$ | async) ?? []\"\n [showActionButtons]=\"false\"\n ></pry-datasource-selector>\n <ng-container [ngTemplateOutlet]=\"buttons\" [ngTemplateOutletContext]=\"{ submit: true }\"></ng-container>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.visualize' | i18n }}</h4>\n <div class=\"widget-instanciator\">\n <pry-widget-instanciator\n [standalone]=\"true\"\n [staticManifest]=\"customManifest\"\n [open$]=\"openSettings$\"\n (manifestModified)=\"updateManifest($event)\"\n ></pry-widget-instanciator>\n </div>\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </pry-step>\n <pry-step>\n <h4 class=\"m-stepper-item__title\" *stepTitle>{{ '@pry.restitution.share' | i18n }}</h4>\n <h3>{{ '@pry.restitution.access' | i18n }}</h3>\n {{ '@pry.restitution.choice' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.public' | i18n }}\n </li>\n </ul>\n {{ '@pry.restitution.or' | i18n }}\n <ul>\n <li>\n {{ '@pry.restitution.private' | i18n }}\n </li>\n </ul>\n <pry-share\n [(ngModel)]=\"visibility\"\n [users$]=\"users$\"\n labelProperty=\"name\"\n valueProperty=\"id\"\n [disabled]=\"consultMode\"\n ></pry-share>\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </pry-step>\n </pry-stepper>\n</div>\n\n<ng-template #buttons let-submit=\"submit\">\n <div class=\"m-btn-group -space-evenly actions\">\n <button (click)=\"prev(stepper)\" type=\"button\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.restitution.close' | i18n }}\n </button>\n <button (click)=\"goNext(stepper, submit)\" type=\"button\" class=\"a-btn a-btn--primary\">\n {{ (consultMode ? '@pry.restitution.share' : '@pry.restitution.next') | i18n }}\n </button>\n </div>\n</ng-template>\n","import { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { Component, TemplateRef, ViewChild, ViewContainerRef } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { ConfigActions, ConfigSelectors, PryVisibilityType, ViewMode, Widget } from '@provoly/dashboard';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Component({\n selector: 'pry-restitution-catalog',\n templateUrl: './restitution-catalog.component.html'\n})\nexport class PryRestitutionCatalogComponent {\n restitutions$: Observable<Widget[]>;\n search$ = new BehaviorSubject('');\n filteredRestitution$: Observable<Widget[]>;\n mode = ViewMode;\n selectedMode: ViewMode = ViewMode.CATALOG;\n selectedRestitution: Widget | null = null;\n restitution?: Widget;\n PryVisibilityType = PryVisibilityType;\n overlayRef?: OverlayRef;\n @ViewChild('modalActions', { read: TemplateRef }) templateActions!: TemplateRef<any>;\n\n constructor(private store: Store, protected overlay: Overlay, protected viewContainerRef: ViewContainerRef) {\n this.store.dispatch(ConfigActions.loadWidgets());\n this.store.dispatch(ConfigActions.getMapStyles());\n\n this.restitutions$ = this.store\n .select(ConfigSelectors.catalog)\n .pipe(\n map((restitutionList) =>\n [...restitutionList].sort((a, b) =>\n a.modificationDate ? b.modificationDate.localeCompare(a.modificationDate) : 1\n )\n )\n );\n this.filteredRestitution$ = combineLatest([this.restitutions$, this.search$]).pipe(\n map(([restitutions, search]) =>\n restitutions.filter(\n (restitution) => search.length === 0 || restitution.name.toLowerCase().includes(search.toLowerCase())\n )\n )\n );\n }\n\n selectMode(newMode: ViewMode) {\n this.selectedMode = newMode;\n }\n\n selectRestitution(restitution: Widget) {\n this.selectedRestitution = restitution;\n this.selectMode(this.mode.CONSULT);\n this.search$.next('');\n }\n\n closeRestitution($event: void) {\n this.selectedRestitution = null;\n this.selectMode(this.mode.CATALOG);\n }\n\n deleteRestitution(id: string) {\n this.store.dispatch(ConfigActions.confirmRestitutionDeletion({ id }));\n this.toggleModalActions();\n }\n\n editRestitution(restitution: Widget) {\n this.selectedRestitution = restitution;\n this.selectMode(ViewMode.EDITION);\n this.search$.next('');\n this.overlayRef?.dispose();\n this.overlayRef = undefined;\n }\n\n toggleModalActions(restitution?: Widget, moreButton?: HTMLButtonElement) {\n if (!this.overlayRef && restitution) {\n this.selectedRestitution = restitution;\n this.overlayRef = this.overlay.create(\n new OverlayConfig({\n hasBackdrop: true,\n panelClass: ['m-context-menu-wrapper'],\n backdropClass: 'backdrop'\n })\n );\n this.overlayRef.backdropClick().subscribe(() => this.toggleModalActions(restitution));\n this.overlayRef.attach(new TemplatePortal(this.templateActions, this.viewContainerRef));\n const contextMenu = document.querySelector('div.m-context-menu') as HTMLDivElement;\n if (!!contextMenu && moreButton) {\n const rect = moreButton?.getBoundingClientRect();\n contextMenu.style.left = (rect?.left ?? 0) - (contextMenu?.clientWidth ?? 0) + 23 + 'px';\n contextMenu.style.top = (rect?.top ?? 0) + 30 + 'px';\n }\n } else {\n this.overlayRef?.dispose();\n this.overlayRef = undefined;\n this.selectedRestitution = null;\n }\n }\n}\n","<pry-restitution-css></pry-restitution-css>\n<div class=\"o-manifest-layout o-restitution-catalog\">\n <ng-template [ngIf]=\"selectedMode === mode.CATALOG\">\n <div class=\"o-manifest-layout__toolbox\">\n <button\n type=\"button\"\n (click)=\"selectMode(mode.CREATION)\"\n class=\"a-btn a-btn--primary\"\n data-tooltip-position=\"bottom\"\n *pryAccess=\"{ module: 'dashboard', page: 'restitution', action: 'create' }\"\n >\n <pry-icon iconSvg=\"add\"></pry-icon>\n {{ '@pry.restitution.create' | i18n }}\n </button>\n <div>\n <div class=\"o-catalog__search o-manifest-layout__toolbox__search\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.restitution.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n </div>\n </div>\n <div class=\"o-manifest-layout__content\">\n <h1 class=\"a-h1\">{{ '@pry.restitution.catalog' | i18n }}</h1>\n\n <div class=\"o-presentation-wrapper\">\n <ul class=\"o-presentation\">\n <li class=\"o-presentation__item\" *ngFor=\"let restitution of filteredRestitution$ | async; let index = index\">\n <div class=\"o-presentation__item__header\">\n <ng-container *ngIf=\"restitution.visibility?.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n iconSvg=\"private\"\n class=\"is-private a-tooltip -tooltip-no-wrap\"\n [attr.data-tooltip]=\"'@pry.restitution.lock' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div\n class=\"a-tooltip -tooltip-no-wrap\"\n (click)=\"selectRestitution(restitution)\"\n [attr.data-tooltip]=\"'@pry.restitution.consultRestitution' | i18n\"\n >\n <div class=\"o-presentation__item__image\">\n <img\n alt=\"\"\n class=\"is-full-width\"\n [src]=\"restitution.image | getSecuredImage : [600, 600] | async\"\n />\n </div>\n </div>\n <ng-container *ngIf=\"restitution.owner\">\n <div class=\"more-button\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--more a-tooltip -tooltip-no-wrap\"\n [id]=\"'more-actions-' + index\"\n [attr.data-tooltip]=\"'@pry.restitution.more' | i18n\"\n (click)=\"toggleModalActions(restitution, button)\"\n #button\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n </button>\n </div>\n </ng-container>\n </div>\n <div\n class=\"o-presentation__item__txt\"\n (click)=\"selectRestitution(restitution)\"\n [attr.data-tooltip]=\"'@pry.restitution.consultRestitution' | i18n\"\n >\n <div class=\"o-presentation__item__title-container\" ellipsis textElementSelector=\".a-h3\">\n <h3 class=\"a-h3\">{{ restitution.name }}</h3>\n </div>\n <div class=\"o-presentation__item__description-container\" ellipsis textElementSelector=\".a-p\">\n <div class=\"o-presentation__item__description a-p\">\n {{ restitution.description }}\n </div>\n </div>\n <p class=\"a-p -date\">{{ restitution.modificationDate | sinceDate }}</p>\n </div>\n\n <div\n class=\"o-presentation__item__footer a-tooltip -tooltip-no-wrap\"\n (click)=\"selectRestitution(restitution)\"\n [attr.data-tooltip]=\"'@pry.restitution.consultRestitution' | i18n\"\n >\n <button class=\"a-btn\">\n {{ '@pry.restitution.view' | i18n }}\n <pry-icon [width]=\"20\" [height]=\"20\" iconSvg=\"arrow_right\"></pry-icon>\n </button>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </ng-template>\n <ng-template #modalActions>\n <div class=\"m-context-menu\">\n <ul\n *ngIf=\"selectedRestitution\"\n class=\"m-context-menu__list\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog restitution options\"\n >\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n (click)=\"editRestitution(selectedRestitution)\"\n [disabled]=\"!selectedRestitution.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'restitution', action: 'edit' }\"\n >\n {{ '@pry.restitution.update' | i18n }}\n </button>\n </li>\n <li class=\"m-context-menu__list__item\">\n <button\n class=\"a-btn -link-like\"\n #openModal\n (click)=\"deleteRestitution(selectedRestitution.id)\"\n [disabled]=\"!selectedRestitution.owner\"\n *pryAccess=\"{ module: 'dashboard', page: 'restitution', action: 'delete' }\"\n >\n {{ '@pry.restitution.delete' | i18n }}\n </button>\n </li>\n </ul>\n </div>\n </ng-template>\n\n <ng-template [ngIf]=\"selectedMode === mode.CONSULT\">\n <div class=\"o-manifest-layout__toolbox\">\n <button type=\"button\" (click)=\"selectMode(mode.CATALOG)\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.backToCatalog' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content\">\n <pry-restitution\n [selectedRestitution]=\"selectedRestitution\"\n [edit]=\"false\"\n (restitutionCreated)=\"closeRestitution($event)\"\n class=\"restitution\"\n ></pry-restitution>\n </div>\n </ng-template>\n <ng-template [ngIf]=\"selectedMode === mode.CREATION\">\n <div class=\"o-manifest-layout__toolbox\">\n <button type=\"button\" (click)=\"selectMode(mode.CATALOG)\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.backToCatalog' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content\">\n <pry-restitution\n [edit]=\"false\"\n (restitutionCreated)=\"closeRestitution($event)\"\n class=\"restitution\"\n ></pry-restitution>\n </div>\n </ng-template>\n <ng-template [ngIf]=\"selectedMode === mode.EDITION\">\n <div class=\"o-manifest-layout__toolbox\">\n <button type=\"button\" (click)=\"selectMode(mode.CATALOG)\" class=\"a-btn a-btn--primary\">\n {{ '@pry.restitution.backToCatalog' | i18n }}\n </button>\n </div>\n <div class=\"o-manifest-layout__content\">\n <pry-restitution\n (restitutionCreated)=\"closeRestitution($event)\"\n [selectedRestitution]=\"selectedRestitution\"\n class=\"restitution\"\n ></pry-restitution>\n </div>\n </ng-template>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n CatalogEntry,\n ConfigSelectors,\n DashboardActions,\n DashboardGridLayout,\n DashboardSelectors,\n PryVisibilityType,\n SubscriptionnerDirective,\n ToolboxManifestService,\n Widget\n} from '@provoly/dashboard';\nimport { map, Observable } from 'rxjs';\n\n@Component({\n selector: 'pry-catalog-item',\n templateUrl: './restitution-list-item.component.html'\n})\nexport class PryRestitutionListItemComponent extends SubscriptionnerDirective {\n @Input() widget!: CatalogEntry;\n @Input() translate: boolean = true;\n @Output() selectRestitution = new EventEmitter<Widget>();\n catalog: Widget[] | undefined;\n automaticGridMode$: Observable<boolean>;\n automaticGridMode: boolean = false;\n PryVisibilityType = PryVisibilityType;\n\n constructor(private store: Store, private toolboxManifestService: ToolboxManifestService) {\n super();\n this.store.select(ConfigSelectors.catalog).subscribe((catalog: Widget[]) => (this.catalog = catalog));\n this.automaticGridMode$ = this.store\n .select(DashboardSelectors.gridLayout)\n .pipe(map((layout) => layout !== DashboardGridLayout.MANUAL));\n this.subscriptions.add(this.automaticGridMode$.subscribe((modeAuto) => (this.automaticGridMode = modeAuto)));\n }\n\n dragStart($event: DragEvent, type: string) {\n if (!this.automaticGridMode) {\n this.toolboxManifestService.dataTransfer($event, type);\n }\n }\n\n emitSelectedRestitution(catalogEntry: CatalogEntry) {\n if (catalogEntry.isCustom) {\n this.catalog?.forEach((widget: Widget) => {\n if (widget.id === catalogEntry.type) {\n this.selectRestitution.emit(widget);\n }\n });\n }\n }\n\n viewInDashboard(widget: CatalogEntry) {\n this.store.dispatch(DashboardActions.addWidgetToPresentation({ widgetType: widget.type }));\n }\n}\n","<li\n class=\"o-catalog__list__item\"\n [class.is-point]=\"automaticGridMode$ | async\"\n [draggable]=\"!(automaticGridMode$ | async)\"\n role=\"listitem\"\n aria-grabbed=\"false\"\n aria-haspopup=\"true\"\n tabindex=\"-1\"\n [title]=\"widget.description ?? widget.label | i18n : { warn: false }\"\n (dragstart)=\"dragStart($event, widget.type)\"\n>\n <ng-container *ngIf=\"automaticGridMode$ | async\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n (click)=\"viewInDashboard(widget)\"\n [title]=\"'@pry.restitution.add_icon' | i18n\"\n >\n <pry-icon [width]=\"25\" [height]=\"25\" iconSvg=\"add_column\" class=\"o-catalog__list__icon\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.restitution.add_icon' | i18n }}</span>\n </button>\n </ng-container>\n <img\n [alt]=\"widget.label | i18n : { warn: false }\"\n [src]=\"widget.icon | getSecuredImage : [53, 53] | async\"\n [height]=\"53\"\n [width]=\"53\"\n />\n <p class=\"o-catalog__list__item__libelle\" *ngIf=\"widget.isCustom; else translate\">{{ widget.label }}</p>\n <ng-template #translate>\n <p class=\"o-catalog__list__item__libelle\">{{ widget.label | i18n : { warn: false } }}</p>\n </ng-template>\n <ng-container *ngIf=\"widget.visibility?.type === PryVisibilityType.PRIVATE\">\n <pry-icon\n iconSvg=\"private\"\n class=\"is-private a-tooltip\"\n [attr.data-tooltip]=\"'@pry.restitution.lock' | i18n\"\n [height]=\"17\"\n [width]=\"17\"\n ></pry-icon>\n </ng-container>\n <div class=\"o-catalog__list__item__action\" *ngIf=\"widget.isCustom\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"emitSelectedRestitution(widget)\">\n {{ '@pry.restitution.view' | i18n }}\n </button>\n </div>\n</li>\n","import { Component, Input } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n CatalogEntry,\n ConfigActions,\n PryI18nService,\n PryVisibilityType,\n SubscriptionnerDirective,\n ToolboxManifestService,\n ToolboxMenuService,\n ViewMode,\n Widget\n} from '@provoly/dashboard';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\n\n@Component({\n selector: 'pry-catalog',\n templateUrl: './restitution-list.component.html'\n})\nexport class PryRestitutionListComponent extends SubscriptionnerDirective {\n @Input() showTabs = true;\n @Input()\n get customModels(): string[] {\n return this._customModels;\n }\n set customModels(models: string[]) {\n this._customModels = ['detail', 'iframe', ...models];\n }\n private _customModels = ['detail', 'iframe'];\n search$ = new BehaviorSubject('');\n type$ = new BehaviorSubject<undefined | string>(undefined);\n filteredWidgets$: Observable<CatalogEntry[]>;\n nonCustomWidgets$: Observable<CatalogEntry[]>;\n customWidgets$: Observable<CatalogEntry[]>;\n types$: Observable<{ icon: string; label: string; type: string }[]>;\n selectedRestitution: Widget | null = null;\n mode = ViewMode;\n selectedMode: ViewMode = ViewMode.CATALOG;\n categories = ['model', 'noModel'];\n PryVisibilityType = PryVisibilityType;\n\n constructor(\n private toolboxMenuService: ToolboxMenuService,\n private translateService: PryI18nService,\n private toolboxManifestService: ToolboxManifestService,\n private store: Store\n ) {\n super();\n this.store.dispatch(ConfigActions.loadWidgets());\n this.types$ = this.toolboxMenuService.types$;\n this.filteredWidgets$ = combineLatest([this.toolboxMenuService.menuList$, this.search$, this.type$]).pipe(\n map(([widgets, search, type]) =>\n widgets.filter(\n (widget) =>\n (search.length === 0 ||\n this.translateService.instant(widget.label).toLocaleLowerCase().includes(search.toLocaleLowerCase())) &&\n (!type || this.toolboxManifestService.get(widget.type).type === type)\n )\n )\n );\n this.nonCustomWidgets$ = this.filteredWidgets$.pipe(\n map((widgets) =>\n widgets.filter(\n (widget) => this.toolboxManifestService.isModel(widget.type) || this.customModels.includes(widget.type)\n )\n )\n );\n this.customWidgets$ = this.filteredWidgets$.pipe(\n map((widgets) =>\n widgets.filter(\n (widget) => !this.toolboxManifestService.isModel(widget.type) && !this.customModels.includes(widget.type)\n )\n )\n );\n }\n\n selectMode(newMode: ViewMode) {\n this.selectedMode = newMode;\n }\n\n selectRestitution($event: Widget) {\n this.selectedRestitution = $event;\n this.selectMode(ViewMode.CONSULT);\n }\n\n closeRestitution() {\n this.selectedRestitution = null;\n this.selectMode(this.mode.CATALOG);\n }\n}\n","<pry-restitution-css></pry-restitution-css>\n<div class=\"o-catalog\">\n <ng-template [ngIf]=\"selectedMode === mode.CATALOG\">\n <h2 class=\"a-h2\">{{ '@pry.restitution.catalog' | i18n }}</h2>\n <div class=\"o-catalog__filters\">\n <div class=\"o-catalog__filters__by-name\">\n <label id=\"catalog-search-label\" for=\"catalog-search\" class=\"a-label u-visually-hidden\">\n <span>{{ '@pry.toolbox.catalog.filter.name' | i18n }}</span>\n </label>\n <pry-icon class=\"search-icon\" iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n <input\n id=\"catalog-search\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.action.search' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"this.search$.next($event)\"\n />\n </div>\n <label class=\"a-label\">{{ '@pry.action.filterByType' | i18n }}</label>\n <div class=\"o-catalog__filters__by-type\">\n <ul class=\"o-catalog__filters__by-type__list\">\n <li *ngFor=\"let typeOpt of types$ | async\">\n <input\n type=\"radio\"\n class=\"a-form-field u-sr-only\"\n name=\"catalog-filter\"\n id=\"catalog-button-{{ typeOpt.type }}\"\n [checked]=\"typeOpt.type === (type$ | async)\"\n (change)=\"type$.next(typeOpt.type)\"\n />\n <label\n class=\"a-label\"\n id=\"catalog-button-label-{{ typeOpt.type }}\"\n for=\"catalog-button-{{ typeOpt.type }}\"\n [title]=\"typeOpt.label | i18n : { warn: false }\"\n >\n <span class=\"u-sr-only\">{{ typeOpt.label | i18n : { warn: false } }} </span>\n <pry-icon [width]=\"18\" [height]=\"18\" [iconSvg]=\"typeOpt.icon\"></pry-icon>\n </label>\n </li>\n </ul>\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-text -link-like\"\n (click)=\"type$.next(undefined)\"\n [disabled]=\"!type$.getValue()\"\n [class.u-visually-hidden]=\"!type$.getValue()\"\n >\n <pry-icon [width]=\"15\" [height]=\"15\" iconSvg=\"delete\"></pry-icon>\n {{ '@pry.toolbox.catalog.filter.delete' | i18n }}\n </button>\n </div>\n </div>\n <ng-container *ngIf=\"showTabs; else list\">\n <div class=\"o-accordion\" role=\"tablist\" aria-multiselectable=\"false\">\n <pry-accordion>\n <pry-accordion-item\n *ngFor=\"let category of categories; let index = index\"\n [item]=\"category\"\n [index]=\"index\"\n translationStringBase=\"@pry.restitution.catalogTabs.\"\n [length]=\"\n (category === 'model' ? (nonCustomWidgets$ | async)?.length : (customWidgets$ | async)?.length) ?? 0\n \"\n >\n <ul class=\"o-catalog__list\" role=\"list\" aria-live=\"polite\">\n <ng-container *ngIf=\"category === 'model'\">\n <pry-catalog-item\n *ngFor=\"let widget of nonCustomWidgets$ | async\"\n [widget]=\"widget\"\n (selectRestitution)=\"selectRestitution($event)\"\n ></pry-catalog-item>\n </ng-container>\n <ng-container *ngIf=\"category === 'noModel'\">\n <pry-catalog-item\n *ngFor=\"let widget of customWidgets$ | async\"\n [translate]=\"false\"\n [widget]=\"widget\"\n (selectRestitution)=\"selectRestitution($event)\"\n ></pry-catalog-item>\n </ng-container>\n </ul>\n </pry-accordion-item>\n </pry-accordion>\n </div>\n </ng-container>\n\n <ng-template #list>\n <ul class=\"o-catalog__list\" role=\"list\" aria-live=\"polite\">\n <pry-catalog-item\n *ngFor=\"let widget of filteredWidgets$ | async\"\n [widget]=\"widget\"\n (selectRestitution)=\"selectRestitution($event)\"\n ></pry-catalog-item>\n </ul>\n </ng-template>\n </ng-template>\n\n <ng-template [ngIf]=\"selectedMode === mode.CONSULT\">\n <div class=\"o-catalog__create\">\n <button class=\"a-btn a-btn--secondary\" (click)=\"closeRestitution()\">\n {{ '@pry.restitution.cancel' | i18n }}\n </button>\n </div>\n\n <pry-restitution\n [selectedRestitution]=\"selectedRestitution\"\n [edit]=\"false\"\n (restitutionCreated)=\"closeRestitution()\"\n ></pry-restitution>\n </ng-template>\n\n <ng-template [ngIf]=\"selectedMode === mode.CREATION\">\n <div class=\"o-catalog__create\">\n <button class=\"a-btn a-btn--secondary\" (click)=\"selectMode(mode.CATALOG)\">\n {{ '@pry.restitution.cancel' | i18n }}\n </button>\n </div>\n\n <pry-restitution (restitutionCreated)=\"closeRestitution()\"></pry-restitution>\n </ng-template>\n</div>\n","export const enTranslations = {\n '@pry': {\n restitution: {\n restitution_type: 'Restitution type',\n data_type: 'Data type',\n graph_title: 'Title',\n description: 'Description',\n image: 'Image',\n close: 'Cancel',\n validate: 'Save',\n share: 'Share',\n view: 'View',\n create: 'Create restitution',\n cancel: 'Cancel',\n configure: 'Configure',\n visualize: 'Visualize',\n access: 'Do you want to give access / invite users?',\n public: 'Make this participatory survey accessible to all users in the restitution catalog',\n private: 'Invite certain users of your choice to respond to this participatory survey',\n choice: 'You can :',\n or: 'Or',\n create_title: 'Create a restitution',\n consultRestitution: 'Consult the restitution',\n search: 'Search',\n backToCatalog: 'Back to catalog',\n options: 'Restitution options',\n consult: 'Consult',\n catalog: 'Restitutions catalog',\n add_icon: 'Add this restitution on the presentation',\n dataSource: 'Data',\n noDataSource: 'No data available',\n delete: 'Delete restitution',\n next: 'Next',\n lock: 'Private restitution',\n update: 'Edit information',\n cover: 'Image will cover the whole restitution card',\n catalogTabs: {\n model: 'Restitution models',\n noModel: 'Restitutions catalog'\n }\n }\n }\n};\n","export const frTranslations = {\n '@pry': {\n restitution: {\n restitution_type: 'Type de restitution',\n data_type: 'Type de données',\n graph_title: 'Titre de la restitution',\n description: 'Description',\n image: 'Image',\n close: 'Annuler',\n validate: 'Valider',\n share: 'Partager',\n more: 'Options',\n options: 'Options de la restitution',\n view: 'Consulter',\n create: 'Créer une restitution',\n edit: 'Modifier la restitution',\n cancel: 'Annuler',\n configure: 'Configurer',\n visualize: 'Visualiser',\n access: 'Vous souhaitez donner accès / inviter des utilisateurs ?',\n public: 'Rendre accessible cette restitution à tous les utilisateurs',\n private: 'Rendre accessible à certains utilisateurs de votre choix cette restitution',\n choice: 'Vous pouvez :',\n or: 'Ou',\n search: 'Rechercher',\n backToCatalog: 'Retour au catalogue',\n consult: 'Consulter',\n consultRestitution: 'Consulter la restitution',\n catalog: 'Catalogue des restitutions',\n add_icon: 'Ajouter cette restitution sur la présentation',\n dataSource: 'Donnée(s)',\n noDataSource: 'Aucune donnée disponible',\n delete: 'Supprimer la restitution',\n next: 'Suivant',\n lock: 'Restitution privée',\n update: 'Modifier les informations',\n cover: \"L'image doit couvrir la carte de la restitution\",\n catalogTabs: {\n model: 'Modèles de restitution',\n noModel: 'Restitutions du catalogue'\n }\n }\n }\n};\n","import { CommonModule, DatePipe } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport {\n PryCoreModule,\n PryDashboardModule,\n PryI18nModule,\n PryI18nService,\n PryIconModule,\n PryOverlayModule,\n PrySelectModule,\n PryShareModule\n} from '@provoly/dashboard';\nimport { PryCardModule } from '@provoly/dashboard/components/card';\nimport { PryCheckboxModule } from '@provoly/dashboard/components/checkbox';\nimport { PrySinceDateModule } from '@provoly/dashboard/components/sinceDate';\nimport { PryStepperModule } from '@provoly/dashboard/components/stepper';\nimport { PrySearchModule } from '@provoly/dashboard/search';\nimport { PryRestitutionCatalogComponent } from './components/restitution-catalog/restitution-catalog.component';\nimport { PryRestitutionListComponent } from './components/restitution-list/restitution-list.component';\nimport { PryRestitutionComponent } from './components/restitution/restitution.component';\nimport { enTranslations } from './i18n/en.translations';\nimport { frTranslations } from './i18n/fr.translations';\nimport { PryCatalogCssComponent } from './style/css.component';\nimport { PryRestitutionListItemComponent } from './components/restitution-list-item/restitution-list-item.component';\n\n@NgModule({\n providers: [DatePipe],\n declarations: [\n PryRestitutionListComponent,\n PryRestitutionComponent,\n PryCatalogCssComponent,\n PryRestitutionCatalogComponent,\n PryRestitutionListItemComponent\n ],\n imports: [\n CommonModule,\n PryCoreModule,\n PryIconModule,\n FormsModule,\n PryStepperModule,\n PrySelectModule,\n PryDashboardModule,\n PryShareModule,\n PrySearchModule,\n PryI18nModule,\n PryCardModule,\n PryCheckboxModule,\n PryOverlayModule,\n PrySinceDateModule\n ],\n exports: [\n PryRestitutionListComponent,\n PryRestitutionComponent,\n PryRestitutionCatalogComponent,\n PryRestitutionListItemComponent\n ]\n})\nexport class PryRestitutionModule {\n constructor(private pryTranslateService: PryI18nService) {\n this.pryTranslateService.addLangObject('fr', 'restitution', frTranslations);\n this.pryTranslateService.addLangObject('en', 'restitution', enTranslations);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i6.PryCatalogCssComponent","i1","i4","i5","i6.PryRestitutionComponent","i7.PryCatalogCssComponent","i5.PryRestitutionComponent","i7.PryRestitutionListItemComponent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@provoly/dashboard",
3
- "version": "0.23.10",
3
+ "version": "0.23.11",
4
4
  "type": "commonjs",
5
5
  "peerDependencies": {
6
6
  "@angular/cdk": "16.x || 17.x",
@@ -108,18 +108,18 @@
108
108
  "esm": "./esm2022/pipeline/provoly-dashboard-pipeline.mjs",
109
109
  "default": "./fesm2022/provoly-dashboard-pipeline.mjs"
110
110
  },
111
- "./restitution": {
112
- "types": "./restitution/index.d.ts",
113
- "esm2022": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
114
- "esm": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
115
- "default": "./fesm2022/provoly-dashboard-restitution.mjs"
116
- },
117
111
  "./presentation": {
118
112
  "types": "./presentation/index.d.ts",
119
113
  "esm2022": "./esm2022/presentation/provoly-dashboard-presentation.mjs",
120
114
  "esm": "./esm2022/presentation/provoly-dashboard-presentation.mjs",
121
115
  "default": "./fesm2022/provoly-dashboard-presentation.mjs"
122
116
  },
117
+ "./restitution": {
118
+ "types": "./restitution/index.d.ts",
119
+ "esm2022": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
120
+ "esm": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
121
+ "default": "./fesm2022/provoly-dashboard-restitution.mjs"
122
+ },
123
123
  "./search": {
124
124
  "types": "./search/index.d.ts",
125
125
  "esm2022": "./esm2022/search/provoly-dashboard-search.mjs",
@@ -132,36 +132,6 @@
132
132
  "esm": "./esm2022/toolbox/provoly-dashboard-toolbox.mjs",
133
133
  "default": "./fesm2022/provoly-dashboard-toolbox.mjs"
134
134
  },
135
- "./filters/autocomplete": {
136
- "types": "./filters/autocomplete/index.d.ts",
137
- "esm2022": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
138
- "esm": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
139
- "default": "./fesm2022/provoly-dashboard-filters-autocomplete.mjs"
140
- },
141
- "./filters/date": {
142
- "types": "./filters/date/index.d.ts",
143
- "esm2022": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
144
- "esm": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
145
- "default": "./fesm2022/provoly-dashboard-filters-date.mjs"
146
- },
147
- "./filters/list": {
148
- "types": "./filters/list/index.d.ts",
149
- "esm2022": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
150
- "esm": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
151
- "default": "./fesm2022/provoly-dashboard-filters-list.mjs"
152
- },
153
- "./filters/number": {
154
- "types": "./filters/number/index.d.ts",
155
- "esm2022": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
156
- "esm": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
157
- "default": "./fesm2022/provoly-dashboard-filters-number.mjs"
158
- },
159
- "./filters/text": {
160
- "types": "./filters/text/index.d.ts",
161
- "esm2022": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
162
- "esm": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
163
- "default": "./fesm2022/provoly-dashboard-filters-text.mjs"
164
- },
165
135
  "./components/card": {
166
136
  "types": "./components/card/index.d.ts",
167
137
  "esm2022": "./esm2022/components/card/provoly-dashboard-components-card.mjs",
@@ -216,6 +186,36 @@
216
186
  "esm": "./esm2022/components/stepper/provoly-dashboard-components-stepper.mjs",
217
187
  "default": "./fesm2022/provoly-dashboard-components-stepper.mjs"
218
188
  },
189
+ "./filters/autocomplete": {
190
+ "types": "./filters/autocomplete/index.d.ts",
191
+ "esm2022": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
192
+ "esm": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
193
+ "default": "./fesm2022/provoly-dashboard-filters-autocomplete.mjs"
194
+ },
195
+ "./filters/date": {
196
+ "types": "./filters/date/index.d.ts",
197
+ "esm2022": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
198
+ "esm": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
199
+ "default": "./fesm2022/provoly-dashboard-filters-date.mjs"
200
+ },
201
+ "./filters/list": {
202
+ "types": "./filters/list/index.d.ts",
203
+ "esm2022": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
204
+ "esm": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
205
+ "default": "./fesm2022/provoly-dashboard-filters-list.mjs"
206
+ },
207
+ "./filters/number": {
208
+ "types": "./filters/number/index.d.ts",
209
+ "esm2022": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
210
+ "esm": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
211
+ "default": "./fesm2022/provoly-dashboard-filters-number.mjs"
212
+ },
213
+ "./filters/text": {
214
+ "types": "./filters/text/index.d.ts",
215
+ "esm2022": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
216
+ "esm": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
217
+ "default": "./fesm2022/provoly-dashboard-filters-text.mjs"
218
+ },
219
219
  "./pipeline-components/filter": {
220
220
  "types": "./pipeline-components/filter/index.d.ts",
221
221
  "esm2022": "./esm2022/pipeline-components/filter/provoly-dashboard-pipeline-components-filter.mjs",
@@ -294,18 +294,18 @@
294
294
  "esm": "./esm2022/widgets/widget-image/provoly-dashboard-widgets-widget-image.mjs",
295
295
  "default": "./fesm2022/provoly-dashboard-widgets-widget-image.mjs"
296
296
  },
297
- "./widgets/widget-map": {
298
- "types": "./widgets/widget-map/index.d.ts",
299
- "esm2022": "./esm2022/widgets/widget-map/provoly-dashboard-widgets-widget-map.mjs",
300
- "esm": "./esm2022/widgets/widget-map/provoly-dashboard-widgets-widget-map.mjs",
301
- "default": "./fesm2022/provoly-dashboard-widgets-widget-map.mjs"
302
- },
303
297
  "./widgets/widget-table": {
304
298
  "types": "./widgets/widget-table/index.d.ts",
305
299
  "esm2022": "./esm2022/widgets/widget-table/provoly-dashboard-widgets-widget-table.mjs",
306
300
  "esm": "./esm2022/widgets/widget-table/provoly-dashboard-widgets-widget-table.mjs",
307
301
  "default": "./fesm2022/provoly-dashboard-widgets-widget-table.mjs"
308
302
  },
303
+ "./widgets/widget-map": {
304
+ "types": "./widgets/widget-map/index.d.ts",
305
+ "esm2022": "./esm2022/widgets/widget-map/provoly-dashboard-widgets-widget-map.mjs",
306
+ "esm": "./esm2022/widgets/widget-map/provoly-dashboard-widgets-widget-map.mjs",
307
+ "default": "./fesm2022/provoly-dashboard-widgets-widget-map.mjs"
308
+ },
309
309
  "./widgets/widget-template": {
310
310
  "types": "./widgets/widget-template/index.d.ts",
311
311
  "esm2022": "./esm2022/widgets/widget-template/provoly-dashboard-widgets-widget-template.mjs",
@@ -5,6 +5,8 @@
5
5
  flex-direction: column;
6
6
  flex: 1;
7
7
  max-height: 100%;
8
+ width: 100%;
9
+ overflow: hidden;
8
10
 
9
11
  pry-stepper {
10
12
  display: flex;