@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,155 +0,0 @@
1
- import { Inject, Injectable, PLATFORM_ID } from '@angular/core';
2
- import { Subject, from, of } from 'rxjs';
3
- import { FirebaseProfileModel } from './firebase-profile.model';
4
- import { filter, map } from 'rxjs/operators';
5
- import firebase from "firebase/compat/app";
6
- //import { cfaSignIn, cfaSignOut } from 'capacitor-firebase-auth';
7
- import { isPlatformBrowser } from '@angular/common';
8
- import { DataStore } from '../../util/data-store';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/fire/compat/auth";
11
- import * as i2 from "@ionic/angular";
12
- export class FirebaseAuthService {
13
- constructor(angularFire, platform, platformId) {
14
- this.angularFire = angularFire;
15
- this.platform = platform;
16
- this.platformId = platformId;
17
- this.redirectResult = new Subject();
18
- if (isPlatformBrowser(this.platformId)) {
19
- this.angularFire.onAuthStateChanged((user) => {
20
- if (user) {
21
- // User is signed in.
22
- this.currentUser = user;
23
- }
24
- else {
25
- // No user is signed in.
26
- this.currentUser = null;
27
- }
28
- });
29
- if (!this.platform.is('capacitor')) {
30
- // when using signInWithRedirect, this listens for the redirect results
31
- this.angularFire.getRedirectResult()
32
- .then((result) => {
33
- // result.credential.accessToken gives you the Provider Access Token. You can use it to access the Provider API.
34
- if (result.user) {
35
- this.userProviderAdditionalInfo = result.additionalUserInfo.profile;
36
- this.redirectResult.next(result);
37
- }
38
- }, (error) => {
39
- this.redirectResult.next({ error: error.code });
40
- });
41
- }
42
- }
43
- }
44
- getRedirectResult() {
45
- return this.redirectResult.asObservable();
46
- }
47
- getPhotoURL(signInProviderId, photoURL) {
48
- // Default imgs are too small and our app needs a bigger image
49
- switch (signInProviderId) {
50
- case 'facebook.com':
51
- return photoURL + '?height=400';
52
- case 'password':
53
- return 'https://s3-us-west-2.amazonaws.com/ionicthemes/otros/avatar-placeholder.png';
54
- case 'twitter.com':
55
- return photoURL.replace('_normal', '_400x400');
56
- case 'google.com':
57
- return photoURL.split('=')[0];
58
- default:
59
- return photoURL;
60
- }
61
- }
62
- signOut() {
63
- if (this.platform.is('capacitor')) {
64
- //return cfaSignOut();
65
- return null;
66
- }
67
- else {
68
- return from(this.angularFire.signOut());
69
- }
70
- }
71
- signInWithEmail(email, password) {
72
- return this.angularFire.signInWithEmailAndPassword(email, password);
73
- }
74
- signUpWithEmail(email, password) {
75
- return this.angularFire.createUserWithEmailAndPassword(email, password);
76
- }
77
- socialSignIn(providerName, scopes) {
78
- if (this.platform.is('capacitor')) {
79
- //return cfaSignIn(providerName);
80
- }
81
- else {
82
- const provider = new firebase.auth.OAuthProvider(providerName);
83
- //console.log("provider. ", provider);
84
- if (scopes) {
85
- scopes.forEach(scope => {
86
- provider.addScope(scope);
87
- });
88
- }
89
- if (this.platform.is('desktop')) {
90
- return from(this.angularFire.signInWithPopup(provider));
91
- }
92
- else {
93
- // web but not desktop, for example mobile PWA
94
- return from(this.angularFire.signInWithRedirect(provider));
95
- }
96
- }
97
- return null;
98
- }
99
- signInWithGoogle() {
100
- const provider = new firebase.auth.GoogleAuthProvider();
101
- //console.log("provider: ", provider);
102
- const scopes = ['profile', 'email'];
103
- return this.socialSignIn(provider.providerId, scopes);
104
- }
105
- signInWithTwitter() {
106
- const provider = new firebase.auth.TwitterAuthProvider();
107
- return this.socialSignIn(provider.providerId);
108
- }
109
- getProfileDataSource() {
110
- // we need to do this differentiation because there is a bug in
111
- // platform capacitor ios when executing this.angularFire.user
112
- if (this.platform.is('capacitor')) {
113
- return of(this.setUserModelForProfile());
114
- }
115
- else {
116
- return this.angularFire.user
117
- .pipe(filter((user) => user != null), map((user) => {
118
- return this.setUserModelForProfile();
119
- }));
120
- }
121
- }
122
- setUserModelForProfile() {
123
- const userModel = new FirebaseProfileModel();
124
- const provierData = this.currentUser.providerData[0];
125
- const userData = this.userProviderAdditionalInfo ? this.userProviderAdditionalInfo : provierData;
126
- userModel.image = this.getPhotoURL(provierData.providerId, provierData.photoURL);
127
- userModel.name = userData.name || userData.displayName || 'What\'s your name?';
128
- userModel.role = 'How would you describe yourself?';
129
- userModel.description = userData.description || 'Anything else you would like to share with the world?';
130
- userModel.phoneNumber = userData.phoneNumber || 'Is there a number where I can reach you?';
131
- userModel.email = userData.email || 'Where can I send you emails?';
132
- userModel.provider = (provierData.providerId !== 'password') ? provierData.providerId : 'Credentials';
133
- return userModel;
134
- }
135
- getProfileStore(dataSource) {
136
- // Initialize the model specifying that it is a shell model
137
- const shellModel = new FirebaseProfileModel();
138
- this.profileDataStore = new DataStore(shellModel);
139
- // Trigger the loading mechanism (with shell) in the dataStore
140
- this.profileDataStore.load(dataSource);
141
- return this.profileDataStore;
142
- }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: FirebaseAuthService, deps: [{ token: i1.AngularFireAuth }, { token: i2.Platform }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
144
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: FirebaseAuthService, providedIn: 'root' }); }
145
- }
146
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: FirebaseAuthService, decorators: [{
147
- type: Injectable,
148
- args: [{
149
- providedIn: 'root'
150
- }]
151
- }], ctorParameters: () => [{ type: i1.AngularFireAuth }, { type: i2.Platform }, { type: undefined, decorators: [{
152
- type: Inject,
153
- args: [PLATFORM_ID]
154
- }] }] });
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UtYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL2ZpcmViYXNlLWF1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxRQUFRLE1BQU0scUJBQXFCLENBQUM7QUFDM0Msa0VBQWtFO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXBELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQUtsRCxNQUFNLE9BQU8sbUJBQW1CO0lBUTlCLFlBQ1MsV0FBNEIsRUFDNUIsUUFBa0IsRUFDSSxVQUFrQjtRQUZ4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNJLGVBQVUsR0FBVixVQUFVLENBQVE7UUFOakQsbUJBQWMsR0FBaUIsSUFBSSxPQUFPLEVBQU8sQ0FBQztRQVFoRCxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDM0MsSUFBSSxJQUFJLEVBQUUsQ0FBQztvQkFDVCxxQkFBcUI7b0JBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcs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SUFDbkIsQ0FBQztJQUVNLGVBQWUsQ0FBQyxVQUE0QztRQUNqRSwyREFBMkQ7UUFDM0QsTUFBTSxVQUFVLEdBQXlCLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUNwRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEQsOERBQThEO1FBQzlELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQzsrR0F2SlUsbUJBQW1CLHlFQVdwQixXQUFXO21IQVhWLG1CQUFtQixjQUZsQixNQUFNOzs0RkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFZSSxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbmd1bGFyRmlyZUF1dGggfSBmcm9tICdAYW5ndWxhci9maXJlL2NvbXBhdC9hdXRoJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIGZyb20sIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGaXJlYmFzZVByb2ZpbGVNb2RlbCB9IGZyb20gJy4vZmlyZWJhc2UtcHJvZmlsZS5tb2RlbCc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgZmlyZWJhc2UgZnJvbSBcImZpcmViYXNlL2NvbXBhdC9hcHBcIjtcbi8vaW1wb3J0IHsgY2ZhU2lnbkluLCBjZmFTaWduT3V0IH0gZnJvbSAnY2FwYWNpdG9yLWZpcmViYXNlLWF1dGgnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVXNlciwgQXV0aCB9IGZyb20gJ2ZpcmViYXNlL2F1dGgnO1xuaW1wb3J0IHsgRGF0YVN0b3JlIH0gZnJvbSAnLi4vLi4vdXRpbC9kYXRhLXN0b3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRmlyZWJhc2VBdXRoU2VydmljZSB7XG5cbiAgY3VycmVudFVzZXI6IFVzZXI7XG4gIHVzZXJQcm92aWRlckFkZGl0aW9uYWxJbmZvOiBhbnk7XG4gIHByb2ZpbGVEYXRhU3RvcmU6IERhdGFTdG9yZTxGaXJlYmFzZVByb2ZpbGVNb2RlbD47XG4gIHJlZGlyZWN0UmVzdWx0OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgYW5ndWxhckZpcmU6IEFuZ3VsYXJGaXJlQXV0aCxcbiAgICBwdWJsaWMgcGxhdGZvcm06IFBsYXRmb3JtLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0XG4gICkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICB0aGlzLmFuZ3VsYXJGaXJlLm9uQXV0aFN0YXRlQ2hhbmdlZCgodXNlcikgPT4ge1xuICAgICAgICBpZiAodXNlcikge1xuICAgICAgICAgIC8vIFVzZXIgaXMgc2lnbmVkIGluLlxuICAgICAgICAgIHRoaXMuY3VycmVudFVzZXIgPSB1c2VyO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE5vIHVzZXIgaXMgc2lnbmVkIGluLlxuICAgICAgICAgIHRoaXMuY3VycmVudFVzZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKCF0aGlzLnBsYXRmb3JtLmlzKCdjYXBhY2l0b3InKSkge1xuICAgICAgICAvLyB3aGVuIHVzaW5nIHNpZ25JbldpdGhSZWRpcmVjdCwgdGhpcyBsaXN0ZW5zIGZvciB0aGUgcmVkaXJlY3QgcmVzdWx0c1xuICAgICAgICB0aGlzLmFuZ3VsYXJGaXJlLmdldFJlZGlyZWN0UmVzdWx0KClcbiAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgIC8vIHJlc3VsdC5jcmVkZW50aWFsLmFjY2Vzc1Rva2VuIGdpdmVzIHlvdSB0aGUgUHJvdmlkZXIgQWNjZXNzIFRva2VuLiBZb3UgY2FuIHVzZSBpdCB0byBhY2Nlc3MgdGhlIFByb3ZpZGVyIEFQSS5cbiAgICAgICAgICBpZiAocmVzdWx0LnVzZXIpIHtcbiAgICAgICAgICAgIHRoaXMudXNlclByb3ZpZGVyQWRkaXRpb25hbEluZm8gPSByZXN1bHQuYWRkaXRpb25hbFVzZXJJbmZvLnByb2ZpbGU7XG4gICAgICAgICAgICB0aGlzLnJlZGlyZWN0UmVzdWx0Lm5leHQocmVzdWx0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sIChlcnJvcikgPT4ge1xuICAgICAgICAgIHRoaXMucmVkaXJlY3RSZXN1bHQubmV4dCh7ZXJyb3I6IGVycm9yLmNvZGV9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0UmVkaXJlY3RSZXN1bHQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5yZWRpcmVjdFJlc3VsdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldFBob3RvVVJMKHNpZ25JblByb3ZpZGVySWQ6IHN0cmluZywgcGhvdG9VUkw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgLy8gRGVmYXVsdCBpbWdzIGFyZSB0b28gc21hbGwgYW5kIG91ciBhcHAgbmVlZHMgYSBiaWdnZXIgaW1hZ2VcbiAgICBzd2l0Y2ggKHNpZ25JblByb3ZpZGVySWQpIHtcbiAgICAgIGNhc2UgJ2ZhY2Vib29rLmNvbSc6XG4gICAgICAgIHJldHVybiBwaG90b1VSTCArICc/aGVpZ2h0PTQwMCc7XG4gICAgICBjYXNlICdwYXNzd29yZCc6XG4gICAgICAgIHJldHVybiAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbS9pb25pY3RoZW1lcy9vdHJvcy9hdmF0YXItcGxhY2Vob2xkZXIucG5nJztcbiAgICAgIGNhc2UgJ3R3aXR0ZXIuY29tJzpcbiAgICAgICAgcmV0dXJuIHBob3RvVVJMLnJlcGxhY2UoJ19ub3JtYWwnLCAnXzQwMHg0MDAnKTtcbiAgICAgIGNhc2UgJ2dvb2dsZS5jb20nOlxuICAgICAgICByZXR1cm4gcGhvdG9VUkwuc3BsaXQoJz0nKVswXTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBwaG90b1VSTDtcbiAgICB9XG4gIH1cblxuICBzaWduT3V0KCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKHRoaXMucGxhdGZvcm0uaXMoJ2NhcGFjaXRvcicpKSB7XG4gICAgICAvL3JldHVybiBjZmFTaWduT3V0KCk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZyb20odGhpcy5hbmd1bGFyRmlyZS5zaWduT3V0KCkpO1xuICAgIH1cbiAgfVxuXG4gIHNpZ25JbldpdGhFbWFpbChlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxmaXJlYmFzZS5hdXRoLlVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIHRoaXMuYW5ndWxhckZpcmUuc2lnbkluV2l0aEVtYWlsQW5kUGFzc3dvcmQoZW1haWwsIHBhc3N3b3JkKTtcbiAgfVxuXG4gIHNpZ25VcFdpdGhFbWFpbChlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxmaXJlYmFzZS5hdXRoLlVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIHRoaXMuYW5ndWxhckZpcmUuY3JlYXRlVXNlcldpdGhFbWFpbEFuZFBhc3N3b3JkKGVtYWlsLCBwYXNzd29yZCk7XG4gIH1cblxuICBzb2NpYWxTaWduSW4ocHJvdmlkZXJOYW1lOiBzdHJpbmcsIHNjb3Blcz86IEFycmF5PHN0cmluZz4pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzKCdjYXBhY2l0b3InKSkge1xuICAgICAgLy9yZXR1cm4gY2ZhU2lnbkluKHByb3ZpZGVyTmFtZSk7XG4gICAgfSBlbHNlIHtcblxuICAgICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgZmlyZWJhc2UuYXV0aC5PQXV0aFByb3ZpZGVyKHByb3ZpZGVyTmFtZSk7XG4gICAgICAvL2NvbnNvbGUubG9nKFwicHJvdmlkZXIuIFwiLCBwcm92aWRlcik7XG4gICAgICBpZiAoc2NvcGVzKSB7XG4gICAgICAgIHNjb3Blcy5mb3JFYWNoKHNjb3BlID0+IHtcbiAgICAgICAgICBwcm92aWRlci5hZGRTY29wZShzY29wZSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG5cbiAgICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzKCdkZXNrdG9wJykpIHtcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy5hbmd1bGFyRmlyZS5zaWduSW5XaXRoUG9wdXAocHJvdmlkZXIpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIHdlYiBidXQgbm90IGRlc2t0b3AsIGZvciBleGFtcGxlIG1vYmlsZSBQV0FcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy5hbmd1bGFyRmlyZS5zaWduSW5XaXRoUmVkaXJlY3QocHJvdmlkZXIpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzaWduSW5XaXRoR29vZ2xlKCkge1xuICAgIGNvbnN0IHByb3ZpZGVyID0gbmV3IGZpcmViYXNlLmF1dGguR29vZ2xlQXV0aFByb3ZpZGVyKCk7XG4gICAgLy9jb25zb2xlLmxvZyhcInByb3ZpZGVyOiBcIiwgcHJvdmlkZXIpO1xuICAgIGNvbnN0IHNjb3BlcyA9IFsncHJvZmlsZScsICdlbWFpbCddO1xuICAgIHJldHVybiB0aGlzLnNvY2lhbFNpZ25Jbihwcm92aWRlci5wcm92aWRlcklkLCBzY29wZXMpO1xuICB9XG5cbiAgc2lnbkluV2l0aFR3aXR0ZXIoKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgZmlyZWJhc2UuYXV0aC5Ud2l0dGVyQXV0aFByb3ZpZGVyKCk7XG4gICAgcmV0dXJuIHRoaXMuc29jaWFsU2lnbkluKHByb3ZpZGVyLnByb3ZpZGVySWQpO1xuICB9XG5cbiAgcHVibGljIGdldFByb2ZpbGVEYXRhU291cmNlKCk6IE9ic2VydmFibGU8RmlyZWJhc2VQcm9maWxlTW9kZWw+IHtcbiAgICAvLyB3ZSBuZWVkIHRvIGRvIHRoaXMgZGlmZmVyZW50aWF0aW9uIGJlY2F1c2UgdGhlcmUgaXMgYSBidWcgaW5cbiAgICAvLyBwbGF0Zm9ybSBjYXBhY2l0b3IgaW9zIHdoZW4gZXhlY3V0aW5nIHRoaXMuYW5ndWxhckZpcmUudXNlclxuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzKCdjYXBhY2l0b3InKSkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMuc2V0VXNlck1vZGVsRm9yUHJvZmlsZSgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuYW5ndWxhckZpcmUudXNlclxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigodXNlcjogVXNlcikgPT4gdXNlciAhPSBudWxsKSxcbiAgICAgICAgbWFwKCh1c2VyOiBVc2VyKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuc2V0VXNlck1vZGVsRm9yUHJvZmlsZSgpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldFVzZXJNb2RlbEZvclByb2ZpbGUoKTogRmlyZWJhc2VQcm9maWxlTW9kZWwge1xuICAgIGNvbnN0IHVzZXJNb2RlbCA9IG5ldyBGaXJlYmFzZVByb2ZpbGVNb2RlbCgpO1xuICAgIGNvbnN0IHByb3ZpZXJEYXRhID0gdGhpcy5jdXJyZW50VXNlci5wcm92aWRlckRhdGFbMF07XG4gICAgY29uc3QgdXNlckRhdGEgPSB0aGlzLnVzZXJQcm92aWRlckFkZGl0aW9uYWxJbmZvID8gdGhpcy51c2VyUHJvdmlkZXJBZGRpdGlvbmFsSW5mbyA6IHByb3ZpZXJEYXRhO1xuICAgIHVzZXJNb2RlbC5pbWFnZSA9IHRoaXMuZ2V0UGhvdG9VUkwocHJvdmllckRhdGEucHJvdmlkZXJJZCwgcHJvdmllckRhdGEucGhvdG9VUkwpO1xuICAgIHVzZXJNb2RlbC5uYW1lID0gdXNlckRhdGEubmFtZSB8fCB1c2VyRGF0YS5kaXNwbGF5TmFtZSB8fCAnV2hhdFxcJ3MgeW91ciBuYW1lPyc7XG4gICAgdXNlck1vZGVsLnJvbGUgPSAnSG93IHdvdWxkIHlvdSBkZXNjcmliZSB5b3Vyc2VsZj8nO1xuICAgIHVzZXJNb2RlbC5kZXNjcmlwdGlvbiA9IHVzZXJEYXRhLmRlc2NyaXB0aW9uIHx8ICdBbnl0aGluZyBlbHNlIHlvdSB3b3VsZCBsaWtlIHRvIHNoYXJlIHdpdGggdGhlIHdvcmxkPyc7XG4gICAgdXNlck1vZGVsLnBob25lTnVtYmVyID0gdXNlckRhdGEucGhvbmVOdW1iZXIgfHwgJ0lzIHRoZXJlIGEgbnVtYmVyIHdoZXJlIEkgY2FuIHJlYWNoIHlvdT8nO1xuICAgIHVzZXJNb2RlbC5lbWFpbCA9IHVzZXJEYXRhLmVtYWlsIHx8ICdXaGVyZSBjYW4gSSBzZW5kIHlvdSBlbWFpbHM/JztcbiAgICB1c2VyTW9kZWwucHJvdmlkZXIgPSAocHJvdmllckRhdGEucHJvdmlkZXJJZCAhPT0gJ3Bhc3N3b3JkJykgPyBwcm92aWVyRGF0YS5wcm92aWRlcklkIDogJ0NyZWRlbnRpYWxzJztcblxuICAgIHJldHVybiB1c2VyTW9kZWw7XG4gIH1cblxuICBwdWJsaWMgZ2V0UHJvZmlsZVN0b3JlKGRhdGFTb3VyY2U6IE9ic2VydmFibGU8RmlyZWJhc2VQcm9maWxlTW9kZWw+KTogRGF0YVN0b3JlPEZpcmViYXNlUHJvZmlsZU1vZGVsPiB7XG4gICAgLy8gSW5pdGlhbGl6ZSB0aGUgbW9kZWwgc3BlY2lmeWluZyB0aGF0IGl0IGlzIGEgc2hlbGwgbW9kZWxcbiAgICBjb25zdCBzaGVsbE1vZGVsOiBGaXJlYmFzZVByb2ZpbGVNb2RlbCA9IG5ldyBGaXJlYmFzZVByb2ZpbGVNb2RlbCgpO1xuICAgIHRoaXMucHJvZmlsZURhdGFTdG9yZSA9IG5ldyBEYXRhU3RvcmUoc2hlbGxNb2RlbCk7XG4gICAgLy8gVHJpZ2dlciB0aGUgbG9hZGluZyBtZWNoYW5pc20gKHdpdGggc2hlbGwpIGluIHRoZSBkYXRhU3RvcmVcbiAgICB0aGlzLnByb2ZpbGVEYXRhU3RvcmUubG9hZChkYXRhU291cmNlKTtcbiAgICByZXR1cm4gdGhpcy5wcm9maWxlRGF0YVN0b3JlO1xuICB9XG59XG4iXX0=
@@ -1,7 +0,0 @@
1
- import { ShellModel } from '../../util/data-store';
2
- export class FirebaseProfileModel extends ShellModel {
3
- constructor() {
4
- super();
5
- }
6
- }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UtcHJvZmlsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlcnZpY2UtbGliL3NyYy9saWIvc2VydmljZXMvYXV0aC9maXJlYmFzZS1wcm9maWxlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsVUFBVTtJQVNsRDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2hlbGxNb2RlbCB9IGZyb20gJy4uLy4uL3V0aWwvZGF0YS1zdG9yZSc7XG5cbmV4cG9ydCBjbGFzcyBGaXJlYmFzZVByb2ZpbGVNb2RlbCBleHRlbmRzIFNoZWxsTW9kZWwge1xuICBpbWFnZTogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHJvbGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAgcHJvdmlkZXI6IHN0cmluZztcbiAgcGhvbmVOdW1iZXI6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG4iXX0=
@@ -1,39 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../notification.service";
4
- const NAME_BIND = 'App\\Events\\ScreenMessage';
5
- export class PusherAlarmService {
6
- constructor(notification) {
7
- this.notification = notification;
8
- }
9
- subscribeChannel(pusherService, idUser) {
10
- this.idUser = idUser;
11
- console.log('[PusherAlarmService] idUser()', this.idUser);
12
- this.nameChanel = 'private-ScreenMessage.User.' + this.idUser;
13
- this.pusher = pusherService;
14
- this.channel = this.pusher.subscribe(this.nameChanel);
15
- console.log('[PusherAlarmService] subscribeChannel()', this.channel);
16
- }
17
- init() {
18
- this.channel?.bind(NAME_BIND, (data) => {
19
- console.log('[PusherAlarmService] getPusherAlarm()', data);
20
- if (data?.message)
21
- this.notification.confirmAllNotification(data?.message);
22
- });
23
- }
24
- unsubscribeChannel(pusherService) {
25
- console.log('[PusherAlarmService] subscribeChannel()', this.channel);
26
- }
27
- unsubscribePusher() {
28
- this.channel = this.pusher.unsubscribe(this.nameChanel);
29
- }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherAlarmService, deps: [{ token: i1.NotificationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
31
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherAlarmService, providedIn: 'root' }); }
32
- }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherAlarmService, decorators: [{
34
- type: Injectable,
35
- args: [{
36
- providedIn: 'root'
37
- }]
38
- }], ctorParameters: () => [{ type: i1.NotificationService }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaGVyLWFsYXJtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZXJ2aWNlLWxpYi9zcmMvbGliL3NlcnZpY2VzL3B1c2hlci9wdXNoZXItYWxhcm0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJM0MsTUFBTSxTQUFTLEdBQUcsNEJBQTRCLENBQUE7QUFLOUMsTUFBTSxPQUFPLGtCQUFrQjtJQUs5QixZQUNXLFlBQWlDO1FBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtJQUczQyxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsYUFBYSxFQUFFLE1BQWE7UUFDbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsRUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFVBQVUsR0FBRyw2QkFBNkIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFBO1FBQzdELElBQUksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFBO1FBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JELE9BQU8sQ0FBQyxHQUFHLENBQUMseUNBQXlDLEVBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFTyxJQUFJO1FBQ1YsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1Q0FBdUMsRUFBSSxJQUFJLENBQUMsQ0FBQztZQUM3RCxJQUFHLElBQUksRUFBRSxPQUFPO2dCQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQTtRQUN6RCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFHSyxrQkFBa0IsQ0FBQyxhQUFhO1FBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMseUNBQXlDLEVBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFHTSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDekQsQ0FBQzsrR0FwQ1Usa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9ub3RpZmljYXRpb24uc2VydmljZSdcblxuZGVjbGFyZSBjb25zdCBQdXNoZXI6IGFueTtcbmNvbnN0IE5BTUVfQklORCA9ICdBcHBcXFxcRXZlbnRzXFxcXFNjcmVlbk1lc3NhZ2UnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFB1c2hlckFsYXJtU2VydmljZSB7XG4gIGlkVXNlcjpzdHJpbmc7XG4gIG5hbWVDaGFuZWw6c3RyaW5nOyAvLydwcml2YXRlLUxldmVsQWNjb21wbGlzaG1lbnRDb21wbGV0ZWQuMTUxODknIC8vXG4gIGNoYW5uZWw7XG4gIHB1c2hlclxuIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb25TZXJ2aWNlXG4gICkge1xuXG4gIH1cblxuICBwdWJsaWMgc3Vic2NyaWJlQ2hhbm5lbChwdXNoZXJTZXJ2aWNlLCBpZFVzZXI6c3RyaW5nKXtcbiAgICB0aGlzLmlkVXNlciA9IGlkVXNlcjtcbiAgICBjb25zb2xlLmxvZygnW1B1c2hlckFsYXJtU2VydmljZV0gaWRVc2VyKCknLCAgdGhpcy5pZFVzZXIpO1xuICAgIHRoaXMubmFtZUNoYW5lbCA9ICdwcml2YXRlLVNjcmVlbk1lc3NhZ2UuVXNlci4nICsgdGhpcy5pZFVzZXJcbiAgICB0aGlzLnB1c2hlciA9IHB1c2hlclNlcnZpY2VcbiAgICB0aGlzLmNoYW5uZWwgPSB0aGlzLnB1c2hlci5zdWJzY3JpYmUodGhpcy5uYW1lQ2hhbmVsKVxuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyQWxhcm1TZXJ2aWNlXSBzdWJzY3JpYmVDaGFubmVsKCknLCAgdGhpcy5jaGFubmVsKTtcbiAgfVxuXG4gICBwdWJsaWMgaW5pdCgpe1xuICAgIHRoaXMuY2hhbm5lbD8uYmluZChOQU1FX0JJTkQsIChkYXRhKSA9PiB7XG4gICAgICAgICBjb25zb2xlLmxvZygnW1B1c2hlckFsYXJtU2VydmljZV0gZ2V0UHVzaGVyQWxhcm0oKScgLCAgZGF0YSk7XG4gICAgICAgICBpZihkYXRhPy5tZXNzYWdlKVxuICAgICAgICAgdGhpcy5ub3RpZmljYXRpb24uY29uZmlybUFsbE5vdGlmaWNhdGlvbihkYXRhPy5tZXNzYWdlKVxuICAgICAgIH0pO1xuICAgfVxuXG5cbiAgcHVibGljIHVuc3Vic2NyaWJlQ2hhbm5lbChwdXNoZXJTZXJ2aWNlKXtcbiAgICBjb25zb2xlLmxvZygnW1B1c2hlckFsYXJtU2VydmljZV0gc3Vic2NyaWJlQ2hhbm5lbCgpJywgIHRoaXMuY2hhbm5lbCk7XG4gIH1cblxuXG4gIHB1YmxpYyB1bnN1YnNjcmliZVB1c2hlcigpe1xuICAgIHRoaXMuY2hhbm5lbCA9IHRoaXMucHVzaGVyLnVuc3Vic2NyaWJlKHRoaXMubmFtZUNoYW5lbClcbiAgfVxufVxuIl19
@@ -1,110 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@ionic/angular";
4
- import * as i2 from "@ngx-translate/core";
5
- const NAME_BIND = 'App\\Events\\LevelAccomplishmentCompleted';
6
- export class PusherChallengeNotificationsService {
7
- constructor(alertController, translate) {
8
- this.alertController = alertController;
9
- this.translate = translate;
10
- this.handlerMessage = '';
11
- this.roleMessage = '';
12
- this.isModalShowing = false;
13
- }
14
- subscribeChannel(pusherService, idUser) {
15
- this.idUser = idUser;
16
- this.nameChanel = 'private-LevelAccomplishmentCompleted.' + this.idUser;
17
- console.log('[PusherChallengeNotificationsService] this.nameChanel()', this.nameChanel);
18
- this.pusher = pusherService;
19
- this.channel = this.pusher.subscribe(this.nameChanel);
20
- console.log('[PusherChallengeNotificationsService] subscribeChannel()', this.channel);
21
- }
22
- unsubscribePusher() {
23
- this.channel = this.pusher?.unsubscribe(this.nameChanel);
24
- }
25
- init() {
26
- console.log('[PusherChallengeNotificationsService] init()');
27
- this.channel?.bind(NAME_BIND, (data) => {
28
- console.log('[PusherChallengeNotificationsService] getPusher()', data);
29
- if (!this.isModalShowing) {
30
- this.presentChallengeNotification(data);
31
- }
32
- else {
33
- this.pendingNotification = { show: true, data: data };
34
- }
35
- });
36
- }
37
- // async presentChallengeNotification() {
38
- // let message = '';
39
- // message = `<div class="pyro">
40
- // <div class="before"></div>
41
- // <ion-row><ion-col class="text-align-center"><img src="assets/images/duly_champ.gif" class="card-alert"></img><ion-text>`+ this.translate.instant('health_path.level_accomplished') + `</ion-text></ion-col></ion-row>
42
- // <div class="after"></div>
43
- // </div>`;
44
- // const alert = await this.alertController.create({
45
- // header: this.translate.instant('health_path.level_congratulations'),
46
- // cssClass: 'challenge-alert',
47
- // message: message,
48
- // buttons: [
49
- // {
50
- // text: this.translate.instant('info.button'),
51
- // role: 'confirm',
52
- // handler: () => {
53
- // this.handlerMessage = 'Alert confirmed';
54
- // },
55
- // },
56
- // ],
57
- // });
58
- // this.pendingNotification = { show: false, data: null };
59
- // await alert.present();
60
- // const { role } = await alert.onDidDismiss();
61
- // this.roleMessage = `Dismissed with role: ${role}`;
62
- // }
63
- async presentChallengeNotification(notification) {
64
- let message = '';
65
- let header = '';
66
- if (notification?.isChallengeCompleted) {
67
- message = `<div class="pyro">
68
- <div class="before"></div>
69
- <ion-row><ion-col class="text-align-center"><img src="assets/images/trofeo.png" class="card-alert"></img></ion-col></ion-row>
70
- <div class="after"></div>
71
- </div>`;
72
- header = this.translate.instant('health_path.congratulation');
73
- }
74
- else {
75
- message = `<div class="pyro">
76
- <div class="before"></div>
77
- <ion-row><ion-col class="text-align-center"><img src="assets/images/duly_champ.gif" class="card-alert"></img></ion-col></ion-row>
78
- <div class="after"></div>
79
- </div>`;
80
- let name_level = notification?.levelDetail?.name ? notification?.levelDetail?.name : '';
81
- header = this.translate.instant('health_path.congratulation_level') + ' ' + name_level;
82
- }
83
- const alert = await this.alertController.create({
84
- header: header,
85
- cssClass: 'challenge-alert',
86
- message: message,
87
- buttons: [
88
- {
89
- text: this.translate.instant('info.button'),
90
- role: 'confirm',
91
- handler: () => {
92
- this.handlerMessage = 'Alert confirmed';
93
- },
94
- },
95
- ],
96
- });
97
- await alert.present();
98
- const { role } = await alert.onDidDismiss();
99
- this.roleMessage = `Dismissed with role: ${role}`;
100
- }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherChallengeNotificationsService, deps: [{ token: i1.AlertController }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
102
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherChallengeNotificationsService, providedIn: 'root' }); }
103
- }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherChallengeNotificationsService, decorators: [{
105
- type: Injectable,
106
- args: [{
107
- providedIn: 'root'
108
- }]
109
- }], ctorParameters: () => [{ type: i1.AlertController }, { type: i2.TranslateService }] });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaGVyLWNoYWxsZW5nZS1ub3RpZmljYXRpb25zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZXJ2aWNlLWxpYi9zcmMvbGliL3NlcnZpY2VzL3B1c2hlci9wdXNoZXItY2hhbGxlbmdlLW5vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBS25ELE1BQU0sU0FBUyxHQUFHLDJDQUEyQyxDQUFBO0FBdUI3RCxNQUFNLE9BQU8sbUNBQW1DO0lBUzlDLFlBQ1UsZUFBZ0MsRUFDakMsU0FBMkI7UUFEMUIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBUHBDLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLG1CQUFjLEdBQVksS0FBSyxDQUFDO0lBT2hDLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsTUFBYztRQUNuRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLHVDQUF1QyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDeEUsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5REFBeUQsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUE7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDckQsT0FBTyxDQUFDLEdBQUcsQ0FBQywwREFBMEQsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixJQUFJ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O2tCQUgvQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWxlcnRDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5kZWNsYXJlIGNvbnN0IFB1c2hlcjogYW55O1xuY29uc3QgTkFNRV9CSU5EID0gJ0FwcFxcXFxFdmVudHNcXFxcTGV2ZWxBY2NvbXBsaXNobWVudENvbXBsZXRlZCdcbmV4cG9ydCBpbnRlcmZhY2UgY2hhbGxlbmdlTm90aWZpY2F0aW9uIHtcbiAgXCJ1c2VyXCI6IHtcbiAgICBcImlkXCI6IHN0cmluZyxcbiAgICBcIm5hbWVcIjogc3RyaW5nXG4gIH0sXG4gIFwibGV2ZWxEZXRhaWxcIjoge1xuICAgIFwiaWRcIjogc3RyaW5nLFxuICAgIFwibmFtZVwiOiBzdHJpbmdcbiAgfSxcbiAgXCJjb2luXCI6IHtcbiAgICBcImlkXCI6IHN0cmluZyxcbiAgICBcIm5hbWVcIjogc3RyaW5nLFxuICAgIFwiaWNvblwiOiBzdHJpbmdcbiAgfSxcbiAgXCJtZXNzYWdlXCI6IHN0cmluZyxcbiAgXCJhY3Rpb25cIjogc3RyaW5nLFxuICBcImlzQ2hhbGxlbmdlQ29tcGxldGVkXCI6IGJvb2xlYW5cbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUHVzaGVyQ2hhbGxlbmdlTm90aWZpY2F0aW9uc1NlcnZpY2Uge1xuICBpZFVzZXI6IHN0cmluZztcbiAgbmFtZUNoYW5lbDogc3RyaW5nO1xuICBjaGFubmVsO1xuICBoYW5kbGVyTWVzc2FnZSA9ICcnO1xuICByb2xlTWVzc2FnZSA9ICcnO1xuICBpc01vZGFsU2hvd2luZzogYm9vbGVhbiA9IGZhbHNlO1xuICBwZW5kaW5nTm90aWZpY2F0aW9uOiBhbnk7XG4gIHB1c2hlclxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFsZXJ0Q29udHJvbGxlcjogQWxlcnRDb250cm9sbGVyLFxuICAgIHB1YmxpYyB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcblxuICB9XG5cbiAgcHVibGljIHN1YnNjcmliZUNoYW5uZWwocHVzaGVyU2VydmljZSwgaWRVc2VyOiBzdHJpbmcpIHtcbiAgICB0aGlzLmlkVXNlciA9IGlkVXNlclxuICAgIHRoaXMubmFtZUNoYW5lbCA9ICdwcml2YXRlLUxldmVsQWNjb21wbGlzaG1lbnRDb21wbGV0ZWQuJyArIHRoaXMuaWRVc2VyO1xuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyQ2hhbGxlbmdlTm90aWZpY2F0aW9uc1NlcnZpY2VdIHRoaXMubmFtZUNoYW5lbCgpJywgdGhpcy5uYW1lQ2hhbmVsKTtcbiAgICB0aGlzLnB1c2hlciA9IHB1c2hlclNlcnZpY2VcbiAgICB0aGlzLmNoYW5uZWwgPSB0aGlzLnB1c2hlci5zdWJzY3JpYmUodGhpcy5uYW1lQ2hhbmVsKVxuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyQ2hhbGxlbmdlTm90aWZpY2F0aW9uc1NlcnZpY2VdIHN1YnNjcmliZUNoYW5uZWwoKScsIHRoaXMuY2hhbm5lbCk7XG4gIH1cblxuICBwdWJsaWMgdW5zdWJzY3JpYmVQdXNoZXIoKSB7XG4gICAgdGhpcy5jaGFubmVsID0gdGhpcy5wdXNoZXI/LnVuc3Vic2NyaWJlKHRoaXMubmFtZUNoYW5lbClcbiAgfVxuXG4gIHB1YmxpYyBpbml0KCkge1xuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyQ2hhbGxlbmdlTm90aWZpY2F0aW9uc1NlcnZpY2VdIGluaXQoKScpO1xuICAgIHRoaXMuY2hhbm5lbD8uYmluZChOQU1FX0JJTkQsIChkYXRhKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnW1B1c2hlckNoYWxsZW5nZU5vdGlmaWNhdGlvbnNTZXJ2aWNlXSBnZXRQdXNoZXIoKScsIGRhdGEpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNNb2RhbFNob3dpbmcpIHtcbiAgICAgICAgdGhpcy5wcmVzZW50Q2hhbGxlbmdlTm90aWZpY2F0aW9uKGRhdGEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wZW5kaW5nTm90aWZpY2F0aW9uID0geyBzaG93OiB0cnVlLCBkYXRhOiBkYXRhIH1cbiAgICAgIH1cblxuICAgIH0pO1xuICB9XG5cbiAgLy8gYXN5bmMgcHJlc2VudENoYWxsZW5nZU5vdGlmaWNhdGlvbigpIHtcblxuICAvLyAgIGxldCBtZXNzYWdlID0gJyc7XG5cbiAgLy8gICBtZXNzYWdlID0gYDxkaXYgY2xhc3M9XCJweXJvXCI+XG4gIC8vICAgPGRpdiBjbGFzcz1cImJlZm9yZVwiPjwvZGl2PlxuICAvLyAgIDxpb24tcm93Pjxpb24tY29sIGNsYXNzPVwidGV4dC1hbGlnbi1jZW50ZXJcIj48aW1nIHNyYz1cImFzc2V0cy9pbWFnZXMvZHVseV9jaGFtcC5naWZcIiBjbGFzcz1cImNhcmQtYWxlcnRcIj48L2ltZz48aW9uLXRleHQ+YCsgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnaGVhbHRoX3BhdGgubGV2ZWxfYWNjb21wbGlzaGVkJykgKyBgPC9pb24tdGV4dD48L2lvbi1jb2w+PC9pb24tcm93PlxuICAvLyAgIDxkaXYgY2xhc3M9XCJhZnRlclwiPjwvZGl2PlxuICAvLyA8L2Rpdj5gO1xuXG4gIC8vICAgY29uc3QgYWxlcnQgPSBhd2FpdCB0aGlzLmFsZXJ0Q29udHJvbGxlci5jcmVhdGUoe1xuICAvLyAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdoZWFsdGhfcGF0aC5sZXZlbF9jb25ncmF0dWxhdGlvbnMnKSxcbiAgLy8gICAgIGNzc0NsYXNzOiAnY2hhbGxlbmdlLWFsZXJ0JyxcbiAgLy8gICAgIG1lc3NhZ2U6IG1lc3NhZ2UsXG4gIC8vICAgICBidXR0b25zOiBbXG4gIC8vICAgICAgIHtcbiAgLy8gICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdpbmZvLmJ1dHRvbicpLFxuICAvLyAgICAgICAgIHJvbGU6ICdjb25maXJtJyxcbiAgLy8gICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gIC8vICAgICAgICAgICB0aGlzLmhhbmRsZXJNZXNzYWdlID0gJ0FsZXJ0IGNvbmZpcm1lZCc7XG5cbiAgLy8gICAgICAgICB9LFxuICAvLyAgICAgICB9LFxuICAvLyAgICAgXSxcbiAgLy8gICB9KTtcbiAgLy8gICB0aGlzLnBlbmRpbmdOb3RpZmljYXRpb24gPSB7IHNob3c6IGZhbHNlLCBkYXRhOiBudWxsIH07XG4gIC8vICAgYXdhaXQgYWxlcnQucHJlc2VudCgpO1xuXG4gIC8vICAgY29uc3QgeyByb2xlIH0gPSBhd2FpdCBhbGVydC5vbkRpZERpc21pc3MoKTtcbiAgLy8gICB0aGlzLnJvbGVNZXNzYWdlID0gYERpc21pc3NlZCB3aXRoIHJvbGU6ICR7cm9sZX1gO1xuXG4gIC8vIH1cblxuICBhc3luYyBwcmVzZW50Q2hhbGxlbmdlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbikge1xuXG4gICAgbGV0IG1lc3NhZ2UgPSAnJztcbiAgICBsZXQgaGVhZGVyID0gJyc7XG4gICAgaWYobm90aWZpY2F0aW9uPy5pc0NoYWxsZW5nZUNvbXBsZXRlZCl7XG4gICAgICBtZXNzYWdlID0gIGA8ZGl2IGNsYXNzPVwicHlyb1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImJlZm9yZVwiPjwvZGl2PlxuICAgICAgPGlvbi1yb3c+PGlvbi1jb2wgY2xhc3M9XCJ0ZXh0LWFsaWduLWNlbnRlclwiPjxpbWcgc3JjPVwiYXNzZXRzL2ltYWdlcy90cm9mZW8ucG5nXCIgY2xhc3M9XCJjYXJkLWFsZXJ0XCI+PC9pbWc+PC9pb24tY29sPjwvaW9uLXJvdz5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZnRlclwiPjwvZGl2PlxuICAgICAgPC9kaXY+YDtcbiAgICAgIGhlYWRlciA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2hlYWx0aF9wYXRoLmNvbmdyYXR1bGF0aW9uJylcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgIG1lc3NhZ2UgPSBgPGRpdiBjbGFzcz1cInB5cm9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJiZWZvcmVcIj48L2Rpdj5cbiAgICAgIDxpb24tcm93Pjxpb24tY29sIGNsYXNzPVwidGV4dC1hbGlnbi1jZW50ZXJcIj48aW1nIHNyYz1cImFzc2V0cy9pbWFnZXMvZHVseV9jaGFtcC5naWZcIiBjbGFzcz1cImNhcmQtYWxlcnRcIj48L2ltZz48L2lvbi1jb2w+PC9pb24tcm93PlxuICAgICAgPGRpdiBjbGFzcz1cImFmdGVyXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5gO1xuICAgICAgbGV0IG5hbWVfbGV2ZWwgPSBub3RpZmljYXRpb24/LmxldmVsRGV0YWlsPy5uYW1lPyBub3RpZmljYXRpb24/LmxldmVsRGV0YWlsPy5uYW1lOicnXG4gICAgICBoZWFkZXIgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdoZWFsdGhfcGF0aC5jb25ncmF0dWxhdGlvbl9sZXZlbCcpICsgJyAnICsgbmFtZV9sZXZlbFxuICAgIH1cblxuICAgIGNvbnN0IGFsZXJ0ID0gYXdhaXQgdGhpcy5hbGVydENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGhlYWRlcjogaGVhZGVyLFxuICAgICAgY3NzQ2xhc3M6J2NoYWxsZW5nZS1hbGVydCcsXG4gICAgICBtZXNzYWdlOiBtZXNzYWdlLFxuICAgICAgYnV0dG9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnaW5mby5idXR0b24nKSxcbiAgICAgICAgICByb2xlOiAnY29uZmlybScsXG4gICAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVyTWVzc2FnZSA9ICdBbGVydCBjb25maXJtZWQnO1xuXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gICAgYXdhaXQgYWxlcnQucHJlc2VudCgpO1xuXG4gICAgY29uc3QgeyByb2xlIH0gPSBhd2FpdCBhbGVydC5vbkRpZERpc21pc3MoKTtcbiAgICAgIHRoaXMucm9sZU1lc3NhZ2UgPSBgRGlzbWlzc2VkIHdpdGggcm9sZTogJHtyb2xlfWA7XG5cbiAgfVxuXG59XG4iXX0=
@@ -1,73 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../change-endpoints.service";
4
- import * as i2 from "./pusher-notification.service";
5
- import * as i3 from "./pusher-alarm.service";
6
- import * as i4 from "./pusher-challenge-notifications.service";
7
- export class PusherConnectionService {
8
- constructor(endpoints, pusherNotification, pusherAlarm, pusherChallenge) {
9
- this.endpoints = endpoints;
10
- this.pusherNotification = pusherNotification;
11
- this.pusherAlarm = pusherAlarm;
12
- this.pusherChallenge = pusherChallenge;
13
- }
14
- subscribePusher(token, idUser) {
15
- this.setPusher(token);
16
- //Subscribo todos los pusher excepto los de mensajería
17
- //porque se requiere el id del canal de mensajería y no el id del usuario
18
- this.pusherNotification.subscribeChannel(this.pusher, idUser);
19
- this.pusherAlarm.subscribeChannel(this.pusher, idUser);
20
- this.pusherChallenge.subscribeChannel(this.pusher, idUser);
21
- }
22
- setPusher(token) {
23
- let params = this.endpoints._ENVIROMENT.pusher_key;
24
- this.pusher = new Pusher(params.key, {
25
- cluster: params.cluster,
26
- authEndpoint: this.endpoints.API_ENDPOINT + '/broadcasting/auth',
27
- auth: {
28
- headers: {
29
- Authorization: `Bearer ${token}`
30
- }
31
- },
32
- encrypted: true,
33
- });
34
- console.log('[PusherConnectionService] setPusher()', this.pusher);
35
- }
36
- /**
37
- * setChannel
38
- */
39
- setChannel(nameChanel) {
40
- return this.pusher.subscribe(nameChanel);
41
- }
42
- // public unsubscribePusher(){
43
- // this.pusherAlarm.unsubscribePusher()
44
- // this.pusherNotification.unsubscribePusher()
45
- // this.pusher?.disconnect();
46
- // }
47
- isConnectedPusher() {
48
- console.log('[PusherConnectionService] isConnectedPusher()', this.pusher);
49
- if (this.pusher?.connection?.state === "connected")
50
- return true;
51
- return false;
52
- }
53
- isNullPusher() {
54
- if (this.pusher)
55
- return false;
56
- return true;
57
- }
58
- unsubscribePusher() {
59
- this.pusher?.unsubscribe(this.pusherAlarm.nameChanel);
60
- this.pusher?.unsubscribe(this.pusherNotification.nameChanel);
61
- this.pusher?.unsubscribe(this.pusherChallenge.nameChanel);
62
- this.pusher?.disconnect();
63
- }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherConnectionService, deps: [{ token: i1.ChangeEndpointsService }, { token: i2.PusherNotificationService }, { token: i3.PusherAlarmService }, { token: i4.PusherChallengeNotificationsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherConnectionService, providedIn: 'root' }); }
66
- }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherConnectionService, decorators: [{
68
- type: Injectable,
69
- args: [{
70
- providedIn: 'root'
71
- }]
72
- }], ctorParameters: () => [{ type: i1.ChangeEndpointsService }, { type: i2.PusherNotificationService }, { type: i3.PusherAlarmService }, { type: i4.PusherChallengeNotificationsService }] });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaGVyLWNvbm5lY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlcnZpY2UtbGliL3NyYy9saWIvc2VydmljZXMvcHVzaGVyL3B1c2hlci1jb25uZWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBVTNDLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsWUFDVSxTQUFpQyxFQUNqQyxrQkFBNkMsRUFDN0MsV0FBK0IsRUFDL0IsZUFBb0Q7UUFIcEQsY0FBUyxHQUFULFNBQVMsQ0FBd0I7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQUM3QyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0Isb0JBQWUsR0FBZixlQUFlLENBQXFDO0lBQzFELENBQUM7SUFFRSxlQUFlLENBQUMsS0FBSyxFQUFFLE1BQWE7UUFDekMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNyQixzREFBc0Q7UUFDdEQseUVBQXlFO1FBQ3ZFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFBO1FBQzdELElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUN0RCxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVNLFNBQVMsQ0FBQyxLQUFLO1FBQ3BCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQztRQUNuRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDbkMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1lBQ3ZCLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksR0FBRSxvQkFBb0I7WUFDL0QsSUFBSSxFQUFFO2dCQUNKLE9BQU8sRUFBRTtvQkFDUCxhQUFhLEVBQUUsVUFBVSxLQUFLLEVBQUU7aUJBQ2pDO2FBQ0Y7WUFDRCxTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxVQUFVLENBQUMsVUFBVTtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzFDLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIseUNBQXlDO0lBQ3pDLGdEQUFnRDtJQUNoRCwrQkFBK0I7SUFDL0IsSUFBSTtJQUVHLGlCQUFpQjtRQUN0QixPQUFPLENBQUMsR0FBRyxDQUFDLCtDQUErQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxRSxJQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUssS0FBSyxXQUFXO1lBQy9DLE9BQU8sSUFBSSxDQUFDO1FBQ2QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFHLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTyxLQUFLLENBQUE7UUFDNUIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDckQsSUFBSSxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQzVELElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDekQsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUM1QixDQUFDOytHQS9EVSx1QkFBdUI7bUhBQXZCLHVCQUF1QixjQUZ0QixNQUFNOzs0RkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhbmdlRW5kcG9pbnRzU2VydmljZSB9IGZyb20gJy4uL2NoYW5nZS1lbmRwb2ludHMuc2VydmljZSdcbmltcG9ydCB7IFB1c2hlckFsYXJtU2VydmljZSB9IGZyb20gJy4vcHVzaGVyLWFsYXJtLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHVzaGVyTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vcHVzaGVyLW5vdGlmaWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFB1c2hlckNoYWxsZW5nZU5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9wdXNoZXItY2hhbGxlbmdlLW5vdGlmaWNhdGlvbnMuc2VydmljZSc7XG5cbmRlY2xhcmUgY29uc3QgUHVzaGVyOiBhbnk7XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQdXNoZXJDb25uZWN0aW9uU2VydmljZSB7XG4gIHB1c2hlclxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVuZHBvaW50czogQ2hhbmdlRW5kcG9pbnRzU2VydmljZSxcbiAgICBwcml2YXRlIHB1c2hlck5vdGlmaWNhdGlvbjogUHVzaGVyTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHB1c2hlckFsYXJtOiBQdXNoZXJBbGFybVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwdXNoZXJDaGFsbGVuZ2U6IFB1c2hlckNoYWxsZW5nZU5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxuICApIHsgfVxuXG4gIHB1YmxpYyBzdWJzY3JpYmVQdXNoZXIodG9rZW4sIGlkVXNlcjpzdHJpbmcpe1xuICAgIHRoaXMuc2V0UHVzaGVyKHRva2VuKVxuICAgIC8vU3Vic2NyaWJvIHRvZG9zIGxvcyBwdXNoZXIgZXhjZXB0byBsb3MgZGUgbWVuc2FqZXLDrWFcbiAgICAvL3BvcnF1ZSBzZSByZXF1aWVyZSBlbCBpZCBkZWwgY2FuYWwgZGUgbWVuc2FqZXLDrWEgeSBubyBlbCBpZCBkZWwgdXN1YXJpb1xuICAgICAgdGhpcy5wdXNoZXJOb3RpZmljYXRpb24uc3Vic2NyaWJlQ2hhbm5lbCh0aGlzLnB1c2hlciwgaWRVc2VyKVxuICAgICAgdGhpcy5wdXNoZXJBbGFybS5zdWJzY3JpYmVDaGFubmVsKHRoaXMucHVzaGVyLCBpZFVzZXIpXG4gICAgICB0aGlzLnB1c2hlckNoYWxsZW5nZS5zdWJzY3JpYmVDaGFubmVsKHRoaXMucHVzaGVyLCBpZFVzZXIpXG4gIH1cblxuICBwdWJsaWMgc2V0UHVzaGVyKHRva2VuKXtcbiAgICBsZXQgcGFyYW1zID0gdGhpcy5lbmRwb2ludHMuX0VOVklST01FTlQucHVzaGVyX2tleTtcbiAgICB0aGlzLnB1c2hlciA9IG5ldyBQdXNoZXIocGFyYW1zLmtleSwge1xuICAgICAgY2x1c3RlcjogcGFyYW1zLmNsdXN0ZXIsXG4gICAgICBhdXRoRW5kcG9pbnQ6IHRoaXMuZW5kcG9pbnRzLkFQSV9FTkRQT0lOVCsgJy9icm9hZGNhc3RpbmcvYXV0aCcsXG4gICAgICBhdXRoOiB7XG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dG9rZW59YFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZW5jcnlwdGVkOiB0cnVlLFxuICAgIH0pO1xuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyQ29ubmVjdGlvblNlcnZpY2VdIHNldFB1c2hlcigpJywgdGhpcy5wdXNoZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIHNldENoYW5uZWxcbiAgICovXG4gIHB1YmxpYyBzZXRDaGFubmVsKG5hbWVDaGFuZWwpIHtcbiAgICByZXR1cm4gdGhpcy5wdXNoZXIuc3Vic2NyaWJlKG5hbWVDaGFuZWwpXG4gIH1cblxuICAvLyBwdWJsaWMgdW5zdWJzY3JpYmVQdXNoZXIoKXtcbiAgLy8gICB0aGlzLnB1c2hlckFsYXJtLnVuc3Vic2NyaWJlUHVzaGVyKClcbiAgLy8gICB0aGlzLnB1c2hlck5vdGlmaWNhdGlvbi51bnN1YnNjcmliZVB1c2hlcigpXG4gIC8vICAgdGhpcy5wdXNoZXI/LmRpc2Nvbm5lY3QoKTtcbiAgLy8gfVxuXG4gIHB1YmxpYyBpc0Nvbm5lY3RlZFB1c2hlcigpOiBib29sZWFue1xuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyQ29ubmVjdGlvblNlcnZpY2VdIGlzQ29ubmVjdGVkUHVzaGVyKCknLCB0aGlzLnB1c2hlcik7XG4gICAgaWYodGhpcy5wdXNoZXI/LmNvbm5lY3Rpb24/LnN0YXRlID09PSBcImNvbm5lY3RlZFwiKVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGlzTnVsbFB1c2hlcigpOiBib29sZWFuIHtcbiAgICBpZih0aGlzLnB1c2hlcikgcmV0dXJuIGZhbHNlXG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIHB1YmxpYyB1bnN1YnNjcmliZVB1c2hlcigpe1xuICAgIHRoaXMucHVzaGVyPy51bnN1YnNjcmliZSh0aGlzLnB1c2hlckFsYXJtLm5hbWVDaGFuZWwpXG4gICAgdGhpcy5wdXNoZXI/LnVuc3Vic2NyaWJlKHRoaXMucHVzaGVyTm90aWZpY2F0aW9uLm5hbWVDaGFuZWwpXG4gICAgdGhpcy5wdXNoZXI/LnVuc3Vic2NyaWJlKHRoaXMucHVzaGVyQ2hhbGxlbmdlLm5hbWVDaGFuZWwpXG4gICAgdGhpcy5wdXNoZXI/LmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG59XG4iXX0=
@@ -1,27 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "./pusher-connection.service";
4
- const NAME_BIND = 'App\\Events\\MessageCreated';
5
- export class PusherMessageService {
6
- constructor(pusherConnection) {
7
- this.pusherConnection = pusherConnection;
8
- this.nameChanel = 'presence-MessageCreated.';
9
- }
10
- init(idChannel) {
11
- this.channel = this.pusherConnection.setChannel(this.nameChanel + idChannel);
12
- console.log('[PusherMessageService] init()', this.channel);
13
- return this.channel;
14
- }
15
- unsubscribePusher(idChannel) {
16
- this.channel.unsubscribe(this.nameChanel + idChannel);
17
- }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherMessageService, deps: [{ token: i1.PusherConnectionService }], target: i0.ɵɵFactoryTarget.Injectable }); }
19
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherMessageService, providedIn: 'root' }); }
20
- }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherMessageService, decorators: [{
22
- type: Injectable,
23
- args: [{
24
- providedIn: 'root'
25
- }]
26
- }], ctorParameters: () => [{ type: i1.PusherConnectionService }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaGVyLW1lc3NhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlcnZpY2UtbGliL3NyYy9saWIvc2VydmljZXMvcHVzaGVyL3B1c2hlci1tZXNzYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSTNDLE1BQU0sU0FBUyxHQUFHLDZCQUE2QixDQUFBO0FBSy9DLE1BQU0sT0FBTyxvQkFBb0I7SUFLL0IsWUFDVSxnQkFBeUM7UUFBekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtRQUpuRCxlQUFVLEdBQUcsMEJBQTBCLENBQUE7SUFLcEMsQ0FBQztJQUVJLElBQUksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsQ0FBQTtRQUM1RSxPQUFPLENBQUMsR0FBRyxDQUFDLCtCQUErQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdkIsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFNBQVM7UUFDaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsQ0FBQTtJQUN2RCxDQUFDOytHQWpCVSxvQkFBb0I7bUhBQXBCLG9CQUFvQixjQUZuQixNQUFNOzs0RkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHVzaGVyQ29ubmVjdGlvblNlcnZpY2UgfSBmcm9tICcuL3B1c2hlci1jb25uZWN0aW9uLnNlcnZpY2UnO1xuXG5kZWNsYXJlIGNvbnN0IFB1c2hlcjogYW55O1xuY29uc3QgTkFNRV9CSU5EID0gJ0FwcFxcXFxFdmVudHNcXFxcTWVzc2FnZUNyZWF0ZWQnIFxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQdXNoZXJNZXNzYWdlU2VydmljZSB7XG5cbiAgbmFtZUNoYW5lbCA9ICdwcmVzZW5jZS1NZXNzYWdlQ3JlYXRlZC4nXG4gIHB1c2hlclxuICBjaGFubmVsXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHVzaGVyQ29ubmVjdGlvbjogUHVzaGVyQ29ubmVjdGlvblNlcnZpY2VcbiAgKSB7fVxuXG4gICBwdWJsaWMgaW5pdChpZENoYW5uZWw6IFN0cmluZyl7XG4gICAgdGhpcy5jaGFubmVsID0gdGhpcy5wdXNoZXJDb25uZWN0aW9uLnNldENoYW5uZWwodGhpcy5uYW1lQ2hhbmVsICsgaWRDaGFubmVsKVxuICAgIGNvbnNvbGUubG9nKCdbUHVzaGVyTWVzc2FnZVNlcnZpY2VdIGluaXQoKScsIHRoaXMuY2hhbm5lbCk7XG4gICAgcmV0dXJuIHRoaXMuY2hhbm5lbDtcbiB9XG5cbiAgcHVibGljIHVuc3Vic2NyaWJlUHVzaGVyKGlkQ2hhbm5lbCl7XG4gICAgdGhpcy5jaGFubmVsLnVuc3Vic2NyaWJlKHRoaXMubmFtZUNoYW5lbCArIGlkQ2hhbm5lbClcbiAgfVxuXG59XG4iXX0=
@@ -1,116 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@ionic/angular";
4
- import * as i2 from "../authentication.service";
5
- import * as i3 from "@ngx-translate/core";
6
- import * as i4 from "@angular/router";
7
- import * as i5 from "./pusher-challenge-notifications.service";
8
- const NAME_BIND = 'Illuminate\\Notifications\\Events\\BroadcastNotificationCreated';
9
- export class PusherNotificationService {
10
- constructor(alertController, authService, translate, router, modalCtrl, pusherChallenge, _zone) {
11
- this.alertController = alertController;
12
- this.authService = authService;
13
- this.translate = translate;
14
- this.router = router;
15
- this.modalCtrl = modalCtrl;
16
- this.pusherChallenge = pusherChallenge;
17
- this._zone = _zone;
18
- this.NAME_BIND = 'Illuminate\\Notifications\\Events\\BroadcastNotificationCreated';
19
- this.handlerMessage = '';
20
- this.roleMessage = '';
21
- }
22
- subscribeChannel(pusherService, idUser) {
23
- this.idUser = idUser;
24
- this.nameChanel = 'private-App.User.' + this.idUser;
25
- console.log('[PusherNotificationService] this.nameChanel ()', this.nameChanel);
26
- this.pusher = pusherService;
27
- this.channel = this.pusher.subscribe(this.nameChanel);
28
- console.log('[PusherNotificationService] subscribeChannel()', this.channel);
29
- }
30
- unsubscribePusher() {
31
- this.channel = this.pusher?.unsubscribe(this.nameChanel);
32
- }
33
- init() {
34
- return this.channel;
35
- }
36
- // public init2(){
37
- // this.channel?.bind(NAME_BIND, (data) => {
38
- // console.log('[PusherNotificationService] getPusher()', data);
39
- // this.presentPromoteNotification(data);
40
- // });
41
- // }
42
- async presentPromoteNotification(data) {
43
- let [message, component] = this.getNotificationMessage(data);
44
- if (message) {
45
- message = `<ion-row><ion-col class="text-align-center"><img src="assets/images/duly_reading.gif" class="card-alert"></img><ion-text>` + message + `</ion-text></ion-col></ion-row>`;
46
- const alert = await this.alertController.create({
47
- cssClass: 'challenge-alert',
48
- message: message,
49
- buttons: [
50
- {
51
- text: this.translate.instant('alert.button_not_now'),
52
- role: 'cancel',
53
- handler: () => {
54
- this.handlerMessage = 'Alert canceled';
55
- },
56
- },
57
- {
58
- text: this.translate.instant('alert.button_ok'),
59
- role: 'confirm',
60
- handler: () => {
61
- this.openModal(data, component);
62
- },
63
- }
64
- ],
65
- });
66
- await alert.present();
67
- const { role } = await alert.onDidDismiss();
68
- this.roleMessage = `Dismissed with role: ${role}`;
69
- }
70
- else
71
- console.error("Notification type not found");
72
- }
73
- getNotificationMessage(data) {
74
- let message = '';
75
- let component = null;
76
- switch (data?.type) {
77
- case "App\\Notifications\\AdviceCreated":
78
- message = this.translate.instant('health_path.advice') + '<b>' + data?.advice?.name + '</b>';
79
- //component = AdvicesDetailPage;
80
- break;
81
- case "App\\Notifications\\NewsNotification":
82
- message = this.translate.instant('health_path.news') + '<b>' + data?.news?.name + '</b>';
83
- //component = NewDetailPage;
84
- break;
85
- case "App\\Notifications\\DietCreated":
86
- message = this.translate.instant('health_path.diet') + '<b>' + data?.diet?.name + '</b>';
87
- //component = DietsDetailPage;
88
- //TODO
89
- break;
90
- case "App\\Notifications\\GameCreated":
91
- message = this.translate.instant('health_path.game') + '<b>' + data?.game?.name + '</b>';
92
- break;
93
- default:
94
- break;
95
- }
96
- return [message, component];
97
- }
98
- async openModal(data, pageComponent) {
99
- console.log('model component:', pageComponent);
100
- const modal = await this.modalCtrl.create({
101
- component: pageComponent,
102
- componentProps: { id: data?.model_id },
103
- cssClass: "modal-custom-class"
104
- });
105
- await modal.present();
106
- }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherNotificationService, deps: [{ token: i1.AlertController }, { token: i2.AuthenticationService }, { token: i3.TranslateService }, { token: i4.Router }, { token: i1.ModalController }, { token: i5.PusherChallengeNotificationsService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
108
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherNotificationService, providedIn: 'root' }); }
109
- }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: PusherNotificationService, decorators: [{
111
- type: Injectable,
112
- args: [{
113
- providedIn: 'root'
114
- }]
115
- }], ctorParameters: () => [{ type: i1.AlertController }, { type: i2.AuthenticationService }, { type: i3.TranslateService }, { type: i4.Router }, { type: i1.ModalController }, { type: i5.PusherChallengeNotificationsService }, { type: i0.NgZone }] });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVzaGVyLW5vdGlmaWNhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9wdXNoZXIvcHVzaGVyLW5vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFZbkQsTUFBTSxTQUFTLEdBQUksaUVBQWlFLENBQUE7QUFLcEYsTUFBTSxPQUFPLHlCQUF5QjtJQVFwQyxZQUNVLGVBQWdDLEVBQ2hDLFdBQWtDLEVBQ25DLFNBQTJCLEVBQzFCLE1BQWMsRUFDZCxTQUEwQixFQUMxQixlQUFvRCxFQUNwRCxLQUFhO1FBTmIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLGdCQUFXLEdBQVgsV0FBVyxDQUF1QjtRQUNuQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMxQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsb0JBQWUsR0FBZixlQUFlLENBQXFDO1FBQ3BELFVBQUssR0FBTCxLQUFLLENBQVE7UUFkZCxjQUFTLEdBQUksaUVBQWlFLENBQUE7UUFJdkYsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7SUFZakIsQ0FBQztJQUVNLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxNQUFhO1FBQ2xELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQTtRQUNuRCxPQUFPLENBQUMsR0FBRyxDQUFDLGdEQUFnRCxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQTtRQUMzQixJ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QUFFLElBQUksR0FBRSxNQUFNLENBQUE7Z0JBQ3ZGLDhCQUE4QjtnQkFDOUIsTUFBTTtnQkFDTixNQUFNO1lBQ1IsS0FBSyxpQ0FBaUM7Z0JBQ3BDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksR0FBRSxNQUFNLENBQUE7Z0JBQ3ZGLE1BQU07WUFFUjtnQkFDRSxNQUFNO1FBQ1YsQ0FBQztRQUNELE9BQU8sQ0FBQyxPQUFPLEVBQUMsU0FBUyxDQUFDLENBQUM7SUFFN0IsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLGFBQWE7UUFFakMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUMvQyxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDO1lBQ3hDLFNBQVMsRUFBRSxhQUFhO1lBQ3hCLGNBQWMsRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQ3RDLFFBQVEsRUFBRSxvQkFBb0I7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDeEIsQ0FBQzsrR0F4SFkseUJBQXlCO21IQUF6Qix5QkFBeUIsY0FGeEIsTUFBTTs7NEZBRVAseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFsZXJ0Q29udHJvbGxlciwgTW9kYWxDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG4vL2ltcG9ydCB7IERpZXRzRGV0YWlsUGFnZSB9IGZyb20gJ2RpYXJ5LWxpYic7XG5cbi8vaW1wb3J0IHsgQWR2aWNlc0RldGFpbFBhZ2UgfSBmcm9tICdzcmMvYXBwL3BhZ2VzL2hvbWUvYWR2aWNlcy1kZXRhaWwvYWR2aWNlcy1kZXRhaWwucGFnZSc7XG4vL2ltcG9ydCB7IE5ld0RldGFpbFBhZ2UgfSBmcm9tICdzcmMvYXBwL3BhZ2VzL2hvbWUvbmV3LWRldGFpbC9uZXctZGV0YWlsLnBhZ2UnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aGVudGljYXRpb24uc2VydmljZSdcbmltcG9ydCB7IFB1c2hlckNoYWxsZW5nZU5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9wdXNoZXItY2hhbGxlbmdlLW5vdGlmaWNhdGlvbnMuc2VydmljZSc7XG5kZWNsYXJlIGNvbnN0IFB1c2hlcjogYW55O1xuY29uc3QgTkFNRV9CSU5EID0gICdJbGx1bWluYXRlXFxcXE5vdGlmaWNhdGlvbnNcXFxcRXZlbnRzXFxcXEJyb2FkY2FzdE5vdGlmaWNhdGlvbkNyZWF0ZWQnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFB1c2hlck5vdGlmaWNhdGlvblNlcnZpY2Uge1xuICByZWFkb25seSBOQU1FX0JJTkQgPSAgJ0lsbHVtaW5hdGVcXFxcTm90aWZpY2F0aW9uc1xcXFxFdmVudHNcXFxcQnJvYWRjYXN0Tm90aWZpY2F0aW9uQ3JlYXRlZCdcbiAgaWRVc2VyOnN0cmluZztcbiAgbmFtZUNoYW5lbDpzdHJpbmc7XG4gIGNoYW5uZWw7XG4gIGhhbmRsZXJNZXNzYWdlID0gJyc7XG4gIHJvbGVNZXNzYWdlID0gJyc7XG4gIHB1c2hlclxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFsZXJ0Q29udHJvbGxlcjogQWxlcnRDb250cm9sbGVyLFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBtb2RhbEN0cmw6IE1vZGFsQ29udHJvbGxlcixcbiAgICBwcml2YXRlIHB1c2hlckNoYWxsZW5nZTogUHVzaGVyQ2hhbGxlbmdlTm90aWZpY2F0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBfem9uZTogTmdab25lKSB7XG5cblxuICB9XG5cbiAgcHVibGljIHN1YnNjcmliZUNoYW5uZWwocHVzaGVyU2VydmljZSwgaWRVc2VyOnN0cmluZyl7XG4gICAgdGhpcy5pZFVzZXIgPSBpZFVzZXJcbiAgICB0aGlzLm5hbWVDaGFuZWwgPSAncHJpdmF0ZS1BcHAuVXNlci4nICsgdGhpcy5pZFVzZXJcbiAgICBjb25zb2xlLmxvZygnW1B1c2hlck5vdGlmaWNhdGlvblNlcnZpY2VdIHRoaXMubmFtZUNoYW5lbCAoKScsIHRoaXMubmFtZUNoYW5lbCk7XG4gICAgdGhpcy5wdXNoZXIgPSBwdXNoZXJTZXJ2aWNlXG4gICAgdGhpcy5jaGFubmVsID0gdGhpcy5wdXNoZXIuc3Vic2NyaWJlKHRoaXMubmFtZUNoYW5lbClcbiAgICBjb25zb2xlLmxvZygnW1B1c2hlck5vdGlmaWNhdGlvblNlcnZpY2VdIHN1YnNjcmliZUNoYW5uZWwoKScsICB0aGlzLmNoYW5uZWwpO1xuICB9XG5cbiAgcHVibGljIHVuc3Vic2NyaWJlUHVzaGVyKCl7XG4gICAgdGhpcy5jaGFubmVsID0gdGhpcy5wdXNoZXI/LnVuc3Vic2NyaWJlKHRoaXMubmFtZUNoYW5lbClcbiAgfVxuXG4gIHB1YmxpYyBpbml0KCl7XG4gICAgcmV0dXJuIHRoaXMuY2hhbm5lbDtcbiAgIH1cblxuICAvLyBwdWJsaWMgaW5pdDIoKXtcbiAgLy8gICAgdGhpcy5jaGFubmVsPy5iaW5kKE5BTUVfQklORCwgKGRhdGEpID0+IHtcbiAgLy8gICAgICAgICBjb25zb2xlLmxvZygnW1B1c2hlck5vdGlmaWNhdGlvblNlcnZpY2VdIGdldFB1c2hlcigpJywgIGRhdGEpO1xuICAvLyAgICAgICAgIHRoaXMucHJlc2VudFByb21vdGVOb3RpZmljYXRpb24oZGF0YSk7XG4gIC8vICAgICAgIH0pO1xuICAvLyB9XG5cbmFzeW5jIHByZXNlbnRQcm9tb3RlTm90aWZpY2F0aW9uKGRhdGEpIHtcblxuICBsZXQgW21lc3NhZ2UsY29tcG9uZW50XSA9IHRoaXMuZ2V0Tm90aWZpY2F0aW9uTWVzc2FnZShkYXRhKVxuXG4gIGlmKG1lc3NhZ2Upe1xuICAgIG1lc3NhZ2UgPSBgPGlvbi1yb3c+PGlvbi1jb2wgY2xhc3M9XCJ0ZXh0LWFsaWduLWNlbnRlclwiPjxpbWcgc3JjPVwiYXNzZXRzL2ltYWdlcy9kdWx5X3JlYWRpbmcuZ2lmXCIgY2xhc3M9XCJjYXJkLWFsZXJ0XCI+PC9pbWc+PGlvbi10ZXh0PmArIG1lc3NhZ2UgK2A8L2lvbi10ZXh0PjwvaW9uLWNvbD48L2lvbi1yb3c+YDtcblxuICAgIGNvbnN0IGFsZXJ0ID0gYXdhaXQgdGhpcy5hbGVydENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGNzc0NsYXNzOidjaGFsbGVuZ2UtYWxlcnQnLFxuICAgICAgbWVzc2FnZTogbWVzc2FnZSxcbiAgICAgIGJ1dHRvbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRleHQ6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2FsZXJ0LmJ1dHRvbl9ub3Rfbm93JyksXG4gICAgICAgICAgcm9sZTogJ2NhbmNlbCcsXG4gICAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVyTWVzc2FnZSA9ICdBbGVydCBjYW5jZWxlZCc7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRleHQ6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2FsZXJ0LmJ1dHRvbl9vaycpLFxuICAgICAgICAgIHJvbGU6ICdjb25maXJtJyxcbiAgICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9wZW5Nb2RhbChkYXRhLCBjb21wb25lbnQpO1xuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgfSk7XG4gICAgYXdhaXQgYWxlcnQucHJlc2VudCgpO1xuXG4gICAgY29uc3QgeyByb2xlIH0gPSBhd2FpdCBhbGVydC5vbkRpZERpc21pc3MoKTtcbiAgICAgIHRoaXMucm9sZU1lc3NhZ2UgPSBgRGlzbWlzc2VkIHdpdGggcm9sZTogJHtyb2xlfWA7XG4gIH1lbHNlXG4gICAgY29uc29sZS5lcnJvcihcIk5vdGlmaWNhdGlvbiB0eXBlIG5vdCBmb3VuZFwiKTtcblxufVxuXG5wdWJsaWMgZ2V0Tm90aWZpY2F0aW9uTWVzc2FnZShkYXRhKXtcblxuICBsZXQgbWVzc2FnZSA9ICcnO1xuICBsZXQgY29tcG9uZW50PSBudWxsO1xuXG4gIHN3aXRjaCAoZGF0YT8udHlwZSl7XG4gICAgY2FzZSBcIkFwcFxcXFxOb3RpZmljYXRpb25zXFxcXEFkdmljZUNyZWF0ZWRcIjpcbiAgICAgIG1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdoZWFsdGhfcGF0aC5hZHZpY2UnKSArICc8Yj4nICsgZGF0YT8uYWR2aWNlPy5uYW1lICsgJzwvYj4nXG4gICAgICAvL2NvbXBvbmVudCA9IEFkdmljZXNEZXRhaWxQYWdlO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBcIkFwcFxcXFxOb3RpZmljYXRpb25zXFxcXE5ld3NOb3RpZmljYXRpb25cIjpcbiAgICAgICAgbWVzc2FnZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2hlYWx0aF9wYXRoLm5ld3MnKSArICc8Yj4nICsgZGF0YT8ubmV3cz8ubmFtZSArICc8L2I+J1xuICAgICAgICAvL2NvbXBvbmVudCA9IE5ld0RldGFpbFBhZ2U7XG4gICAgICAgIGJyZWFrO1xuICAgIGNhc2UgXCJBcHBcXFxcTm90aWZpY2F0aW9uc1xcXFxEaWV0Q3JlYXRlZFwiOlxuICAgICAgbWVzc2FnZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2hlYWx0aF9wYXRoLmRpZXQnKSArICc8Yj4nICsgZGF0YT8uZGlldD8ubmFtZSsgJzwvYj4nXG4gICAgICAvL2NvbXBvbmVudCA9IERpZXRzRGV0YWlsUGFnZTtcbiAgICAgIC8vVE9ET1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBcIkFwcFxcXFxOb3RpZmljYXRpb25zXFxcXEdhbWVDcmVhdGVkXCI6XG4gICAgICBtZXNzYWdlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnaGVhbHRoX3BhdGguZ2FtZScpICsgJzxiPicgKyBkYXRhPy5nYW1lPy5uYW1lKyAnPC9iPidcbiAgICAgIGJyZWFrO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIGJyZWFrO1xuICB9XG4gIHJldHVybiBbbWVzc2FnZSxjb21wb25lbnRdO1xuXG59XG5cbmFzeW5jIG9wZW5Nb2RhbChkYXRhLCBwYWdlQ29tcG9uZW50KSB7XG5cbiAgY29uc29sZS5sb2coJ21vZGVsIGNvbXBvbmVudDonLCBwYWdlQ29tcG9uZW50KTtcbiAgY29uc3QgbW9kYWwgPSBhd2FpdCB0aGlzLm1vZGFsQ3RybC5jcmVhdGUoe1xuICAgIGNvbXBvbmVudDogcGFnZUNvbXBvbmVudCxcbiAgICBjb21wb25lbnRQcm9wczogeyBpZDogZGF0YT8ubW9kZWxfaWQgfSxcbiAgICBjc3NDbGFzczogXCJtb2RhbC1jdXN0b20tY2xhc3NcIlxuICB9KTtcblxuICBhd2FpdCBtb2RhbC5wcmVzZW50KCk7XG59XG59XG5cbiJdfQ==