@doolehealth/service-lib 0.0.4 → 0.0.6

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 (90) hide show
  1. package/README.md +112 -13
  2. package/esm2022/lib/configuration.mjs +1 -1
  3. package/esm2022/lib/models/notifications/notification-options.mjs +192 -0
  4. package/esm2022/lib/models/shared-care-plan.mjs +223 -0
  5. package/esm2022/lib/models/user.mjs +1 -1
  6. package/esm2022/lib/service-lib.component.mjs +5 -5
  7. package/esm2022/lib/service-lib.module.mjs +4 -4
  8. package/esm2022/lib/services/analytics.service.mjs +20 -11
  9. package/esm2022/lib/services/api-endpoints.service.mjs +22 -6
  10. package/esm2022/lib/services/authentication.service.mjs +74 -52
  11. package/esm2022/lib/services/change-endpoints.service.mjs +46 -22
  12. package/esm2022/lib/services/date.service.mjs +106 -45
  13. package/esm2022/lib/services/doole.service.mjs +658 -221
  14. package/esm2022/lib/services/encryption.service.mjs +3 -3
  15. package/esm2022/lib/services/error.service.mjs +3 -3
  16. package/esm2022/lib/services/events.service.mjs +5 -5
  17. package/esm2022/lib/services/firebase/auth/firebase-auth.service.mjs +154 -0
  18. package/esm2022/lib/services/firebase/auth/firebase-profile.model.mjs +7 -0
  19. package/esm2022/lib/services/health.service.mjs +303 -0
  20. package/esm2022/lib/services/highcharts.service.mjs +37 -67
  21. package/esm2022/lib/services/http.service.mjs +14 -14
  22. package/esm2022/lib/services/language.model.mjs +3 -0
  23. package/esm2022/lib/services/language.service.mjs +6 -6
  24. package/esm2022/lib/services/loading.service.mjs +3 -3
  25. package/esm2022/lib/services/logging.service.mjs +4 -4
  26. package/esm2022/lib/services/navigation.service.mjs +108 -9
  27. package/esm2022/lib/services/network.service.mjs +7 -7
  28. package/esm2022/lib/services/notification.service.mjs +10 -96
  29. package/esm2022/lib/services/opentok.service.mjs +10 -7
  30. package/esm2022/lib/services/permission.service.mjs +94 -0
  31. package/esm2022/lib/services/roles.service.mjs +9 -8
  32. package/esm2022/lib/services/shared-care-plan/shared-care-plan.service.mjs +103 -0
  33. package/esm2022/lib/services/storage.service.mjs +3 -3
  34. package/esm2022/lib/services/token.service.mjs +7 -7
  35. package/esm2022/lib/utils/chatParameters.mjs +17 -0
  36. package/esm2022/lib/utils/data-store.mjs +62 -0
  37. package/esm2022/lib/utils/query-string-parameters.mjs +11 -0
  38. package/esm2022/lib/utils/url-builder.mjs +15 -0
  39. package/esm2022/public-api.mjs +8 -9
  40. package/fesm2022/doolehealth-service-lib.mjs +2055 -1228
  41. package/fesm2022/doolehealth-service-lib.mjs.map +1 -1
  42. package/lib/configuration.d.ts +4 -2
  43. package/lib/{util → models/notifications}/notification-options.d.ts +0 -32
  44. package/lib/models/shared-care-plan.d.ts +206 -0
  45. package/lib/models/user.d.ts +2 -0
  46. package/lib/service-lib.component.d.ts +1 -1
  47. package/lib/services/analytics.service.d.ts +6 -3
  48. package/lib/services/api-endpoints.service.d.ts +3 -0
  49. package/lib/services/authentication.service.d.ts +27 -25
  50. package/lib/services/change-endpoints.service.d.ts +1 -0
  51. package/lib/services/date.service.d.ts +15 -8
  52. package/lib/services/doole.service.d.ts +64 -23
  53. package/lib/services/{auth → firebase/auth}/firebase-auth.service.d.ts +1 -1
  54. package/lib/services/{auth → firebase/auth}/firebase-profile.model.d.ts +1 -1
  55. package/lib/services/health.service.d.ts +49 -0
  56. package/lib/services/highcharts.service.d.ts +1 -2
  57. package/lib/services/http.service.d.ts +1 -1
  58. package/lib/services/language.service.d.ts +1 -1
  59. package/lib/services/navigation.service.d.ts +6 -1
  60. package/lib/services/notification.service.d.ts +2 -7
  61. package/lib/services/permission.service.d.ts +33 -0
  62. package/lib/services/roles.service.d.ts +3 -2
  63. package/lib/services/shared-care-plan/shared-care-plan.service.d.ts +20 -0
  64. package/lib/{util → utils}/data-store.d.ts +3 -1
  65. package/package.json +2 -15
  66. package/public-api.d.ts +7 -8
  67. package/esm2022/lib/services/auth/firebase-auth.service.mjs +0 -155
  68. package/esm2022/lib/services/auth/firebase-profile.model.mjs +0 -7
  69. package/esm2022/lib/services/pusher/pusher-alarm.service.mjs +0 -39
  70. package/esm2022/lib/services/pusher/pusher-challenge-notifications.service.mjs +0 -110
  71. package/esm2022/lib/services/pusher/pusher-connection.service.mjs +0 -73
  72. package/esm2022/lib/services/pusher/pusher-message.service.mjs +0 -27
  73. package/esm2022/lib/services/pusher/pusher-notification.service.mjs +0 -116
  74. package/esm2022/lib/util/chatParameters.mjs +0 -17
  75. package/esm2022/lib/util/data-store.mjs +0 -54
  76. package/esm2022/lib/util/environment.mjs +0 -29
  77. package/esm2022/lib/util/language.model.mjs +0 -3
  78. package/esm2022/lib/util/notification-options.mjs +0 -245
  79. package/esm2022/lib/util/query-string-parameters.mjs +0 -11
  80. package/esm2022/lib/util/url-builder.mjs +0 -15
  81. package/lib/services/pusher/pusher-alarm.service.d.ts +0 -16
  82. package/lib/services/pusher/pusher-challenge-notifications.service.d.ts +0 -40
  83. package/lib/services/pusher/pusher-connection.service.d.ts +0 -24
  84. package/lib/services/pusher/pusher-message.service.d.ts +0 -13
  85. package/lib/services/pusher/pusher-notification.service.d.ts +0 -32
  86. package/lib/util/environment.d.ts +0 -18
  87. /package/lib/{util → services}/language.model.d.ts +0 -0
  88. /package/lib/{util → utils}/chatParameters.d.ts +0 -0
  89. /package/lib/{util → utils}/query-string-parameters.d.ts +0 -0
  90. /package/lib/{util → utils}/url-builder.d.ts +0 -0
@@ -1,21 +1,16 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { MatSnackBarConfig } from '@angular/material/snack-bar';
3
- import { ContentTypePath } from "../util/notification-options";
4
3
  import * as i0 from "@angular/core";
5
4
  import * as i1 from "@angular/material/snack-bar";
6
5
  import * as i2 from "@ionic/angular";
7
6
  import * as i3 from "@ngx-translate/core";
8
- import * as i4 from "@angular/router";
9
7
  export class NotificationService {
10
- constructor(snackBar, zone, alertCtrl, translate, toastController, _zone, platform, router) {
8
+ constructor(snackBar, zone, alertCtrl, translate, toastController) {
11
9
  this.snackBar = snackBar;
12
10
  this.zone = zone;
13
11
  this.alertCtrl = alertCtrl;
14
12
  this.translate = translate;
15
13
  this.toastController = toastController;
16
- this._zone = _zone;
17
- this.platform = platform;
18
- this.router = router;
19
14
  }
20
15
  showSuccess(message) {
21
16
  // Had an issue with the snackbar being ran outside of angular's zone.
@@ -45,7 +40,7 @@ export class NotificationService {
45
40
  config.horizontalPosition = 'center';
46
41
  config.duration = 3000;
47
42
  this.snackBar.open(message, 'X', config);
48
- console.log("NotificationService", message);
43
+ //console.log("NotificationService", message);
49
44
  });
50
45
  }
51
46
  //Toast
@@ -54,7 +49,7 @@ export class NotificationService {
54
49
  this.toastController.dismiss().then(() => {
55
50
  }).catch(() => {
56
51
  }).finally(() => {
57
- console.log('Closed');
52
+ //console.log('Closed')
58
53
  });
59
54
  }
60
55
  catch (e) { }
@@ -72,7 +67,7 @@ export class NotificationService {
72
67
  this.toastController.dismiss().then(() => {
73
68
  }).catch(() => {
74
69
  }).finally(() => {
75
- console.log('Closed');
70
+ //console.log('Closed')
76
71
  });
77
72
  }
78
73
  catch (e) { }
@@ -87,7 +82,7 @@ export class NotificationService {
87
82
  icon: 'close',
88
83
  role: 'cancel',
89
84
  handler: () => {
90
- console.log('Cancel clicked');
85
+ //console.log('Cancel clicked');
91
86
  }
92
87
  }
93
88
  ]
@@ -109,94 +104,13 @@ export class NotificationService {
109
104
  });
110
105
  await alert.present();
111
106
  }
112
- redirecPushNotification(data, notification) {
113
- switch (data.action) {
114
- case "SHARECAREPLAN":
115
- this._zone.run(() => {
116
- this.router.navigate([ContentTypePath.Home], { state: { data: data, openNotificationAlertDialog: true } });
117
- });
118
- break;
119
- case "MESSAGE":
120
- let staff;
121
- // Different payloads for ios and android
122
- if (this.platform.is('ios'))
123
- staff = data?.origin;
124
- else
125
- staff = data?.origin ? JSON.parse(data?.origin) : null;
126
- console.log('staff: ', staff);
127
- this._zone.run(() => {
128
- this.router.navigate([ContentTypePath.Message], { state: { data: data, chat: data.id, staff: staff, customData: data?.user_id } });
129
- });
130
- break;
131
- case "FORM":
132
- this._zone.run(() => {
133
- this.router.navigate([ContentTypePath.Forms, { id: data.id }], { state: { data: data } });
134
- });
135
- break;
136
- case "DRUGINTAKE":
137
- this._zone.run(() => {
138
- this.router.navigate([ContentTypePath.Medication], { state: { data: data, segment: 'medication' } });
139
- });
140
- break;
141
- case "VIDEOCALL":
142
- //return "VIDEOCALL";
143
- break;
144
- case "ADVICE":
145
- this._zone.run(() => {
146
- this.router.navigateByUrl('/home').then(() => {
147
- this.router.navigate([ContentTypePath.AdvicesDetail], { state: { data: data, id: data.id } });
148
- });
149
- });
150
- break;
151
- case "NEWS":
152
- this._zone.run(() => {
153
- this.router.navigateByUrl('/home').then(() => {
154
- this.router.navigate([ContentTypePath.NewsDetail], { state: { data: data, id: data.id } });
155
- });
156
- });
157
- break;
158
- case "DIET":
159
- this._zone.run(() => {
160
- this.router.navigate([ContentTypePath.DietsDetail], { state: { data: data, id: data.id } });
161
- });
162
- break;
163
- case "AGENDA":
164
- this._zone.run(() => {
165
- this.router.navigate([ContentTypePath.AgendaDetail], { state: { data: data, id: data.id } });
166
- });
167
- break;
168
- case "REMINDER":
169
- this._zone.run(() => {
170
- this.router.navigate([ContentTypePath.ReminderDetail], { state: { data: data, id: data.id } });
171
- });
172
- break;
173
- case "GAME":
174
- this._zone.run(() => {
175
- if (data.type == 'form') {
176
- this.router.navigate([ContentTypePath.FormDetail, { id: data.form_id }], { state: { data: data, game_play_id: data?.game_play_id } });
177
- }
178
- else
179
- this.router.navigate([ContentTypePath.GamesDetail], { state: { data: data, id: data.id, server_url: data?.server_url } });
180
- });
181
- break;
182
- case "EXERCISE":
183
- this._zone.run(() => {
184
- this.router.navigate([ContentTypePath.Exercises], { state: { data: data, id: data.id, programable_id: data.programable_play_id } });
185
- });
186
- break;
187
- default:
188
- console.error('Action on localNotificationActionPerformed not found, redirecting to videocall: ');
189
- // this.redirecToVideocall(notification)
190
- break;
191
- }
192
- }
193
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NotificationService, deps: [{ token: i1.MatSnackBar }, { token: i0.NgZone }, { token: i2.AlertController }, { token: i3.TranslateService }, { token: i2.ToastController }, { token: i0.NgZone }, { token: i2.Platform }, { token: i4.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
194
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NotificationService, deps: [{ token: i1.MatSnackBar }, { token: i0.NgZone }, { token: i2.AlertController }, { token: i3.TranslateService }, { token: i2.ToastController }], target: i0.ɵɵFactoryTarget.Injectable }); }
108
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
195
109
  }
196
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NotificationService, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NotificationService, decorators: [{
197
111
  type: Injectable,
198
112
  args: [{
199
113
  providedIn: 'root'
200
114
  }]
201
- }], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i0.NgZone }, { type: i2.AlertController }, { type: i3.TranslateService }, { type: i2.ToastController }, { type: i0.NgZone }, { type: i2.Platform }, { type: i4.Router }] });
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZXJ2aWNlLWxpYi9zcmMvbGliL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFBOzs7Ozs7QUFNOUQsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QixZQUNTLFFBQXFCLEVBQ3BCLElBQVksRUFDYixTQUEwQixFQUN6QixTQUEyQixFQUMzQixlQUFnQyxFQUNoQyxLQUFhLEVBQVcsUUFBa0IsRUFBVSxNQUFjO1FBTG5FLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDcEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNiLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQ3pCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVcsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7SUFDeEUsQ0FBQztJQUVMLFdBQVcsQ0FBQyxPQUFlO1FBQ3pCLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDakIsbURBQW1EO1lBQ25ELDREQUE0RDtZQUM1RCxNQUFNLE1BQU0sR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsTUFBTSxDQUFDLFVBQVUsR0FBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7WUFDbkMsTUFBTSxDQUFDLGtCQUFr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QUFJLEVBQUMsSUFBSSxFQUFFLEVBQUUsRUFBQyxJQUFJLENBQUMsRUFBRSxFQUFDLEVBQUMsQ0FBQyxDQUFDO29CQUN0RixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUUsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMvRixDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUUsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRyxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxVQUFVO2dCQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUUsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRyxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLE1BQU0sRUFBRSxDQUFDO3dCQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBRSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6SSxDQUFDOzt3QkFDQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzlILENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDdEksQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsTUFBTTtZQUNSO2dCQUNFLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0ZBQWtGLENBQUMsQ0FBQTtnQkFDbEcsd0NBQXdDO2dCQUN2QyxNQUFNO1FBQ1YsQ0FBQztJQUNMLENBQUM7K0dBNU1VLG1CQUFtQjttSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyLCBNYXRTbmFja0JhckNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBBbGVydENvbnRyb2xsZXIsIFBsYXRmb3JtLCBUb2FzdENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50VHlwZVBhdGggfSBmcm9tIFwiLi4vdXRpbC9ub3RpZmljYXRpb24tb3B0aW9uc1wiXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHB1YmxpYyBhbGVydEN0cmw6IEFsZXJ0Q29udHJvbGxlcixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRvYXN0Q29udHJvbGxlcjogVG9hc3RDb250cm9sbGVyLFxuICAgIHByaXZhdGUgX3pvbmU6IE5nWm9uZSwgIHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICApIHsgfVxuXG4gIHNob3dTdWNjZXNzKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIEhhZCBhbiBpc3N1ZSB3aXRoIHRoZSBzbmFja2JhciBiZWluZyByYW4gb3V0c2lkZSBvZiBhbmd1bGFyJ3Mgem9uZS5cbiAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgIC8vIFRoZSBzZWNvbmQgcGFyYW1ldGVyIGlzIHRoZSB0ZXh0IGluIHRoZSBidXR0b24uIFxuICAgICAgLy8gSW4gdGhlIHRoaXJkLCB3ZSBzZW5kIGluIHRoZSBjc3MgY2xhc3MgZm9yIHRoZSBzbmFjayBiYXIuXG4gICAgICBjb25zdCBjb25maWcgPSBuZXcgTWF0U25hY2tCYXJDb25maWcoKTtcbiAgICAgIGNvbmZpZy5wYW5lbENsYXNzID0gIFsnY3VzdG9tLWNsYXNzJ107XG4gICAgICBjb25maWcudmVydGljYWxQb3NpdGlvbiA9ICdib3R0b20nO1xuICAgICAgY29uZmlnLmhvcml6b250YWxQb3NpdGlvbiA9ICdjZW50ZXInO1xuICAgICAgY29uZmlnLmR1cmF0aW9uID0gMzAwMDtcbiAgICAgIHRoaXMuc25hY2tCYXIub3BlbihtZXNzYWdlLCcnLCBjb25maWcpO1xuICAgICAgXG4gICAgfSk7XG4gIH1cblxuICBzaG93RXJyb3IoZXJyb3I6IHN0cmluZyk6IHZvaWQge1xuICAgIFxuICAgIGxldCBtZXNzYWdlOnN0cmluZztcbiAgICBpZihlcnJvci5pbmNsdWRlcygnRVJSX0lOVEVSTkVUX0RJU0NPTk5FQ1RFRCcpIHx8IGVycm9yLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ25ldHdvcmsgZXJyb3InKSB8fCBlcnJvci50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCd1bmtub3duIGVycm9yJykpXG4gICAgICAgIG1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdjb21tb25zLmVycm9yLW5ldHdvcmsnKTtcbiAgICAgIGVsc2UgaWYoZXJyb3IuaW5jbHVkZXMoJ1RpbWVvdXQgaGFzIG9jY3VycmVkJykpXG4gICAgICAgIG1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdjb21tb25zLmVycm9yLXRpbWVvdXQnKTtcbiAgICAgIGVsc2VcbiAgICAgICAgbWVzc2FnZSA9IGVycm9yO1xuICAgICAgXG5cbiAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcblxuICAgICAgY29uc3QgY29uZmlnID0gbmV3IE1hdFNuYWNrQmFyQ29uZmlnKCk7XG4gICAgICBjb25maWcucGFuZWxDbGFzcyA9IFsnZXhhbXBsZS1waXp6YS1wYXJ0eSddO1xuICAgICAgY29uZmlnLnZlcnRpY2FsUG9zaXRpb24gPSAnYm90dG9tJztcbiAgICAgIGNvbmZpZy5ob3Jpem9udGFsUG9zaXRpb24gPSAnY2VudGVyJztcbiAgICAgIGNvbmZpZy5kdXJhdGlvbiA9IDMwMDA7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4obWVzc2FnZSwnWCcsIGNvbmZpZyk7XG4gICAgIFxuICAgICAgY29uc29sZS5sb2coXCJOb3RpZmljYXRpb25TZXJ2aWNlXCIsIG1lc3NhZ2UpO1xuICAgICAgXG4gICAgfSk7XG4gIH1cblxuICAvL1RvYXN0XG4gIGRpc3BsYXlUb2FzdFN1Y2Nlc3NmdWwoKSB7IFxuICAgIHRyeSB7XG4gICAgICB0aGlzLnRvYXN0Q29udHJvbGxlci5kaXNtaXNzKCkudGhlbigoKSA9PiB7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ0Nsb3NlZCcpXG4gICAgICB9KTtcbiAgICB9IGNhdGNoKGUpIHt9XG4gICAgXG4gICAgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uOiAnbWlkZGxlJywgLy8nbWlkZGxlJywgJ2JvdHRvbSdcbiAgICAgIGNzc0NsYXNzOiAndG9hc3QtY3VzdG9tLWNsYXNzJyxcbiAgICAgIGFuaW1hdGVkOiB0cnVlLFxuICAgICAgZHVyYXRpb246IDIwMDAsXG4gICAgfSkudGhlbigodG9hc3QpID0+IHtcbiAgICAgIHRvYXN0LnByZXNlbnQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGRpc3BsYXlUb2FzdFB1c2hlcihtZXNzYWdlKSB7IFxuICAgIHRyeSB7XG4gICAgICB0aGlzLnRvYXN0Q29udHJvbGxlci5kaXNtaXNzKCkudGhlbigoKSA9PiB7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ0Nsb3NlZCcpXG4gICAgICB9KTtcbiAgICB9IGNhdGNoKGUpIHt9XG4gICAgXG4gICAgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uOiAnbWlkZGxlJywgLy8nbWlkZGxlJywgJ2JvdHRvbSdcbiAgICAgIGNzc0NsYXNzOiAndG9hc3QtcHVzaGVyLWNsYXNzJyxcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UsXG4gICAgICBhbmltYXRlZDogdHJ1ZSxcbiAgICAgIGR1cmF0aW9uOiAzMDAwMCxcbiAgICAgIGJ1dHRvbnM6IFt7XG4gICAgICAgICAgdGV4dDogJ0NlcnJhcicsXG4gICAgICAgICAgaWNvbjogJ2Nsb3NlJyxcbiAgICAgICAgICByb2xlOiAnY2FuY2VsJyxcbiAgICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ2FuY2VsIGNsaWNrZWQnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9KS50aGVuKCh0b2FzdCkgPT4ge1xuICAgICAgdG9hc3QucHJlc2VudCgpO1xuICAgIH0pO1xuICB9XG5cblxuICBhc3luYyBjb25maXJtQWxsTm90aWZpY2F0aW9uKG1lc3NhZ2UpIHtcbiAgICBjb25zdCBhbGVydCA9IGF3YWl0IHRoaXMuYWxlcnRDdHJsLmNyZWF0ZSh7XG4gICAgICBjc3NDbGFzczogJ215LWFsZXJ0LWNsYXNzJyxcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgLFxuICAgICAgICBidXR0b25zOiBbXG4gICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYnV0dG9uLm9rXCIpLFxuICAgICAgICAgICAgaGFuZGxlcjogKGRhdGEpID0+IHtcbiAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICB9KTtcblxuICAgIGF3YWl0IGFsZXJ0LnByZXNlbnQoKTtcbiAgfVxuXG5cbiAgcmVkaXJlY1B1c2hOb3RpZmljYXRpb24oZGF0YSwgbm90aWZpY2F0aW9uPykge1xuXG5cbiAgICBzd2l0Y2ggKGRhdGEuYWN0aW9uKSB7XG5cbiAgICAgIGNhc2UgXCJTSEFSRUNBUkVQTEFOXCI6XG4gICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5Ib21lXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBvcGVuTm90aWZpY2F0aW9uQWxlcnREaWFsb2c6IHRydWV9IH0pO1xuICAgICAgICB9KTtcblxuICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFwiTUVTU0FHRVwiOlxuICAgICAgICBsZXQgc3RhZmY7XG4gICAgICAgIC8vIERpZmZlcmVudCBwYXlsb2FkcyBmb3IgaW9zIGFuZCBhbmRyb2lkXG4gICAgICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzKCdpb3MnKSkgXG4gICAgICAgICAgc3RhZmYgPSBkYXRhPy5vcmlnaW47XG4gICAgICAgIGVsc2UgXG4gICAgICAgICAgc3RhZmYgPSBkYXRhPy5vcmlnaW4/IEpTT04ucGFyc2UoZGF0YT8ub3JpZ2luKSA6IG51bGw7XG4gICAgICAgIGNvbnNvbGUubG9nKCdzdGFmZjogJywgc3RhZmYpO1xuXG4gICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5NZXNzYWdlXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBjaGF0OiBkYXRhLmlkLCBzdGFmZjogc3RhZmYsIGN1c3RvbURhdGE6IGRhdGE/LnVzZXJfaWQgfSB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiRk9STVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLkZvcm1zLCB7IGlkOiBkYXRhLmlkIH1dLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEgfSB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIkRSVUdJTlRBS0VcIjpcbiAgICAgICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5NZWRpY2F0aW9uXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBzZWdtZW50OiAnbWVkaWNhdGlvbicgfSB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIlZJREVPQ0FMTFwiOlxuICAgICAgICAgLy9yZXR1cm4gXCJWSURFT0NBTExcIjtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIkFEVklDRVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ob21lJykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLkFkdmljZXNEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkIH19KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiTkVXU1wiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ob21lJykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLk5ld3NEZXRhaWxdLHtzdGF0ZTp7ZGF0YTpkYXRhLCBpZDpkYXRhLmlkfX0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJESUVUXCI6XG4gICAgICAgICAgdGhpcy5fem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoIFtDb250ZW50VHlwZVBhdGguRGlldHNEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkIH0gfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJBR0VOREFcIjpcbiAgICAgICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5BZ2VuZGFEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkIH0gfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJSRU1JTkRFUlwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLlJlbWluZGVyRGV0YWlsXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBpZDogZGF0YS5pZCB9IH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiR0FNRVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhLnR5cGUgPT0gJ2Zvcm0nKSB7XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLkZvcm1EZXRhaWwsIHsgaWQ6IGRhdGEuZm9ybV9pZCB9XSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBnYW1lX3BsYXlfaWQ6IGRhdGE/LmdhbWVfcGxheV9pZCB9IH0pO1xuICAgICAgICAgICAgfSBlbHNlXG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtDb250ZW50VHlwZVBhdGguR2FtZXNEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkLCBzZXJ2ZXJfdXJsOiBkYXRhPy5zZXJ2ZXJfdXJsIH0gfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJFWEVSQ0lTRVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtDb250ZW50VHlwZVBhdGguRXhlcmNpc2VzXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBpZDogZGF0YS5pZCwgcHJvZ3JhbWFibGVfaWQ6IGRhdGEucHJvZ3JhbWFibGVfcGxheV9pZCB9IH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0FjdGlvbiBvbiBsb2NhbE5vdGlmaWNhdGlvbkFjdGlvblBlcmZvcm1lZCBub3QgZm91bmQsIHJlZGlyZWN0aW5nIHRvIHZpZGVvY2FsbDogJylcbiAgICAgICAgIC8vIHRoaXMucmVkaXJlY1RvVmlkZW9jYWxsKG5vdGlmaWNhdGlvbilcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgfVxufVxuXG4iXX0=
115
+ }], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i0.NgZone }, { type: i2.AlertController }, { type: i3.TranslateService }, { type: i2.ToastController }] });
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZXJ2aWNlLWxpYi9zcmMvbGliL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7O0FBTzdFLE1BQU0sT0FBTyxtQkFBbUI7SUFFOUIsWUFDUyxRQUFxQixFQUNwQixJQUFZLEVBQ2IsU0FBMEIsRUFDekIsU0FBMkIsRUFDM0IsZUFBZ0M7UUFKakMsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQUNwQixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ2IsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDekIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBQ3RDLENBQUM7SUFFTCxXQUFXLENBQUMsT0FBZTtRQUN6QixzRUFBc0U7UUFDdEUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ2pCLG1EQUFtRDtZQUNuRCw0REFBNEQ7WUFDNUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sQ0FBQyxVQUFVLEdBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUN0QyxNQUFNLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO1lBQ25DLE1BQU0sQ0FBQyxrQkFBa0IsR0FBRyxRQUFRLENBQUM7WUFDckMsTUFBTSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV6QyxDQUFDLENBQUMsQ0FBQztJQUNMLENB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U0FDRixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPO1FBQ2xDLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7WUFDeEMsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixPQUFPLEVBQUUsT0FBTztZQUNkLE9BQU8sRUFBRTtnQkFDUjtvQkFDRyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO29CQUN6QyxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTtvQkFFbEIsQ0FBQztpQkFDRjthQUNGO1NBQ0osQ0FBQyxDQUFDO1FBRUgsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDeEIsQ0FBQzsrR0FuSFUsbUJBQW1CO21IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIsIE1hdFNuYWNrQmFyQ29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IEFsZXJ0Q29udHJvbGxlciwgVG9hc3RDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHB1YmxpYyBhbGVydEN0cmw6IEFsZXJ0Q29udHJvbGxlcixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRvYXN0Q29udHJvbGxlcjogVG9hc3RDb250cm9sbGVyXG4gICkgeyB9XG5cbiAgc2hvd1N1Y2Nlc3MobWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gSGFkIGFuIGlzc3VlIHdpdGggdGhlIHNuYWNrYmFyIGJlaW5nIHJhbiBvdXRzaWRlIG9mIGFuZ3VsYXIncyB6b25lLlxuICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgLy8gVGhlIHNlY29uZCBwYXJhbWV0ZXIgaXMgdGhlIHRleHQgaW4gdGhlIGJ1dHRvbi4gXG4gICAgICAvLyBJbiB0aGUgdGhpcmQsIHdlIHNlbmQgaW4gdGhlIGNzcyBjbGFzcyBmb3IgdGhlIHNuYWNrIGJhci5cbiAgICAgIGNvbnN0IGNvbmZpZyA9IG5ldyBNYXRTbmFja0JhckNvbmZpZygpO1xuICAgICAgY29uZmlnLnBhbmVsQ2xhc3MgPSAgWydjdXN0b20tY2xhc3MnXTtcbiAgICAgIGNvbmZpZy52ZXJ0aWNhbFBvc2l0aW9uID0gJ2JvdHRvbSc7XG4gICAgICBjb25maWcuaG9yaXpvbnRhbFBvc2l0aW9uID0gJ2NlbnRlcic7XG4gICAgICBjb25maWcuZHVyYXRpb24gPSAzMDAwO1xuICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKG1lc3NhZ2UsJycsIGNvbmZpZyk7XG4gICAgICBcbiAgICB9KTtcbiAgfVxuXG4gIHNob3dFcnJvcihlcnJvcjogc3RyaW5nKTogdm9pZCB7XG4gICAgXG4gICAgbGV0IG1lc3NhZ2U6c3RyaW5nO1xuICAgIGlmKGVycm9yLmluY2x1ZGVzKCdFUlJfSU5URVJORVRfRElTQ09OTkVDVEVEJykgfHwgZXJyb3IudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnbmV0d29yayBlcnJvcicpIHx8IGVycm9yLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ3Vua25vd24gZXJyb3InKSlcbiAgICAgICAgbWVzc2FnZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2NvbW1vbnMuZXJyb3ItbmV0d29yaycpO1xuICAgICAgZWxzZSBpZihlcnJvci5pbmNsdWRlcygnVGltZW91dCBoYXMgb2NjdXJyZWQnKSlcbiAgICAgICAgbWVzc2FnZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2NvbW1vbnMuZXJyb3ItdGltZW91dCcpO1xuICAgICAgZWxzZVxuICAgICAgICBtZXNzYWdlID0gZXJyb3I7XG4gICAgICBcblxuICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuXG4gICAgICBjb25zdCBjb25maWcgPSBuZXcgTWF0U25hY2tCYXJDb25maWcoKTtcbiAgICAgIGNvbmZpZy5wYW5lbENsYXNzID0gWydleGFtcGxlLXBpenphLXBhcnR5J107XG4gICAgICBjb25maWcudmVydGljYWxQb3NpdGlvbiA9ICdib3R0b20nO1xuICAgICAgY29uZmlnLmhvcml6b250YWxQb3NpdGlvbiA9ICdjZW50ZXInO1xuICAgICAgY29uZmlnLmR1cmF0aW9uID0gMzAwMDtcbiAgICAgIHRoaXMuc25hY2tCYXIub3BlbihtZXNzYWdlLCdYJywgY29uZmlnKTtcbiAgICAgXG4gICAgICAvL2NvbnNvbGUubG9nKFwiTm90aWZpY2F0aW9uU2VydmljZVwiLCBtZXNzYWdlKTtcbiAgICAgIFxuICAgIH0pO1xuICB9XG5cbiAgLy9Ub2FzdFxuICBkaXNwbGF5VG9hc3RTdWNjZXNzZnVsKCkgeyBcbiAgICB0cnkge1xuICAgICAgdGhpcy50b2FzdENvbnRyb2xsZXIuZGlzbWlzcygpLnRoZW4oKCkgPT4ge1xuICAgICAgfSkuY2F0Y2goKCkgPT4ge1xuICAgICAgfSkuZmluYWxseSgoKSA9PiB7XG4gICAgICAgIC8vY29uc29sZS5sb2coJ0Nsb3NlZCcpXG4gICAgICB9KTtcbiAgICB9IGNhdGNoKGUpIHt9XG4gICAgXG4gICAgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uOiAnbWlkZGxlJywgLy8nbWlkZGxlJywgJ2JvdHRvbSdcbiAgICAgIGNzc0NsYXNzOiAndG9hc3QtY3VzdG9tLWNsYXNzJyxcbiAgICAgIGFuaW1hdGVkOiB0cnVlLFxuICAgICAgZHVyYXRpb246IDIwMDAsXG4gICAgfSkudGhlbigodG9hc3QpID0+IHtcbiAgICAgIHRvYXN0LnByZXNlbnQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGRpc3BsYXlUb2FzdFB1c2hlcihtZXNzYWdlKSB7IFxuICAgIHRyeSB7XG4gICAgICB0aGlzLnRvYXN0Q29udHJvbGxlci5kaXNtaXNzKCkudGhlbigoKSA9PiB7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgLy9jb25zb2xlLmxvZygnQ2xvc2VkJylcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2goZSkge31cbiAgICBcbiAgICB0aGlzLnRvYXN0Q29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgcG9zaXRpb246ICdtaWRkbGUnLCAvLydtaWRkbGUnLCAnYm90dG9tJ1xuICAgICAgY3NzQ2xhc3M6ICd0b2FzdC1wdXNoZXItY2xhc3MnLFxuICAgICAgbWVzc2FnZTogbWVzc2FnZSxcbiAgICAgIGFuaW1hdGVkOiB0cnVlLFxuICAgICAgZHVyYXRpb246IDMwMDAwLFxuICAgICAgYnV0dG9uczogW3tcbiAgICAgICAgICB0ZXh0OiAnQ2VycmFyJyxcbiAgICAgICAgICBpY29uOiAnY2xvc2UnLFxuICAgICAgICAgIHJvbGU6ICdjYW5jZWwnLFxuICAgICAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgICAgIC8vY29uc29sZS5sb2coJ0NhbmNlbCBjbGlja2VkJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSkudGhlbigodG9hc3QpID0+IHtcbiAgICAgIHRvYXN0LnByZXNlbnQoKTtcbiAgICB9KTtcbiAgfVxuXG5cbiAgYXN5bmMgY29uZmlybUFsbE5vdGlmaWNhdGlvbihtZXNzYWdlKSB7XG4gICAgY29uc3QgYWxlcnQgPSBhd2FpdCB0aGlzLmFsZXJ0Q3RybC5jcmVhdGUoe1xuICAgICAgY3NzQ2xhc3M6ICdteS1hbGVydC1jbGFzcycsXG4gICAgICBtZXNzYWdlOiBtZXNzYWdlICxcbiAgICAgICAgYnV0dG9uczogW1xuICAgICAgICAge1xuICAgICAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImJ1dHRvbi5va1wiKSxcbiAgICAgICAgICAgIGhhbmRsZXI6IChkYXRhKSA9PiB7XG4gICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgfSk7XG5cbiAgICBhd2FpdCBhbGVydC5wcmVzZW50KCk7XG4gIH1cblxufVxuXG4iXX0=
@@ -1,4 +1,5 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import { Capacitor } from '@capacitor/core';
2
3
  import { CallCapacitor } from '@doole/videocall-notications-plugins';
3
4
  import { Subject } from 'rxjs';
4
5
  import * as i0 from "@angular/core";
@@ -6,20 +7,22 @@ export class OpentokService {
6
7
  constructor() {
7
8
  this.callEventSubject = new Subject();
8
9
  this.callEvent$ = this.callEventSubject.asObservable();
9
- CallCapacitor.addListener('disconnected-call', () => {
10
- this.emitCallEvent({ type: "hangup" });
11
- });
10
+ if (Capacitor.isNativePlatform()) {
11
+ CallCapacitor.addListener('disconnected-call', () => {
12
+ this.emitCallEvent({ type: "hangup" });
13
+ });
14
+ }
12
15
  }
13
16
  emitCallEvent(data) {
14
17
  this.callEventSubject.next(data);
15
18
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: OpentokService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
17
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: OpentokService, providedIn: 'root' }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OpentokService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
20
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OpentokService, providedIn: 'root' }); }
18
21
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: OpentokService, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OpentokService, decorators: [{
20
23
  type: Injectable,
21
24
  args: [{
22
25
  providedIn: 'root'
23
26
  }]
24
27
  }], ctorParameters: () => [] });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbnRvay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9vcGVudG9rLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDckUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLL0IsTUFBTSxPQUFPLGNBQWM7SUFVekI7UUFIUSxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBQ3JELGVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFHaEQsYUFBYSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7WUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFnQjtRQUM1QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7K0dBbEJVLGNBQWM7bUhBQWQsY0FBYyxjQUZiLE1BQU07OzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FsbENhcGFjaXRvciB9IGZyb20gJ0Bkb29sZS92aWRlb2NhbGwtbm90aWNhdGlvbnMtcGx1Z2lucyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE9wZW50b2tTZXJ2aWNlIHtcblxuICBhZ2VuZGFJZCQ6IHN0cmluZztcbiAgdG9rZW4kOiBzdHJpbmc7XG4gIHNlc3Npb25JZCQ6IHN0cmluZztcbiAgYXBpS2V5JDogc3RyaW5nO1xuXG4gIHByaXZhdGUgY2FsbEV2ZW50U3ViamVjdCA9IG5ldyBTdWJqZWN0PElDYWxsRXZlbnQ+KCk7XG4gIGNhbGxFdmVudCQgPSB0aGlzLmNhbGxFdmVudFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgQ2FsbENhcGFjaXRvci5hZGRMaXN0ZW5lcignZGlzY29ubmVjdGVkLWNhbGwnLCAoKSA9PiB7XG4gICAgICB0aGlzLmVtaXRDYWxsRXZlbnQoeyB0eXBlOiBcImhhbmd1cFwiIH0pO1xuICAgIH0pXG4gIH1cblxuICBlbWl0Q2FsbEV2ZW50KGRhdGE6IElDYWxsRXZlbnQpIHtcbiAgICB0aGlzLmNhbGxFdmVudFN1YmplY3QubmV4dChkYXRhKTtcbiAgfVxuXG59XG5cbmludGVyZmFjZSBJQ2FsbEV2ZW50IHtcbiAgdHlwZTogJ2hhbmd1cCc7XG59XG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbnRvay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9vcGVudG9rLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSy9CLE1BQU0sT0FBTyxjQUFjO0lBVXpCO1FBSFEscUJBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBR2hELElBQUksU0FBUyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztZQUNuQyxhQUFhLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRTtnQkFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQztJQUNELENBQUM7SUFFRCxhQUFhLENBQUMsSUFBZ0I7UUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDOytHQXBCVSxjQUFjO21IQUFkLGNBQWMsY0FGYixNQUFNOzs0RkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhcGFjaXRvciB9IGZyb20gJ0BjYXBhY2l0b3IvY29yZSc7XG5pbXBvcnQgeyBDYWxsQ2FwYWNpdG9yIH0gZnJvbSAnQGRvb2xlL3ZpZGVvY2FsbC1ub3RpY2F0aW9ucy1wbHVnaW5zJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgT3BlbnRva1NlcnZpY2Uge1xuXG4gIGFnZW5kYUlkJDogc3RyaW5nO1xuICB0b2tlbiQ6IHN0cmluZztcbiAgc2Vzc2lvbklkJDogc3RyaW5nO1xuICBhcGlLZXkkOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjYWxsRXZlbnRTdWJqZWN0ID0gbmV3IFN1YmplY3Q8SUNhbGxFdmVudD4oKTtcbiAgY2FsbEV2ZW50JCA9IHRoaXMuY2FsbEV2ZW50U3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoQ2FwYWNpdG9yLmlzTmF0aXZlUGxhdGZvcm0oKSkge1xuICAgIENhbGxDYXBhY2l0b3IuYWRkTGlzdGVuZXIoJ2Rpc2Nvbm5lY3RlZC1jYWxsJywgKCkgPT4ge1xuICAgICAgdGhpcy5lbWl0Q2FsbEV2ZW50KHsgdHlwZTogXCJoYW5ndXBcIiB9KTtcbiAgICB9KVxuICB9XG4gIH1cblxuICBlbWl0Q2FsbEV2ZW50KGRhdGE6IElDYWxsRXZlbnQpIHtcbiAgICB0aGlzLmNhbGxFdmVudFN1YmplY3QubmV4dChkYXRhKTtcbiAgfVxuXG59XG5cbmludGVyZmFjZSBJQ2FsbEV2ZW50IHtcbiAgdHlwZTogJ2hhbmd1cCc7XG59XG4iXX0=
@@ -0,0 +1,94 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class PermissionService {
4
+ constructor() {
5
+ this.canViewGoals = true;
6
+ this.canManageGoals = true;
7
+ this.canViewForms = true;
8
+ this.canViewAnswerForms = true;
9
+ this.canViewExercises = true;
10
+ this.canViewDiets = true;
11
+ this.canViewRecipes = true;
12
+ this.canViewGames = true;
13
+ this.canViewMonitoring = true;
14
+ this.canManageMonitoring = true;
15
+ this.canViewAdvices = true;
16
+ this.canViewMedicalProcedures = true;
17
+ this.canViewNews = true;
18
+ this.canViewTestimonials = true;
19
+ this.canViewMedicalTests = true;
20
+ this.canManageMedicalTests = true;
21
+ this.canViewMedication = true;
22
+ this.canManageMedication = true;
23
+ this.canViewMedicationPlans = true;
24
+ this.canViewEvents = true;
25
+ this.canManageEvents = true;
26
+ this.canAccessVideocall = true;
27
+ this.canManageMessages = true;
28
+ this.canSeeCenters = true;
29
+ this.colorCargiver = false;
30
+ }
31
+ setPermissions(permissions) {
32
+ this.canViewGoals = permissions.includes("canViewGoals") ? true : false;
33
+ this.canManageGoals = this.canViewGoals && permissions.includes("canManageGoals") ? true : false;
34
+ this.canViewForms = permissions.includes("canViewForms") ? true : false;
35
+ this.canViewAnswerForms = permissions.includes("canViewAnswerForms") ? true : false;
36
+ this.canViewExercises = permissions.includes("canViewExercises") ? true : false;
37
+ this.canViewDiets = permissions.includes("canViewDiets") ? true : false;
38
+ this.canViewRecipes = permissions.includes("canViewRecipes") ? true : false;
39
+ this.canViewGames = permissions.includes("canViewGames") ? true : false;
40
+ this.canViewMonitoring = permissions.includes("canViewMonitoring") ? true : false;
41
+ this.canManageMonitoring = this.canViewMonitoring && permissions.includes("canManageMonitoring") ? true : false;
42
+ this.canViewAdvices = permissions.includes("canViewAdvices") ? true : false;
43
+ this.canViewMedicalProcedures = permissions.includes("canViewMedicalProcedures") ? true : false;
44
+ this.canViewNews = permissions.includes("canViewNews") ? true : false;
45
+ this.canViewTestimonials = permissions.includes("canViewTestimonials") ? true : false;
46
+ this.canViewMedicalTests = permissions.includes("canViewMedicalTests") ? true : false;
47
+ this.canManageMedicalTests = this.canViewMedicalTests && permissions.includes("canManageMedicalTests") ? true : false;
48
+ this.canViewMedication = permissions.includes("canViewMedication") ? true : false;
49
+ this.canManageMedication = this.canViewMedication && permissions.includes("canManageMedication") ? true : false;
50
+ this.canViewMedicationPlans = permissions.includes("canViewMedicationPlans") ? true : false;
51
+ this.canViewEvents = permissions.includes("canViewEvents") ? true : false;
52
+ this.canManageEvents = this.canViewEvents && permissions.includes("canManageEvents") ? true : false;
53
+ this.canAccessVideocall = this.canViewEvents && permissions.includes("canAccessVideocall") ? true : false;
54
+ this.canManageMessages = permissions.includes("canManageMessages") ? true : false;
55
+ this.canSeeCenters = permissions.includes("canSeeCenters") ? true : false;
56
+ this.colorCargiver = permissions.includes("colorCargiver") ? true : false;
57
+ }
58
+ resetPermissions() {
59
+ this.canViewGoals = true;
60
+ this.canManageGoals = true;
61
+ this.canViewForms = true;
62
+ this.canViewAnswerForms = true;
63
+ this.canViewExercises = true;
64
+ this.canViewDiets = true;
65
+ this.canViewRecipes = true;
66
+ this.canViewGames = true;
67
+ this.canViewMonitoring = true;
68
+ this.canManageMonitoring = true;
69
+ this.canViewAdvices = true;
70
+ this.canViewMedicalProcedures = true;
71
+ this.canViewNews = true;
72
+ this.canViewTestimonials = true;
73
+ this.canViewMedicalTests = true;
74
+ this.canManageMedicalTests = true;
75
+ this.canViewMedication = true;
76
+ this.canManageMedication = true;
77
+ this.canViewMedicationPlans = true;
78
+ this.canViewEvents = true;
79
+ this.canManageEvents = true;
80
+ this.canManageMessages = true;
81
+ this.canSeeCenters = true;
82
+ this.canAccessVideocall = true;
83
+ this.colorCargiver = false;
84
+ }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
86
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PermissionService, providedIn: 'root' }); }
87
+ }
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PermissionService, decorators: [{
89
+ type: Injectable,
90
+ args: [{
91
+ providedIn: 'root'
92
+ }]
93
+ }], ctorParameters: () => [] });
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9wZXJtaXNzaW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGlCQUFpQjtJQThCNUI7UUEzQkEsaUJBQVksR0FBVyxJQUFJLENBQUE7UUFDM0IsbUJBQWMsR0FBVyxJQUFJLENBQUE7UUFDN0IsaUJBQVksR0FBVyxJQUFJLENBQUE7UUFDM0IsdUJBQWtCLEdBQVcsSUFBSSxDQUFBO1FBQ2pDLHFCQUFnQixHQUFXLElBQUksQ0FBQTtRQUMvQixpQkFBWSxHQUFXLElBQUksQ0FBQTtRQUMzQixtQkFBYyxHQUFXLElBQUksQ0FBQTtRQUM3QixpQkFBWSxHQUFXLElBQUksQ0FBQTtRQUMzQixzQkFBaUIsR0FBVyxJQUFJLENBQUE7UUFDaEMsd0JBQW1CLEdBQVcsSUFBSSxDQUFBO1FBQ2xDLG1CQUFjLEdBQVcsSUFBSSxDQUFBO1FBQzdCLDZCQUF3QixHQUFXLElBQUksQ0FBQTtRQUN2QyxnQkFBVyxHQUFXLElBQUksQ0FBQTtRQUMxQix3QkFBbUIsR0FBVyxJQUFJLENBQUE7UUFDbEMsd0JBQW1CLEdBQVcsSUFBSSxDQUFBO1FBQ2xDLDBCQUFxQixHQUFXLElBQUksQ0FBQTtRQUNwQyxzQkFBaUIsR0FBVyxJQUFJLENBQUE7UUFDaEMsd0JBQW1CLEdBQVcsSUFBSSxDQUFBO1FBQ2xDLDJCQUFzQixHQUFXLElBQUksQ0FBQTtRQUNyQyxrQkFBYSxHQUFXLElBQUksQ0FBQTtRQUM1QixvQkFBZSxHQUFXLElBQUksQ0FBQTtRQUM5Qix1QkFBa0IsR0FBVyxJQUFJLENBQUE7UUFDakMsc0JBQWlCLEdBQVcsSUFBSSxDQUFBO1FBQ2hDLGtCQUFhLEdBQVcsSUFBSSxD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LElBQUksQ0FBQTtRQUM3QixJQUFJLENBQUMsYUFBYSxHQUFFLElBQUksQ0FBQTtRQUN4QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLElBQUksQ0FBQyxhQUFhLEdBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7K0dBdEZVLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25TZXJ2aWNlIHtcblxuXG4gIGNhblZpZXdHb2Fsczpib29sZWFuID0gdHJ1ZVxuICBjYW5NYW5hZ2VHb2Fsczpib29sZWFuID0gdHJ1ZVxuICBjYW5WaWV3Rm9ybXM6Ym9vbGVhbiA9IHRydWVcbiAgY2FuVmlld0Fuc3dlckZvcm1zOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdFeGVyY2lzZXM6Ym9vbGVhbiA9IHRydWVcbiAgY2FuVmlld0RpZXRzOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdSZWNpcGVzOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdHYW1lczpib29sZWFuID0gdHJ1ZVxuICBjYW5WaWV3TW9uaXRvcmluZzpib29sZWFuID0gdHJ1ZVxuICBjYW5NYW5hZ2VNb25pdG9yaW5nOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdBZHZpY2VzOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdNZWRpY2FsUHJvY2VkdXJlczpib29sZWFuID0gdHJ1ZVxuICBjYW5WaWV3TmV3czpib29sZWFuID0gdHJ1ZVxuICBjYW5WaWV3VGVzdGltb25pYWxzOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdNZWRpY2FsVGVzdHM6Ym9vbGVhbiA9IHRydWVcbiAgY2FuTWFuYWdlTWVkaWNhbFRlc3RzOmJvb2xlYW4gPSB0cnVlXG4gIGNhblZpZXdNZWRpY2F0aW9uOmJvb2xlYW4gPSB0cnVlXG4gIGNhbk1hbmFnZU1lZGljYXRpb246Ym9vbGVhbiA9IHRydWVcbiAgY2FuVmlld01lZGljYXRpb25QbGFuczpib29sZWFuID0gdHJ1ZVxuICBjYW5WaWV3RXZlbnRzOmJvb2xlYW4gPSB0cnVlXG4gIGNhbk1hbmFnZUV2ZW50czpib29sZWFuID0gdHJ1ZVxuICBjYW5BY2Nlc3NWaWRlb2NhbGw6Ym9vbGVhbiA9IHRydWVcbiAgY2FuTWFuYWdlTWVzc2FnZXM6Ym9vbGVhbiA9IHRydWVcbiAgY2FuU2VlQ2VudGVyczpib29sZWFuID0gdHJ1ZVxuICBjb2xvckNhcmdpdmVyOmJvb2xlYW4gPSBmYWxzZVxuICBcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHNldFBlcm1pc3Npb25zKHBlcm1pc3Npb25zOmFueSkge1xuICAgIHRoaXMuY2FuVmlld0dvYWxzID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5WaWV3R29hbHNcIikgPyAgdHJ1ZSA6IGZhbHNlO1xuICAgIHRoaXMuY2FuTWFuYWdlR29hbHMgPSB0aGlzLmNhblZpZXdHb2FscyAmJiBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhbk1hbmFnZUdvYWxzXCIpID8gdHJ1ZSA6IGZhbHNlO1xuICAgIHRoaXMuY2FuVmlld0Zvcm1zID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5WaWV3Rm9ybXNcIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5WaWV3QW5zd2VyRm9ybXMgPSBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhblZpZXdBbnN3ZXJGb3Jtc1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhblZpZXdFeGVyY2lzZXMgPSBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhblZpZXdFeGVyY2lzZXNcIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5WaWV3RGlldHMgPSBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhblZpZXdEaWV0c1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhblZpZXdSZWNpcGVzID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5WaWV3UmVjaXBlc1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhblZpZXdHYW1lcyA9IHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuVmlld0dhbWVzXCIpID8gdHJ1ZSA6IGZhbHNlOyAgICBcbiAgICB0aGlzLmNhblZpZXdNb25pdG9yaW5nID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5WaWV3TW9uaXRvcmluZ1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhbk1hbmFnZU1vbml0b3JpbmcgPSB0aGlzLmNhblZpZXdNb25pdG9yaW5nICYmIHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuTWFuYWdlTW9uaXRvcmluZ1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhblZpZXdBZHZpY2VzID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5WaWV3QWR2aWNlc1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhblZpZXdNZWRpY2FsUHJvY2VkdXJlcyA9IHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuVmlld01lZGljYWxQcm9jZWR1cmVzXCIpID8gdHJ1ZSA6IGZhbHNlO1xuICAgIHRoaXMuY2FuVmlld05ld3MgPSBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhblZpZXdOZXdzXCIpID8gdHJ1ZSA6IGZhbHNlO1xuICAgIHRoaXMuY2FuVmlld1Rlc3RpbW9uaWFscyA9IHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuVmlld1Rlc3RpbW9uaWFsc1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhblZpZXdNZWRpY2FsVGVzdHMgPSBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhblZpZXdNZWRpY2FsVGVzdHNcIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5NYW5hZ2VNZWRpY2FsVGVzdHMgPSB0aGlzLmNhblZpZXdNZWRpY2FsVGVzdHMgJiYgcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5NYW5hZ2VNZWRpY2FsVGVzdHNcIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5WaWV3TWVkaWNhdGlvbiA9IHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuVmlld01lZGljYXRpb25cIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5NYW5hZ2VNZWRpY2F0aW9uID0gdGhpcy5jYW5WaWV3TWVkaWNhdGlvbiAmJiBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhbk1hbmFnZU1lZGljYXRpb25cIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5WaWV3TWVkaWNhdGlvblBsYW5zID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5WaWV3TWVkaWNhdGlvblBsYW5zXCIpID8gdHJ1ZSA6IGZhbHNlO1xuICAgIHRoaXMuY2FuVmlld0V2ZW50cyA9IHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuVmlld0V2ZW50c1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhbk1hbmFnZUV2ZW50cyA9IHRoaXMuY2FuVmlld0V2ZW50cyAmJiBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhbk1hbmFnZUV2ZW50c1wiKSA/IHRydWUgOiBmYWxzZTtcbiAgICB0aGlzLmNhbkFjY2Vzc1ZpZGVvY2FsbCA9IHRoaXMuY2FuVmlld0V2ZW50cyAmJiBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNhbkFjY2Vzc1ZpZGVvY2FsbFwiKSA/IHRydWUgOiBmYWxzZTsgICAgXG4gICAgdGhpcy5jYW5NYW5hZ2VNZXNzYWdlcyA9IHBlcm1pc3Npb25zLmluY2x1ZGVzKFwiY2FuTWFuYWdlTWVzc2FnZXNcIikgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5jYW5TZWVDZW50ZXJzID0gcGVybWlzc2lvbnMuaW5jbHVkZXMoXCJjYW5TZWVDZW50ZXJzXCIpID8gdHJ1ZSA6IGZhbHNlOyBcbiAgICB0aGlzLmNvbG9yQ2FyZ2l2ZXIgPSBwZXJtaXNzaW9ucy5pbmNsdWRlcyhcImNvbG9yQ2FyZ2l2ZXJcIikgPyB0cnVlIDogZmFsc2U7IFxuICB9XG5cbiAgcmVzZXRQZXJtaXNzaW9ucygpe1xuICAgIHRoaXMuY2FuVmlld0dvYWxzID0gdHJ1ZVxuICAgIHRoaXMuY2FuTWFuYWdlR29hbHMgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3Rm9ybXMgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3QW5zd2VyRm9ybXMgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3RXhlcmNpc2VzID0gdHJ1ZVxuICAgIHRoaXMuY2FuVmlld0RpZXRzID0gdHJ1ZVxuICAgIHRoaXMuY2FuVmlld1JlY2lwZXMgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3R2FtZXMgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3TW9uaXRvcmluZyA9IHRydWVcbiAgICB0aGlzLmNhbk1hbmFnZU1vbml0b3JpbmcgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3QWR2aWNlcyA9IHRydWVcbiAgICB0aGlzLmNhblZpZXdNZWRpY2FsUHJvY2VkdXJlcyA9IHRydWVcbiAgICB0aGlzLmNhblZpZXdOZXdzID0gdHJ1ZVxuICAgIHRoaXMuY2FuVmlld1Rlc3RpbW9uaWFscyA9IHRydWVcbiAgICB0aGlzLmNhblZpZXdNZWRpY2FsVGVzdHMgPSB0cnVlXG4gICAgdGhpcy5jYW5NYW5hZ2VNZWRpY2FsVGVzdHMgPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3TWVkaWNhdGlvbiA9IHRydWVcbiAgICB0aGlzLmNhbk1hbmFnZU1lZGljYXRpb24gPSB0cnVlXG4gICAgdGhpcy5jYW5WaWV3TWVkaWNhdGlvblBsYW5zID0gdHJ1ZVxuICAgIHRoaXMuY2FuVmlld0V2ZW50cyA9IHRydWVcbiAgICB0aGlzLmNhbk1hbmFnZUV2ZW50cyA9IHRydWVcbiAgICB0aGlzLmNhbk1hbmFnZU1lc3NhZ2VzID0gdHJ1ZVxuICAgIHRoaXMuY2FuU2VlQ2VudGVycz0gdHJ1ZVxuICAgIHRoaXMuY2FuQWNjZXNzVmlkZW9jYWxsID0gdHJ1ZTtcbiAgICB0aGlzLmNvbG9yQ2FyZ2l2ZXI9ZmFsc2U7XG4gIH1cbn1cbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class ComponentsApp {
4
- constructor(goal, advices, news, agenda, reminder, diet, drug, game, element, form, chat, doc_diagnostic, contacta) {
4
+ constructor(goal, advices, news, agenda, reminder, diet, drug, game, element, form, chat, doc_diagnostic, contacta, medication) {
5
5
  this.goal = goal;
6
6
  this.advices = advices;
7
7
  this.news = news;
@@ -15,6 +15,7 @@ export class ComponentsApp {
15
15
  this.chat = chat;
16
16
  this.doc_diagnostic = doc_diagnostic;
17
17
  this.contacta = contacta;
18
+ this.medication = medication;
18
19
  }
19
20
  }
20
21
  export class RolesService {
@@ -24,21 +25,21 @@ export class RolesService {
24
25
  //this.customAllComponents(true,false,true,false,false,false,false,true,true,true,true, false, true)
25
26
  }
26
27
  activatedAllComponents(enable) {
27
- this.component = new ComponentsApp(enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable);
28
+ this.component = new ComponentsApp(enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable, enable);
28
29
  }
29
- customAllComponents(goal, advices, news, agenda, reminder, diet, drug, game, element, form, chat, doc_diagnostic, contacta) {
30
- this.component = new ComponentsApp(goal, advices, news, agenda, reminder, diet, drug, game, element, form, chat, doc_diagnostic, contacta);
30
+ customAllComponents(goal, advices, news, agenda, reminder, diet, drug, game, element, form, chat, doc_diagnostic, contacta, medication) {
31
+ this.component = new ComponentsApp(goal, advices, news, agenda, reminder, diet, drug, game, element, form, chat, doc_diagnostic, contacta, medication);
31
32
  }
32
33
  setProfessional(professional) {
33
34
  this.isProfessional = professional ? true : false;
34
35
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: RolesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: RolesService, providedIn: 'root' }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RolesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RolesService, providedIn: 'root' }); }
37
38
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: RolesService, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RolesService, decorators: [{
39
40
  type: Injectable,
40
41
  args: [{
41
42
  providedIn: 'root'
42
43
  }]
43
44
  }], ctorParameters: () => [] });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlcnZpY2UtbGliL3NyYy9saWIvc2VydmljZXMvcm9sZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQyxNQUFNLE9BQU8sYUFBYTtJQWN4QixZQUFZLElBQWEsRUFBQyxPQUFnQixFQUFDLElBQWEsRUFBRSxNQUFlLEVBQUUsUUFBaUIsRUFBRSxJQUFhLEVBQUUsSUFBYSxFQUFFLElBQWEsRUFBRSxPQUFnQixFQUFFLElBQWEsRUFBRSxJQUFhLEVBQUMsY0FBdUIsRUFBRSxRQUFpQjtRQUNsTyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQTtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFLRCxNQUFNLE9BQU8sWUFBWTtJQUl2QjtRQUNFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDM0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2pDLG9HQUFvRztJQUN0RyxDQUFDO0lBRUEsc0JBQXNCLENBQUMsTUFBZTtRQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksYUFBYSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sQ0FBRSxDQUFBO0lBQ3JJLENBQUM7SUFFQSxtQkFBbUIsQ0FBQyxJQUFhLEVBQUMsT0FBZ0IsRUFBQyxJQUFhLEVBQUUsTUFBZSxFQUFFLFFBQWlCLEVBQUUsSUFBYSxFQUFFLElBQWEsRUFBRSxJQUFhLEVBQUUsT0FBZ0IsRUFBRSxJQUFhLEVBQUUsSUFBYSxFQUFFLGNBQXVCLEVBQUUsUUFBaUI7UUFDNU8sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGFBQWEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxRQUFRLENBQUUsQ0FBQTtJQUM3SSxDQUFDO0lBRUQsZUFBZSxDQUFDLFlBQVk7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxZQUFZLENBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQSxDQUFDLENBQUMsS0FBSyxDQUFBO0lBRWpELENBQUM7K0dBckJVLFlBQVk7bUhBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgQ29tcG9uZW50c0FwcCB7XG4gIGdvYWw6IGJvb2xlYW47XG4gIGFkdmljZXM6IGJvb2xlYW47XG4gIG5ld3M6IGJvb2xlYW47XG4gIGFnZW5kYTogYm9vbGVhbjtcbiAgcmVtaW5kZXI6IGJvb2xlYW47XG4gIGRpZXQ6IGJvb2xlYW47XG4gIGRydWc6IGJvb2xlYW47XG4gIGdhbWU6IGJvb2xlYW47XG4gIGVsZW1lbnQ6IGJvb2xlYW47XG4gIGZvcm06IGJvb2xlYW47XG4gIGNoYXQ6IGJvb2xlYW47XG4gIGRvY19kaWFnbm9zdGljOiBib29sZWFuO1xuICBjb250YWN0YTogYm9vbGVhbjtcbiAgY29uc3RydWN0b3IoZ29hbDogYm9vbGVhbixhZHZpY2VzOiBib29sZWFuLG5ld3M6IGJvb2xlYW4sIGFnZW5kYTogYm9vbGVhbiwgcmVtaW5kZXI6IGJvb2xlYW4sIGRpZXQ6IGJvb2xlYW4sIGRydWc6IGJvb2xlYW4sIGdhbWU6IGJvb2xlYW4sIGVsZW1lbnQ6IGJvb2xlYW4sIGZvcm06IGJvb2xlYW4sIGNoYXQ6IGJvb2xlYW4sZG9jX2RpYWdub3N0aWM6IGJvb2xlYW4sIGNvbnRhY3RhOiBib29sZWFuKXtcbiAgICB0aGlzLmdvYWwgPSBnb2FsXG4gICAgdGhpcy5hZHZpY2VzID0gYWR2aWNlc1xuICAgIHRoaXMubmV3cyA9IG5ld3NcbiAgICB0aGlzLmFnZW5kYSA9IGFnZW5kYVxuICAgIHRoaXMucmVtaW5kZXIgPSByZW1pbmRlclxuICAgIHRoaXMuZGlldCA9IGRpZXRcbiAgICB0aGlzLmRydWcgPSBkcnVnXG4gICAgdGhpcy5nYW1lID0gZ2FtZVxuICAgIHRoaXMuZWxlbWVudCA9IGVsZW1lbnRcbiAgICB0aGlzLmZvcm0gPSBmb3JtXG4gICAgdGhpcy5jaGF0ID0gY2hhdFxuICAgIHRoaXMuZG9jX2RpYWdub3N0aWMgPSBkb2NfZGlhZ25vc3RpY1xuICAgIHRoaXMuY29udGFjdGEgPSBjb250YWN0YVxuICB9XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFJvbGVzU2VydmljZSB7XG4gIGNvbXBvbmVudDogQ29tcG9uZW50c0FwcDtcbiAgaXNQcm9mZXNzaW9uYWw6IGJvb2xlYW47XG4gIHVzZXJUeXBlOiBhbnk7XG4gIGNvbnN0cnVjdG9yKCkgeyBcbiAgICB0aGlzLnNldFByb2Zlc3Npb25hbChmYWxzZSlcbiAgICB0aGlzLmFjdGl2YXRlZEFsbENvbXBvbmVudHModHJ1ZSlcbiAgICAvL3RoaXMuY3VzdG9tQWxsQ29tcG9uZW50cyh0cnVlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSwgZmFsc2UsIHRydWUpXG4gIH1cblxuICAgYWN0aXZhdGVkQWxsQ29tcG9uZW50cyhlbmFibGU6IGJvb2xlYW4pe1xuICAgICAgdGhpcy5jb21wb25lbnQgPSBuZXcgQ29tcG9uZW50c0FwcChlbmFibGUsIGVuYWJsZSxlbmFibGUsZW5hYmxlLGVuYWJsZSxlbmFibGUsZW5hYmxlLGVuYWJsZSxlbmFibGUsZW5hYmxlLGVuYWJsZSwgZW5hYmxlLGVuYWJsZSApXG4gIH1cblxuICAgY3VzdG9tQWxsQ29tcG9uZW50cyhnb2FsOiBib29sZWFuLGFkdmljZXM6IGJvb2xlYW4sbmV3czogYm9vbGVhbiwgYWdlbmRhOiBib29sZWFuLCByZW1pbmRlcjogYm9vbGVhbiwgZGlldDogYm9vbGVhbiwgZHJ1ZzogYm9vbGVhbiwgZ2FtZTogYm9vbGVhbiwgZWxlbWVudDogYm9vbGVhbiwgZm9ybTogYm9vbGVhbiwgY2hhdDogYm9vbGVhbiwgZG9jX2RpYWdub3N0aWM6IGJvb2xlYW4sIGNvbnRhY3RhOiBib29sZWFuKXtcbiAgICB0aGlzLmNvbXBvbmVudCA9IG5ldyBDb21wb25lbnRzQXBwKGdvYWwsIGFkdmljZXMsIG5ld3MsIGFnZW5kYSwgcmVtaW5kZXIsIGRpZXQsIGRydWcsIGdhbWUsIGVsZW1lbnQsIGZvcm0sIGNoYXQsIGRvY19kaWFnbm9zdGljLCBjb250YWN0YSApXG4gIH1cblxuICBzZXRQcm9mZXNzaW9uYWwocHJvZmVzc2lvbmFsKXtcbiAgICB0aGlzLmlzUHJvZmVzc2lvbmFsID0gcHJvZmVzc2lvbmFsPyB0cnVlOiBmYWxzZVxuICAgIFxuICB9XG59XG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlcnZpY2UtbGliL3NyYy9saWIvc2VydmljZXMvcm9sZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQyxNQUFNLE9BQU8sYUFBYTtJQWV4QixZQUFZLElBQWEsRUFBQyxPQUFnQixFQUFDLElBQWEsRUFBRSxNQUFlLEVBQUUsUUFBaUIsRUFBRSxJQUFhLEVBQUUsSUFBYSxFQUFFLElBQWEsRUFBRSxPQUFnQixFQUFFLElBQWEsRUFBRSxJQUFhLEVBQUMsY0FBdUIsRUFBRSxRQUFpQixFQUFFLFVBQW1CO1FBQ3ZQLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFBO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFBO0lBQzlCLENBQUM7Q0FDRjtBQUtELE1BQU0sT0FBTyxZQUFZO0lBSXZCO1FBQ0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMzQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDakMsb0dBQW9HO0lBQ3RHLENBQUM7SUFFQSxzQkFBc0IsQ0FBQyxNQUFlO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBRSxDQUFBO0lBQzdJLENBQUM7SUFFQSxtQkFBbUIsQ0FBQyxJQUFhLEVBQUMsT0FBZ0IsRUFBQyxJQUFhLEVBQUUsTUFBZSxFQUFFLFFBQWlCLEVBQUUsSUFBYSxFQUFFLElBQWEsRUFBRSxJQUFhLEVBQUUsT0FBZ0IsRUFBRSxJQUFhLEVBQUUsSUFBYSxFQUFFLGNBQXVCLEVBQUUsUUFBaUIsRUFBRSxVQUFtQjtRQUNqUSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUUsQ0FBQTtJQUN6SixDQUFDO0lBRUQsZUFBZSxDQUFDLFlBQVk7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxZQUFZLENBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQSxDQUFDLENBQUMsS0FBSyxDQUFBO0lBRWpELENBQUM7K0dBckJVLFlBQVk7bUhBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgQ29tcG9uZW50c0FwcCB7XG4gIGdvYWw6IGJvb2xlYW47XG4gIGFkdmljZXM6IGJvb2xlYW47XG4gIG5ld3M6IGJvb2xlYW47XG4gIGFnZW5kYTogYm9vbGVhbjtcbiAgcmVtaW5kZXI6IGJvb2xlYW47XG4gIGRpZXQ6IGJvb2xlYW47XG4gIGRydWc6IGJvb2xlYW47XG4gIGdhbWU6IGJvb2xlYW47XG4gIGVsZW1lbnQ6IGJvb2xlYW47XG4gIGZvcm06IGJvb2xlYW47XG4gIGNoYXQ6IGJvb2xlYW47XG4gIGRvY19kaWFnbm9zdGljOiBib29sZWFuO1xuICBjb250YWN0YTogYm9vbGVhbjtcbiAgbWVkaWNhdGlvbjogYm9vbGVhbjtcbiAgY29uc3RydWN0b3IoZ29hbDogYm9vbGVhbixhZHZpY2VzOiBib29sZWFuLG5ld3M6IGJvb2xlYW4sIGFnZW5kYTogYm9vbGVhbiwgcmVtaW5kZXI6IGJvb2xlYW4sIGRpZXQ6IGJvb2xlYW4sIGRydWc6IGJvb2xlYW4sIGdhbWU6IGJvb2xlYW4sIGVsZW1lbnQ6IGJvb2xlYW4sIGZvcm06IGJvb2xlYW4sIGNoYXQ6IGJvb2xlYW4sZG9jX2RpYWdub3N0aWM6IGJvb2xlYW4sIGNvbnRhY3RhOiBib29sZWFuLCBtZWRpY2F0aW9uOiBib29sZWFuKXtcbiAgICB0aGlzLmdvYWwgPSBnb2FsXG4gICAgdGhpcy5hZHZpY2VzID0gYWR2aWNlc1xuICAgIHRoaXMubmV3cyA9IG5ld3NcbiAgICB0aGlzLmFnZW5kYSA9IGFnZW5kYVxuICAgIHRoaXMucmVtaW5kZXIgPSByZW1pbmRlclxuICAgIHRoaXMuZGlldCA9IGRpZXRcbiAgICB0aGlzLmRydWcgPSBkcnVnXG4gICAgdGhpcy5nYW1lID0gZ2FtZVxuICAgIHRoaXMuZWxlbWVudCA9IGVsZW1lbnRcbiAgICB0aGlzLmZvcm0gPSBmb3JtXG4gICAgdGhpcy5jaGF0ID0gY2hhdFxuICAgIHRoaXMuZG9jX2RpYWdub3N0aWMgPSBkb2NfZGlhZ25vc3RpY1xuICAgIHRoaXMuY29udGFjdGEgPSBjb250YWN0YVxuICAgIHRoaXMubWVkaWNhdGlvbiA9IG1lZGljYXRpb25cbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBSb2xlc1NlcnZpY2Uge1xuICBjb21wb25lbnQ6IENvbXBvbmVudHNBcHA7XG4gIGlzUHJvZmVzc2lvbmFsOiBib29sZWFuO1xuICB1c2VyVHlwZTogYW55O1xuICBjb25zdHJ1Y3RvcigpIHsgXG4gICAgdGhpcy5zZXRQcm9mZXNzaW9uYWwoZmFsc2UpXG4gICAgdGhpcy5hY3RpdmF0ZWRBbGxDb21wb25lbnRzKHRydWUpXG4gICAgLy90aGlzLmN1c3RvbUFsbENvbXBvbmVudHModHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsIGZhbHNlLCB0cnVlKVxuICB9XG5cbiAgIGFjdGl2YXRlZEFsbENvbXBvbmVudHMoZW5hYmxlOiBib29sZWFuKXtcbiAgICAgIHRoaXMuY29tcG9uZW50ID0gbmV3IENvbXBvbmVudHNBcHAoZW5hYmxlLCBlbmFibGUsZW5hYmxlLGVuYWJsZSxlbmFibGUsZW5hYmxlLGVuYWJsZSxlbmFibGUsZW5hYmxlLGVuYWJsZSxlbmFibGUsIGVuYWJsZSxlbmFibGUsIGVuYWJsZSApXG4gIH1cblxuICAgY3VzdG9tQWxsQ29tcG9uZW50cyhnb2FsOiBib29sZWFuLGFkdmljZXM6IGJvb2xlYW4sbmV3czogYm9vbGVhbiwgYWdlbmRhOiBib29sZWFuLCByZW1pbmRlcjogYm9vbGVhbiwgZGlldDogYm9vbGVhbiwgZHJ1ZzogYm9vbGVhbiwgZ2FtZTogYm9vbGVhbiwgZWxlbWVudDogYm9vbGVhbiwgZm9ybTogYm9vbGVhbiwgY2hhdDogYm9vbGVhbiwgZG9jX2RpYWdub3N0aWM6IGJvb2xlYW4sIGNvbnRhY3RhOiBib29sZWFuLCBtZWRpY2F0aW9uOiBib29sZWFuKXtcbiAgICB0aGlzLmNvbXBvbmVudCA9IG5ldyBDb21wb25lbnRzQXBwKGdvYWwsIGFkdmljZXMsIG5ld3MsIGFnZW5kYSwgcmVtaW5kZXIsIGRpZXQsIGRydWcsIGdhbWUsIGVsZW1lbnQsIGZvcm0sIGNoYXQsIGRvY19kaWFnbm9zdGljLCBjb250YWN0YSwgbWVkaWNhdGlvbiApXG4gIH1cblxuICBzZXRQcm9mZXNzaW9uYWwocHJvZmVzc2lvbmFsKXtcbiAgICB0aGlzLmlzUHJvZmVzc2lvbmFsID0gcHJvZmVzc2lvbmFsPyB0cnVlOiBmYWxzZVxuICAgIFxuICB9XG59XG4iXX0=
@@ -0,0 +1,103 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { map } from 'rxjs';
3
+ import { HttpParams } from '@angular/common/http';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../http.service";
6
+ import * as i2 from "../api-endpoints.service";
7
+ export class SharedCarePlanService {
8
+ constructor(http, api) {
9
+ this.http = http;
10
+ this.api = api;
11
+ }
12
+ getAPI_SCP_goals() {
13
+ let path = `sharecareplan/goals`;
14
+ const endpoint = this.api.getEndpoint(path);
15
+ return this.http.get(endpoint).pipe(map((res) => {
16
+ ////console.log(`[DooleService] getAPI_SCP_goals(${path}) res: `, res);
17
+ return res;
18
+ }));
19
+ }
20
+ getAPI_SCP_procedures() {
21
+ let path = `rehabilify/sharedcareplan/medical-procedures`;
22
+ const endpoint = this.api.getEndpoint(path);
23
+ return this.http.get(endpoint).pipe(map((res) => {
24
+ ////console.log(`[DooleService] getAPI_SCP_procedures(${path}) res: `, res);
25
+ return res;
26
+ }));
27
+ }
28
+ getAPI_SCP_prescribedApp() {
29
+ let path = `rehabilify/prescribed-apps`;
30
+ const endpoint = this.api.getEndpoint(path);
31
+ return this.http.get(endpoint).pipe(map((res) => {
32
+ ////console.log(`[DooleService] getAPI_SCP_procedures(${path}) res: `, res);
33
+ return res;
34
+ }));
35
+ }
36
+ getAPI_SCP_StatusContent() {
37
+ let path = `sharecareplan/content/group/new-content-statuses`;
38
+ const endpoint = this.api.getEndpoint(path);
39
+ return this.http.get(endpoint).pipe(map((res) => {
40
+ //console.log(`[DooleService] getAPI_SCP_StatusContent(${path}) res: `, res);
41
+ return res;
42
+ }));
43
+ }
44
+ getAPIExercises(params) {
45
+ let path = 'rehabilify/sharedcareplan/exercises';
46
+ const endpoint = this.api.getEndpoint(path);
47
+ let httpParams = new HttpParams();
48
+ httpParams = (params?.tags) ? httpParams.append('tags', params?.tags) : httpParams;
49
+ httpParams = (params?.interactions) ? httpParams.append('interactions', params?.interactions) : httpParams;
50
+ httpParams = (params?.readingTime) ? httpParams.append('readingTime', params?.readingTime) : httpParams;
51
+ return this.http.get(endpoint, httpParams).pipe(map((res) => {
52
+ //console.log(`[DooleService] getAPIExercises(${path}) res: `, res);
53
+ return res;
54
+ }));
55
+ }
56
+ get_APi_ACP_monitoring() {
57
+ let path = `rehabilify/sharedcareplan/monitoring`;
58
+ const endpoint = this.api.getEndpoint(path);
59
+ return this.http.get(endpoint).pipe(map((res) => {
60
+ ////console.log(`[DooleService] getAPIagendaID(${path}) res: `, res);
61
+ return res;
62
+ }));
63
+ }
64
+ get_APi_ACP_forms() {
65
+ let path = `rehabilify/sharedcareplan/forms`;
66
+ const endpoint = this.api.getEndpoint(path);
67
+ return this.http.get(endpoint).pipe(map((res) => {
68
+ ////console.log(`[DooleService] getAPIagendaID(${path}) res: `, res);
69
+ return res;
70
+ }));
71
+ }
72
+ get_APi_ACP_medication() {
73
+ let path = `rehabilify/sharedcareplan/medication-plan`;
74
+ const endpoint = this.api.getEndpoint(path);
75
+ return this.http.get(endpoint).pipe(map((res) => {
76
+ ////console.log(`[DooleService] getAPIagendaID(${path}) res: `, res);
77
+ return res;
78
+ }));
79
+ }
80
+ post_API_ACP_declined_acepted(model, model_id, type, coments) {
81
+ let path = `sharecareplan/content/acepted-or-declined`;
82
+ let params = {
83
+ 'model': model,
84
+ 'model_id': model_id,
85
+ 'type': type,
86
+ 'comments': coments
87
+ };
88
+ const endpoint = this.api.getEndpoint(path);
89
+ return this.http.post(endpoint, params).pipe(map((res) => {
90
+ ////console.log(`[DooleService] postAPIdrugIntake(${path}) res: `, res);
91
+ return res;
92
+ }));
93
+ }
94
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SharedCarePlanService, deps: [{ token: i1.HttpService }, { token: i2.ApiEndpointsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
95
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SharedCarePlanService, providedIn: 'root' }); }
96
+ }
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SharedCarePlanService, decorators: [{
98
+ type: Injectable,
99
+ args: [{
100
+ providedIn: 'root'
101
+ }]
102
+ }], ctorParameters: () => [{ type: i1.HttpService }, { type: i2.ApiEndpointsService }] });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLWNhcmUtcGxhbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zaGFyZWQtY2FyZS1wbGFuL3NoYXJlZC1jYXJlLXBsYW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7O0FBS2xELE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsWUFDVSxJQUFpQixFQUNqQixHQUF3QjtRQUR4QixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFFBQUcsR0FBSCxHQUFHLENBQXFCO0lBQzlCLENBQUM7SUFHTCxnQkFBZ0I7UUFDZCxJQUFJLElBQUksR0FBRyxxQkFBcUIsQ0FBQztRQUNqQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDakMsR0FBRyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDZix1RUFBdUU7WUFDdkUsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELHFCQUFxQjtRQUNuQixJQUFJLElBQUksR0FBRyw4Q0FBOEMsQ0FBQztRQUMxRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDakMs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akMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwaUVuZHBvaW50c1NlcnZpY2UgfSBmcm9tICcuLi9hcGktZW5kcG9pbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi9odHRwLnNlcnZpY2UnO1xuaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2hhcmVkQ2FyZVBsYW5TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlLFxuICAgIHByaXZhdGUgYXBpOiBBcGlFbmRwb2ludHNTZXJ2aWNlLFxuICApIHsgfVxuXG5cbiAgZ2V0QVBJX1NDUF9nb2FscygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBwYXRoID0gYHNoYXJlY2FyZXBsYW4vZ29hbHNgO1xuICAgIGNvbnN0IGVuZHBvaW50ID0gdGhpcy5hcGkuZ2V0RW5kcG9pbnQocGF0aCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoZW5kcG9pbnQpLnBpcGUoXG4gICAgICBtYXAoKHJlczogYW55KSA9PiB7XG4gICAgICAgIC8vLy9jb25zb2xlLmxvZyhgW0Rvb2xlU2VydmljZV0gZ2V0QVBJX1NDUF9nb2Fscygke3BhdGh9KSByZXM6IGAsIHJlcyk7XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRBUElfU0NQX3Byb2NlZHVyZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgcGF0aCA9IGByZWhhYmlsaWZ5L3NoYXJlZGNhcmVwbGFuL21lZGljYWwtcHJvY2VkdXJlc2A7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmFwaS5nZXRFbmRwb2ludChwYXRoKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChlbmRwb2ludCkucGlwZShcbiAgICAgIG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgLy8vL2NvbnNvbGUubG9nKGBbRG9vbGVTZXJ2aWNlXSBnZXRBUElfU0NQX3Byb2NlZHVyZXMoJHtwYXRofSkgcmVzOiBgLCByZXMpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QVBJX1NDUF9wcmVzY3JpYmVkQXBwKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHBhdGggPSBgcmVoYWJpbGlmeS9wcmVzY3JpYmVkLWFwcHNgO1xuICAgIGNvbnN0IGVuZHBvaW50ID0gdGhpcy5hcGkuZ2V0RW5kcG9pbnQocGF0aCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoZW5kcG9pbnQpLnBpcGUoXG4gICAgICBtYXAoKHJlczogYW55KSA9PiB7XG4gICAgICAgIC8vLy9jb25zb2xlLmxvZyhgW0Rvb2xlU2VydmljZV0gZ2V0QVBJX1NDUF9wcm9jZWR1cmVzKCR7cGF0aH0pIHJlczogYCwgcmVzKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFQSV9TQ1BfU3RhdHVzQ29udGVudCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBwYXRoID0gYHNoYXJlY2FyZXBsYW4vY29udGVudC9ncm91cC9uZXctY29udGVudC1zdGF0dXNlc2A7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmFwaS5nZXRFbmRwb2ludChwYXRoKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChlbmRwb2ludCkucGlwZShcbiAgICAgIG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhgW0Rvb2xlU2VydmljZV0gZ2V0QVBJX1NDUF9TdGF0dXNDb250ZW50KCR7cGF0aH0pIHJlczogYCwgcmVzKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFQSUV4ZXJjaXNlcyhwYXJhbXM/KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgcGF0aCA9ICdyZWhhYmlsaWZ5L3NoYXJlZGNhcmVwbGFuL2V4ZXJjaXNlcyc7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmFwaS5nZXRFbmRwb2ludChwYXRoKTtcbiAgICBsZXQgaHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICBodHRwUGFyYW1zID0gKHBhcmFtcz8udGFncykgPyBodHRwUGFyYW1zLmFwcGVuZCgndGFncycsIHBhcmFtcz8udGFncykgOiBodHRwUGFyYW1zXG4gICAgaHR0cFBhcmFtcyA9IChwYXJhbXM/LmludGVyYWN0aW9ucykgPyBodHRwUGFyYW1zLmFwcGVuZCgnaW50ZXJhY3Rpb25zJywgcGFyYW1zPy5pbnRlcmFjdGlvbnMpIDogaHR0cFBhcmFtc1xuICAgIGh0dHBQYXJhbXMgPSAocGFyYW1zPy5yZWFkaW5nVGltZSkgPyBodHRwUGFyYW1zLmFwcGVuZCgncmVhZGluZ1RpbWUnLCBwYXJhbXM/LnJlYWRpbmdUaW1lKSA6IGh0dHBQYXJhbXNcblxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGVuZHBvaW50LCBodHRwUGFyYW1zKS5waXBlKFxuICAgICAgbWFwKChyZXM6IGFueSkgPT4ge1xuICAgICAgICAvL2NvbnNvbGUubG9nKGBbRG9vbGVTZXJ2aWNlXSBnZXRBUElFeGVyY2lzZXMoJHtwYXRofSkgcmVzOiBgLCByZXMpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0X0FQaV9BQ1BfbW9uaXRvcmluZygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBwYXRoID0gYHJlaGFiaWxpZnkvc2hhcmVkY2FyZXBsYW4vbW9uaXRvcmluZ2A7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmFwaS5nZXRFbmRwb2ludChwYXRoKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChlbmRwb2ludCkucGlwZShcbiAgICAgIG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgLy8vL2NvbnNvbGUubG9nKGBbRG9vbGVTZXJ2aWNlXSBnZXRBUElhZ2VuZGFJRCgke3BhdGh9KSByZXM6IGAsIHJlcyk7XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuZ2V0X0FQaV9BQ1BfZm9ybXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgcGF0aCA9IGByZWhhYmlsaWZ5L3NoYXJlZGNhcmVwbGFuL2Zvcm1zYDtcbiAgICBjb25zdCBlbmRwb2ludCA9IHRoaXMuYXBpLmdldEVuZHBvaW50KHBhdGgpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGVuZHBvaW50KS5waXBlKFxuICAgICAgbWFwKChyZXM6IGFueSkgPT4ge1xuICAgICAgICAvLy8vY29uc29sZS5sb2coYFtEb29sZVNlcnZpY2VdIGdldEFQSWFnZW5kYUlEKCR7cGF0aH0pIHJlczogYCwgcmVzKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldF9BUGlfQUNQX21lZGljYXRpb24oKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgcGF0aCA9IGByZWhhYmlsaWZ5L3NoYXJlZGNhcmVwbGFuL21lZGljYXRpb24tcGxhbmA7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmFwaS5nZXRFbmRwb2ludChwYXRoKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChlbmRwb2ludCkucGlwZShcbiAgICAgIG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgLy8vL2NvbnNvbGUubG9nKGBbRG9vbGVTZXJ2aWNlXSBnZXRBUElhZ2VuZGFJRCgke3BhdGh9KSByZXM6IGAsIHJlcyk7XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuXG4gIHBvc3RfQVBJX0FDUF9kZWNsaW5lZF9hY2VwdGVkKG1vZGVsLCBtb2RlbF9pZCwgdHlwZSwgY29tZW50cz8pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBwYXRoID0gYHNoYXJlY2FyZXBsYW4vY29udGVudC9hY2VwdGVkLW9yLWRlY2xpbmVkYDtcbiAgICBsZXQgcGFyYW1zID0ge1xuICAgICAgJ21vZGVsJzogbW9kZWwsXG4gICAgICAnbW9kZWxfaWQnOiBtb2RlbF9pZCxcbiAgICAgICd0eXBlJzogdHlwZSxcbiAgICAgICdjb21tZW50cyc6IGNvbWVudHNcbiAgICAgIFxuICAgIH0gICBcbiAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmFwaS5nZXRFbmRwb2ludChwYXRoKTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGVuZHBvaW50LCBwYXJhbXMpLnBpcGUoXG4gICAgbWFwKChyZXM6IGFueSkgPT4ge1xuICAgICAgLy8vL2NvbnNvbGUubG9nKGBbRG9vbGVTZXJ2aWNlXSBwb3N0QVBJZHJ1Z0ludGFrZSgke3BhdGh9KSByZXM6IGAsIHJlcyk7XG4gICAgICByZXR1cm4gcmVzO1xuXG4gICAgfSlcbiAgKTtcbiAgfVxufVxuIl19
@@ -25,10 +25,10 @@ export class StorageService {
25
25
  }
26
26
  return JSON.parse(result.value);
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: StorageService, providedIn: 'root' }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StorageService, providedIn: 'root' }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: StorageService, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StorageService, decorators: [{
32
32
  type: Injectable,
33
33
  args: [{
34
34
  providedIn: 'root'