@provoly/hypervisor 2.1.1 → 2.1.9

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.
@@ -41,15 +41,15 @@ export class ProcedureListComponent extends SubscriptionnerDirective {
41
41
  return this.router.navigate(this.PROCEDURE_LINK.fn(procedure, this.store));
42
42
  }
43
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i3.InfiniteScrollService }], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i5.TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: i6.ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: i7.ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: i8.ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i10.DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\"><div>Inactif</div></td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i5.TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: i6.ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: i7.ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: i8.ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i10.DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
45
45
  }
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, decorators: [{
47
47
  type: Component,
48
- args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
48
+ args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\"><div>Inactif</div></td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
49
49
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i3.InfiniteScrollService }], propDecorators: { scrollable: [{
50
50
  type: ViewChild,
51
51
  args: ['scrollable']
52
52
  }], placeholder: [{
53
53
  type: Input
54
54
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdsRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7Ozs7QUFFdEQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLEVBQUUsRUFBRSxDQUFDLFNBQTRCLEVBQUUsS0FBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7Q0FDeEYsQ0FBQztBQU1GLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx3QkFBd0I7SUFRbEUsWUFDWSxLQUFpQixFQUNuQixNQUFjLEVBQ2QsTUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFKRSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQVR2QyxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUNoQyxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ0QsWUFBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1RCxnQkFBVyxHQUFXLG9CQUFvQixDQUFDO1FBd0JqQyxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBaEIvQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6RyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQTRCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7OEdBNUJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHlPQ3BCbkMsNmlIQW1GQTs7MkZEL0RhLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDRSwwQkFBMEI7bUlBUVgsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNkLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL3Byb2NlZHVyZS9wcm9jZWR1cmUuYWN0aW9ucyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9jZWR1cmVTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBIeXBQcm9jZWR1cmVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtcHJvY2VkdXJlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9pbmZpbml0ZVNjcm9sbC5zZXJ2aWNlJztcbmltcG9ydCB7IERPTUFJTlMgfSBmcm9tICcuLi8uLi9tb2RlbC9kb21haW5zLmNvbnN0YW50JztcbmltcG9ydCB7IHBhZElkIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9wYWQtaWQuZnVuY3Rpb24nO1xuXG5leHBvcnQgY29uc3QgUFJPQ0VEVVJFX0xJTksgPSB7XG4gIGZuOiAocHJvY2VkdXJlOiBIeXBQcm9jZWR1cmVNb2RlbCwgc3RvcmU6IFN0b3JlPGFueT4pID0+IFsnLi8nLCBwYWRJZC5mbihwcm9jZWR1cmUuaWQpXVxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXByb2NlZHVyZS1tb2RlbC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVMaXN0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHJvY2VkdXJlcyQ6IE9ic2VydmFibGU8SHlwUHJvY2VkdXJlTW9kZWxbXT47XG4gIFBST0NFRFVSRV9MSU5LID0gUFJPQ0VEVVJFX0xJTks7XG4gIHNlYXJjaDogc3RyaW5nID0gJyc7XG4gIHByb3RlY3RlZCByZWFkb25seSBET01BSU5TID0gRE9NQUlOUy52YWx1ZXMubWFwKChkKSA9PiAoeyBrZXk6IGQgfSkpO1xuICBAVmlld0NoaWxkKCdzY3JvbGxhYmxlJykgc2Nyb2xsYWJsZSE6IEVsZW1lbnRSZWY7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnQGh2eS5hY3Rpb24uc2VhcmNoJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHNjcm9sbDogSW5maW5pdGVTY3JvbGxTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChQcm9jZWR1cmVBY3Rpb25zLmxvYWQoe30pKTtcbiAgICB0aGlzLnByb2NlZHVyZXMkID0gdGhpcy5zdG9yZS5zZWxlY3QoUHJvY2VkdXJlU2VsZWN0b3JzLnByb2NlZHVyZXMpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNjcm9sbC5pc0VuZE9mUGFnZSh0aGlzLnNjcm9sbGFibGUubmF0aXZlRWxlbWVudCwgUHJvY2VkdXJlU2VsZWN0b3JzLm5vTW9yZVByb2NlZHVyZXMpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goUHJvY2VkdXJlQWN0aW9ucy5sb2FkKHsgbmV4dDogdHJ1ZSB9KSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnb1RvKHByb2NlZHVyZTogSHlwUHJvY2VkdXJlTW9kZWwpIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUodGhpcy5QUk9DRURVUkVfTElOSy5mbihwcm9jZWR1cmUsIHRoaXMuc3RvcmUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYWRJZCA9IHBhZElkO1xufVxuIiwiPGRpdiBjbGFzcz1cIm8tcHJvY2VkdXJlLWxpc3RcIj5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCBvLXByb2NlZHVyZS1saXN0X19hY3Rpb25cIj5cbiAgICA8aHZ5LWltbWVkaWF0ZS1maWx0ZXJzIFtmaWx0ZXJTZXRdPVwiJ3Byb2NlZHVyZSdcIj5cbiAgICAgIDxodnktdGV4dC1maWx0ZXIgcHJvcD1cInNlYXJjaFwiICNmaWx0ZXIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCI+PC9odnktdGV4dC1maWx0ZXI+XG4gICAgICA8aHZ5LWNob2ljZS1maWx0ZXJcbiAgICAgICAgaTE4blByZWZpeD1cIkBodnkuZXZlbnQuZG9tYWluLlwiXG4gICAgICAgIGxhYmVsPVwiQGh2eS5ldmVudC5kb21haW4ubmFtZVwiXG4gICAgICAgIFtjaG9pY2VzXT1cIkRPTUFJTlNcIlxuICAgICAgICBwcm9wPVwiZG9tYWluXCJcbiAgICAgICAgI2ZpbHRlclxuICAgICAgPjwvaHZ5LWNob2ljZS1maWx0ZXI+XG4gICAgPC9odnktaW1tZWRpYXRlLWZpbHRlcnM+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1wcm9jZWR1cmUtbGlzdF9fdGFibGVcIiAjc2Nyb2xsYWJsZT5cbiAgICA8dGFibGUgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVcIj5cbiAgICAgIDx0aGVhZD5cbiAgICAgICAgPHRyIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19oZWFkZXJcIj5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJpZFwiPnt7ICdAaHZ5LnByb2NlZHVyZS5pZCcgfCBpMThuIH19PC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cIm5hbWVcIj57eyAnQGh2eS5wcm9jZWR1cmUudGl0bGUnIHwgaTE4biB9fTwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJkb21haW5cIj57eyAnQGh2eS5wcm9jZWR1cmUuZG9tYWluJyB8IGkxOG4gfX08L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwidXNlQ291bnRcIlxuICAgICAgICAgICAgICA+e3sgJ0BodnkucHJvY2VkdXJlLnVzZUNvdW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgIDwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJjcmVhdG9yXCJcbiAgICAgICAgICAgICAgPnt7ICdAaHZ5LnByb2NlZHVyZS5hdXRob3InIHwgaTE4biB9fVxuICAgICAgICAgICAgPC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImNyZWF0aW9uRGF0ZVwiXG4gICAgICAgICAgICAgID57eyAnQGh2eS5ldmVudC5jcmVhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19XG4gICAgICAgICAgICA8L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwibGFzdE1vZGlmaWNhdGlvbkRhdGVcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkuZXZlbnQubGFzdE1vZGlmaWNhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19PC9zcGFuPjwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXJcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD48L3RoPlxuICAgICAgICA8L3RyPlxuICAgICAgPC90aGVhZD5cbiAgICAgIDx0Ym9keT5cbiAgICAgICAgQGZvciAocHJvY2VkdXJlIG9mIHByb2NlZHVyZXMkIHwgYXN5bmM7IHRyYWNrIHByb2NlZHVyZS5pZCkge1xuICAgICAgICAgIDx0ciBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZVwiIChjbGljayk9XCJnb1RvKHByb2NlZHVyZSlcIj5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHBhZElkLmZuKHByb2NlZHVyZS5pZCkgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgcHJvY2VkdXJlLm5hbWUgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgJ0BodnkuZXZlbnQuZG9tYWluLicgKyBwcm9jZWR1cmUuZG9tYWluIHwgaTE4biB9fTwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj57eyBwcm9jZWR1cmUudXNlQ291bnQgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgcHJvY2VkdXJlLmNyZWF0b3IgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgcHJvY2VkdXJlLmNyZWF0aW9uRGF0ZSB8IGRpc3BsYXlMb2NhbGVEYXRldGltZSB9fTwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICAgICAge3sgcHJvY2VkdXJlLmxhc3RNb2RpZmljYXRpb25EYXRlIHwgZGlzcGxheUxvY2FsZURhdGV0aW1lIH19XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+XG4gICAgICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlBST0NFRFVSRV9MSU5LLmZuKHByb2NlZHVyZSwgc3RvcmUpXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnN1bHQtbGlua1wiIFt0aXRsZV09XCInQGh2eS5hY3Rpb24uY29uc3VsdCcgfCBpMThuXCI+XG4gICAgICAgICAgICAgICAgICA8cHJ5LWljb24gaWNvblN2Zz1cImV5ZVwiIFtoZWlnaHRdPVwiMzBcIiBbd2lkdGhdPVwiNDBcIj48L3ByeS1pY29uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIH0gQGVtcHR5IHtcbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2VtcHR5XCIgY29sc3Bhbj1cIjUwXCI+XG4gICAgICAgICAgICAgIDxkaXY+e3sgJ0BodnkucHJvY2VkdXJlLm5vQ29udGVudCcgfCBpMThuIH19PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgfVxuICAgICAgPC90Ym9keT5cbiAgICA8L3RhYmxlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdsRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7Ozs7QUFFdEQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLEVBQUUsRUFBRSxDQUFDLFNBQTRCLEVBQUUsS0FBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7Q0FDeEYsQ0FBQztBQU1GLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx3QkFBd0I7SUFRbEUsWUFDWSxLQUFpQixFQUNuQixNQUFjLEVBQ2QsTUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFKRSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQVR2QyxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUNoQyxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ0QsWUFBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1RCxnQkFBVyxHQUFXLG9CQUFvQixDQUFDO1FBd0JqQyxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBaEIvQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6RyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQTRCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7OEdBNUJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHlPQ3BCbkMsbTBIQXlGQTs7MkZEckVhLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDRSwwQkFBMEI7bUlBUVgsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNkLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL3Byb2NlZHVyZS9wcm9jZWR1cmUuYWN0aW9ucyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9jZWR1cmVTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBIeXBQcm9jZWR1cmVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtcHJvY2VkdXJlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9pbmZpbml0ZVNjcm9sbC5zZXJ2aWNlJztcbmltcG9ydCB7IERPTUFJTlMgfSBmcm9tICcuLi8uLi9tb2RlbC9kb21haW5zLmNvbnN0YW50JztcbmltcG9ydCB7IHBhZElkIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9wYWQtaWQuZnVuY3Rpb24nO1xuXG5leHBvcnQgY29uc3QgUFJPQ0VEVVJFX0xJTksgPSB7XG4gIGZuOiAocHJvY2VkdXJlOiBIeXBQcm9jZWR1cmVNb2RlbCwgc3RvcmU6IFN0b3JlPGFueT4pID0+IFsnLi8nLCBwYWRJZC5mbihwcm9jZWR1cmUuaWQpXVxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXByb2NlZHVyZS1tb2RlbC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVMaXN0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHJvY2VkdXJlcyQ6IE9ic2VydmFibGU8SHlwUHJvY2VkdXJlTW9kZWxbXT47XG4gIFBST0NFRFVSRV9MSU5LID0gUFJPQ0VEVVJFX0xJTks7XG4gIHNlYXJjaDogc3RyaW5nID0gJyc7XG4gIHByb3RlY3RlZCByZWFkb25seSBET01BSU5TID0gRE9NQUlOUy52YWx1ZXMubWFwKChkKSA9PiAoeyBrZXk6IGQgfSkpO1xuICBAVmlld0NoaWxkKCdzY3JvbGxhYmxlJykgc2Nyb2xsYWJsZSE6IEVsZW1lbnRSZWY7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnQGh2eS5hY3Rpb24uc2VhcmNoJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHNjcm9sbDogSW5maW5pdGVTY3JvbGxTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChQcm9jZWR1cmVBY3Rpb25zLmxvYWQoe30pKTtcbiAgICB0aGlzLnByb2NlZHVyZXMkID0gdGhpcy5zdG9yZS5zZWxlY3QoUHJvY2VkdXJlU2VsZWN0b3JzLnByb2NlZHVyZXMpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNjcm9sbC5pc0VuZE9mUGFnZSh0aGlzLnNjcm9sbGFibGUubmF0aXZlRWxlbWVudCwgUHJvY2VkdXJlU2VsZWN0b3JzLm5vTW9yZVByb2NlZHVyZXMpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goUHJvY2VkdXJlQWN0aW9ucy5sb2FkKHsgbmV4dDogdHJ1ZSB9KSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnb1RvKHByb2NlZHVyZTogSHlwUHJvY2VkdXJlTW9kZWwpIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUodGhpcy5QUk9DRURVUkVfTElOSy5mbihwcm9jZWR1cmUsIHRoaXMuc3RvcmUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYWRJZCA9IHBhZElkO1xufVxuIiwiPGRpdiBjbGFzcz1cIm8tcHJvY2VkdXJlLWxpc3RcIj5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCBvLXByb2NlZHVyZS1saXN0X19hY3Rpb25cIj5cbiAgICA8aHZ5LWltbWVkaWF0ZS1maWx0ZXJzIFtmaWx0ZXJTZXRdPVwiJ3Byb2NlZHVyZSdcIj5cbiAgICAgIDxodnktdGV4dC1maWx0ZXIgcHJvcD1cInNlYXJjaFwiICNmaWx0ZXIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCI+PC9odnktdGV4dC1maWx0ZXI+XG4gICAgICA8aHZ5LWNob2ljZS1maWx0ZXJcbiAgICAgICAgaTE4blByZWZpeD1cIkBodnkuZXZlbnQuZG9tYWluLlwiXG4gICAgICAgIGxhYmVsPVwiQGh2eS5ldmVudC5kb21haW4ubmFtZVwiXG4gICAgICAgIFtjaG9pY2VzXT1cIkRPTUFJTlNcIlxuICAgICAgICBwcm9wPVwiZG9tYWluXCJcbiAgICAgICAgI2ZpbHRlclxuICAgICAgPjwvaHZ5LWNob2ljZS1maWx0ZXI+XG4gICAgPC9odnktaW1tZWRpYXRlLWZpbHRlcnM+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1wcm9jZWR1cmUtbGlzdF9fdGFibGVcIiAjc2Nyb2xsYWJsZT5cbiAgICA8dGFibGUgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVcIj5cbiAgICAgIDx0aGVhZD5cbiAgICAgICAgPHRyIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19oZWFkZXJcIj5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJpZFwiPnt7ICdAaHZ5LnByb2NlZHVyZS5pZCcgfCBpMThuIH19PC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cIm5hbWVcIj57eyAnQGh2eS5wcm9jZWR1cmUudGl0bGUnIHwgaTE4biB9fTwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJkb21haW5cIj57eyAnQGh2eS5wcm9jZWR1cmUuZG9tYWluJyB8IGkxOG4gfX08L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwidXNlQ291bnRcIlxuICAgICAgICAgICAgICA+e3sgJ0BodnkucHJvY2VkdXJlLnVzZUNvdW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgIDwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJjcmVhdG9yXCJcbiAgICAgICAgICAgICAgPnt7ICdAaHZ5LnByb2NlZHVyZS5hdXRob3InIHwgaTE4biB9fVxuICAgICAgICAgICAgPC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImNyZWF0aW9uRGF0ZVwiXG4gICAgICAgICAgICAgID57eyAnQGh2eS5ldmVudC5jcmVhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19XG4gICAgICAgICAgICA8L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwibGFzdE1vZGlmaWNhdGlvbkRhdGVcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkuZXZlbnQubGFzdE1vZGlmaWNhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19PC9zcGFuPjwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXJcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImV0YXRcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkucHJvY2VkdXJlLmV0YXQnIHwgaTE4biB9fTwvc3Bhbj48L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+PC90aD5cbiAgICAgICAgPC90cj5cbiAgICAgIDwvdGhlYWQ+XG4gICAgICA8dGJvZHk+XG4gICAgICAgIEBmb3IgKHByb2NlZHVyZSBvZiBwcm9jZWR1cmVzJCB8IGFzeW5jOyB0cmFjayBwcm9jZWR1cmUuaWQpIHtcbiAgICAgICAgICA8dHIgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVcIiAoY2xpY2spPVwiZ29Ubyhwcm9jZWR1cmUpXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj57eyBwYWRJZC5mbihwcm9jZWR1cmUuaWQpIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5uYW1lIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7ICdAaHZ5LmV2ZW50LmRvbWFpbi4nICsgcHJvY2VkdXJlLmRvbWFpbiB8IGkxOG4gfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgcHJvY2VkdXJlLnVzZUNvdW50IH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5jcmVhdG9yIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5jcmVhdGlvbkRhdGUgfCBkaXNwbGF5TG9jYWxlRGF0ZXRpbWUgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+XG4gICAgICAgICAgICAgIHt7IHByb2NlZHVyZS5sYXN0TW9kaWZpY2F0aW9uRGF0ZSB8IGRpc3BsYXlMb2NhbGVEYXRldGltZSB9fVxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPjxkaXY+SW5hY3RpZjwvZGl2PjwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiUFJPQ0VEVVJFX0xJTksuZm4ocHJvY2VkdXJlLCBzdG9yZSlcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uc3VsdC1saW5rXCIgW3RpdGxlXT1cIidAaHZ5LmFjdGlvbi5jb25zdWx0JyB8IGkxOG5cIj5cbiAgICAgICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiZXllXCIgW2hlaWdodF09XCIzMFwiIFt3aWR0aF09XCI0MFwiPjwvcHJ5LWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgfSBAZW1wdHkge1xuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fZW1wdHlcIiBjb2xzcGFuPVwiNTBcIj5cbiAgICAgICAgICAgICAgPGRpdj57eyAnQGh2eS5wcm9jZWR1cmUubm9Db250ZW50JyB8IGkxOG4gfX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICB9XG4gICAgICA8L3Rib2R5PlxuICAgIDwvdGFibGU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -2802,11 +2802,11 @@ class EventDetailComponent extends SubscriptionnerDirective {
2802
2802
  this.tooltipRef.dialog = null;
2803
2803
  }
2804
2804
  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: i4.Overlay }, { token: i0.ViewContainerRef }, { token: i1$2.PryI18nService }, { token: i1$2.PryDialogService }, { token: HypCommentsService }, { token: EventService }, { token: i1$4.Actions }, { token: i1$3.FormBuilder }, { token: ProcedureService }], target: i0.ɵɵFactoryTarget.Component }); }
2805
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: EventDetailComponent, selector: "hvy-event-detail", inputs: { placesChoices: "placesChoices", title: "title", equipmentFromMap: "equipmentFromMap", 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", removedEvent: "removedEvent", 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 }} {{events.length > 1 ? '('+events.length+')': ''}}</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 || (!!procedure && calculatedProgress !== 100)\" (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 event-detail-buttons-left\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openChangeModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.modify' | i18n }}\n </button>\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\" id=\"provoly-event-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 <div class=\"o-hvy-events-detail__header__split detail-remove-eve\">\n @if (showRemoveEveButton(event)) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"removeOneEvent(event)\">\n <pry-icon iconSvg=\"remove\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"!!procedure && calculatedProgress === 100\"\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 [ngClass]=\"{'equipment-disabled': event.status === 'DONE'}\"\n #trigger=\"matAutocompleteTrigger\"\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\n <pry-icon\n class=\"a-pry-select__toggle autocomplete-chevron\"\n [iconSvg]=\"openedAutocomplete[idx]? 'chevron_top' : 'chevron_bottom'\"\n [width]=\"10\"\n [height]=\"16\"\n (click)=\"openOrCloseAutocomplete($event, trigger, idx)\"\n ></pry-icon>\n </td>\n\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand anchor-tooltip\"\n [ngClass]=\"'anchor-tooltip-'+ idx\"\n [style.anchor-name]=\"'--my-anchor' + idx\"\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] || event.status === 'DONE'\"\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] || event.status === 'DONE'\"\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]=\"1024\"\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]=\"event.status === 'DONE'\"\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 }}&nbsp;:</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 class=\"list-eve-close-modal\">\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ padId.fn(event.id) }} - {{ 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$3.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$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i1$2.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "forcePlaceHolder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i10.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i10.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: i10.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
2805
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: EventDetailComponent, selector: "hvy-event-detail", inputs: { placesChoices: "placesChoices", title: "title", equipmentFromMap: "equipmentFromMap", 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", removedEvent: "removedEvent", 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 }} {{events.length > 1 ? '('+events.length+')': ''}}</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 || (!!procedure && calculatedProgress !== 100)\" (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 event-detail-buttons-left\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openChangeModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.modify' | i18n }}\n </button>\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\" id=\"provoly-event-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 <div class=\"o-hvy-events-detail__header__split detail-remove-eve\">\n @if (showRemoveEveButton(event)) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"removeOneEvent(event)\">\n <pry-icon iconSvg=\"remove\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"(!!procedure && calculatedProgress === 100) || !procedure\"\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 [ngClass]=\"{'equipment-disabled': event.status === 'DONE'}\"\n #trigger=\"matAutocompleteTrigger\"\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\n <pry-icon\n class=\"a-pry-select__toggle autocomplete-chevron\"\n [iconSvg]=\"openedAutocomplete[idx]? 'chevron_top' : 'chevron_bottom'\"\n [width]=\"10\"\n [height]=\"16\"\n (click)=\"openOrCloseAutocomplete($event, trigger, idx)\"\n ></pry-icon>\n </td>\n\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand anchor-tooltip\"\n [ngClass]=\"'anchor-tooltip-'+ idx\"\n [style.anchor-name]=\"'--my-anchor' + idx\"\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] || event.status === 'DONE'\"\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] || event.status === 'DONE'\"\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]=\"1024\"\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]=\"event.status === 'DONE'\"\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 }}&nbsp;:</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 class=\"list-eve-close-modal\">\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ padId.fn(event.id) }} - {{ 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$3.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$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i1$2.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "forcePlaceHolder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i10.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i10.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: i10.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
2806
2806
  }
2807
2807
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: EventDetailComponent, decorators: [{
2808
2808
  type: Component,
2809
- 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 }} {{events.length > 1 ? '('+events.length+')': ''}}</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 || (!!procedure && calculatedProgress !== 100)\" (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 event-detail-buttons-left\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openChangeModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.modify' | i18n }}\n </button>\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\" id=\"provoly-event-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 <div class=\"o-hvy-events-detail__header__split detail-remove-eve\">\n @if (showRemoveEveButton(event)) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"removeOneEvent(event)\">\n <pry-icon iconSvg=\"remove\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"!!procedure && calculatedProgress === 100\"\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 [ngClass]=\"{'equipment-disabled': event.status === 'DONE'}\"\n #trigger=\"matAutocompleteTrigger\"\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\n <pry-icon\n class=\"a-pry-select__toggle autocomplete-chevron\"\n [iconSvg]=\"openedAutocomplete[idx]? 'chevron_top' : 'chevron_bottom'\"\n [width]=\"10\"\n [height]=\"16\"\n (click)=\"openOrCloseAutocomplete($event, trigger, idx)\"\n ></pry-icon>\n </td>\n\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand anchor-tooltip\"\n [ngClass]=\"'anchor-tooltip-'+ idx\"\n [style.anchor-name]=\"'--my-anchor' + idx\"\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] || event.status === 'DONE'\"\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] || event.status === 'DONE'\"\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]=\"1024\"\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]=\"event.status === 'DONE'\"\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 }}&nbsp;:</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 class=\"list-eve-close-modal\">\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ padId.fn(event.id) }} - {{ 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" }]
2809
+ 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 }} {{events.length > 1 ? '('+events.length+')': ''}}</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 || (!!procedure && calculatedProgress !== 100)\" (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 event-detail-buttons-left\">\n @if (procedure && !readonly) {\n <button class=\"a-btn a-btn--secondary\" (click)=\"openChangeModal()\" [disabled]=\"readonlyProcedure\">\n {{ '@hvy.event.log.procedure.modify' | i18n }}\n </button>\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\" id=\"provoly-event-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 <div class=\"o-hvy-events-detail__header__split detail-remove-eve\">\n @if (showRemoveEveButton(event)) {\n <button class=\"add-button\" [disabled]=\"readonly\" (click)=\"removeOneEvent(event)\">\n <pry-icon iconSvg=\"remove\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n }\n </div>\n <hvy-status-display\n [item]=\"event\"\n [modifiable]=\"(!!procedure && calculatedProgress === 100) || !procedure\"\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 [ngClass]=\"{'equipment-disabled': event.status === 'DONE'}\"\n #trigger=\"matAutocompleteTrigger\"\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\n <pry-icon\n class=\"a-pry-select__toggle autocomplete-chevron\"\n [iconSvg]=\"openedAutocomplete[idx]? 'chevron_top' : 'chevron_bottom'\"\n [width]=\"10\"\n [height]=\"16\"\n (click)=\"openOrCloseAutocomplete($event, trigger, idx)\"\n ></pry-icon>\n </td>\n\n <td>\n @if (selectedEquipment[idx]) {\n <pry-icon\n iconSvg=\"i\"\n class=\"-hand anchor-tooltip\"\n [ngClass]=\"'anchor-tooltip-'+ idx\"\n [style.anchor-name]=\"'--my-anchor' + idx\"\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] || event.status === 'DONE'\"\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] || event.status === 'DONE'\"\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]=\"1024\"\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]=\"event.status === 'DONE'\"\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 }}&nbsp;:</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 class=\"list-eve-close-modal\">\n @for (event of changeStatusContext.events; track event.id) {\n <li>{{ padId.fn(event.id) }} - {{ 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" }]
2810
2810
  }], ctorParameters: () => [{ type: EquipmentService }, { type: i1$1.Store }, { type: i4.Overlay }, { type: i0.ViewContainerRef }, { type: i1$2.PryI18nService }, { type: i1$2.PryDialogService }, { type: HypCommentsService }, { type: EventService }, { type: i1$4.Actions }, { type: i1$3.FormBuilder }, { type: ProcedureService }], propDecorators: { placesChoices: [{
2811
2811
  type: Input
2812
2812
  }], modifiedEvents: [{
@@ -3386,11 +3386,11 @@ class ProcedureListComponent extends SubscriptionnerDirective {
3386
3386
  return this.router.navigate(this.PROCEDURE_LINK.fn(procedure, this.store));
3387
3387
  }
3388
3388
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, deps: [{ token: i1$1.Store }, { token: i2.Router }, { token: InfiniteScrollService }], target: i0.ɵɵFactoryTarget.Component }); }
3389
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1$2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
3389
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\"><div>Inactif</div></td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1$2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
3390
3390
  }
3391
3391
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, decorators: [{
3392
3392
  type: Component,
3393
- args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
3393
+ args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\"><div>Inactif</div></td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
3394
3394
  }], ctorParameters: () => [{ type: i1$1.Store }, { type: i2.Router }, { type: InfiniteScrollService }], propDecorators: { scrollable: [{
3395
3395
  type: ViewChild,
3396
3396
  args: ['scrollable']