@provoly/hypervisor 0.0.107 → 0.0.109

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.
Files changed (43) hide show
  1. package/esm2022/public-api.mjs +2 -1
  2. package/esm2022/src/lib/event/detail/event-detail.component.mjs +31 -14
  3. package/esm2022/src/lib/event/list/event-list.component.mjs +3 -3
  4. package/esm2022/src/lib/general/comments/comments.component.mjs +80 -0
  5. package/esm2022/src/lib/general/i18n/en.translations.mjs +11 -3
  6. package/esm2022/src/lib/general/i18n/fr.translations.mjs +31 -4
  7. package/esm2022/src/lib/general/procedure-actions/action-parameters/service/create-service.component.mjs +100 -0
  8. package/esm2022/src/lib/general/procedure-actions/action-parameters/service/service-action-display.component.mjs +43 -7
  9. package/esm2022/src/lib/general/procedure-actions/procedure-actions.component.mjs +30 -11
  10. package/esm2022/src/lib/general/public-api.mjs +3 -1
  11. package/esm2022/src/lib/hypervisor.module.mjs +21 -7
  12. package/esm2022/src/lib/model/comment.interface.mjs +2 -0
  13. package/esm2022/src/lib/procedure/model-detail/procedure-model-detail.component.mjs +3 -3
  14. package/esm2022/src/lib/store/comments/comments.service.mjs +35 -0
  15. package/esm2022/src/lib/store/comments/public-api.mjs +2 -0
  16. package/esm2022/src/lib/store/equipment/equipment.service.mjs +8 -5
  17. package/esm2022/src/lib/store/event/event.effects.mjs +2 -2
  18. package/esm2022/src/lib/store/service/service.service.mjs +31 -0
  19. package/fesm2022/provoly-hypervisor.mjs +370 -42
  20. package/fesm2022/provoly-hypervisor.mjs.map +1 -1
  21. package/package.json +1 -1
  22. package/public-api.d.ts +1 -0
  23. package/src/lib/event/detail/event-detail.component.d.ts +23 -9
  24. package/src/lib/general/comments/comments.component.d.ts +37 -0
  25. package/src/lib/general/i18n/en.translations.d.ts +8 -0
  26. package/src/lib/general/i18n/fr.translations.d.ts +27 -0
  27. package/src/lib/general/procedure-actions/action-parameters/service/create-service.component.d.ts +48 -0
  28. package/src/lib/general/procedure-actions/action-parameters/service/service-action-display.component.d.ts +13 -2
  29. package/src/lib/general/procedure-actions/procedure-actions.component.d.ts +19 -4
  30. package/src/lib/general/public-api.d.ts +2 -0
  31. package/src/lib/hypervisor.module.d.ts +23 -21
  32. package/src/lib/model/comment.interface.d.ts +8 -0
  33. package/src/lib/store/comments/comments.service.d.ts +17 -0
  34. package/src/lib/store/comments/public-api.d.ts +1 -0
  35. package/src/lib/store/equipment/equipment.service.d.ts +1 -0
  36. package/src/lib/store/service/service.service.d.ts +27 -0
  37. package/styles/components/_a-button-link.scss +7 -0
  38. package/styles/components/_index.scss +3 -0
  39. package/styles/components/_o-hvy-comments.scss +78 -0
  40. package/styles/components/_o-hvy-create-service.scss +31 -0
  41. package/styles/components/_o-hvy-event-detail.scss +11 -20
  42. package/styles/components/_o-hvy-procedure-actions.scss +15 -3
  43. package/styles/components/_o-hvy-procedure-list.scss +1 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@provoly/hypervisor",
3
- "version": "0.0.107",
3
+ "version": "0.0.109",
4
4
  "peerDependencies": {
5
5
  "@angular/cdk": "16.x || 17.x",
6
6
  "@angular/common": "16.x || 17.x",
package/public-api.d.ts CHANGED
@@ -10,3 +10,4 @@ export * from './src/lib/store/event-summary/public-api';
10
10
  export * from './src/lib/store/equipment/public-api';
11
11
  export * from './src/lib/store/hypervisor/public-api';
12
12
  export * from './src/lib/store/procedure/public-api';
13
+ export * from './src/lib/store/comments/public-api';
@@ -6,7 +6,16 @@ import { HypEquipment } from '../../model/hyp-equipment.interface';
6
6
  import { EquipmentService } from '../../store/equipment/equipment.service';
7
7
  import { Store } from '@ngrx/store';
8
8
  import { Overlay, OverlayRef } from '@angular/cdk/overlay';
9
+ import { BehaviorSubject, Observable } from 'rxjs';
10
+ import { HypCommentsService } from '../../store/comments/comments.service';
11
+ import { HypComment } from '../../model/comment.interface';
9
12
  import * as i0 from "@angular/core";
13
+ export type ChangeStatusContext = {
14
+ comment: string;
15
+ events: HypEventDetails[];
16
+ status: string;
17
+ all: boolean;
18
+ };
10
19
  export declare class EventDetailComponent extends SubscriptionnerDirective {
11
20
  private equipmentService;
12
21
  private store;
@@ -15,6 +24,7 @@ export declare class EventDetailComponent extends SubscriptionnerDirective {
15
24
  private snackBar;
16
25
  private i18nService;
17
26
  private pryDialog;
27
+ private commentsService;
18
28
  opened: boolean[];
19
29
  criticalities: string[];
20
30
  _events: HypEventDetails[];
@@ -33,19 +43,19 @@ export declare class EventDetailComponent extends SubscriptionnerDirective {
33
43
  code: string;
34
44
  }[][];
35
45
  canCloseSome: boolean;
36
- newComentContent: string;
37
- changeStatusContext: {
38
- comment: string;
39
- events: HypEventDetails[];
40
- status: string;
41
- all: boolean;
42
- };
46
+ changeStatusContext: ChangeStatusContext;
43
47
  title?: string;
48
+ me?: string | null;
44
49
  readonly: boolean | null;
45
50
  readonlyProcedure: boolean | null;
46
51
  enableEditActions: boolean | null;
47
52
  overlayRef?: OverlayRef;
48
53
  confirmDialog: TemplateRef<any>;
54
+ comfirmDialogOpened: EventEmitter<ChangeStatusContext>;
55
+ triggerComment$: BehaviorSubject<void>;
56
+ comments$?: Observable<{
57
+ [p: number]: HypComment[];
58
+ }>;
49
59
  set events(events: HypEventDetails[]);
50
60
  set procedure(procedure: HypProcedure);
51
61
  set cancelModifications(evt: any);
@@ -53,7 +63,7 @@ export declare class EventDetailComponent extends SubscriptionnerDirective {
53
63
  index: number;
54
64
  equipmentName?: string;
55
65
  });
56
- constructor(equipmentService: EquipmentService, store: Store, overlay: Overlay, viewContainerRef: ViewContainerRef, snackBar: PrySnackbarService, i18nService: PryI18nService, pryDialog: PryDialogService);
66
+ constructor(equipmentService: EquipmentService, store: Store, overlay: Overlay, viewContainerRef: ViewContainerRef, snackBar: PrySnackbarService, i18nService: PryI18nService, pryDialog: PryDialogService, commentsService: HypCommentsService);
57
67
  get events(): HypEventDetails[];
58
68
  get canAssociateProcedure(): boolean;
59
69
  get procedure(): HypProcedure | undefined;
@@ -96,6 +106,10 @@ export declare class EventDetailComponent extends SubscriptionnerDirective {
96
106
  openAssociationModal(): void;
97
107
  openDeleteModal(): void;
98
108
  private convertDate;
109
+ updateComment(event: HypEventDetails, comment: {
110
+ id: string;
111
+ message: string;
112
+ }): void;
99
113
  static ɵfac: i0.ɵɵFactoryDeclaration<EventDetailComponent, never>;
100
- static ɵcmp: i0.ɵɵComponentDeclaration<EventDetailComponent, "hvy-event-detail", never, { "title": { "alias": "title"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "readonlyProcedure": { "alias": "readonlyProcedure"; "required": false; }; "enableEditActions": { "alias": "enableEditActions"; "required": false; }; "events": { "alias": "events"; "required": false; }; "procedure": { "alias": "procedure"; "required": false; }; "cancelModifications": { "alias": "cancelModifications"; "required": false; }; "equipmentName": { "alias": "equipmentName"; "required": false; }; }, { "modifiedEvents": "modifiedEvents"; "modifiedProcedure": "modifiedProcedure"; "eventErrors": "eventErrors"; }, never, never, false, never>;
114
+ static ɵcmp: i0.ɵɵComponentDeclaration<EventDetailComponent, "hvy-event-detail", never, { "title": { "alias": "title"; "required": false; }; "me": { "alias": "me"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "readonlyProcedure": { "alias": "readonlyProcedure"; "required": false; }; "enableEditActions": { "alias": "enableEditActions"; "required": false; }; "events": { "alias": "events"; "required": false; }; "procedure": { "alias": "procedure"; "required": false; }; "cancelModifications": { "alias": "cancelModifications"; "required": false; }; "equipmentName": { "alias": "equipmentName"; "required": false; }; }, { "modifiedEvents": "modifiedEvents"; "modifiedProcedure": "modifiedProcedure"; "eventErrors": "eventErrors"; "comfirmDialogOpened": "comfirmDialogOpened"; }, never, never, false, never>;
101
115
  }
@@ -0,0 +1,37 @@
1
+ import { EventEmitter, OnDestroy } from '@angular/core';
2
+ import { HypComment } from '../../model/comment.interface';
3
+ import { Subject, Subscription } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export type HypAugmentedComment = HypComment & {
6
+ day: string;
7
+ hour: string;
8
+ edit: boolean;
9
+ previousMessage: string;
10
+ };
11
+ export declare class HvyCommentsComponent implements OnDestroy {
12
+ _comments: HypAugmentedComment[];
13
+ readonly: boolean | null;
14
+ newComment: string;
15
+ commented: EventEmitter<{
16
+ id: string;
17
+ message: string;
18
+ }>;
19
+ more: boolean;
20
+ me: string | null | undefined;
21
+ type: 'actions' | 'events';
22
+ displayEmpty: boolean;
23
+ opened: boolean;
24
+ subTrigger?: Subscription;
25
+ set comments(comments: HypComment[] | null);
26
+ set trigger(trigger$: Subject<boolean>);
27
+ ngOnDestroy(): void;
28
+ get comments(): HypComment[] | null;
29
+ addComment(): void;
30
+ editComment(comment: HypAugmentedComment): void;
31
+ saveComment(comment: HypAugmentedComment): void;
32
+ cancel(comment: HypAugmentedComment): void;
33
+ toggleMore(): void;
34
+ toggle(): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<HvyCommentsComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<HvyCommentsComponent, "hvy-comments", never, { "readonly": { "alias": "readonly"; "required": false; }; "me": { "alias": "me"; "required": false; }; "type": { "alias": "type"; "required": false; }; "displayEmpty": { "alias": "displayEmpty"; "required": false; }; "comments": { "alias": "comments"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; }, { "commented": "commented"; }, never, never, false, never>;
37
+ }
@@ -85,6 +85,14 @@ export declare const enTranslations: {
85
85
  presenceSensor: string;
86
86
  parent: string;
87
87
  consult: string;
88
+ comment: {
89
+ lastDetail: string;
90
+ detail: string;
91
+ more: string;
92
+ less: string;
93
+ head: string;
94
+ heads: string;
95
+ };
88
96
  };
89
97
  eventSummary: {
90
98
  from: string;
@@ -45,6 +45,7 @@ export declare const frTranslations: {
45
45
  comments: {
46
46
  name: string;
47
47
  placeholder: string;
48
+ actions: string;
48
49
  };
49
50
  };
50
51
  procedure: {
@@ -92,6 +93,14 @@ export declare const frTranslations: {
92
93
  entity: {
93
94
  NOTFOUND: string;
94
95
  };
96
+ comment: {
97
+ lastDetail: string;
98
+ detail: string;
99
+ more: string;
100
+ less: string;
101
+ head: string;
102
+ heads: string;
103
+ };
95
104
  };
96
105
  eventSummary: {
97
106
  from: string;
@@ -180,6 +189,8 @@ export declare const frTranslations: {
180
189
  validate: string;
181
190
  cancel: string;
182
191
  search: string;
192
+ update: string;
193
+ create: string;
183
194
  };
184
195
  service: {
185
196
  status: {
@@ -189,6 +200,22 @@ export declare const frTranslations: {
189
200
  DONE: string;
190
201
  CANCELLED: string;
191
202
  };
203
+ title: string;
204
+ subtitle: string;
205
+ reason: string;
206
+ type: string;
207
+ priority: string;
208
+ description: string;
209
+ target: string;
210
+ gti: string;
211
+ gtr: string;
212
+ gtrp: string;
213
+ describe: string;
214
+ priorities: {
215
+ '1-MINEUR': string;
216
+ '2-MAJEUR': string;
217
+ '3-BLOQUANT': string;
218
+ };
192
219
  };
193
220
  };
194
221
  };
@@ -0,0 +1,48 @@
1
+ import { PryDialogRef, PryI18nService } from '@provoly/dashboard';
2
+ import { Observable } from 'rxjs';
3
+ import { HypEquipment } from '../../../../model/hyp-equipment.interface';
4
+ import { HypServiceAction } from './service-action-display.component';
5
+ import { EquipmentService } from '../../../../store/equipment/equipment.service';
6
+ import { HypServiceType, ServiceService } from '../../../../store/service/service.service';
7
+ import * as i0 from "@angular/core";
8
+ export type HypCreateServiceResult = {
9
+ value: string;
10
+ name: string;
11
+ equipment: string;
12
+ priority: string;
13
+ type: string;
14
+ description: string;
15
+ gti?: string;
16
+ gtr?: string;
17
+ gtrp?: string;
18
+ };
19
+ export declare class HvyCreateServiceComponent {
20
+ private dialog;
21
+ data: {
22
+ action: HypServiceAction;
23
+ };
24
+ private equipmentService;
25
+ private serviceService;
26
+ private i18nService;
27
+ result: HypCreateServiceResult;
28
+ equipments$: Observable<(HypEquipment | {
29
+ displayName: string;
30
+ })[]>;
31
+ errors: string[];
32
+ types: HypServiceType[];
33
+ priorities: string[];
34
+ constructor(dialog: PryDialogRef<HvyCreateServiceComponent>, data: {
35
+ action: HypServiceAction;
36
+ }, equipmentService: EquipmentService, serviceService: ServiceService, i18nService: PryI18nService);
37
+ action(value: string): void;
38
+ onEquipmentChange($event: string): void;
39
+ onDescriptionChange($event: string): void;
40
+ onTypeChange($event: string): void;
41
+ onPriorityChange($event: any): void;
42
+ hasError(type: string): boolean;
43
+ check(): void;
44
+ createDI(): void;
45
+ closeModal(): void;
46
+ static ɵfac: i0.ɵɵFactoryDeclaration<HvyCreateServiceComponent, never>;
47
+ static ɵcmp: i0.ɵɵComponentDeclaration<HvyCreateServiceComponent, "pry-create-service", never, {}, {}, never, never, false, never>;
48
+ }
@@ -1,12 +1,23 @@
1
+ import { ElementRef } from '@angular/core';
1
2
  import { HvyBaseParameterActionComponent } from '../base-parameter-action.component';
2
3
  import { HypAction } from '../../../../model/procedure/hyp-action.interface';
4
+ import { PryDialogService } from '@provoly/dashboard';
5
+ import { Overlay } from '@angular/cdk/overlay';
6
+ import { ServiceService } from '../../../../store/service/service.service';
7
+ import { act } from '@ngrx/effects';
3
8
  import * as i0 from "@angular/core";
4
9
  export interface HypServiceAction extends HypAction {
5
10
  name: string;
6
- externalServiceId: string;
11
+ serviceExternalId: string;
7
12
  }
8
13
  export declare class HvyServiceActionDisplayComponent extends HvyBaseParameterActionComponent<HypServiceAction> {
9
- constructor();
14
+ private pryDialog;
15
+ private overlay;
16
+ private serviceService;
17
+ menuButton: ElementRef;
18
+ constructor(pryDialog: PryDialogService, overlay: Overlay, serviceService: ServiceService);
19
+ toggleModal(): void;
20
+ protected readonly act: typeof act;
10
21
  static ɵfac: i0.ɵɵFactoryDeclaration<HvyServiceActionDisplayComponent, never>;
11
22
  static ɵcmp: i0.ɵɵComponentDeclaration<HvyServiceActionDisplayComponent, "hvy-service-action-display", never, {}, {}, never, never, false, never>;
12
23
  }
@@ -1,12 +1,15 @@
1
1
  import { ElementRef, EventEmitter, QueryList } from '@angular/core';
2
- import { PryDialogService, PryI18nService, SubscriptionnerDirective } from '@provoly/dashboard';
2
+ import { PryDialogService, SubscriptionnerDirective } from '@provoly/dashboard';
3
3
  import { HypAction } from '../../model/procedure/hyp-action.interface';
4
4
  import { Overlay } from '@angular/cdk/overlay';
5
+ import { HypCommentsService } from '../../store/comments/comments.service';
6
+ import { BehaviorSubject, Observable, Subject } from 'rxjs';
7
+ import { HypComment } from '../../model/comment.interface';
5
8
  import * as i0 from "@angular/core";
6
9
  export declare class ProcedureActionsComponent extends SubscriptionnerDirective {
7
10
  private pryDialog;
8
11
  private overlay;
9
- private i18nService;
12
+ private commentsService;
10
13
  static CARD_HEIGHT: number;
11
14
  movingAction?: HypAction;
12
15
  moveStart: number;
@@ -16,12 +19,20 @@ export declare class ProcedureActionsComponent extends SubscriptionnerDirective
16
19
  dragTarget?: EventTarget | null;
17
20
  modified: EventEmitter<HypAction[]>;
18
21
  mode: 'model' | 'procedure';
22
+ me: string | null | undefined;
19
23
  readonly: boolean | null;
20
24
  enableEditActions: boolean | null;
21
25
  ACTIONS_TYPES: string[];
22
26
  _actions: HypAction[];
23
27
  menuButtons: QueryList<ElementRef>;
24
- constructor(pryDialog: PryDialogService, overlay: Overlay, i18nService: PryI18nService);
28
+ triggerComment$: BehaviorSubject<void>;
29
+ comments$?: Observable<{
30
+ [p: string]: HypComment[];
31
+ }>;
32
+ triggers: {
33
+ [p: string]: Subject<boolean>;
34
+ };
35
+ constructor(pryDialog: PryDialogService, overlay: Overlay, commentsService: HypCommentsService);
25
36
  set actions(actions: HypAction[]);
26
37
  get actions(): HypAction[];
27
38
  get editing(): boolean;
@@ -39,6 +50,10 @@ export declare class ProcedureActionsComponent extends SubscriptionnerDirective
39
50
  cancelAction(action: HypAction, idx: number): void;
40
51
  isValid(action: HypAction): boolean | "";
41
52
  isDraggable(action: HypAction): boolean | null;
53
+ updateComment(action: HypAction, comment: {
54
+ id: string;
55
+ message: string;
56
+ }): void;
42
57
  static ɵfac: i0.ɵɵFactoryDeclaration<ProcedureActionsComponent, never>;
43
- static ɵcmp: i0.ɵɵComponentDeclaration<ProcedureActionsComponent, "hvy-procedure-actions", never, { "mode": { "alias": "mode"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "enableEditActions": { "alias": "enableEditActions"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; }, { "modified": "modified"; }, never, never, false, never>;
58
+ static ɵcmp: i0.ɵɵComponentDeclaration<ProcedureActionsComponent, "hvy-procedure-actions", never, { "mode": { "alias": "mode"; "required": false; }; "me": { "alias": "me"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "enableEditActions": { "alias": "enableEditActions"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; }, { "modified": "modified"; }, never, never, false, never>;
44
59
  }
@@ -9,6 +9,7 @@ export * from './icon-display/icon-display.component';
9
9
  export * from './status-display/status-display.component';
10
10
  export * from './progress-display/progress-display.component';
11
11
  export * from './column-order/column-order.component';
12
+ export * from './comments/comments.component';
12
13
  export * from './pad-id.function';
13
14
  export * from './procedure-actions/actions-types.constant';
14
15
  export * from './procedure-actions/action-menu.component';
@@ -24,3 +25,4 @@ export * from './procedure-actions/action-parameters/email/email-action-paramete
24
25
  export * from './procedure-actions/action-parameters/email/email-action-display.component';
25
26
  export * from './procedure-actions/action-parameters/service/service-action-parameter.component';
26
27
  export * from './procedure-actions/action-parameters/service/service-action-display.component';
28
+ export * from './procedure-actions/action-parameters/service/create-service.component';
@@ -24,26 +24,28 @@ import * as i19 from "./event/procedure-association-modal/procedure-association-
24
24
  import * as i20 from "./procedure/model-detail/procedure-model-detail.component";
25
25
  import * as i21 from "./event/filters/on/immediate/immediate-filters.component";
26
26
  import * as i22 from "./general/procedure-actions/action-menu.component";
27
- import * as i23 from "./general/procedure-actions/action-parameters/action-parameter.component";
28
- import * as i24 from "./general/procedure-actions/action-parameters/base-parameter-action.component";
29
- import * as i25 from "./general/procedure-actions/action-parameters/other/other-action-parameter.component";
30
- import * as i26 from "./general/procedure-actions/action-parameters/other/other-action-display.component";
31
- import * as i27 from "./general/procedure-actions/action-parameters/no-param/no-params-action-display.component";
32
- import * as i28 from "./general/procedure-actions/action-parameters/phone/phone-action-parameter.component";
33
- import * as i29 from "./general/procedure-actions/action-parameters/phone/phone-action-display.component";
34
- import * as i30 from "./general/procedure-actions/action-parameters/email/email-action-display.component";
35
- import * as i31 from "./general/procedure-actions/action-parameters/email/email-action-parameter.component";
36
- import * as i32 from "./general/procedure-actions/action-parameters/service/service-action-parameter.component";
37
- import * as i33 from "./general/procedure-actions/action-parameters/service/service-action-display.component";
38
- import * as i34 from "./general/display-locale-datetime/display-locale-datetime.pipe";
39
- import * as i35 from "./general/procedure-actions/procedure-actions.component";
40
- import * as i36 from "@ngrx/store";
41
- import * as i37 from "@ngrx/effects";
42
- import * as i38 from "@angular/common";
43
- import * as i39 from "@provoly/dashboard";
44
- import * as i40 from "@provoly/dashboard/components/checkbox";
45
- import * as i41 from "@angular/forms";
46
- import * as i42 from "@angular/router";
27
+ import * as i23 from "./general/procedure-actions/action-parameters/service/create-service.component";
28
+ import * as i24 from "./general/procedure-actions/action-parameters/action-parameter.component";
29
+ import * as i25 from "./general/procedure-actions/action-parameters/base-parameter-action.component";
30
+ import * as i26 from "./general/procedure-actions/action-parameters/other/other-action-parameter.component";
31
+ import * as i27 from "./general/procedure-actions/action-parameters/other/other-action-display.component";
32
+ import * as i28 from "./general/procedure-actions/action-parameters/no-param/no-params-action-display.component";
33
+ import * as i29 from "./general/procedure-actions/action-parameters/phone/phone-action-parameter.component";
34
+ import * as i30 from "./general/procedure-actions/action-parameters/phone/phone-action-display.component";
35
+ import * as i31 from "./general/procedure-actions/action-parameters/email/email-action-display.component";
36
+ import * as i32 from "./general/procedure-actions/action-parameters/email/email-action-parameter.component";
37
+ import * as i33 from "./general/procedure-actions/action-parameters/service/service-action-parameter.component";
38
+ import * as i34 from "./general/procedure-actions/action-parameters/service/service-action-display.component";
39
+ import * as i35 from "./general/display-locale-datetime/display-locale-datetime.pipe";
40
+ import * as i36 from "./general/comments/comments.component";
41
+ import * as i37 from "./general/procedure-actions/procedure-actions.component";
42
+ import * as i38 from "@ngrx/store";
43
+ import * as i39 from "@ngrx/effects";
44
+ import * as i40 from "@angular/common";
45
+ import * as i41 from "@provoly/dashboard";
46
+ import * as i42 from "@provoly/dashboard/components/checkbox";
47
+ import * as i43 from "@angular/forms";
48
+ import * as i44 from "@angular/router";
47
49
  export declare class PvyHypervisorModule {
48
50
  private baseConfig;
49
51
  private store;
@@ -55,6 +57,6 @@ export declare class PvyHypervisorModule {
55
57
  url: string;
56
58
  }, store: Store<any>, i18nService: PryI18nService);
57
59
  static ɵfac: i0.ɵɵFactoryDeclaration<PvyHypervisorModule, never>;
58
- static ɵmod: i0.ɵɵNgModuleDeclaration<PvyHypervisorModule, [typeof i1.EventDetailComponent, typeof i2.EventListComponent, typeof i3.EventColumnOrderComponent, typeof i4.IconDisplayComponent, typeof i5.EventSummaryItemComponent, typeof i6.EventSummaryListComponent, typeof i7.EventSummaryPageComponent, typeof i8.EventIconPipe, typeof i9.ForDatetimeLocalPipe, typeof i10.StatusDisplayComponent, typeof i11.ProgressDisplayComponent, typeof i12.ColumnOrderComponent, typeof i13.EventFiltersComponent, typeof i14.DateFilterComponent, typeof i15.TextFilterComponent, typeof i16.ChoiceFilterComponent, typeof i17.ProcedureListComponent, typeof i18.ProcedureColumnOrderComponent, typeof i19.ProcedureAssociationModalComponent, typeof i20.ProcedureModelDetailComponent, typeof i21.ImmediateFiltersComponent, typeof i22.HvyActionMenuComponent, typeof i23.HvyActionParameterComponent, typeof i24.HvyBaseParameterActionComponent, typeof i25.HvyOtherActionParameterComponent, typeof i26.HvyOtherActionDisplayComponent, typeof i27.HvyNoParamsActionDisplayComponent, typeof i28.HvyPhoneActionParameterComponent, typeof i29.HvyPhoneActionDisplayComponent, typeof i30.HvyEmailActionDisplayComponent, typeof i31.HvyEmailActionParameterComponent, typeof i32.HvyServiceActionParameterComponent, typeof i33.HvyServiceActionDisplayComponent, typeof i34.DisplayLocaleDateTime, typeof i35.ProcedureActionsComponent], [typeof i36.StoreFeatureModule, typeof i36.StoreFeatureModule, typeof i36.StoreFeatureModule, typeof i36.StoreFeatureModule, typeof i37.EffectsFeatureModule, typeof i38.NgForOf, typeof i38.AsyncPipe, typeof i39.PryI18nModule, typeof i39.PryCoreModule, typeof i38.NgStyle, typeof i40.PryCheckboxModule, typeof i41.FormsModule, typeof i42.RouterLink, typeof i39.PrySinceDateModule, typeof i38.DatePipe, typeof i39.PryIconModule, typeof i38.KeyValuePipe, typeof i39.PrySelectModule, typeof i38.JsonPipe, typeof i39.PryDatePickerModule, typeof i38.NgIf, typeof i39.PryCoreModule], [typeof i1.EventDetailComponent, typeof i2.EventListComponent, typeof i3.EventColumnOrderComponent, typeof i4.IconDisplayComponent, typeof i5.EventSummaryItemComponent, typeof i6.EventSummaryListComponent, typeof i7.EventSummaryPageComponent, typeof i8.EventIconPipe, typeof i9.ForDatetimeLocalPipe, typeof i10.StatusDisplayComponent, typeof i11.ProgressDisplayComponent, typeof i12.ColumnOrderComponent, typeof i13.EventFiltersComponent, typeof i14.DateFilterComponent, typeof i15.TextFilterComponent, typeof i16.ChoiceFilterComponent, typeof i17.ProcedureListComponent, typeof i18.ProcedureColumnOrderComponent, typeof i19.ProcedureAssociationModalComponent, typeof i20.ProcedureModelDetailComponent, typeof i21.ImmediateFiltersComponent, typeof i22.HvyActionMenuComponent, typeof i23.HvyActionParameterComponent, typeof i24.HvyBaseParameterActionComponent, typeof i25.HvyOtherActionParameterComponent, typeof i26.HvyOtherActionDisplayComponent, typeof i27.HvyNoParamsActionDisplayComponent, typeof i28.HvyPhoneActionParameterComponent, typeof i29.HvyPhoneActionDisplayComponent, typeof i30.HvyEmailActionDisplayComponent, typeof i31.HvyEmailActionParameterComponent, typeof i32.HvyServiceActionParameterComponent, typeof i33.HvyServiceActionDisplayComponent, typeof i34.DisplayLocaleDateTime]>;
60
+ static ɵmod: i0.ɵɵNgModuleDeclaration<PvyHypervisorModule, [typeof i1.EventDetailComponent, typeof i2.EventListComponent, typeof i3.EventColumnOrderComponent, typeof i4.IconDisplayComponent, typeof i5.EventSummaryItemComponent, typeof i6.EventSummaryListComponent, typeof i7.EventSummaryPageComponent, typeof i8.EventIconPipe, typeof i9.ForDatetimeLocalPipe, typeof i10.StatusDisplayComponent, typeof i11.ProgressDisplayComponent, typeof i12.ColumnOrderComponent, typeof i13.EventFiltersComponent, typeof i14.DateFilterComponent, typeof i15.TextFilterComponent, typeof i16.ChoiceFilterComponent, typeof i17.ProcedureListComponent, typeof i18.ProcedureColumnOrderComponent, typeof i19.ProcedureAssociationModalComponent, typeof i20.ProcedureModelDetailComponent, typeof i21.ImmediateFiltersComponent, typeof i22.HvyActionMenuComponent, typeof i23.HvyCreateServiceComponent, typeof i24.HvyActionParameterComponent, typeof i25.HvyBaseParameterActionComponent, typeof i26.HvyOtherActionParameterComponent, typeof i27.HvyOtherActionDisplayComponent, typeof i28.HvyNoParamsActionDisplayComponent, typeof i29.HvyPhoneActionParameterComponent, typeof i30.HvyPhoneActionDisplayComponent, typeof i31.HvyEmailActionDisplayComponent, typeof i32.HvyEmailActionParameterComponent, typeof i33.HvyServiceActionParameterComponent, typeof i34.HvyServiceActionDisplayComponent, typeof i35.DisplayLocaleDateTime, typeof i36.HvyCommentsComponent, typeof i37.ProcedureActionsComponent], [typeof i38.StoreFeatureModule, typeof i38.StoreFeatureModule, typeof i38.StoreFeatureModule, typeof i38.StoreFeatureModule, typeof i39.EffectsFeatureModule, typeof i40.NgForOf, typeof i40.AsyncPipe, typeof i41.PryI18nModule, typeof i41.PryCoreModule, typeof i40.NgStyle, typeof i42.PryCheckboxModule, typeof i43.FormsModule, typeof i44.RouterLink, typeof i41.PrySinceDateModule, typeof i40.DatePipe, typeof i41.PryIconModule, typeof i40.KeyValuePipe, typeof i41.PrySelectModule, typeof i40.JsonPipe, typeof i41.PryDatePickerModule, typeof i40.NgIf, typeof i41.PryCoreModule, typeof i41.PryI18nModule, typeof i43.FormsModule], [typeof i1.EventDetailComponent, typeof i2.EventListComponent, typeof i3.EventColumnOrderComponent, typeof i4.IconDisplayComponent, typeof i5.EventSummaryItemComponent, typeof i6.EventSummaryListComponent, typeof i7.EventSummaryPageComponent, typeof i8.EventIconPipe, typeof i9.ForDatetimeLocalPipe, typeof i10.StatusDisplayComponent, typeof i11.ProgressDisplayComponent, typeof i12.ColumnOrderComponent, typeof i13.EventFiltersComponent, typeof i14.DateFilterComponent, typeof i15.TextFilterComponent, typeof i16.ChoiceFilterComponent, typeof i17.ProcedureListComponent, typeof i18.ProcedureColumnOrderComponent, typeof i19.ProcedureAssociationModalComponent, typeof i20.ProcedureModelDetailComponent, typeof i21.ImmediateFiltersComponent, typeof i22.HvyActionMenuComponent, typeof i23.HvyCreateServiceComponent, typeof i24.HvyActionParameterComponent, typeof i25.HvyBaseParameterActionComponent, typeof i26.HvyOtherActionParameterComponent, typeof i27.HvyOtherActionDisplayComponent, typeof i28.HvyNoParamsActionDisplayComponent, typeof i29.HvyPhoneActionParameterComponent, typeof i30.HvyPhoneActionDisplayComponent, typeof i31.HvyEmailActionDisplayComponent, typeof i32.HvyEmailActionParameterComponent, typeof i33.HvyServiceActionParameterComponent, typeof i34.HvyServiceActionDisplayComponent, typeof i35.DisplayLocaleDateTime, typeof i36.HvyCommentsComponent]>;
59
61
  static ɵinj: i0.ɵɵInjectorDeclaration<PvyHypervisorModule>;
60
62
  }
@@ -0,0 +1,8 @@
1
+ export interface HypComment {
2
+ id: string;
3
+ creationDate: string;
4
+ lastModificationDate: string;
5
+ message: string;
6
+ creator: string;
7
+ creatorName: string;
8
+ }
@@ -0,0 +1,17 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { Observable } from 'rxjs';
3
+ import { Store } from '@ngrx/store';
4
+ import { HypComment } from '../../model/comment.interface';
5
+ import * as i0 from "@angular/core";
6
+ export declare class HypCommentsService {
7
+ private httpClient;
8
+ private store;
9
+ constructor(httpClient: HttpClient, store: Store<any>);
10
+ get(id: number | string, type: 'events' | 'actions'): Observable<HypComment[]>;
11
+ save(id: number | string, type: 'events' | 'actions', comment: {
12
+ id: string;
13
+ message: string;
14
+ }): Observable<HypComment[]>;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<HypCommentsService, never>;
16
+ static ɵprov: i0.ɵɵInjectableDeclaration<HypCommentsService>;
17
+ }
@@ -0,0 +1 @@
1
+ export * from './comments.service';
@@ -8,6 +8,7 @@ export declare class EquipmentService {
8
8
  private store;
9
9
  constructor(httpClient: HttpClient, store: Store<any>);
10
10
  findByName(name: string): Observable<HypEquipment>;
11
+ list(): Observable<HypEquipment[]>;
11
12
  static ɵfac: i0.ɵɵFactoryDeclaration<EquipmentService, never>;
12
13
  static ɵprov: i0.ɵɵInjectableDeclaration<EquipmentService>;
13
14
  }
@@ -0,0 +1,27 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { Observable } from 'rxjs';
3
+ import { Store } from '@ngrx/store';
4
+ import * as i0 from "@angular/core";
5
+ export interface HypServiceType {
6
+ name: string;
7
+ domain: string;
8
+ gti: number;
9
+ gtr: number;
10
+ gtrp: number;
11
+ }
12
+ export interface HypService {
13
+ name: string;
14
+ equipment: string;
15
+ priority: string;
16
+ type: string;
17
+ description: string;
18
+ }
19
+ export declare class ServiceService {
20
+ private httpClient;
21
+ private store;
22
+ constructor(httpClient: HttpClient, store: Store<any>);
23
+ types(): Observable<HypServiceType[]>;
24
+ create(service: HypService, actionId: string): Observable<string>;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<ServiceService, never>;
26
+ static ɵprov: i0.ɵɵInjectableDeclaration<ServiceService>;
27
+ }
@@ -0,0 +1,7 @@
1
+ button.a-link {
2
+ background: none!important;
3
+ border: none;
4
+ padding: 0!important;
5
+ text-decoration: underline;
6
+ cursor: pointer;
7
+ }
@@ -1,5 +1,6 @@
1
1
  /* Atoms */
2
2
  @use "./a-chip-status" as *;
3
+ @use "./a-button-link" as *;
3
4
 
4
5
  /* Molecules */
5
6
  @use "./m-hvy-event-summary-item" as *;
@@ -17,3 +18,5 @@
17
18
  @use "./o-hvy-procedure-detail" as *;
18
19
  @use "./o-hvy-procedure-actions" as *;
19
20
  @use "./o-hvy-action-menu" as *;
21
+ @use "./o-hvy-comments" as *;
22
+ @use "./o-hvy-create-service" as *;
@@ -0,0 +1,78 @@
1
+ @use 'node_modules/@provoly/dashboard/styles/abstracts' as *;
2
+ @use 'node_modules/@provoly/dashboard/styles-theme/abstracts-theme/variables.theme' as *;
3
+
4
+ .o-hvy-comments {
5
+
6
+ &__header {
7
+ display: flex;
8
+ flex-direction: row;
9
+ gap: toRem(20);
10
+
11
+ pry-icon {
12
+ margin-top: toRem(2);
13
+ }
14
+ }
15
+
16
+ textarea.a-form-field {
17
+ width: 100%;
18
+ margin-bottom: toRem(8);
19
+
20
+ &::placeholder {
21
+ font-style: italic;
22
+ font-size: toRem(12);
23
+ color: #859DB6;
24
+ padding: 5px;
25
+ }
26
+ }
27
+
28
+ &__button {
29
+ display: flex;
30
+ flex-direction: row;
31
+ justify-content: flex-end;
32
+ margin-bottom: toRem(20);
33
+ }
34
+
35
+ &__previous {
36
+ &:not(:first-child) {
37
+ margin-top: toRem(15);
38
+ }
39
+
40
+ &__message {
41
+ display: flex;
42
+ flex-direction: row;
43
+
44
+ button {
45
+ height: fit-content;
46
+ margin: 0;
47
+ }
48
+ }
49
+
50
+ &__actions {
51
+ display: flex;
52
+ flex-direction: row;
53
+ gap: toRem(20);
54
+
55
+ button, button:last-child {
56
+ margin: 0;
57
+
58
+ &:first-child {
59
+ margin-left: auto;
60
+ }
61
+ }
62
+ }
63
+ }
64
+
65
+ &__more {
66
+ display: flex;
67
+ flex-direction: row;
68
+ justify-content: center;
69
+
70
+ button {
71
+ margin: 0;
72
+ text-decoration: underline;
73
+ color: #183C6B;
74
+ font-weight: bold;
75
+ font-size: toRem(12);
76
+ }
77
+ }
78
+ }
@@ -0,0 +1,31 @@
1
+ @use 'node_modules/@provoly/dashboard/styles/abstracts' as *;
2
+ @use 'node_modules/@provoly/dashboard/styles-theme/abstracts-theme/variables.theme' as *;
3
+
4
+ .o-hvy-create-service {
5
+ display: flex;
6
+ flex-direction: column;
7
+ gap: toRem(10);
8
+ width: toRem(800);
9
+ padding: toRem(10) toRem(50);
10
+
11
+ h3, span {
12
+ margin: 0 auto;
13
+ }
14
+
15
+ &__hours {
16
+ display: flex;
17
+ flex-direction: row;
18
+ justify-content: space-between;
19
+ gap: toRem(10);
20
+ }
21
+
22
+ &__priority-nature {
23
+ display: flex;
24
+ flex-direction: row;
25
+ gap: toRem(10);
26
+
27
+ > div {
28
+ flex: 1 1;
29
+ }
30
+ }
31
+ }