@provoly/hypervisor 1.5.6 → 1.5.7
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.
- package/esm2022/src/lib/event/detail/event-detail.component.mjs +8 -3
- package/esm2022/src/lib/hypervisor.module.mjs +7 -4
- package/fesm2022/provoly-hypervisor.mjs +13 -5
- package/fesm2022/provoly-hypervisor.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/event/detail/event-detail.component.d.ts +2 -0
- package/src/lib/hypervisor.module.d.ts +1 -1
- package/styles/components/_o-hvy-event-detail.scss +10 -0
|
@@ -185,7 +185,8 @@ export class PvyHypervisorModule {
|
|
|
185
185
|
MatAutocompleteTrigger,
|
|
186
186
|
MatAutocomplete,
|
|
187
187
|
MatOption,
|
|
188
|
-
ReactiveFormsModule
|
|
188
|
+
ReactiveFormsModule,
|
|
189
|
+
PryIconModule], exports: [EventDetailComponent,
|
|
189
190
|
EventListComponent,
|
|
190
191
|
EventColumnOrderComponent,
|
|
191
192
|
IconDisplayComponent,
|
|
@@ -242,7 +243,8 @@ export class PvyHypervisorModule {
|
|
|
242
243
|
FormsModule,
|
|
243
244
|
MatAutocomplete,
|
|
244
245
|
MatOption,
|
|
245
|
-
ReactiveFormsModule
|
|
246
|
+
ReactiveFormsModule,
|
|
247
|
+
PryIconModule] }); }
|
|
246
248
|
}
|
|
247
249
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: PvyHypervisorModule, decorators: [{
|
|
248
250
|
type: NgModule,
|
|
@@ -280,7 +282,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
280
282
|
MatAutocompleteTrigger,
|
|
281
283
|
MatAutocomplete,
|
|
282
284
|
MatOption,
|
|
283
|
-
ReactiveFormsModule
|
|
285
|
+
ReactiveFormsModule,
|
|
286
|
+
PryIconModule
|
|
284
287
|
],
|
|
285
288
|
exports: [...components],
|
|
286
289
|
providers: [I18nPipe]
|
|
@@ -289,4 +292,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
289
292
|
type: Inject,
|
|
290
293
|
args: [HYP_BASE_CONFIG]
|
|
291
294
|
}] }, { type: i1.Store }, { type: i2.PryI18nService }] });
|
|
292
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlwZXJ2aXNvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9oeXBlcnZpc29yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQVMsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RHLE9BQU8sRUFDTCxRQUFRLEVBQ1IsYUFBYSxFQUNiLG1CQUFtQixFQUNuQixhQUFhLEVBRWIsYUFBYSxFQUNiLGVBQWUsRUFDZixrQkFBa0IsRUFDbkIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxF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LFdBQVcsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUM7d0JBQzdELGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQzt3QkFDbEcsT0FBTzt3QkFDUCxTQUFTO3dCQUNULGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixPQUFPO3dCQUNQLGlCQUFpQjt3QkFDakIsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGtCQUFrQjt3QkFDbEIsUUFBUTt3QkFDUixhQUFhO3dCQUNiLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixRQUFRO3dCQUNSLG1CQUFtQjt3QkFDbkIsSUFBSTt3QkFDSixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxTQUFTO3dCQUNULFlBQVk7d0JBQ1osUUFBUTt3QkFDUixTQUFTO3dCQUNULHNCQUFzQjt3QkFDdEIsZUFBZTt3QkFDZixTQUFTO3dCQUNULG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztpQkFDdEI7OzBCQVVJLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlLCBTdG9yZU1vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IGV2ZW50RmVhdHVyZUtleSwgZXZlbnRSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9ldmVudC9ldmVudC5yZWR1Y2VyJztcbmltcG9ydCB7IEV2ZW50RWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvZXZlbnQvZXZlbnQuZWZmZWN0cyc7XG5pbXBvcnQgeyBFdmVudERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZGV0YWlsL2V2ZW50LWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgaHlwZXJ2aXNvclJlZHVjZXIsIGh5cEZlYXR1cmVLZXkgfSBmcm9tICcuL3N0b3JlL2h5cGVydmlzb3IvaHlwZXJ2aXNvci5yZWR1Y2VyJztcbmltcG9ydCB7IEh5cGVydmlzb3JFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9oeXBlcnZpc29yL2h5cGVydmlzb3IuZWZmZWN0cyc7XG5pbXBvcnQgeyBIWVBfQkFTRV9DT05GSUcgfSBmcm9tICcuL2dlbmVyYWwvYmFzZS50b2tlbic7XG5pbXBvcnQgeyBIeXBlcnZpc29yQWN0aW9ucyB9IGZyb20gJy4vc3RvcmUvaHlwZXJ2aXNvci9oeXBlcnZpc29yLmFjdGlvbnMnO1xuaW1wb3J0IHsgQXN5bmNQaXBlLCBEYXRlUGlwZSwgSnNvblBpcGUsIEtleVZhbHVlUGlwZSwgTmdGb3JPZiwgTmdJZiwgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBJMThuUGlwZSxcbiAgUHJ5Q29yZU1vZHVsZSxcbiAgUHJ5RGF0ZVBpY2tlck1vZHVsZSxcbiAgUHJ5STE4bk1vZHVsZSxcbiAgUHJ5STE4blNlcnZpY2UsXG4gIFByeUljb25Nb2R1bGUsXG4gIFByeVNlbGVjdE1vZHVsZSxcbiAgUHJ5U2luY2VEYXRlTW9kdWxlXG59IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBlblRyYW5zbGF0aW9ucyB9IGZyb20gJy4vZ2VuZXJhbC9pMThuL2VuLnRyYW5zbGF0aW9ucyc7XG5pbXBvcnQgeyBmclRyYW5zbGF0aW9ucyB9IGZyb20gJy4vZ2VuZXJhbC9pMThuL2ZyLnRyYW5zbGF0aW9ucyc7XG5pbXBvcnQgeyBJY29uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9pY29uLWRpc3BsYXkvaWNvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudEljb25QaXBlIH0gZnJvbSAnLi9nZW5lcmFsL2ljb24tcGlwZS9ldmVudC1pY29uLnBpcGUnO1xuaW1wb3J0IHsgUHJ5Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQvY29tcG9uZW50cy9jaGVja2JveCc7XG5pbXBvcnQgeyBFdmVudExpc3RDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2xpc3QvZXZlbnQtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L2xpc3QvZXZlbnQtc3VtbWFyeS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L2l0ZW0vZXZlbnQtc3VtbWFyeS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9ldmVudC1zdW1tYXJ5L2V2ZW50LXN1bW1hcnkuZWZmZWN0cyc7XG5pbXBvcnQgeyBldmVudFN1bW1hcnlGZWF0dXJlS2V5LCBldmVudFN1bW1hcnlSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9ldmVudC1zdW1tYXJ5L2V2ZW50LXN1bW1hcnkucmVkdWNlcic7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L3BhZ2UvZXZlbnQtc3VtbWFyeS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JEYXRldGltZUxvY2FsUGlwZSB9IGZyb20gJy4vZ2VuZXJhbC9mb3ItZGF0ZXRpbWUtbG9jYWwtcGlwZS9mb3ItZGF0ZXRpbWUtbG9jYWwucGlwZSc7XG5pbXBvcnQgeyBTdGF0dXNEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3N0YXR1cy1kaXNwbGF5L3N0YXR1cy1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9ncmVzc0Rpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvZ3Jlc3MtZGlzcGxheS9wcm9ncmVzcy1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2x1bW5PcmRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9jb2x1bW4tb3JkZXIvY29sdW1uLW9yZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvb24vY2xpY2svZXZlbnQtZmlsdGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy9kYXRlL2RhdGUtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaG9pY2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvY2hvaWNlL2Nob2ljZS1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2NlZHVyZUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1saXN0L3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBwcm9jZWR1cmVGZWF0dXJlS2V5LCBwcm9jZWR1cmVSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnJlZHVjZXInO1xuaW1wb3J0IHsgUHJvY2VkdXJlRWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvcHJvY2VkdXJlL3Byb2NlZHVyZS5lZmZlY3RzJztcbmltcG9ydCB7IEV2ZW50Q29sdW1uT3JkZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2xpc3QvZXZlbnQtY29sdW1uLW9yZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9jZWR1cmVDb2x1bW5PcmRlckNvbXBvbmVudCB9IGZyb20gJy4vcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWNvbHVtbi1vcmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQXNzb2NpYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvcHJvY2VkdXJlLWFzc29jaWF0aW9uLW1vZGFsL3Byb2NlZHVyZS1hc3NvY2lhdGlvbi1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy90ZXh0L3RleHQtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbW1lZGlhdGVGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9maWx0ZXJzL29uL2ltbWVkaWF0ZS9pbW1lZGlhdGUtZmlsdGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlTW9kZWxEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1kZXRhaWwvcHJvY2VkdXJlLW1vZGVsLWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9wcm9jZWR1cmUtYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5QWN0aW9uTWVudUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5QWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2FjdGlvbi1wYXJhbWV0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvYmFzZS1wYXJhbWV0ZXItYWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlPdGhlckFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9vdGhlci9vdGhlci1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlPdGhlckFjdGlvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvb3RoZXIvb3RoZXItYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eU5vUGFyYW1zQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9uby1wYXJhbS9uby1wYXJhbXMtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eVBob25lQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3Bob25lL3Bob25lLWFjdGlvbi1wYXJhbWV0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eVBob25lQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9waG9uZS9waG9uZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5RW1haWxBY3Rpb25EaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2VtYWlsL2VtYWlsLWFjdGlvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlFbWFpbEFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9lbWFpbC9lbWFpbC1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlTZXJ2aWNlQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlTZXJ2aWNlQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9zZXJ2aWNlL3NlcnZpY2UtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IERpc3BsYXlMb2NhbGVEYXRlVGltZSB9IGZyb20gJy4vZ2VuZXJhbC9kaXNwbGF5LWxvY2FsZS1kYXRldGltZS9kaXNwbGF5LWxvY2FsZS1kYXRldGltZS5waXBlJztcbmltcG9ydCB7IEh2eUNvbW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL2NvbW1lbnRzL2NvbW1lbnRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlDcmVhdGVTZXJ2aWNlQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2UvY3JlYXRlLXNlcnZpY2UuY29tcG9uZW50JztcbmltcG9ydCB7IExhc3RFdmVudHNDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvbGFzdC1ldmVudHMvbGFzdC1ldmVudHMuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUV2ZW50RGV0YWlsc1Rvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2RldGFpbC9ldmVudC1kZXRhaWxzLXRvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUV2ZW50QWRkRXZlbnRDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2RldGFpbC9hZGQtZXZlbnQvYWRkLWV2ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcnVuY2F0ZVBpcGUgfSBmcm9tICcuL2dlbmVyYWwvdHJ1bmNhdGUtcGlwZS90cnVuY2F0ZS5waXBlJztcbmltcG9ydCB7TWF0QXV0b2NvbXBsZXRlLCBNYXRBdXRvY29tcGxldGVUcmlnZ2VyLCBNYXRPcHRpb259IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGVcIjtcblxuY29uc3QgY29tcG9uZW50cyA9IFtcbiAgRXZlbnREZXRhaWxDb21wb25lbnQsXG4gIEV2ZW50TGlzdENvbXBvbmVudCxcbiAgRXZlbnRDb2x1bW5PcmRlckNvbXBvbmVudCxcbiAgSWNvbkRpc3BsYXlDb21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeUl0ZW1Db21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeUxpc3RDb21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeVBhZ2VDb21wb25lbnQsXG4gIEV2ZW50SWNvblBpcGUsXG4gIEZvckRhdGV0aW1lTG9jYWxQaXBlLFxuICBTdGF0dXNEaXNwbGF5Q29tcG9uZW50LFxuICBQcm9ncmVzc0Rpc3BsYXlDb21wb25lbnQsXG4gIENvbHVtbk9yZGVyQ29tcG9uZW50LFxuICBFdmVudEZpbHRlcnNDb21wb25lbnQsXG4gIERhdGVGaWx0ZXJDb21wb25lbnQsXG4gIFRleHRGaWx0ZXJDb21wb25lbnQsXG4gIENob2ljZUZpbHRlckNvbXBvbmVudCxcbiAgUHJvY2VkdXJlTGlzdENvbXBvbmVudCxcbiAgUHJvY2VkdXJlQ29sdW1uT3JkZXJDb21wb25lbnQsXG4gIFByb2NlZHVyZUFzc29jaWF0aW9uTW9kYWxDb21wb25lbnQsXG4gIFByb2NlZHVyZU1vZGVsRGV0YWlsQ29tcG9uZW50LFxuICBJbW1lZGlhdGVGaWx0ZXJzQ29tcG9uZW50LFxuICBIdnlBY3Rpb25NZW51Q29tcG9uZW50LFxuICBIdnlDcmVhdGVTZXJ2aWNlQ29tcG9uZW50LFxuICBIdnlBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQsXG4gIEh2eU90aGVyQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50LFxuICBIdnlPdGhlckFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIEh2eU5vUGFyYW1zQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5UGhvbmVBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eVBob25lQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5RW1haWxBY3Rpb25EaXNwbGF5Q29tcG9uZW50LFxuICBIdnlFbWFpbEFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5U2VydmljZUFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5U2VydmljZUFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIERpc3BsYXlMb2NhbGVEYXRlVGltZSxcbiAgSHZ5Q29tbWVudHNDb21wb25lbnQsXG4gIExhc3RFdmVudHNDb21wb25lbnQsXG4gIEh2eUV2ZW50RGV0YWlsc1Rvb2x0aXBDb21wb25lbnQsXG4gIEh2eUV2ZW50QWRkRXZlbnRDb21wb25lbnRcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHMsIFByb2NlZHVyZUFjdGlvbnNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShoeXBGZWF0dXJlS2V5LCBoeXBlcnZpc29yUmVkdWNlciksXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShldmVudEZlYXR1cmVLZXksIGV2ZW50UmVkdWNlciksXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShldmVudFN1bW1hcnlGZWF0dXJlS2V5LCBldmVudFN1bW1hcnlSZWR1Y2VyKSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKHByb2NlZHVyZUZlYXR1cmVLZXksIHByb2NlZHVyZVJlZHVjZXIpLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbRXZlbnRFZmZlY3RzLCBFdmVudFN1bW1hcnlFZmZlY3RzLCBQcm9jZWR1cmVFZmZlY3RzLCBIeXBlcnZpc29yRWZmZWN0c10pLFxuICAgIE5nRm9yT2YsXG4gICAgQXN5bmNQaXBlLFxuICAgIFByeUkxOG5Nb2R1bGUsXG4gICAgUHJ5Q29yZU1vZHVsZSxcbiAgICBOZ1N0eWxlLFxuICAgIFByeUNoZWNrYm94TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJvdXRlckxpbmssXG4gICAgUHJ5U2luY2VEYXRlTW9kdWxlLFxuICAgIERhdGVQaXBlLFxuICAgIFByeUljb25Nb2R1bGUsXG4gICAgS2V5VmFsdWVQaXBlLFxuICAgIFByeVNlbGVjdE1vZHVsZSxcbiAgICBKc29uUGlwZSxcbiAgICBQcnlEYXRlUGlja2VyTW9kdWxlLFxuICAgIE5nSWYsXG4gICAgUHJ5Q29yZU1vZHVsZSxcbiAgICBQcnlJMThuTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBUcnVuY2F0ZVBpcGUsXG4gICAgRGF0ZVBpcGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsXG4gICAgTWF0QXV0b2NvbXBsZXRlLFxuICAgIE1hdE9wdGlvbixcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzXSxcbiAgcHJvdmlkZXJzOiBbSTE4blBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFB2eUh5cGVydmlzb3JNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiB7IHVybD86IHN0cmluZyB9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxQdnlIeXBlcnZpc29yTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBQdnlIeXBlcnZpc29yTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBIWVBfQkFTRV9DT05GSUcsIHVzZVZhbHVlOiBvcHRpb25zIH1dXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoSFlQX0JBU0VfQ09ORklHKVxuICAgIHByaXZhdGUgYmFzZUNvbmZpZzoge1xuICAgICAgdXJsOiBzdHJpbmc7XG4gICAgfSxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIHByaXZhdGUgaTE4blNlcnZpY2U6IFByeUkxOG5TZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goSHlwZXJ2aXNvckFjdGlvbnMuc2V0VXJsKHsgdXJsOiBiYXNlQ29uZmlnLnVybCB9KSk7XG4gICAgdGhpcy5pMThuU2VydmljZS5hZGRMYW5nT2JqZWN0KCdlbicsICdAaHZ5JywgZW5UcmFuc2xhdGlvbnMpO1xuICAgIHRoaXMuaTE4blNlcnZpY2UuYWRkTGFuZ09iamVjdCgnZnInLCAnQGh2eScsIGZyVHJhbnNsYXRpb25zKTtcbiAgfVxufVxuIl19
|
|
295
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlwZXJ2aXNvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9oeXBlcnZpc29yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQVMsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RHLE9BQU8sRUFDTCxRQUFRLEVBQ1IsYUFBYSxFQUNiLG1CQUFtQixFQUNuQixhQUFhLEVBRWIsYUFBYSxFQUNiLGVBQWUsRUFDZixrQkFBa0IsRUFDbkIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxF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QUUsbUJBQW1CLENBQUM7d0JBQ25FLFdBQVcsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUM7d0JBQzdELGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQzt3QkFDbEcsT0FBTzt3QkFDUCxTQUFTO3dCQUNULGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixPQUFPO3dCQUNQLGlCQUFpQjt3QkFDakIsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGtCQUFrQjt3QkFDbEIsUUFBUTt3QkFDUixhQUFhO3dCQUNiLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixRQUFRO3dCQUNSLG1CQUFtQjt3QkFDbkIsSUFBSTt3QkFDSixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxTQUFTO3dCQUNULFlBQVk7d0JBQ1osUUFBUTt3QkFDUixTQUFTO3dCQUNULHNCQUFzQjt3QkFDdEIsZUFBZTt3QkFDZixTQUFTO3dCQUNULG1CQUFtQjt3QkFDbkIsYUFBYTtxQkFDaEI7b0JBQ0gsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztpQkFDdEI7OzBCQVVJLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlLCBTdG9yZU1vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IGV2ZW50RmVhdHVyZUtleSwgZXZlbnRSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9ldmVudC9ldmVudC5yZWR1Y2VyJztcbmltcG9ydCB7IEV2ZW50RWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvZXZlbnQvZXZlbnQuZWZmZWN0cyc7XG5pbXBvcnQgeyBFdmVudERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZGV0YWlsL2V2ZW50LWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgaHlwZXJ2aXNvclJlZHVjZXIsIGh5cEZlYXR1cmVLZXkgfSBmcm9tICcuL3N0b3JlL2h5cGVydmlzb3IvaHlwZXJ2aXNvci5yZWR1Y2VyJztcbmltcG9ydCB7IEh5cGVydmlzb3JFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9oeXBlcnZpc29yL2h5cGVydmlzb3IuZWZmZWN0cyc7XG5pbXBvcnQgeyBIWVBfQkFTRV9DT05GSUcgfSBmcm9tICcuL2dlbmVyYWwvYmFzZS50b2tlbic7XG5pbXBvcnQgeyBIeXBlcnZpc29yQWN0aW9ucyB9IGZyb20gJy4vc3RvcmUvaHlwZXJ2aXNvci9oeXBlcnZpc29yLmFjdGlvbnMnO1xuaW1wb3J0IHsgQXN5bmNQaXBlLCBEYXRlUGlwZSwgSnNvblBpcGUsIEtleVZhbHVlUGlwZSwgTmdGb3JPZiwgTmdJZiwgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBJMThuUGlwZSxcbiAgUHJ5Q29yZU1vZHVsZSxcbiAgUHJ5RGF0ZVBpY2tlck1vZHVsZSxcbiAgUHJ5STE4bk1vZHVsZSxcbiAgUHJ5STE4blNlcnZpY2UsXG4gIFByeUljb25Nb2R1bGUsXG4gIFByeVNlbGVjdE1vZHVsZSxcbiAgUHJ5U2luY2VEYXRlTW9kdWxlXG59IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBlblRyYW5zbGF0aW9ucyB9IGZyb20gJy4vZ2VuZXJhbC9pMThuL2VuLnRyYW5zbGF0aW9ucyc7XG5pbXBvcnQgeyBmclRyYW5zbGF0aW9ucyB9IGZyb20gJy4vZ2VuZXJhbC9pMThuL2ZyLnRyYW5zbGF0aW9ucyc7XG5pbXBvcnQgeyBJY29uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9pY29uLWRpc3BsYXkvaWNvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudEljb25QaXBlIH0gZnJvbSAnLi9nZW5lcmFsL2ljb24tcGlwZS9ldmVudC1pY29uLnBpcGUnO1xuaW1wb3J0IHsgUHJ5Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQvY29tcG9uZW50cy9jaGVja2JveCc7XG5pbXBvcnQgeyBFdmVudExpc3RDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2xpc3QvZXZlbnQtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L2xpc3QvZXZlbnQtc3VtbWFyeS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L2l0ZW0vZXZlbnQtc3VtbWFyeS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9ldmVudC1zdW1tYXJ5L2V2ZW50LXN1bW1hcnkuZWZmZWN0cyc7XG5pbXBvcnQgeyBldmVudFN1bW1hcnlGZWF0dXJlS2V5LCBldmVudFN1bW1hcnlSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9ldmVudC1zdW1tYXJ5L2V2ZW50LXN1bW1hcnkucmVkdWNlcic7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L3BhZ2UvZXZlbnQtc3VtbWFyeS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JEYXRldGltZUxvY2FsUGlwZSB9IGZyb20gJy4vZ2VuZXJhbC9mb3ItZGF0ZXRpbWUtbG9jYWwtcGlwZS9mb3ItZGF0ZXRpbWUtbG9jYWwucGlwZSc7XG5pbXBvcnQgeyBTdGF0dXNEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3N0YXR1cy1kaXNwbGF5L3N0YXR1cy1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9ncmVzc0Rpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvZ3Jlc3MtZGlzcGxheS9wcm9ncmVzcy1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2x1bW5PcmRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9jb2x1bW4tb3JkZXIvY29sdW1uLW9yZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvb24vY2xpY2svZXZlbnQtZmlsdGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy9kYXRlL2RhdGUtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaG9pY2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvY2hvaWNlL2Nob2ljZS1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2NlZHVyZUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1saXN0L3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBwcm9jZWR1cmVGZWF0dXJlS2V5LCBwcm9jZWR1cmVSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnJlZHVjZXInO1xuaW1wb3J0IHsgUHJvY2VkdXJlRWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvcHJvY2VkdXJlL3Byb2NlZHVyZS5lZmZlY3RzJztcbmltcG9ydCB7IEV2ZW50Q29sdW1uT3JkZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2xpc3QvZXZlbnQtY29sdW1uLW9yZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9jZWR1cmVDb2x1bW5PcmRlckNvbXBvbmVudCB9IGZyb20gJy4vcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWNvbHVtbi1vcmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQXNzb2NpYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvcHJvY2VkdXJlLWFzc29jaWF0aW9uLW1vZGFsL3Byb2NlZHVyZS1hc3NvY2lhdGlvbi1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy90ZXh0L3RleHQtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbW1lZGlhdGVGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9maWx0ZXJzL29uL2ltbWVkaWF0ZS9pbW1lZGlhdGUtZmlsdGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlTW9kZWxEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1kZXRhaWwvcHJvY2VkdXJlLW1vZGVsLWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9wcm9jZWR1cmUtYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5QWN0aW9uTWVudUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5QWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2FjdGlvbi1wYXJhbWV0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvYmFzZS1wYXJhbWV0ZXItYWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlPdGhlckFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9vdGhlci9vdGhlci1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlPdGhlckFjdGlvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvb3RoZXIvb3RoZXItYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eU5vUGFyYW1zQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9uby1wYXJhbS9uby1wYXJhbXMtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eVBob25lQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3Bob25lL3Bob25lLWFjdGlvbi1wYXJhbWV0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eVBob25lQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9waG9uZS9waG9uZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5RW1haWxBY3Rpb25EaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2VtYWlsL2VtYWlsLWFjdGlvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlFbWFpbEFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9lbWFpbC9lbWFpbC1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlTZXJ2aWNlQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlTZXJ2aWNlQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9zZXJ2aWNlL3NlcnZpY2UtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IERpc3BsYXlMb2NhbGVEYXRlVGltZSB9IGZyb20gJy4vZ2VuZXJhbC9kaXNwbGF5LWxvY2FsZS1kYXRldGltZS9kaXNwbGF5LWxvY2FsZS1kYXRldGltZS5waXBlJztcbmltcG9ydCB7IEh2eUNvbW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL2NvbW1lbnRzL2NvbW1lbnRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlDcmVhdGVTZXJ2aWNlQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2UvY3JlYXRlLXNlcnZpY2UuY29tcG9uZW50JztcbmltcG9ydCB7IExhc3RFdmVudHNDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvbGFzdC1ldmVudHMvbGFzdC1ldmVudHMuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUV2ZW50RGV0YWlsc1Rvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2RldGFpbC9ldmVudC1kZXRhaWxzLXRvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUV2ZW50QWRkRXZlbnRDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2RldGFpbC9hZGQtZXZlbnQvYWRkLWV2ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcnVuY2F0ZVBpcGUgfSBmcm9tICcuL2dlbmVyYWwvdHJ1bmNhdGUtcGlwZS90cnVuY2F0ZS5waXBlJztcbmltcG9ydCB7TWF0QXV0b2NvbXBsZXRlLCBNYXRBdXRvY29tcGxldGVUcmlnZ2VyLCBNYXRPcHRpb259IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGVcIjtcblxuY29uc3QgY29tcG9uZW50cyA9IFtcbiAgRXZlbnREZXRhaWxDb21wb25lbnQsXG4gIEV2ZW50TGlzdENvbXBvbmVudCxcbiAgRXZlbnRDb2x1bW5PcmRlckNvbXBvbmVudCxcbiAgSWNvbkRpc3BsYXlDb21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeUl0ZW1Db21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeUxpc3RDb21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeVBhZ2VDb21wb25lbnQsXG4gIEV2ZW50SWNvblBpcGUsXG4gIEZvckRhdGV0aW1lTG9jYWxQaXBlLFxuICBTdGF0dXNEaXNwbGF5Q29tcG9uZW50LFxuICBQcm9ncmVzc0Rpc3BsYXlDb21wb25lbnQsXG4gIENvbHVtbk9yZGVyQ29tcG9uZW50LFxuICBFdmVudEZpbHRlcnNDb21wb25lbnQsXG4gIERhdGVGaWx0ZXJDb21wb25lbnQsXG4gIFRleHRGaWx0ZXJDb21wb25lbnQsXG4gIENob2ljZUZpbHRlckNvbXBvbmVudCxcbiAgUHJvY2VkdXJlTGlzdENvbXBvbmVudCxcbiAgUHJvY2VkdXJlQ29sdW1uT3JkZXJDb21wb25lbnQsXG4gIFByb2NlZHVyZUFzc29jaWF0aW9uTW9kYWxDb21wb25lbnQsXG4gIFByb2NlZHVyZU1vZGVsRGV0YWlsQ29tcG9uZW50LFxuICBJbW1lZGlhdGVGaWx0ZXJzQ29tcG9uZW50LFxuICBIdnlBY3Rpb25NZW51Q29tcG9uZW50LFxuICBIdnlDcmVhdGVTZXJ2aWNlQ29tcG9uZW50LFxuICBIdnlBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQsXG4gIEh2eU90aGVyQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50LFxuICBIdnlPdGhlckFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIEh2eU5vUGFyYW1zQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5UGhvbmVBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eVBob25lQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5RW1haWxBY3Rpb25EaXNwbGF5Q29tcG9uZW50LFxuICBIdnlFbWFpbEFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5U2VydmljZUFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5U2VydmljZUFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIERpc3BsYXlMb2NhbGVEYXRlVGltZSxcbiAgSHZ5Q29tbWVudHNDb21wb25lbnQsXG4gIExhc3RFdmVudHNDb21wb25lbnQsXG4gIEh2eUV2ZW50RGV0YWlsc1Rvb2x0aXBDb21wb25lbnQsXG4gIEh2eUV2ZW50QWRkRXZlbnRDb21wb25lbnRcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHMsIFByb2NlZHVyZUFjdGlvbnNDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShoeXBGZWF0dXJlS2V5LCBoeXBlcnZpc29yUmVkdWNlciksXG4gICAgICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoZXZlbnRGZWF0dXJlS2V5LCBldmVudFJlZHVjZXIpLFxuICAgICAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKGV2ZW50U3VtbWFyeUZlYXR1cmVLZXksIGV2ZW50U3VtbWFyeVJlZHVjZXIpLFxuICAgICAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKHByb2NlZHVyZUZlYXR1cmVLZXksIHByb2NlZHVyZVJlZHVjZXIpLFxuICAgICAgICBFZmZlY3RzTW9kdWxlLmZvckZlYXR1cmUoW0V2ZW50RWZmZWN0cywgRXZlbnRTdW1tYXJ5RWZmZWN0cywgUHJvY2VkdXJlRWZmZWN0cywgSHlwZXJ2aXNvckVmZmVjdHNdKSxcbiAgICAgICAgTmdGb3JPZixcbiAgICAgICAgQXN5bmNQaXBlLFxuICAgICAgICBQcnlJMThuTW9kdWxlLFxuICAgICAgICBQcnlDb3JlTW9kdWxlLFxuICAgICAgICBOZ1N0eWxlLFxuICAgICAgICBQcnlDaGVja2JveE1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJvdXRlckxpbmssXG4gICAgICAgIFByeVNpbmNlRGF0ZU1vZHVsZSxcbiAgICAgICAgRGF0ZVBpcGUsXG4gICAgICAgIFByeUljb25Nb2R1bGUsXG4gICAgICAgIEtleVZhbHVlUGlwZSxcbiAgICAgICAgUHJ5U2VsZWN0TW9kdWxlLFxuICAgICAgICBKc29uUGlwZSxcbiAgICAgICAgUHJ5RGF0ZVBpY2tlck1vZHVsZSxcbiAgICAgICAgTmdJZixcbiAgICAgICAgUHJ5Q29yZU1vZHVsZSxcbiAgICAgICAgUHJ5STE4bk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgVHJ1bmNhdGVQaXBlLFxuICAgICAgICBEYXRlUGlwZSxcbiAgICAgICAgQXN5bmNQaXBlLFxuICAgICAgICBNYXRBdXRvY29tcGxldGVUcmlnZ2VyLFxuICAgICAgICBNYXRBdXRvY29tcGxldGUsXG4gICAgICAgIE1hdE9wdGlvbixcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgUHJ5SWNvbk1vZHVsZVxuICAgIF0sXG4gIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzXSxcbiAgcHJvdmlkZXJzOiBbSTE4blBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFB2eUh5cGVydmlzb3JNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiB7IHVybD86IHN0cmluZyB9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxQdnlIeXBlcnZpc29yTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBQdnlIeXBlcnZpc29yTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBIWVBfQkFTRV9DT05GSUcsIHVzZVZhbHVlOiBvcHRpb25zIH1dXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoSFlQX0JBU0VfQ09ORklHKVxuICAgIHByaXZhdGUgYmFzZUNvbmZpZzoge1xuICAgICAgdXJsOiBzdHJpbmc7XG4gICAgfSxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIHByaXZhdGUgaTE4blNlcnZpY2U6IFByeUkxOG5TZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goSHlwZXJ2aXNvckFjdGlvbnMuc2V0VXJsKHsgdXJsOiBiYXNlQ29uZmlnLnVybCB9KSk7XG4gICAgdGhpcy5pMThuU2VydmljZS5hZGRMYW5nT2JqZWN0KCdlbicsICdAaHZ5JywgZW5UcmFuc2xhdGlvbnMpO1xuICAgIHRoaXMuaTE4blNlcnZpY2UuYWRkTGFuZ09iamVjdCgnZnInLCAnQGh2eScsIGZyVHJhbnNsYXRpb25zKTtcbiAgfVxufVxuIl19
|
|
@@ -1886,6 +1886,7 @@ class EventDetailComponent extends SubscriptionnerDirective {
|
|
|
1886
1886
|
this.profile = null;
|
|
1887
1887
|
this.selectedEquipment = [false];
|
|
1888
1888
|
this.adressDisabled = [false];
|
|
1889
|
+
this.openedAutocomplete = [false];
|
|
1889
1890
|
this.padId = padId;
|
|
1890
1891
|
this.subCategories = [undefined, ...HypEventSubCategory.values['ANOMALY']];
|
|
1891
1892
|
this.equipmentEventsForTooltip = [];
|
|
@@ -2221,7 +2222,11 @@ class EventDetailComponent extends SubscriptionnerDirective {
|
|
|
2221
2222
|
getEquipControl(index) {
|
|
2222
2223
|
return this.equipControls.at(index);
|
|
2223
2224
|
}
|
|
2225
|
+
openAutocomplete(index) {
|
|
2226
|
+
this.openedAutocomplete[index] = !this.openedAutocomplete[index];
|
|
2227
|
+
}
|
|
2224
2228
|
closeAutocomplete(index) {
|
|
2229
|
+
this.openedAutocomplete[index] = !this.openedAutocomplete[index];
|
|
2225
2230
|
const getEquipment = this.equipControls.at(index).value;
|
|
2226
2231
|
if (typeof getEquipment === 'object') {
|
|
2227
2232
|
this.selectedEquipment[index] = true;
|
|
@@ -2370,11 +2375,11 @@ class EventDetailComponent extends SubscriptionnerDirective {
|
|
|
2370
2375
|
this.tooltipRef = undefined;
|
|
2371
2376
|
}
|
|
2372
2377
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: EventDetailComponent, deps: [{ token: EquipmentService }, { token: i1$1.Store }, { token: i2.Overlay }, { token: i0.ViewContainerRef }, { token: i1$3.PryI18nService }, { token: i1$3.PryDialogService }, { token: HypCommentsService }, { token: EventService }, { token: i1$5.Actions }, { token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2373
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: EventDetailComponent, selector: "hvy-event-detail", inputs: { placesChoices: "placesChoices", title: "title", readonly: "readonly", readonlyProcedure: "readonlyProcedure", enableEditActions: "enableEditActions", readOnlyComment: "readOnlyComment", me: "me", events: "events", procedure: "procedure", cancelModifications: "cancelModifications" }, outputs: { modifiedEvents: "modifiedEvents", modifiedProcedure: "modifiedProcedure", eventErrors: "eventErrors", addedEvent: "addedEvent", comfirmDialogOpened: "comfirmDialogOpened", commented: "commented" }, viewQueries: [{ propertyName: "confirmDialog", first: true, predicate: ["confirmDialog"], descendants: true, read: TemplateRef }, { propertyName: "detailHoverIcon", predicate: ["detailHoverIcon"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-hvy-events-detail\">\n <div class=\"o-hvy-events-detail__header\">\n <div class=\"o-hvy-events-detail__header__split\">\n <h1>{{ title ?? '@hvy.event.detail' | i18n }}</h1>\n @if (procedure && canCloseSome) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"addOneEvent()\">\n <pry-icon iconSvg=\"add\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n @if (events.length > 1) {\n @if (canCloseSome && !readonly) {\n <button class=\"a-btn a-btn--secondary -fix-right\" [disabled]=\"!canCloseSome\" (click)=\"closeAll()\">\n {{ (canCloseSome ? '@hvy.event.log.event.close' : '@hvy.event.log.event.closed') | i18n }}\n </button>\n }\n @if (!canCloseSome && closeComment && closeComment.length > 0) {\n <div class=\"a-tooltip\" [attr.data-tooltip]=\"closeComment\" data-tooltip-position=\"right\">\n <pry-icon iconSvg=\"i\" [height]=\"18\" [width]=\"18\">i</pry-icon>\n </div>\n }\n }\n </div>\n <div class=\"o-hvy-events-detail__header__split\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openDeleteModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.delete' | i18n }}\n </button>\n }\n </div>\n </div>\n <div class=\"o-hvy-events-detail__container\">\n <div class=\"o-hvy-events-detail__container__scrollable\">\n <div class=\"o-hvy-events-detail__events\">\n @for (event of events; track event.id; let idx = $index) {\n <div class=\"o-hvy-events-detail__events__event\">\n <div class=\"o-hvy-events-detail__events__event__header\">\n <pry-icon\n iconSvg=\"arrow_down_rounded\"\n [class.-rotated]=\"opened[idx]\"\n class=\"-hand\"\n (click)=\"toggle(idx)\"\n [width]=\"10\"\n [height]=\"10\"\n ></pry-icon>\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n <h2>{{ event.name }}</h2>\n <div class=\"o-hvy-events-detail__events__event__header__comment\">\n @if (event.commentCount > 0) {\n <span>{{\n (event.commentCount > 1 ? '@hvy.event.comment.heads' : '@hvy.event.comment.head')\n | i18n: { nb: event.commentCount }\n }}</span>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"event.status !== 'DONE'\"\n [readonly]=\"readonly\"\n (modified)=\"changeStatus($event, event)\"\n ></hvy-status-display>\n </div>\n <div class=\"o-hvy-events-detail__events__event__content\">\n @if (!opened[idx]) {\n <div>\n {{ '@hvy.event.log.event.category' | i18n }} : {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n <div>{{ '@hvy.event.log.event.description' | i18n }} : {{ event.description }}</div>\n } @else {\n @if (access(event); as accessValue) {\n <div class=\"o-hvy-events-detail__events__event__content__header\">\n <h3>{{ '@hvy.event.log.event.detail' | i18n }}</h3>\n <span class=\"required\">{{ '@hvy.event.log.event.mandatory' | i18n }}</span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (event.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(event.id)\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n }\n <!--nom-->\n <tr>\n <td>{{ '@hvy.event.log.event.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name', idx)\"\n [value]=\"event.name\"\n (change)=\"modifyEvent(idx, 'name', $event)\"\n [readonly]=\"accessValue.name\"\n [maxLength]=\"50\"\n />\n </td>\n <td></td>\n </tr>\n <!--categorie-->\n <tr>\n <td>{{ '@hvy.event.log.event.category' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.category\"\n [items]=\"categories(event)\"\n [class.-error]=\"hasError('category', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'category', $event)\"\n i18nPrefix=\"@hvy.event.category.\"\n [disabled]=\"accessValue.category\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--sous categorie-->\n @if (event.category === 'ANOMALY') {\n <tr>\n <td>{{ '@hvy.event.subCategory.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.subCategory\"\n [items]=\"subCategories\"\n [class.-error]=\"hasError('subCategory', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'subCategory', $event)\"\n i18nPrefix=\"@hvy.event.subCategory.\"\n [disabled]=\"accessValue.subCategory\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n }\n <!--criticite-->\n <tr>\n <td>{{ '@hvy.event.criticality.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.criticality\"\n [items]=\"criticalities\"\n [class.-error]=\"hasError('criticality', idx)\"\n i18nPrefix=\"@hvy.event.criticality.\"\n [disabled]=\"accessValue.criticality\"\n (ngModelChange)=\"modifyEvent(idx, 'criticality', $event)\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"event.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'domain', $event)\"\n [disabled]=\"accessValue.domain\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--equipement-->\n <tr>\n <td>{{ '@hvy.event.equipment' | i18n }} :</td>\n <td>\n <input type=\"text\"\n [placeholder]=\"'@hvy.event.equipmentPlaceholder' | i18n\"\n [matAutocomplete]=\"auto\"\n [formControl]=\"getEquipControl(idx)\"\n [class.-error]=\"hasError('equipment', idx)\">\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayEquipment.bind(this)\"\n (closed)=\"closeAutocomplete(idx)\"\n >\n @for (equipment of equipments$[idx] | async; track equipment) {\n <mat-option [value]=\"equipment\">\n {{equipment.name}} - {{'@hvy.event.family.' + equipment.family | i18n}}\n </mat-option>\n }\n </mat-autocomplete>\n </td>\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand\"\n #detailHoverIcon\n (click)=\"toggleDetailsTooltip(idx)\"\n [width]=\"18\"\n [height]=\"18\"\n ></pry-icon>\n }\n </td>\n </tr>\n <!--entite-->\n <tr>\n <td>{{ '@hvy.event.equipmentEntity' | i18n }} :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('equipment', idx)\"\n [value]=\"\n (event.equipment?.entity ? '@hvy.event.entity.' + event.equipment?.entity : '') | i18n\n \"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--adresse-->\n <tr>\n <td>{{ '@hvy.event.log.event.address' | i18n }} :</td>\n <td>\n <textarea\n [ngModel]=\"event.address\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('address', idx)\"\n [readonly]=\"accessValue.address\"\n (ngModelChange)=\"modifyEvent(idx, 'address', $event)\"\n [maxLength]=\"256\"\n [disabled]=\"adressDisabled[idx]\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--ville-->\n <tr>\n <td>{{ '@hvy.event.district' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"placesChoices\"\n [ngModel]=\"event.district\"\n [bindValue]=\"'key'\"\n bindLabel=\"display\"\n i18nPrefix=\"@hvy.event.places.\"\n (ngModelChange)=\"modifyEvent(idx, 'district', $event)\"\n [disabled]=\"adressDisabled[idx]\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--evenement parent-->\n <tr>\n <td>{{ '@hvy.event.parentEvent.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"displayName\"\n [ngModel]=\"eventSelectValue[idx]\"\n (ngModelChange)=\"selectedParentChange($event, idx)\"\n [autocomplete]=\"true\"\n [externalAutocompleteService]=\"true\"\n [placeholder]=\"'@hvy.event.parentEvent.placeholder' | i18n\"\n id=\"parent\"\n [template]=\"templateParent\"\n [disabled]=\"accessValue.parent\"\n [class.-error]=\"hasError('parent', idx)\"\n class=\"o-hvy-events-detail__events__event__content__equipment\"\n ></pry-select>\n <ng-template #templateParent let-item=\"item\">\n <div class=\"u-display-flex -column\">\n <span [innerHTML]=\"item.html\"></span>\n </div>\n </ng-template>\n </td>\n <td></td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.event.log.event.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"event.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description', idx)\"\n [readonly]=\"accessValue.description\"\n (ngModelChange)=\"modifyEvent(idx, 'description', $event)\"\n [maxLength]=\"256\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--date debut-->\n <tr>\n <td>\n {{ '@hvy.event.startDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.startDate | forDateTimeLocal\"\n [class.-error]=\"hasError('startDate', idx)\"\n [readonly]=\"accessValue.startDate\"\n (change)=\"modifyEvent(idx, 'startDate', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--date fin-->\n <tr>\n <td>\n {{ '@hvy.event.endDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.endDate | forDateTimeLocal\"\n [class.-error]=\"hasError('endDate', idx)\"\n [readonly]=\"accessValue.endDate\"\n (change)=\"modifyEvent(idx, 'endDate', $event)\"\n />\n @if (hasError('endDate', idx) && event.endDate && event.startDate) {\n <span class=\"a-form-field -error\">{{ '@hvy.event.errorDate' | i18n }}</span>\n }\n </td>\n <td></td>\n </tr>\n <!--source-->\n <tr>\n <td>{{ '@hvy.event.source' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalSourceRef ?? ('@hvy.event.hypervisor' | i18n)\"\n [class.-error]=\"hasError('source', idx)\"\n [readonly]=\"accessValue.source\"\n (change)=\"modifyEvent(idx, 'source', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--ref\u00E9rence externe-->\n @if (event.externalSourceRef !== 'Hyperviseur') {\n <tr>\n <td>{{ '@hvy.event.externalId' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalId ?? '-'\"\n [readonly]=\"true\"\n />\n </td>\n <td></td>\n </tr>\n }\n <!--createur-->\n <tr>\n <td>{{ '@hvy.event.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"event.creator\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n <!--date creation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date cloture-->\n <tr>\n <td>{{ '@hvy.event.closeDate' | i18n }} :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.closeDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n </tbody>\n </table>\n @if (event.id !== -1) {\n <hvy-comments\n [lastComment]=\"event.lastComment\"\n [commentCount]=\"event.commentCount\"\n (commented)=\"updateComment(event, $event)\"\n [readonly]=\"readonly\"\n [type]=\"'events'\"\n [me]=\"me?.sub\"\n [objectId]=\"event.id\"\n ></hvy-comments>\n }\n }\n }\n </div>\n </div>\n }\n </div>\n <div class=\"o-hvy-events-detail__procedure\">\n <div class=\"o-hvy-events-detail__procedure__header\">\n <h2>\n {{ (events.length === 1 ? '@hvy.event.log.procedure.name1' : '@hvy.event.log.procedure.name') | i18n }}\n </h2>\n </div>\n @if (procedure) {\n <div class=\"o-hvy-events-detail__procedure__description\">\n <p>\n <span>{{ procedure.name }} :</span>\n {{ procedure.description }}\n </p>\n </div>\n <div class=\"o-hvy-events-detail__procedure__progress\">\n <p>{{ '@hvy.event.log.procedure.progress' | i18n }}</p>\n <hvy-progress-display [progress]=\"calculatedProgress\"></hvy-progress-display>\n </div>\n <hvy-procedure-actions\n [procedureModificationsActions]=\"procedureModifications?.actions\"\n [initialActions] = this._procedure?.actions\n [readonly]=\"readonlyProcedure || readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n [disableSaveDIButton]=\"isEventModified()\"\n [enableEditActions]=\"enableEditActions\"\n [actions]=\"procedure.actions\"\n (modified)=\"modifiedActions($event)\"\n (refreshActions)=\"refreshActions($event)\"\n [me]=\"me?.sub\"\n [events]=\"this.events\"\n (commented)=\"actionCommented($event)\"\n ></hvy-procedure-actions>\n } @else {\n @if (!readonly) {\n <button class=\"a-btn a-btn--secondary\" [disabled]=\"!canAssociateProcedure\" (click)=\"openAssociationModal()\">\n {{ '@hvy.action.associate' | i18n }}\n </button>\n } @else {\n <span class=\"o-hvy-events-detail__procedure__empty\">{{ '@hvy.event.log.procedure.none' | i18n }}</span>\n }\n }\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #confirmDialog>\n <div\n class=\"o-hvy-close-confirm__dialog\"\n aria-labelledby=\"confirm\"\n tabindex=\"-1\"\n id=\"choice\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <h2>\n {{\n (changeStatusContext.events.length === 1 ? '@hvy.event.close.oneTitle' : '@hvy.event.close.multiTitle') | i18n\n }}\n </h2>\n <p>{{ (changeStatusContext.events.length === 1 ? '@hvy.event.close.one' : '@hvy.event.close.multi') | i18n }}</p>\n <ul>\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ event.name }}</li>\n }\n </ul>\n <p class=\"o-hvy-close-confirm__dialog__comment-title\">\n {{ '@hvy.event.close.comment' | i18n }}<span class=\"required\">*</span> :\n </p>\n <div class=\"o-hvy-close-confirm__dialog__comment\">\n <textarea [(ngModel)]=\"changeStatusContext.comment\" class=\"a-form-field\" [maxLength]=\"255\"></textarea>\n </div>\n <div class=\"o-hvy-close-confirm__dialog__actions\">\n <button class=\"a-btn a-btn--primary\" (click)=\"confirmedClose()\" [disabled]=\"confirmDisabled()\">\n {{ '@hvy.action.validate' | i18n }}\n </button>\n <button class=\"a-btn a-btn--secondary\" (click)=\"toggleConfirm()\">{{ '@hvy.action.cancel' | i18n }}</button>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i1$3.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i9.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i9.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1$4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IconDisplayComponent, selector: "hvy-icon-display", inputs: ["event"] }, { kind: "component", type: StatusDisplayComponent, selector: "hvy-status-display", inputs: ["type", "readonly", "item", "modifiable"], outputs: ["modified"] }, { kind: "component", type: ProgressDisplayComponent, selector: "hvy-progress-display", inputs: ["progress"] }, { kind: "component", type: HvyCommentsComponent, selector: "hvy-comments", inputs: ["readonly", "me", "type", "objectId", "displayEmpty", "commentCount", "lastComment", "trigger"], outputs: ["commented"] }, { kind: "component", type: ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: ["mode", "me", "readonly", "readOnlyComment", "enableEditActions", "events", "disableSaveDIButton", "initialActions", "procedureModificationsActions", "actions"], outputs: ["modified", "commented", "refreshActions"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$3.I18nPipe, name: "i18n" }, { kind: "pipe", type: ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
|
|
2378
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: EventDetailComponent, selector: "hvy-event-detail", inputs: { placesChoices: "placesChoices", title: "title", readonly: "readonly", readonlyProcedure: "readonlyProcedure", enableEditActions: "enableEditActions", readOnlyComment: "readOnlyComment", me: "me", events: "events", procedure: "procedure", cancelModifications: "cancelModifications" }, outputs: { modifiedEvents: "modifiedEvents", modifiedProcedure: "modifiedProcedure", eventErrors: "eventErrors", addedEvent: "addedEvent", comfirmDialogOpened: "comfirmDialogOpened", commented: "commented" }, viewQueries: [{ propertyName: "confirmDialog", first: true, predicate: ["confirmDialog"], descendants: true, read: TemplateRef }, { propertyName: "detailHoverIcon", predicate: ["detailHoverIcon"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-hvy-events-detail\">\n <div class=\"o-hvy-events-detail__header\">\n <div class=\"o-hvy-events-detail__header__split\">\n <h1>{{ title ?? '@hvy.event.detail' | i18n }}</h1>\n @if (procedure && canCloseSome) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"addOneEvent()\">\n <pry-icon iconSvg=\"add\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n @if (events.length > 1) {\n @if (canCloseSome && !readonly) {\n <button class=\"a-btn a-btn--secondary -fix-right\" [disabled]=\"!canCloseSome\" (click)=\"closeAll()\">\n {{ (canCloseSome ? '@hvy.event.log.event.close' : '@hvy.event.log.event.closed') | i18n }}\n </button>\n }\n @if (!canCloseSome && closeComment && closeComment.length > 0) {\n <div class=\"a-tooltip\" [attr.data-tooltip]=\"closeComment\" data-tooltip-position=\"right\">\n <pry-icon iconSvg=\"i\" [height]=\"18\" [width]=\"18\">i</pry-icon>\n </div>\n }\n }\n </div>\n <div class=\"o-hvy-events-detail__header__split\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openDeleteModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.delete' | i18n }}\n </button>\n }\n </div>\n </div>\n <div class=\"o-hvy-events-detail__container\">\n <div class=\"o-hvy-events-detail__container__scrollable\">\n <div class=\"o-hvy-events-detail__events\">\n @for (event of events; track event.id; let idx = $index) {\n <div class=\"o-hvy-events-detail__events__event\">\n <div class=\"o-hvy-events-detail__events__event__header\">\n <pry-icon\n iconSvg=\"arrow_down_rounded\"\n [class.-rotated]=\"opened[idx]\"\n class=\"-hand\"\n (click)=\"toggle(idx)\"\n [width]=\"10\"\n [height]=\"10\"\n ></pry-icon>\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n <h2>{{ event.name }}</h2>\n <div class=\"o-hvy-events-detail__events__event__header__comment\">\n @if (event.commentCount > 0) {\n <span>{{\n (event.commentCount > 1 ? '@hvy.event.comment.heads' : '@hvy.event.comment.head')\n | i18n: { nb: event.commentCount }\n }}</span>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"event.status !== 'DONE'\"\n [readonly]=\"readonly\"\n (modified)=\"changeStatus($event, event)\"\n ></hvy-status-display>\n </div>\n <div class=\"o-hvy-events-detail__events__event__content\">\n @if (!opened[idx]) {\n <div>\n {{ '@hvy.event.log.event.category' | i18n }} : {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n <div>{{ '@hvy.event.log.event.description' | i18n }} : {{ event.description }}</div>\n } @else {\n @if (access(event); as accessValue) {\n <div class=\"o-hvy-events-detail__events__event__content__header\">\n <h3>{{ '@hvy.event.log.event.detail' | i18n }}</h3>\n <span class=\"required\">{{ '@hvy.event.log.event.mandatory' | i18n }}</span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (event.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(event.id)\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n }\n <!--nom-->\n <tr>\n <td>{{ '@hvy.event.log.event.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name', idx)\"\n [value]=\"event.name\"\n (change)=\"modifyEvent(idx, 'name', $event)\"\n [readonly]=\"accessValue.name\"\n [maxLength]=\"50\"\n />\n </td>\n <td></td>\n </tr>\n <!--categorie-->\n <tr>\n <td>{{ '@hvy.event.log.event.category' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.category\"\n [items]=\"categories(event)\"\n [class.-error]=\"hasError('category', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'category', $event)\"\n i18nPrefix=\"@hvy.event.category.\"\n [disabled]=\"accessValue.category\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--sous categorie-->\n @if (event.category === 'ANOMALY') {\n <tr>\n <td>{{ '@hvy.event.subCategory.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.subCategory\"\n [items]=\"subCategories\"\n [class.-error]=\"hasError('subCategory', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'subCategory', $event)\"\n i18nPrefix=\"@hvy.event.subCategory.\"\n [disabled]=\"accessValue.subCategory\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n }\n <!--criticite-->\n <tr>\n <td>{{ '@hvy.event.criticality.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.criticality\"\n [items]=\"criticalities\"\n [class.-error]=\"hasError('criticality', idx)\"\n i18nPrefix=\"@hvy.event.criticality.\"\n [disabled]=\"accessValue.criticality\"\n (ngModelChange)=\"modifyEvent(idx, 'criticality', $event)\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"event.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'domain', $event)\"\n [disabled]=\"accessValue.domain\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--equipement-->\n <tr>\n <td>{{ '@hvy.event.equipment' | i18n }} :</td>\n <td class=\"td-autocomplete\">\n <input type=\"text\" class=\"input-autocomplete\"\n [placeholder]=\"'@hvy.event.equipmentPlaceholder' | i18n\"\n [matAutocomplete]=\"auto\"\n [formControl]=\"getEquipControl(idx)\"\n [class.-error]=\"hasError('equipment', idx)\"/>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayEquipment.bind(this)\"\n (opened)=\"openAutocomplete(idx)\"\n (closed)=\"closeAutocomplete(idx)\"\n >\n @for (equipment of equipments$[idx] | async; track equipment) {\n <mat-option [value]=\"equipment\">\n {{equipment.name}} - {{'@hvy.event.family.' + equipment.family | i18n}}\n </mat-option>\n }\n </mat-autocomplete>\n <pry-icon\n class=\"a-pry-select__toggle\"\n [iconSvg]=\"'chevron_bottom'\"\n [hidden]=\"openedAutocomplete[idx]\"\n [width]=\"10\"\n [height]=\"16\"\n ></pry-icon>\n </td>\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand\"\n #detailHoverIcon\n (click)=\"toggleDetailsTooltip(idx)\"\n [width]=\"18\"\n [height]=\"18\"\n ></pry-icon>\n }\n </td>\n </tr>\n <!--entite-->\n <tr>\n <td>{{ '@hvy.event.equipmentEntity' | i18n }} :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('equipment', idx)\"\n [value]=\"\n (event.equipment?.entity ? '@hvy.event.entity.' + event.equipment?.entity : '') | i18n\n \"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--adresse-->\n <tr>\n <td>{{ '@hvy.event.log.event.address' | i18n }} :</td>\n <td>\n <textarea\n [ngModel]=\"event.address\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('address', idx)\"\n [readonly]=\"accessValue.address\"\n (ngModelChange)=\"modifyEvent(idx, 'address', $event)\"\n [maxLength]=\"256\"\n [disabled]=\"adressDisabled[idx]\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--ville-->\n <tr>\n <td>{{ '@hvy.event.district' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"placesChoices\"\n [ngModel]=\"event.district\"\n [bindValue]=\"'key'\"\n bindLabel=\"display\"\n i18nPrefix=\"@hvy.event.places.\"\n (ngModelChange)=\"modifyEvent(idx, 'district', $event)\"\n [disabled]=\"adressDisabled[idx]\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--evenement parent-->\n <tr>\n <td>{{ '@hvy.event.parentEvent.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"displayName\"\n [ngModel]=\"eventSelectValue[idx]\"\n (ngModelChange)=\"selectedParentChange($event, idx)\"\n [autocomplete]=\"true\"\n [externalAutocompleteService]=\"true\"\n [placeholder]=\"'@hvy.event.parentEvent.placeholder' | i18n\"\n id=\"parent\"\n [template]=\"templateParent\"\n [disabled]=\"accessValue.parent\"\n [class.-error]=\"hasError('parent', idx)\"\n class=\"o-hvy-events-detail__events__event__content__equipment\"\n ></pry-select>\n <ng-template #templateParent let-item=\"item\">\n <div class=\"u-display-flex -column\">\n <span [innerHTML]=\"item.html\"></span>\n </div>\n </ng-template>\n </td>\n <td></td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.event.log.event.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"event.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description', idx)\"\n [readonly]=\"accessValue.description\"\n (ngModelChange)=\"modifyEvent(idx, 'description', $event)\"\n [maxLength]=\"256\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--date debut-->\n <tr>\n <td>\n {{ '@hvy.event.startDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.startDate | forDateTimeLocal\"\n [class.-error]=\"hasError('startDate', idx)\"\n [readonly]=\"accessValue.startDate\"\n (change)=\"modifyEvent(idx, 'startDate', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--date fin-->\n <tr>\n <td>\n {{ '@hvy.event.endDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.endDate | forDateTimeLocal\"\n [class.-error]=\"hasError('endDate', idx)\"\n [readonly]=\"accessValue.endDate\"\n (change)=\"modifyEvent(idx, 'endDate', $event)\"\n />\n @if (hasError('endDate', idx) && event.endDate && event.startDate) {\n <span class=\"a-form-field -error\">{{ '@hvy.event.errorDate' | i18n }}</span>\n }\n </td>\n <td></td>\n </tr>\n <!--source-->\n <tr>\n <td>{{ '@hvy.event.source' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalSourceRef ?? ('@hvy.event.hypervisor' | i18n)\"\n [class.-error]=\"hasError('source', idx)\"\n [readonly]=\"accessValue.source\"\n (change)=\"modifyEvent(idx, 'source', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--ref\u00E9rence externe-->\n @if (event.externalSourceRef !== 'Hyperviseur') {\n <tr>\n <td>{{ '@hvy.event.externalId' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalId ?? '-'\"\n [readonly]=\"true\"\n />\n </td>\n <td></td>\n </tr>\n }\n <!--createur-->\n <tr>\n <td>{{ '@hvy.event.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"event.creator\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n <!--date creation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date cloture-->\n <tr>\n <td>{{ '@hvy.event.closeDate' | i18n }} :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.closeDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n </tbody>\n </table>\n @if (event.id !== -1) {\n <hvy-comments\n [lastComment]=\"event.lastComment\"\n [commentCount]=\"event.commentCount\"\n (commented)=\"updateComment(event, $event)\"\n [readonly]=\"readonly\"\n [type]=\"'events'\"\n [me]=\"me?.sub\"\n [objectId]=\"event.id\"\n ></hvy-comments>\n }\n }\n }\n </div>\n </div>\n }\n </div>\n <div class=\"o-hvy-events-detail__procedure\">\n <div class=\"o-hvy-events-detail__procedure__header\">\n <h2>\n {{ (events.length === 1 ? '@hvy.event.log.procedure.name1' : '@hvy.event.log.procedure.name') | i18n }}\n </h2>\n </div>\n @if (procedure) {\n <div class=\"o-hvy-events-detail__procedure__description\">\n <p>\n <span>{{ procedure.name }} :</span>\n {{ procedure.description }}\n </p>\n </div>\n <div class=\"o-hvy-events-detail__procedure__progress\">\n <p>{{ '@hvy.event.log.procedure.progress' | i18n }}</p>\n <hvy-progress-display [progress]=\"calculatedProgress\"></hvy-progress-display>\n </div>\n <hvy-procedure-actions\n [procedureModificationsActions]=\"procedureModifications?.actions\"\n [initialActions] = this._procedure?.actions\n [readonly]=\"readonlyProcedure || readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n [disableSaveDIButton]=\"isEventModified()\"\n [enableEditActions]=\"enableEditActions\"\n [actions]=\"procedure.actions\"\n (modified)=\"modifiedActions($event)\"\n (refreshActions)=\"refreshActions($event)\"\n [me]=\"me?.sub\"\n [events]=\"this.events\"\n (commented)=\"actionCommented($event)\"\n ></hvy-procedure-actions>\n } @else {\n @if (!readonly) {\n <button class=\"a-btn a-btn--secondary\" [disabled]=\"!canAssociateProcedure\" (click)=\"openAssociationModal()\">\n {{ '@hvy.action.associate' | i18n }}\n </button>\n } @else {\n <span class=\"o-hvy-events-detail__procedure__empty\">{{ '@hvy.event.log.procedure.none' | i18n }}</span>\n }\n }\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #confirmDialog>\n <div\n class=\"o-hvy-close-confirm__dialog\"\n aria-labelledby=\"confirm\"\n tabindex=\"-1\"\n id=\"choice\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <h2>\n {{\n (changeStatusContext.events.length === 1 ? '@hvy.event.close.oneTitle' : '@hvy.event.close.multiTitle') | i18n\n }}\n </h2>\n <p>{{ (changeStatusContext.events.length === 1 ? '@hvy.event.close.one' : '@hvy.event.close.multi') | i18n }}</p>\n <ul>\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ event.name }}</li>\n }\n </ul>\n <p class=\"o-hvy-close-confirm__dialog__comment-title\">\n {{ '@hvy.event.close.comment' | i18n }}<span class=\"required\">*</span> :\n </p>\n <div class=\"o-hvy-close-confirm__dialog__comment\">\n <textarea [(ngModel)]=\"changeStatusContext.comment\" class=\"a-form-field\" [maxLength]=\"255\"></textarea>\n </div>\n <div class=\"o-hvy-close-confirm__dialog__actions\">\n <button class=\"a-btn a-btn--primary\" (click)=\"confirmedClose()\" [disabled]=\"confirmDisabled()\">\n {{ '@hvy.action.validate' | i18n }}\n </button>\n <button class=\"a-btn a-btn--secondary\" (click)=\"toggleConfirm()\">{{ '@hvy.action.cancel' | i18n }}</button>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i1$3.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i9.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i9.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1$4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IconDisplayComponent, selector: "hvy-icon-display", inputs: ["event"] }, { kind: "component", type: StatusDisplayComponent, selector: "hvy-status-display", inputs: ["type", "readonly", "item", "modifiable"], outputs: ["modified"] }, { kind: "component", type: ProgressDisplayComponent, selector: "hvy-progress-display", inputs: ["progress"] }, { kind: "component", type: HvyCommentsComponent, selector: "hvy-comments", inputs: ["readonly", "me", "type", "objectId", "displayEmpty", "commentCount", "lastComment", "trigger"], outputs: ["commented"] }, { kind: "component", type: ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: ["mode", "me", "readonly", "readOnlyComment", "enableEditActions", "events", "disableSaveDIButton", "initialActions", "procedureModificationsActions", "actions"], outputs: ["modified", "commented", "refreshActions"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$3.I18nPipe, name: "i18n" }, { kind: "pipe", type: ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
|
|
2374
2379
|
}
|
|
2375
2380
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: EventDetailComponent, decorators: [{
|
|
2376
2381
|
type: Component,
|
|
2377
|
-
args: [{ selector: 'hvy-event-detail', template: "<div class=\"o-hvy-events-detail\">\n <div class=\"o-hvy-events-detail__header\">\n <div class=\"o-hvy-events-detail__header__split\">\n <h1>{{ title ?? '@hvy.event.detail' | i18n }}</h1>\n @if (procedure && canCloseSome) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"addOneEvent()\">\n <pry-icon iconSvg=\"add\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n @if (events.length > 1) {\n @if (canCloseSome && !readonly) {\n <button class=\"a-btn a-btn--secondary -fix-right\" [disabled]=\"!canCloseSome\" (click)=\"closeAll()\">\n {{ (canCloseSome ? '@hvy.event.log.event.close' : '@hvy.event.log.event.closed') | i18n }}\n </button>\n }\n @if (!canCloseSome && closeComment && closeComment.length > 0) {\n <div class=\"a-tooltip\" [attr.data-tooltip]=\"closeComment\" data-tooltip-position=\"right\">\n <pry-icon iconSvg=\"i\" [height]=\"18\" [width]=\"18\">i</pry-icon>\n </div>\n }\n }\n </div>\n <div class=\"o-hvy-events-detail__header__split\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openDeleteModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.delete' | i18n }}\n </button>\n }\n </div>\n </div>\n <div class=\"o-hvy-events-detail__container\">\n <div class=\"o-hvy-events-detail__container__scrollable\">\n <div class=\"o-hvy-events-detail__events\">\n @for (event of events; track event.id; let idx = $index) {\n <div class=\"o-hvy-events-detail__events__event\">\n <div class=\"o-hvy-events-detail__events__event__header\">\n <pry-icon\n iconSvg=\"arrow_down_rounded\"\n [class.-rotated]=\"opened[idx]\"\n class=\"-hand\"\n (click)=\"toggle(idx)\"\n [width]=\"10\"\n [height]=\"10\"\n ></pry-icon>\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n <h2>{{ event.name }}</h2>\n <div class=\"o-hvy-events-detail__events__event__header__comment\">\n @if (event.commentCount > 0) {\n <span>{{\n (event.commentCount > 1 ? '@hvy.event.comment.heads' : '@hvy.event.comment.head')\n | i18n: { nb: event.commentCount }\n }}</span>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"event.status !== 'DONE'\"\n [readonly]=\"readonly\"\n (modified)=\"changeStatus($event, event)\"\n ></hvy-status-display>\n </div>\n <div class=\"o-hvy-events-detail__events__event__content\">\n @if (!opened[idx]) {\n <div>\n {{ '@hvy.event.log.event.category' | i18n }} : {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n <div>{{ '@hvy.event.log.event.description' | i18n }} : {{ event.description }}</div>\n } @else {\n @if (access(event); as accessValue) {\n <div class=\"o-hvy-events-detail__events__event__content__header\">\n <h3>{{ '@hvy.event.log.event.detail' | i18n }}</h3>\n <span class=\"required\">{{ '@hvy.event.log.event.mandatory' | i18n }}</span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (event.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(event.id)\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n }\n <!--nom-->\n <tr>\n <td>{{ '@hvy.event.log.event.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name', idx)\"\n [value]=\"event.name\"\n (change)=\"modifyEvent(idx, 'name', $event)\"\n [readonly]=\"accessValue.name\"\n [maxLength]=\"50\"\n />\n </td>\n <td></td>\n </tr>\n <!--categorie-->\n <tr>\n <td>{{ '@hvy.event.log.event.category' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.category\"\n [items]=\"categories(event)\"\n [class.-error]=\"hasError('category', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'category', $event)\"\n i18nPrefix=\"@hvy.event.category.\"\n [disabled]=\"accessValue.category\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--sous categorie-->\n @if (event.category === 'ANOMALY') {\n <tr>\n <td>{{ '@hvy.event.subCategory.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.subCategory\"\n [items]=\"subCategories\"\n [class.-error]=\"hasError('subCategory', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'subCategory', $event)\"\n i18nPrefix=\"@hvy.event.subCategory.\"\n [disabled]=\"accessValue.subCategory\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n }\n <!--criticite-->\n <tr>\n <td>{{ '@hvy.event.criticality.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.criticality\"\n [items]=\"criticalities\"\n [class.-error]=\"hasError('criticality', idx)\"\n i18nPrefix=\"@hvy.event.criticality.\"\n [disabled]=\"accessValue.criticality\"\n (ngModelChange)=\"modifyEvent(idx, 'criticality', $event)\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"event.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'domain', $event)\"\n [disabled]=\"accessValue.domain\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--equipement-->\n <tr>\n <td>{{ '@hvy.event.equipment' | i18n }} :</td>\n <td>\n <input type=\"text\"\n [placeholder]=\"'@hvy.event.equipmentPlaceholder' | i18n\"\n [matAutocomplete]=\"auto\"\n [formControl]=\"getEquipControl(idx)\"\n [class.-error]=\"hasError('equipment', idx)\">\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayEquipment.bind(this)\"\n (closed)=\"closeAutocomplete(idx)\"\n >\n @for (equipment of equipments$[idx] | async; track equipment) {\n <mat-option [value]=\"equipment\">\n {{equipment.name}} - {{'@hvy.event.family.' + equipment.family | i18n}}\n </mat-option>\n }\n </mat-autocomplete>\n </td>\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand\"\n #detailHoverIcon\n (click)=\"toggleDetailsTooltip(idx)\"\n [width]=\"18\"\n [height]=\"18\"\n ></pry-icon>\n }\n </td>\n </tr>\n <!--entite-->\n <tr>\n <td>{{ '@hvy.event.equipmentEntity' | i18n }} :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('equipment', idx)\"\n [value]=\"\n (event.equipment?.entity ? '@hvy.event.entity.' + event.equipment?.entity : '') | i18n\n \"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--adresse-->\n <tr>\n <td>{{ '@hvy.event.log.event.address' | i18n }} :</td>\n <td>\n <textarea\n [ngModel]=\"event.address\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('address', idx)\"\n [readonly]=\"accessValue.address\"\n (ngModelChange)=\"modifyEvent(idx, 'address', $event)\"\n [maxLength]=\"256\"\n [disabled]=\"adressDisabled[idx]\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--ville-->\n <tr>\n <td>{{ '@hvy.event.district' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"placesChoices\"\n [ngModel]=\"event.district\"\n [bindValue]=\"'key'\"\n bindLabel=\"display\"\n i18nPrefix=\"@hvy.event.places.\"\n (ngModelChange)=\"modifyEvent(idx, 'district', $event)\"\n [disabled]=\"adressDisabled[idx]\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--evenement parent-->\n <tr>\n <td>{{ '@hvy.event.parentEvent.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"displayName\"\n [ngModel]=\"eventSelectValue[idx]\"\n (ngModelChange)=\"selectedParentChange($event, idx)\"\n [autocomplete]=\"true\"\n [externalAutocompleteService]=\"true\"\n [placeholder]=\"'@hvy.event.parentEvent.placeholder' | i18n\"\n id=\"parent\"\n [template]=\"templateParent\"\n [disabled]=\"accessValue.parent\"\n [class.-error]=\"hasError('parent', idx)\"\n class=\"o-hvy-events-detail__events__event__content__equipment\"\n ></pry-select>\n <ng-template #templateParent let-item=\"item\">\n <div class=\"u-display-flex -column\">\n <span [innerHTML]=\"item.html\"></span>\n </div>\n </ng-template>\n </td>\n <td></td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.event.log.event.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"event.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description', idx)\"\n [readonly]=\"accessValue.description\"\n (ngModelChange)=\"modifyEvent(idx, 'description', $event)\"\n [maxLength]=\"256\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--date debut-->\n <tr>\n <td>\n {{ '@hvy.event.startDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.startDate | forDateTimeLocal\"\n [class.-error]=\"hasError('startDate', idx)\"\n [readonly]=\"accessValue.startDate\"\n (change)=\"modifyEvent(idx, 'startDate', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--date fin-->\n <tr>\n <td>\n {{ '@hvy.event.endDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.endDate | forDateTimeLocal\"\n [class.-error]=\"hasError('endDate', idx)\"\n [readonly]=\"accessValue.endDate\"\n (change)=\"modifyEvent(idx, 'endDate', $event)\"\n />\n @if (hasError('endDate', idx) && event.endDate && event.startDate) {\n <span class=\"a-form-field -error\">{{ '@hvy.event.errorDate' | i18n }}</span>\n }\n </td>\n <td></td>\n </tr>\n <!--source-->\n <tr>\n <td>{{ '@hvy.event.source' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalSourceRef ?? ('@hvy.event.hypervisor' | i18n)\"\n [class.-error]=\"hasError('source', idx)\"\n [readonly]=\"accessValue.source\"\n (change)=\"modifyEvent(idx, 'source', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--ref\u00E9rence externe-->\n @if (event.externalSourceRef !== 'Hyperviseur') {\n <tr>\n <td>{{ '@hvy.event.externalId' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalId ?? '-'\"\n [readonly]=\"true\"\n />\n </td>\n <td></td>\n </tr>\n }\n <!--createur-->\n <tr>\n <td>{{ '@hvy.event.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"event.creator\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n <!--date creation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date cloture-->\n <tr>\n <td>{{ '@hvy.event.closeDate' | i18n }} :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.closeDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n </tbody>\n </table>\n @if (event.id !== -1) {\n <hvy-comments\n [lastComment]=\"event.lastComment\"\n [commentCount]=\"event.commentCount\"\n (commented)=\"updateComment(event, $event)\"\n [readonly]=\"readonly\"\n [type]=\"'events'\"\n [me]=\"me?.sub\"\n [objectId]=\"event.id\"\n ></hvy-comments>\n }\n }\n }\n </div>\n </div>\n }\n </div>\n <div class=\"o-hvy-events-detail__procedure\">\n <div class=\"o-hvy-events-detail__procedure__header\">\n <h2>\n {{ (events.length === 1 ? '@hvy.event.log.procedure.name1' : '@hvy.event.log.procedure.name') | i18n }}\n </h2>\n </div>\n @if (procedure) {\n <div class=\"o-hvy-events-detail__procedure__description\">\n <p>\n <span>{{ procedure.name }} :</span>\n {{ procedure.description }}\n </p>\n </div>\n <div class=\"o-hvy-events-detail__procedure__progress\">\n <p>{{ '@hvy.event.log.procedure.progress' | i18n }}</p>\n <hvy-progress-display [progress]=\"calculatedProgress\"></hvy-progress-display>\n </div>\n <hvy-procedure-actions\n [procedureModificationsActions]=\"procedureModifications?.actions\"\n [initialActions] = this._procedure?.actions\n [readonly]=\"readonlyProcedure || readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n [disableSaveDIButton]=\"isEventModified()\"\n [enableEditActions]=\"enableEditActions\"\n [actions]=\"procedure.actions\"\n (modified)=\"modifiedActions($event)\"\n (refreshActions)=\"refreshActions($event)\"\n [me]=\"me?.sub\"\n [events]=\"this.events\"\n (commented)=\"actionCommented($event)\"\n ></hvy-procedure-actions>\n } @else {\n @if (!readonly) {\n <button class=\"a-btn a-btn--secondary\" [disabled]=\"!canAssociateProcedure\" (click)=\"openAssociationModal()\">\n {{ '@hvy.action.associate' | i18n }}\n </button>\n } @else {\n <span class=\"o-hvy-events-detail__procedure__empty\">{{ '@hvy.event.log.procedure.none' | i18n }}</span>\n }\n }\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #confirmDialog>\n <div\n class=\"o-hvy-close-confirm__dialog\"\n aria-labelledby=\"confirm\"\n tabindex=\"-1\"\n id=\"choice\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <h2>\n {{\n (changeStatusContext.events.length === 1 ? '@hvy.event.close.oneTitle' : '@hvy.event.close.multiTitle') | i18n\n }}\n </h2>\n <p>{{ (changeStatusContext.events.length === 1 ? '@hvy.event.close.one' : '@hvy.event.close.multi') | i18n }}</p>\n <ul>\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ event.name }}</li>\n }\n </ul>\n <p class=\"o-hvy-close-confirm__dialog__comment-title\">\n {{ '@hvy.event.close.comment' | i18n }}<span class=\"required\">*</span> :\n </p>\n <div class=\"o-hvy-close-confirm__dialog__comment\">\n <textarea [(ngModel)]=\"changeStatusContext.comment\" class=\"a-form-field\" [maxLength]=\"255\"></textarea>\n </div>\n <div class=\"o-hvy-close-confirm__dialog__actions\">\n <button class=\"a-btn a-btn--primary\" (click)=\"confirmedClose()\" [disabled]=\"confirmDisabled()\">\n {{ '@hvy.action.validate' | i18n }}\n </button>\n <button class=\"a-btn a-btn--secondary\" (click)=\"toggleConfirm()\">{{ '@hvy.action.cancel' | i18n }}</button>\n </div>\n </div>\n</ng-template>\n" }]
|
|
2382
|
+
args: [{ selector: 'hvy-event-detail', template: "<div class=\"o-hvy-events-detail\">\n <div class=\"o-hvy-events-detail__header\">\n <div class=\"o-hvy-events-detail__header__split\">\n <h1>{{ title ?? '@hvy.event.detail' | i18n }}</h1>\n @if (procedure && canCloseSome) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"addOneEvent()\">\n <pry-icon iconSvg=\"add\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n @if (events.length > 1) {\n @if (canCloseSome && !readonly) {\n <button class=\"a-btn a-btn--secondary -fix-right\" [disabled]=\"!canCloseSome\" (click)=\"closeAll()\">\n {{ (canCloseSome ? '@hvy.event.log.event.close' : '@hvy.event.log.event.closed') | i18n }}\n </button>\n }\n @if (!canCloseSome && closeComment && closeComment.length > 0) {\n <div class=\"a-tooltip\" [attr.data-tooltip]=\"closeComment\" data-tooltip-position=\"right\">\n <pry-icon iconSvg=\"i\" [height]=\"18\" [width]=\"18\">i</pry-icon>\n </div>\n }\n }\n </div>\n <div class=\"o-hvy-events-detail__header__split\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openDeleteModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.delete' | i18n }}\n </button>\n }\n </div>\n </div>\n <div class=\"o-hvy-events-detail__container\">\n <div class=\"o-hvy-events-detail__container__scrollable\">\n <div class=\"o-hvy-events-detail__events\">\n @for (event of events; track event.id; let idx = $index) {\n <div class=\"o-hvy-events-detail__events__event\">\n <div class=\"o-hvy-events-detail__events__event__header\">\n <pry-icon\n iconSvg=\"arrow_down_rounded\"\n [class.-rotated]=\"opened[idx]\"\n class=\"-hand\"\n (click)=\"toggle(idx)\"\n [width]=\"10\"\n [height]=\"10\"\n ></pry-icon>\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n <h2>{{ event.name }}</h2>\n <div class=\"o-hvy-events-detail__events__event__header__comment\">\n @if (event.commentCount > 0) {\n <span>{{\n (event.commentCount > 1 ? '@hvy.event.comment.heads' : '@hvy.event.comment.head')\n | i18n: { nb: event.commentCount }\n }}</span>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"event.status !== 'DONE'\"\n [readonly]=\"readonly\"\n (modified)=\"changeStatus($event, event)\"\n ></hvy-status-display>\n </div>\n <div class=\"o-hvy-events-detail__events__event__content\">\n @if (!opened[idx]) {\n <div>\n {{ '@hvy.event.log.event.category' | i18n }} : {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n <div>{{ '@hvy.event.log.event.description' | i18n }} : {{ event.description }}</div>\n } @else {\n @if (access(event); as accessValue) {\n <div class=\"o-hvy-events-detail__events__event__content__header\">\n <h3>{{ '@hvy.event.log.event.detail' | i18n }}</h3>\n <span class=\"required\">{{ '@hvy.event.log.event.mandatory' | i18n }}</span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (event.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(event.id)\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n }\n <!--nom-->\n <tr>\n <td>{{ '@hvy.event.log.event.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name', idx)\"\n [value]=\"event.name\"\n (change)=\"modifyEvent(idx, 'name', $event)\"\n [readonly]=\"accessValue.name\"\n [maxLength]=\"50\"\n />\n </td>\n <td></td>\n </tr>\n <!--categorie-->\n <tr>\n <td>{{ '@hvy.event.log.event.category' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.category\"\n [items]=\"categories(event)\"\n [class.-error]=\"hasError('category', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'category', $event)\"\n i18nPrefix=\"@hvy.event.category.\"\n [disabled]=\"accessValue.category\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--sous categorie-->\n @if (event.category === 'ANOMALY') {\n <tr>\n <td>{{ '@hvy.event.subCategory.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.subCategory\"\n [items]=\"subCategories\"\n [class.-error]=\"hasError('subCategory', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'subCategory', $event)\"\n i18nPrefix=\"@hvy.event.subCategory.\"\n [disabled]=\"accessValue.subCategory\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n }\n <!--criticite-->\n <tr>\n <td>{{ '@hvy.event.criticality.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [ngModel]=\"event.criticality\"\n [items]=\"criticalities\"\n [class.-error]=\"hasError('criticality', idx)\"\n i18nPrefix=\"@hvy.event.criticality.\"\n [disabled]=\"accessValue.criticality\"\n (ngModelChange)=\"modifyEvent(idx, 'criticality', $event)\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"event.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain', idx)\"\n (ngModelChange)=\"modifyEvent(idx, 'domain', $event)\"\n [disabled]=\"accessValue.domain\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--equipement-->\n <tr>\n <td>{{ '@hvy.event.equipment' | i18n }} :</td>\n <td class=\"td-autocomplete\">\n <input type=\"text\" class=\"input-autocomplete\"\n [placeholder]=\"'@hvy.event.equipmentPlaceholder' | i18n\"\n [matAutocomplete]=\"auto\"\n [formControl]=\"getEquipControl(idx)\"\n [class.-error]=\"hasError('equipment', idx)\"/>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayEquipment.bind(this)\"\n (opened)=\"openAutocomplete(idx)\"\n (closed)=\"closeAutocomplete(idx)\"\n >\n @for (equipment of equipments$[idx] | async; track equipment) {\n <mat-option [value]=\"equipment\">\n {{equipment.name}} - {{'@hvy.event.family.' + equipment.family | i18n}}\n </mat-option>\n }\n </mat-autocomplete>\n <pry-icon\n class=\"a-pry-select__toggle\"\n [iconSvg]=\"'chevron_bottom'\"\n [hidden]=\"openedAutocomplete[idx]\"\n [width]=\"10\"\n [height]=\"16\"\n ></pry-icon>\n </td>\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand\"\n #detailHoverIcon\n (click)=\"toggleDetailsTooltip(idx)\"\n [width]=\"18\"\n [height]=\"18\"\n ></pry-icon>\n }\n </td>\n </tr>\n <!--entite-->\n <tr>\n <td>{{ '@hvy.event.equipmentEntity' | i18n }} :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('equipment', idx)\"\n [value]=\"\n (event.equipment?.entity ? '@hvy.event.entity.' + event.equipment?.entity : '') | i18n\n \"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--adresse-->\n <tr>\n <td>{{ '@hvy.event.log.event.address' | i18n }} :</td>\n <td>\n <textarea\n [ngModel]=\"event.address\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('address', idx)\"\n [readonly]=\"accessValue.address\"\n (ngModelChange)=\"modifyEvent(idx, 'address', $event)\"\n [maxLength]=\"256\"\n [disabled]=\"adressDisabled[idx]\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--ville-->\n <tr>\n <td>{{ '@hvy.event.district' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"placesChoices\"\n [ngModel]=\"event.district\"\n [bindValue]=\"'key'\"\n bindLabel=\"display\"\n i18nPrefix=\"@hvy.event.places.\"\n (ngModelChange)=\"modifyEvent(idx, 'district', $event)\"\n [disabled]=\"adressDisabled[idx]\"\n ></pry-select>\n </td>\n <td></td>\n </tr>\n <!--evenement parent-->\n <tr>\n <td>{{ '@hvy.event.parentEvent.name' | i18n }} :</td>\n <td>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"displayName\"\n [ngModel]=\"eventSelectValue[idx]\"\n (ngModelChange)=\"selectedParentChange($event, idx)\"\n [autocomplete]=\"true\"\n [externalAutocompleteService]=\"true\"\n [placeholder]=\"'@hvy.event.parentEvent.placeholder' | i18n\"\n id=\"parent\"\n [template]=\"templateParent\"\n [disabled]=\"accessValue.parent\"\n [class.-error]=\"hasError('parent', idx)\"\n class=\"o-hvy-events-detail__events__event__content__equipment\"\n ></pry-select>\n <ng-template #templateParent let-item=\"item\">\n <div class=\"u-display-flex -column\">\n <span [innerHTML]=\"item.html\"></span>\n </div>\n </ng-template>\n </td>\n <td></td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.event.log.event.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"event.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description', idx)\"\n [readonly]=\"accessValue.description\"\n (ngModelChange)=\"modifyEvent(idx, 'description', $event)\"\n [maxLength]=\"256\"\n ></textarea>\n </td>\n <td></td>\n </tr>\n <!--date debut-->\n <tr>\n <td>\n {{ '@hvy.event.startDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.startDate | forDateTimeLocal\"\n [class.-error]=\"hasError('startDate', idx)\"\n [readonly]=\"accessValue.startDate\"\n (change)=\"modifyEvent(idx, 'startDate', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--date fin-->\n <tr>\n <td>\n {{ '@hvy.event.endDate' | i18n }}\n @if (event.category === 'MANIFESTATION') {\n <span class=\"required\">*</span>\n }\n :\n </td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.endDate | forDateTimeLocal\"\n [class.-error]=\"hasError('endDate', idx)\"\n [readonly]=\"accessValue.endDate\"\n (change)=\"modifyEvent(idx, 'endDate', $event)\"\n />\n @if (hasError('endDate', idx) && event.endDate && event.startDate) {\n <span class=\"a-form-field -error\">{{ '@hvy.event.errorDate' | i18n }}</span>\n }\n </td>\n <td></td>\n </tr>\n <!--source-->\n <tr>\n <td>{{ '@hvy.event.source' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalSourceRef ?? ('@hvy.event.hypervisor' | i18n)\"\n [class.-error]=\"hasError('source', idx)\"\n [readonly]=\"accessValue.source\"\n (change)=\"modifyEvent(idx, 'source', $event)\"\n />\n </td>\n <td></td>\n </tr>\n <!--ref\u00E9rence externe-->\n @if (event.externalSourceRef !== 'Hyperviseur') {\n <tr>\n <td>{{ '@hvy.event.externalId' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"event.externalId ?? '-'\"\n [readonly]=\"true\"\n />\n </td>\n <td></td>\n </tr>\n }\n <!--createur-->\n <tr>\n <td>{{ '@hvy.event.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"event.creator\" [readonly]=\"true\" />\n </td>\n <td></td>\n </tr>\n <!--date creation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n <!--date cloture-->\n <tr>\n <td>{{ '@hvy.event.closeDate' | i18n }} :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"event.closeDate | forDateTimeLocal\"\n readonly\n />\n </td>\n <td></td>\n </tr>\n </tbody>\n </table>\n @if (event.id !== -1) {\n <hvy-comments\n [lastComment]=\"event.lastComment\"\n [commentCount]=\"event.commentCount\"\n (commented)=\"updateComment(event, $event)\"\n [readonly]=\"readonly\"\n [type]=\"'events'\"\n [me]=\"me?.sub\"\n [objectId]=\"event.id\"\n ></hvy-comments>\n }\n }\n }\n </div>\n </div>\n }\n </div>\n <div class=\"o-hvy-events-detail__procedure\">\n <div class=\"o-hvy-events-detail__procedure__header\">\n <h2>\n {{ (events.length === 1 ? '@hvy.event.log.procedure.name1' : '@hvy.event.log.procedure.name') | i18n }}\n </h2>\n </div>\n @if (procedure) {\n <div class=\"o-hvy-events-detail__procedure__description\">\n <p>\n <span>{{ procedure.name }} :</span>\n {{ procedure.description }}\n </p>\n </div>\n <div class=\"o-hvy-events-detail__procedure__progress\">\n <p>{{ '@hvy.event.log.procedure.progress' | i18n }}</p>\n <hvy-progress-display [progress]=\"calculatedProgress\"></hvy-progress-display>\n </div>\n <hvy-procedure-actions\n [procedureModificationsActions]=\"procedureModifications?.actions\"\n [initialActions] = this._procedure?.actions\n [readonly]=\"readonlyProcedure || readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n [disableSaveDIButton]=\"isEventModified()\"\n [enableEditActions]=\"enableEditActions\"\n [actions]=\"procedure.actions\"\n (modified)=\"modifiedActions($event)\"\n (refreshActions)=\"refreshActions($event)\"\n [me]=\"me?.sub\"\n [events]=\"this.events\"\n (commented)=\"actionCommented($event)\"\n ></hvy-procedure-actions>\n } @else {\n @if (!readonly) {\n <button class=\"a-btn a-btn--secondary\" [disabled]=\"!canAssociateProcedure\" (click)=\"openAssociationModal()\">\n {{ '@hvy.action.associate' | i18n }}\n </button>\n } @else {\n <span class=\"o-hvy-events-detail__procedure__empty\">{{ '@hvy.event.log.procedure.none' | i18n }}</span>\n }\n }\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #confirmDialog>\n <div\n class=\"o-hvy-close-confirm__dialog\"\n aria-labelledby=\"confirm\"\n tabindex=\"-1\"\n id=\"choice\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <h2>\n {{\n (changeStatusContext.events.length === 1 ? '@hvy.event.close.oneTitle' : '@hvy.event.close.multiTitle') | i18n\n }}\n </h2>\n <p>{{ (changeStatusContext.events.length === 1 ? '@hvy.event.close.one' : '@hvy.event.close.multi') | i18n }}</p>\n <ul>\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ event.name }}</li>\n }\n </ul>\n <p class=\"o-hvy-close-confirm__dialog__comment-title\">\n {{ '@hvy.event.close.comment' | i18n }}<span class=\"required\">*</span> :\n </p>\n <div class=\"o-hvy-close-confirm__dialog__comment\">\n <textarea [(ngModel)]=\"changeStatusContext.comment\" class=\"a-form-field\" [maxLength]=\"255\"></textarea>\n </div>\n <div class=\"o-hvy-close-confirm__dialog__actions\">\n <button class=\"a-btn a-btn--primary\" (click)=\"confirmedClose()\" [disabled]=\"confirmDisabled()\">\n {{ '@hvy.action.validate' | i18n }}\n </button>\n <button class=\"a-btn a-btn--secondary\" (click)=\"toggleConfirm()\">{{ '@hvy.action.cancel' | i18n }}</button>\n </div>\n </div>\n</ng-template>\n" }]
|
|
2378
2383
|
}], ctorParameters: () => [{ type: EquipmentService }, { type: i1$1.Store }, { type: i2.Overlay }, { type: i0.ViewContainerRef }, { type: i1$3.PryI18nService }, { type: i1$3.PryDialogService }, { type: HypCommentsService }, { type: EventService }, { type: i1$5.Actions }, { type: i1$4.FormBuilder }], propDecorators: { placesChoices: [{
|
|
2379
2384
|
type: Input
|
|
2380
2385
|
}], modifiedEvents: [{
|
|
@@ -4028,7 +4033,8 @@ class PvyHypervisorModule {
|
|
|
4028
4033
|
MatAutocompleteTrigger,
|
|
4029
4034
|
MatAutocomplete,
|
|
4030
4035
|
MatOption,
|
|
4031
|
-
ReactiveFormsModule
|
|
4036
|
+
ReactiveFormsModule,
|
|
4037
|
+
PryIconModule], exports: [EventDetailComponent,
|
|
4032
4038
|
EventListComponent,
|
|
4033
4039
|
EventColumnOrderComponent,
|
|
4034
4040
|
IconDisplayComponent,
|
|
@@ -4085,7 +4091,8 @@ class PvyHypervisorModule {
|
|
|
4085
4091
|
FormsModule,
|
|
4086
4092
|
MatAutocomplete,
|
|
4087
4093
|
MatOption,
|
|
4088
|
-
ReactiveFormsModule
|
|
4094
|
+
ReactiveFormsModule,
|
|
4095
|
+
PryIconModule] }); }
|
|
4089
4096
|
}
|
|
4090
4097
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: PvyHypervisorModule, decorators: [{
|
|
4091
4098
|
type: NgModule,
|
|
@@ -4123,7 +4130,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
4123
4130
|
MatAutocompleteTrigger,
|
|
4124
4131
|
MatAutocomplete,
|
|
4125
4132
|
MatOption,
|
|
4126
|
-
ReactiveFormsModule
|
|
4133
|
+
ReactiveFormsModule,
|
|
4134
|
+
PryIconModule
|
|
4127
4135
|
],
|
|
4128
4136
|
exports: [...components],
|
|
4129
4137
|
providers: [I18nPipe]
|