@nmshd/app-runtime 2.0.0-beta.3 → 2.0.0-beta.4

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 (32) hide show
  1. package/dist/AppRuntime.d.ts +10 -17
  2. package/dist/AppRuntime.js +47 -94
  3. package/dist/AppRuntime.js.map +1 -1
  4. package/dist/AppRuntimeErrors.d.ts +0 -1
  5. package/dist/AppRuntimeErrors.js +0 -3
  6. package/dist/AppRuntimeErrors.js.map +1 -1
  7. package/dist/SessionStorage.d.ts +10 -0
  8. package/dist/SessionStorage.js +31 -0
  9. package/dist/SessionStorage.js.map +1 -0
  10. package/dist/buildInformation.js +5 -5
  11. package/dist/events/index.d.ts +0 -1
  12. package/dist/events/index.js +0 -1
  13. package/dist/events/index.js.map +1 -1
  14. package/dist/modules/appEvents/MailReceivedModule.js +1 -5
  15. package/dist/modules/appEvents/MailReceivedModule.js.map +1 -1
  16. package/dist/modules/appEvents/OnboardingChangeReceivedModule.js +1 -5
  17. package/dist/modules/appEvents/OnboardingChangeReceivedModule.js.map +1 -1
  18. package/dist/modules/appSync/AppSyncModule.js +1 -2
  19. package/dist/modules/appSync/AppSyncModule.js.map +1 -1
  20. package/dist/modules/pushNotifications/PushNotificationModule.d.ts +1 -1
  21. package/dist/modules/pushNotifications/PushNotificationModule.js +18 -34
  22. package/dist/modules/pushNotifications/PushNotificationModule.js.map +1 -1
  23. package/dist/modules/runtimeEvents/MessageReceivedModule.js +2 -10
  24. package/dist/modules/runtimeEvents/MessageReceivedModule.js.map +1 -1
  25. package/dist/modules/runtimeEvents/RelationshipChangedModule.js +10 -13
  26. package/dist/modules/runtimeEvents/RelationshipChangedModule.js.map +1 -1
  27. package/lib-web/nmshd.app-runtime.js +127 -198
  28. package/lib-web/nmshd.app-runtime.min.js +1 -1
  29. package/package.json +3 -4
  30. package/dist/events/RequestReceivedEvent.d.ts +0 -8
  31. package/dist/events/RequestReceivedEvent.js +0 -15
  32. package/dist/events/RequestReceivedEvent.js.map +0 -1
@@ -1,5 +1,4 @@
1
1
  import { IDatabaseConnection } from "@js-soft/docdb-access-abstractions";
2
- import { ILoggerFactory } from "@js-soft/logging-abstractions";
3
2
  import { INativeBootstrapper, INativeEnvironment, INativeTranslationProvider } from "@js-soft/native-abstractions";
4
3
  import { Result } from "@js-soft/ts-utils";
5
4
  import { ConsumptionController } from "@nmshd/consumption";
@@ -8,8 +7,7 @@ import { AccountController, ICoreAddress } from "@nmshd/transport";
8
7
  import { AppConfig, AppConfigOverwrite } from "./AppConfig";
9
8
  import { AppServices, IUIBridge } from "./extensibility";
10
9
  import { IAppRuntimeModuleConstructor } from "./modules";
11
- import { AccountServices, LocalAccountDTO, MultiAccountController } from "./multiAccount";
12
- import { LocalAccountSession } from "./multiAccount/data/LocalAccountSession";
10
+ import { AccountServices, LocalAccountDTO, LocalAccountSession, MultiAccountController } from "./multiAccount";
13
11
  import { UserfriendlyResult } from "./UserfriendlyResult";
14
12
  export interface AppRuntimeServices extends RuntimeServices {
15
13
  appServices: AppServices;
@@ -28,28 +26,23 @@ export declare class AppRuntime extends Runtime<AppConfig> {
28
26
  private _accountServices;
29
27
  get accountServices(): AccountServices;
30
28
  get nativeEnvironment(): INativeEnvironment;
29
+ private readonly sessionStorage;
31
30
  get currentAccount(): LocalAccountDTO;
32
- protected login(accountController: AccountController, consumptionController: ConsumptionController): Promise<AppRuntimeServices>;
33
- private _currentSession?;
34
31
  get currentSession(): LocalAccountSession;
35
- getServices(address: string | ICoreAddress): AppRuntimeServices;
36
- private readonly _availableSessions;
37
- getSessions(): LocalAccountDTO[];
38
- private _accountIdToPromise?;
39
- private _selectAccountPromise?;
40
- getSession(accountId: string): LocalAccountDTO | undefined;
41
- findSession(accountId: string): LocalAccountSession | undefined;
42
- findSessionByAddress(address: string): LocalAccountSession | undefined;
43
- selectAccountByAddress(address: string, password: string): Promise<LocalAccountDTO>;
44
- selectAccount(accountId: string, password: string): Promise<LocalAccountDTO>;
45
- private _selectAccount;
32
+ getSessions(): LocalAccountSession[];
33
+ protected login(accountController: AccountController, consumptionController: ConsumptionController): Promise<AppRuntimeServices>;
34
+ getServices(address: string | ICoreAddress): Promise<AppRuntimeServices>;
35
+ selectAccount(accountAddress: string, _password: string): Promise<LocalAccountSession>;
36
+ getOrCreateSession(accountReference: string): Promise<LocalAccountSession>;
37
+ private currentSessionPromise;
38
+ private createSession;
39
+ private _createSession;
46
40
  queryAccount(title?: string, description?: string): Promise<UserfriendlyResult<LocalAccountDTO>>;
47
41
  selectRelationship(id?: string): Promise<void>;
48
42
  getHealth(): Promise<RuntimeHealth>;
49
43
  protected initAccount(): Promise<void>;
50
44
  static create(nativeBootstrapper: INativeBootstrapper, appConfig?: AppConfigOverwrite): Promise<AppRuntime>;
51
45
  static createAndStart(nativeBootstrapper: INativeBootstrapper, appConfig?: AppConfigOverwrite): Promise<AppRuntime>;
52
- protected createLoggerFactory(): ILoggerFactory;
53
46
  protected createDatabaseConnection(): Promise<IDatabaseConnection>;
54
47
  private static moduleRegistry;
55
48
  static registerModule(moduleName: string, ctor: IAppRuntimeModuleConstructor): void;
@@ -12,12 +12,13 @@ const events_1 = require("./events");
12
12
  const extensibility_1 = require("./extensibility");
13
13
  const modules_1 = require("./modules");
14
14
  const multiAccount_1 = require("./multiAccount");
15
+ const SessionStorage_1 = require("./SessionStorage");
15
16
  const UserfriendlyResult_1 = require("./UserfriendlyResult");
16
17
  class AppRuntime extends runtime_1.Runtime {
17
18
  constructor(_nativeEnvironment, appConfig) {
18
19
  super(appConfig, _nativeEnvironment.loggerFactory);
19
20
  this._nativeEnvironment = _nativeEnvironment;
20
- this._availableSessions = [];
21
+ this.sessionStorage = new SessionStorage_1.SessionStorage();
21
22
  this.translationProvider = {
22
23
  translate: (key) => Promise.resolve(ts_utils_1.Result.ok(key))
23
24
  };
@@ -30,17 +31,15 @@ class AppRuntime extends runtime_1.Runtime {
30
31
  this._uiBridgePromise = new Promise((resolve) => {
31
32
  this._uiBridgeResolveFunction = resolve;
32
33
  });
33
- this._uiBridgePromise
34
- .then(() => {
35
- this._uiBridgePromise = undefined;
36
- this._uiBridgeResolveFunction = undefined;
37
- })
34
+ return this._uiBridgePromise
38
35
  .catch((e) => {
36
+ this.logger.error(e);
37
+ throw e;
38
+ })
39
+ .finally(() => {
39
40
  this._uiBridgePromise = undefined;
40
41
  this._uiBridgeResolveFunction = undefined;
41
- this.logger.error(e);
42
42
  });
43
- return this._uiBridgePromise;
44
43
  }
45
44
  registerUIBridge(uiBridge) {
46
45
  if (this._uiBridge) {
@@ -62,28 +61,22 @@ class AppRuntime extends runtime_1.Runtime {
62
61
  return this._nativeEnvironment;
63
62
  }
64
63
  get currentAccount() {
65
- if (!this._currentSession) {
66
- throw AppRuntimeErrors_1.AppRuntimeErrors.general.currentSessionUnavailable();
67
- }
68
- return this._currentSession.account;
64
+ return this.sessionStorage.currentSession.account;
65
+ }
66
+ get currentSession() {
67
+ return this.sessionStorage.currentSession;
68
+ }
69
+ getSessions() {
70
+ return this.sessionStorage.getSessions();
69
71
  }
70
72
  async login(accountController, consumptionController) {
71
73
  const services = await super.login(accountController, consumptionController);
72
74
  const appServices = new extensibility_1.AppServices(this, services.transportServices, services.consumptionServices, services.dataViewExpander);
73
75
  return { ...services, appServices };
74
76
  }
75
- get currentSession() {
76
- if (!this._currentSession) {
77
- throw AppRuntimeErrors_1.AppRuntimeErrors.general.currentSessionUnavailable();
78
- }
79
- return this._currentSession;
80
- }
81
- getServices(address) {
77
+ async getServices(address) {
82
78
  const addressString = typeof address === "string" ? address : address.toString();
83
- const session = this._availableSessions.find((session) => session.address === addressString);
84
- if (!session) {
85
- throw new Error(`Account ${addressString} not logged in.`);
86
- }
79
+ const session = await this.getOrCreateSession(addressString);
87
80
  return {
88
81
  transportServices: session.transportServices,
89
82
  consumptionServices: session.consumptionServices,
@@ -91,73 +84,42 @@ class AppRuntime extends runtime_1.Runtime {
91
84
  dataViewExpander: session.expander
92
85
  };
93
86
  }
94
- getSessions() {
95
- return this._availableSessions.map((session) => session.account);
96
- }
97
- getSession(accountId) {
98
- const session = this.findSession(accountId);
99
- if (session)
100
- return session.account;
101
- return undefined;
102
- }
103
- findSession(accountId) {
104
- return this._availableSessions.find((item) => item.account.id === accountId);
87
+ async selectAccount(accountAddress, _password) {
88
+ const session = await this.getOrCreateSession(accountAddress);
89
+ this.sessionStorage.currentSession = session;
90
+ return session;
105
91
  }
106
- findSessionByAddress(address) {
107
- return this._availableSessions.find((item) => item.address === address);
108
- }
109
- async selectAccountByAddress(address, password) {
110
- if (this._currentSession && this._currentSession.address === address) {
111
- return this._currentSession.account;
112
- }
113
- const availableSession = this.findSessionByAddress(address);
114
- let accountId = availableSession === null || availableSession === void 0 ? void 0 : availableSession.account.id;
115
- if (!accountId) {
116
- accountId = (await this.multiAccountController.getAccountByAddress(address)).id.toString();
92
+ async getOrCreateSession(accountReference) {
93
+ const existingSession = this.sessionStorage.findSession(accountReference);
94
+ if (existingSession) {
95
+ return existingSession;
117
96
  }
118
- return await this.selectAccount(accountId, password);
97
+ return await this.createSession(accountReference);
119
98
  }
120
- async selectAccount(accountId, password) {
99
+ async createSession(accountReference, masterPassword = "") {
121
100
  var _a;
122
- if (this._currentSession && this._currentSession.account.id === accountId) {
123
- return this._currentSession.account;
124
- }
125
- const availableSession = this.findSession(accountId);
126
- // If there is any select promise, we have to await it, even before returning an available session
127
- if (this._accountIdToPromise && this._accountIdToPromise !== accountId) {
128
- if (!availableSession) {
129
- // Another account is currently logging in and we also need to log in -> error
130
- throw AppRuntimeErrors_1.AppRuntimeErrors.multiAccount.concurrentLoginOfDifferentAccounts();
131
- }
132
- else {
133
- // Another account is currently logging in and we already have an open session -> await login of the other account but do not return
134
- await ((_a = this._selectAccountPromise) === null || _a === void 0 ? void 0 : _a.catch(() => {
135
- // ignore errors as they are caught by the caller of the promise
136
- }));
137
- }
101
+ const accountId = accountReference.length === 20
102
+ ? accountReference
103
+ : (await this.multiAccountController.getAccountByAddress(accountReference)).id.toString();
104
+ if (((_a = this.currentSessionPromise) === null || _a === void 0 ? void 0 : _a.accountId) === accountId) {
105
+ return await this.currentSessionPromise.promise;
138
106
  }
139
- else if (this._selectAccountPromise) {
140
- // Same account is currently logging in -> await login and return
141
- return await this._selectAccountPromise;
142
- }
143
- if (availableSession) {
144
- await this.login(availableSession.accountController, availableSession.consumptionController);
145
- this._currentSession = availableSession;
146
- this.eventBus.publish(new events_1.AccountSelectedEvent(availableSession.address, availableSession.account.id));
147
- return availableSession.account;
107
+ if (this.currentSessionPromise) {
108
+ await this.currentSessionPromise.promise.catch(() => {
109
+ // ignore
110
+ });
111
+ return await this.createSession(accountReference, masterPassword);
148
112
  }
149
- this._selectAccountPromise = this._selectAccount(accountId, password);
113
+ this.currentSessionPromise = { promise: this._createSession(accountReference, masterPassword), accountId };
150
114
  try {
151
- return await this._selectAccountPromise;
115
+ return await this.currentSessionPromise.promise;
152
116
  }
153
117
  finally {
154
- this._selectAccountPromise = undefined;
155
- this._accountIdToPromise = undefined;
118
+ this.currentSessionPromise = undefined;
156
119
  }
157
120
  }
158
- async _selectAccount(accountId, password) {
159
- this._accountIdToPromise = accountId;
160
- const [localAccount, accountController] = await this._multiAccountController.selectAccount(transport_1.CoreId.from(accountId), password);
121
+ async _createSession(accountId, masterPassword) {
122
+ const [localAccount, accountController] = await this._multiAccountController.selectAccount(transport_1.CoreId.from(accountId), masterPassword);
161
123
  if (!localAccount.address) {
162
124
  throw AppRuntimeErrors_1.AppRuntimeErrors.general.addressUnavailable().logWith(this.logger);
163
125
  }
@@ -174,10 +136,8 @@ class AppRuntime extends runtime_1.Runtime {
174
136
  accountController,
175
137
  consumptionController
176
138
  };
177
- this._availableSessions.push(session);
178
- this._currentSession = session;
179
- this.eventBus.publish(new events_1.AccountSelectedEvent(session.address, session.account.id));
180
- return session.account;
139
+ this.sessionStorage.addSession(session);
140
+ return session;
181
141
  }
182
142
  async queryAccount(title = "i18n://uibridge.accountSelection.title", description = "i18n://uibridge.accountSelection.description") {
183
143
  let selectedAccount;
@@ -199,20 +159,16 @@ class AppRuntime extends runtime_1.Runtime {
199
159
  return UserfriendlyResult_1.UserfriendlyResult.ok(selectedAccount);
200
160
  }
201
161
  async selectRelationship(id) {
202
- if (!this._currentSession) {
203
- throw AppRuntimeErrors_1.AppRuntimeErrors.general.currentSessionUnavailable().logWith(this.logger);
204
- }
205
162
  if (!id) {
206
- this._currentSession.selectedRelationship = undefined;
163
+ this.currentSession.selectedRelationship = undefined;
207
164
  return;
208
165
  }
209
166
  const result = await this.currentSession.appServices.relationships.renderRelationship(id);
210
- if (result.isError) {
167
+ if (result.isError)
211
168
  throw result.error;
212
- }
213
169
  const relationship = result.value;
214
- this._currentSession.selectedRelationship = relationship;
215
- this.eventBus.publish(new events_1.RelationshipSelectedEvent(this._currentSession.address, relationship));
170
+ this.currentSession.selectedRelationship = relationship;
171
+ this.eventBus.publish(new events_1.RelationshipSelectedEvent(this.currentSession.address, relationship));
216
172
  }
217
173
  getHealth() {
218
174
  const health = {
@@ -253,9 +209,6 @@ class AppRuntime extends runtime_1.Runtime {
253
209
  runtime.logger.trace("Runtime started");
254
210
  return runtime;
255
211
  }
256
- createLoggerFactory() {
257
- return this.nativeEnvironment.loggerFactory;
258
- }
259
212
  createDatabaseConnection() {
260
213
  this.logger.trace("Creating DatabaseConnection to LokiJS");
261
214
  this.lokiConnection = new docdb_access_loki_1.LokiJsConnection("./data", this.nativeEnvironment.databaseFactory);
@@ -1 +1 @@
1
- {"version":3,"file":"AppRuntime.js","sourceRoot":"","sources":["../src/AppRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppRuntime.js","sourceRoot":"","sources":["../src/AppRuntime.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,6 @@ declare class PushNotificationModule {
19
19
  }
20
20
  declare class MultiAccount {
21
21
  wrongRealm(): UserfriendlyApplicationError;
22
- concurrentLoginOfDifferentAccounts(): UserfriendlyApplicationError;
23
22
  }
24
23
  declare class Modules {
25
24
  readonly pushNotificationModule: PushNotificationModule;
@@ -48,9 +48,6 @@ class MultiAccount {
48
48
  wrongRealm() {
49
49
  return new UserfriendlyApplicationError_1.UserfriendlyApplicationError("error.runtime.MultiAccount.WrongRealm", "The given realm is invalid.");
50
50
  }
51
- concurrentLoginOfDifferentAccounts() {
52
- return new UserfriendlyApplicationError_1.UserfriendlyApplicationError("error.runtime.MultiAccount.ParallelLoginOfDifferentAccounts", "You cannot login different accounts concurrently. Please wait until the login is completed.");
53
- }
54
51
  }
55
52
  class Modules {
56
53
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"AppRuntimeErrors.js","sourceRoot":"","sources":["../src/AppRuntimeErrors.ts"],"names":[],"mappings":";;;AAAA,iFAA6E;AAE7E,MAAM,OAAO;IACF,yBAAyB;QAC5B,OAAO,IAAI,2DAA4B,CACnC,oDAAoD,EACpD,kFAAkF,CACrF,CAAA;IACL,CAAC;IAEM,kBAAkB;QACrB,OAAO,IAAI,2DAA4B,CACnC,6CAA6C,EAC7C,0GAA0G,CAC7G,CAAA;IACL,CAAC;IAEM,sBAAsB;QACzB,OAAO,IAAI,2DAA4B,CACnC,iDAAiD,EACjD,iFAAiF,CACpF,CAAA;IACL,CAAC;IAEM,kBAAkB,CAAC,KAAa;QACnC,OAAO,IAAI,2DAA4B,CACnC,6CAA6C,EAC7C,gDAAgD,EAChD,4DAA4D,EAC5D,KAAK,CACR,CAAA;IACL,CAAC;CACJ;AAED,MAAM,OAAO;IACF,cAAc,CAAC,cAAsB;QACxC,OAAO,IAAI,2DAA4B,CACnC,sCAAsC,EACtC,yCAAyC,EACzC,SAAS,EACT,cAAc,CACjB,CAAA;IACL,CAAC;IAEM,0BAA0B;QAC7B,OAAO,IAAI,2DAA4B,CACnC,+CAA+C,EAC/C,4CAA4C,CAC/C,CAAA;IACL,CAAC;IAEM,yBAAyB;QAC5B,OAAO,IAAI,2DAA4B,CACnC,oDAAoD,EACpD,iEAAiE,CACpE,CAAA;IACL,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,2DAA4B,CACnC,mCAAmC,EACnC,sDAAsD,CACzD,CAAA;IACL,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,2DAA4B,CACnC,oCAAoC,EACpC,sCAAsC,CACzC,CAAA;IACL,CAAC;CACJ;AAED,MAAM,sBAAsB;IACjB,uBAAuB,CAAC,OAAe,EAAE,SAAiB;QAC7D,OAAO,IAAI,2DAA4B,CACnC,qEAAqE,EACrE,oEAAoE,OAAO,GAAG,EAC9E,gGAAgG,EAChG,SAAS,CACZ,CAAA;IACL,CAAC;IAEM,yBAAyB,CAAC,OAAe,EAAE,SAAiB;QAC/D,OAAO,IAAI,2DAA4B,CACnC,uEAAuE,EACvE,wEAAwE,OAAO,GAAG,EAClF,+GAA+G,EAC/G,SAAS,CACZ,CAAA;IACL,CAAC;IAEM,4BAA4B,CAAC,OAAe,EAAE,SAAiB;QAClE,OAAO,IAAI,2DAA4B,CACnC,0EAA0E,EAC1E,0FAA0F,OAAO,GAAG,EACpG,gGAAgG,EAChG,SAAS,CACZ,CAAA;IACL,CAAC;CACJ;AAED,MAAM,YAAY;IACP,UAAU;QACb,OAAO,IAAI,2DAA4B,CAAC,uCAAuC,EAAE,6BAA6B,CAAC,CAAA;IACnH,CAAC;IAEM,kCAAkC;QACrC,OAAO,IAAI,2DAA4B,CACnC,6DAA6D,EAC7D,6FAA6F,CAChG,CAAA;IACL,CAAC;CACJ;AAED,MAAM,OAAO;IAAb;QACoB,2BAAsB,GAAG,IAAI,sBAAsB,EAAE,CAAA;IACzE,CAAC;CAAA;AAED,MAAa,gBAAgB;;AAA7B,4CAKC;AAJ0B,wBAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AACvB,wBAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AACvB,wBAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AACvB,6BAAY,GAAG,IAAI,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"AppRuntimeErrors.js","sourceRoot":"","sources":["../src/AppRuntimeErrors.ts"],"names":[],"mappings":";;;AAAA,iFAA6E;AAE7E,MAAM,OAAO;IACF,yBAAyB;QAC5B,OAAO,IAAI,2DAA4B,CACnC,oDAAoD,EACpD,kFAAkF,CACrF,CAAA;IACL,CAAC;IAEM,kBAAkB;QACrB,OAAO,IAAI,2DAA4B,CACnC,6CAA6C,EAC7C,0GAA0G,CAC7G,CAAA;IACL,CAAC;IAEM,sBAAsB;QACzB,OAAO,IAAI,2DAA4B,CACnC,iDAAiD,EACjD,iFAAiF,CACpF,CAAA;IACL,CAAC;IAEM,kBAAkB,CAAC,KAAa;QACnC,OAAO,IAAI,2DAA4B,CACnC,6CAA6C,EAC7C,gDAAgD,EAChD,4DAA4D,EAC5D,KAAK,CACR,CAAA;IACL,CAAC;CACJ;AAED,MAAM,OAAO;IACF,cAAc,CAAC,cAAsB;QACxC,OAAO,IAAI,2DAA4B,CACnC,sCAAsC,EACtC,yCAAyC,EACzC,SAAS,EACT,cAAc,CACjB,CAAA;IACL,CAAC;IAEM,0BAA0B;QAC7B,OAAO,IAAI,2DAA4B,CACnC,+CAA+C,EAC/C,4CAA4C,CAC/C,CAAA;IACL,CAAC;IAEM,yBAAyB;QAC5B,OAAO,IAAI,2DAA4B,CACnC,oDAAoD,EACpD,iEAAiE,CACpE,CAAA;IACL,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,2DAA4B,CACnC,mCAAmC,EACnC,sDAAsD,CACzD,CAAA;IACL,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,2DAA4B,CACnC,oCAAoC,EACpC,sCAAsC,CACzC,CAAA;IACL,CAAC;CACJ;AAED,MAAM,sBAAsB;IACjB,uBAAuB,CAAC,OAAe,EAAE,SAAiB;QAC7D,OAAO,IAAI,2DAA4B,CACnC,qEAAqE,EACrE,oEAAoE,OAAO,GAAG,EAC9E,gGAAgG,EAChG,SAAS,CACZ,CAAA;IACL,CAAC;IAEM,yBAAyB,CAAC,OAAe,EAAE,SAAiB;QAC/D,OAAO,IAAI,2DAA4B,CACnC,uEAAuE,EACvE,wEAAwE,OAAO,GAAG,EAClF,+GAA+G,EAC/G,SAAS,CACZ,CAAA;IACL,CAAC;IAEM,4BAA4B,CAAC,OAAe,EAAE,SAAiB;QAClE,OAAO,IAAI,2DAA4B,CACnC,0EAA0E,EAC1E,0FAA0F,OAAO,GAAG,EACpG,gGAAgG,EAChG,SAAS,CACZ,CAAA;IACL,CAAC;CACJ;AAED,MAAM,YAAY;IACP,UAAU;QACb,OAAO,IAAI,2DAA4B,CAAC,uCAAuC,EAAE,6BAA6B,CAAC,CAAA;IACnH,CAAC;CACJ;AAED,MAAM,OAAO;IAAb;QACoB,2BAAsB,GAAG,IAAI,sBAAsB,EAAE,CAAA;IACzE,CAAC;CAAA;AAED,MAAa,gBAAgB;;AAA7B,4CAKC;AAJ0B,wBAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AACvB,wBAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AACvB,wBAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AACvB,6BAAY,GAAG,IAAI,YAAY,EAAE,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { LocalAccountSession } from "./multiAccount";
2
+ export declare class SessionStorage {
3
+ private readonly _availableSessions;
4
+ private _currentSession?;
5
+ set currentSession(session: LocalAccountSession);
6
+ get currentSession(): LocalAccountSession;
7
+ getSessions(): LocalAccountSession[];
8
+ findSession(accountReference: string): LocalAccountSession | undefined;
9
+ addSession(session: LocalAccountSession): void;
10
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SessionStorage = void 0;
4
+ const AppRuntimeErrors_1 = require("./AppRuntimeErrors");
5
+ class SessionStorage {
6
+ constructor() {
7
+ this._availableSessions = [];
8
+ }
9
+ set currentSession(session) {
10
+ this._currentSession = session;
11
+ }
12
+ get currentSession() {
13
+ if (!this._currentSession) {
14
+ throw AppRuntimeErrors_1.AppRuntimeErrors.general.currentSessionUnavailable();
15
+ }
16
+ return this._currentSession;
17
+ }
18
+ getSessions() {
19
+ return this._availableSessions;
20
+ }
21
+ findSession(accountReference) {
22
+ return this._availableSessions.find((item) => item.account.address === accountReference || item.account.id === accountReference);
23
+ }
24
+ addSession(session) {
25
+ if (this.findSession(session.account.id))
26
+ throw new Error("Session already exists");
27
+ this._availableSessions.push(session);
28
+ }
29
+ }
30
+ exports.SessionStorage = SessionStorage;
31
+ //# sourceMappingURL=SessionStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionStorage.js","sourceRoot":"","sources":["../src/SessionStorage.ts"],"names":[],"mappings":";;;AAAA,yDAAqD;AAGrD,MAAa,cAAc;IAA3B;QACqB,uBAAkB,GAA0B,EAAE,CAAA;IA6BnE,CAAC;IA1BG,IAAW,cAAc,CAAC,OAA4B;QAClD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAA;IAClC,CAAC;IAED,IAAW,cAAc;QACrB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,MAAM,mCAAgB,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAA;SAC7D;QACD,OAAO,IAAI,CAAC,eAAe,CAAA;IAC/B,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,kBAAkB,CAAA;IAClC,CAAC;IAEM,WAAW,CAAC,gBAAwB;QACvC,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAC/B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,gBAAgB,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,gBAAgB,CAC9F,CAAA;IACL,CAAC;IAEM,UAAU,CAAC,OAA4B;QAC1C,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QAEnF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC;CACJ;AA9BD,wCA8BC"}
@@ -8,11 +8,11 @@ const crypto_1 = require("@nmshd/crypto");
8
8
  const runtime_1 = require("@nmshd/runtime");
9
9
  const transport_1 = require("@nmshd/transport");
10
10
  exports.buildInformation = {
11
- version: "2.0.0-beta.3",
12
- build: "20",
13
- date: "2022-07-27T15:01:10+00:00",
14
- commit: "d8bb3eb0723e4c3a153ae1561d253ffb6d31eba7",
15
- dependencies: {"@js-soft/docdb-access-loki":"^1.0.3","@js-soft/native-abstractions":"^1.2.0","@nmshd/runtime":"2.0.0-beta.10","lodash":"^4.17.21"},
11
+ version: "2.0.0-beta.4",
12
+ build: "21",
13
+ date: "2022-07-28T15:28:59+00:00",
14
+ commit: "1abd7bb193880b5b5632bd497e384057ad0abe05",
15
+ dependencies: {"@js-soft/docdb-access-loki":"^1.0.3","@js-soft/native-abstractions":"^1.2.0","@nmshd/runtime":"2.0.0-beta.12","lodash":"^4.17.21"},
16
16
  libraries: {
17
17
  serval: ts_serval_1.buildInformation,
18
18
  crypto: crypto_1.buildInformation,
@@ -4,4 +4,3 @@ export * from "./ExternalEventReceivedEvent";
4
4
  export * from "./MailReceivedEvent";
5
5
  export * from "./OnboardingChangeReceivedEvent";
6
6
  export * from "./RelationshipSelectedEvent";
7
- export * from "./RequestReceivedEvent";
@@ -20,5 +20,4 @@ __exportStar(require("./ExternalEventReceivedEvent"), exports);
20
20
  __exportStar(require("./MailReceivedEvent"), exports);
21
21
  __exportStar(require("./OnboardingChangeReceivedEvent"), exports);
22
22
  __exportStar(require("./RelationshipSelectedEvent"), exports);
23
- __exportStar(require("./RequestReceivedEvent"), exports);
24
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,gEAA6C;AAC7C,+DAA4C;AAC5C,sDAAmC;AACnC,kEAA+C;AAC/C,8DAA2C;AAC3C,yDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,gEAA6C;AAC7C,+DAA4C;AAC5C,sDAAmC;AACnC,kEAA+C;AAC/C,8DAA2C"}
@@ -15,12 +15,8 @@ class MailReceivedModule extends AppRuntimeModule_1.AppRuntimeModule {
15
15
  this.subscribeToEvent(events_1.MailReceivedEvent, this.handleMailReceived.bind(this));
16
16
  }
17
17
  async handleMailReceived(event) {
18
+ const session = await this.runtime.getOrCreateSession(event.eventTargetAddress);
18
19
  const mail = event.data;
19
- const session = this.runtime.findSessionByAddress(event.eventTargetAddress);
20
- if (!session) {
21
- this.logger.error(`No session found for address ${event.eventTargetAddress}`);
22
- return;
23
- }
24
20
  const sender = mail.createdBy;
25
21
  await this.runtime.nativeEnvironment.notificationAccess.schedule(mail.name, mail.createdBy.name, {
26
22
  callback: async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"MailReceivedModule.js","sourceRoot":"","sources":["../../../src/modules/appEvents/MailReceivedModule.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AACvD,yCAAgD;AAChD,0DAAqF;AAIrF,MAAa,uBAAwB,SAAQ,iCAAe;CAAG;AAA/D,0DAA+D;AAE/D,MAAa,kBAAmB,SAAQ,mCAA0C;IACvE,KAAK,CAAC,IAAI;QACb,qBAAqB;IACzB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,gBAAgB,CAAC,0BAAiB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChF,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,KAAwB;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAC3E,IAAI,CAAC,OAAO,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAA;YAC7E,OAAM;SACT;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QAE7B,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAC7F,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACjB,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YACpF,CAAC;SACJ,CAAC,CAAA;IACN,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,wBAAwB,EAAE,CAAA;IACnC,CAAC;CACJ;AA5BD,gDA4BC"}
1
+ {"version":3,"file":"MailReceivedModule.js","sourceRoot":"","sources":["../../../src/modules/appEvents/MailReceivedModule.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AACvD,yCAAgD;AAChD,0DAAqF;AAIrF,MAAa,uBAAwB,SAAQ,iCAAe;CAAG;AAA/D,0DAA+D;AAE/D,MAAa,kBAAmB,SAAQ,mCAA0C;IACvE,KAAK,CAAC,IAAI;QACb,qBAAqB;IACzB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,gBAAgB,CAAC,0BAAiB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChF,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,KAAwB;QACrD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAE/E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QAE7B,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAC7F,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACjB,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YACpF,CAAC;SACJ,CAAC,CAAA;IACN,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,wBAAwB,EAAE,CAAA;IACnC,CAAC;CACJ;AAzBD,gDAyBC"}
@@ -20,11 +20,7 @@ class OnboardingChangeReceivedModule extends AppRuntimeModule_1.AppRuntimeModule
20
20
  const identity = event.data.identity;
21
21
  let title = "";
22
22
  let text = "";
23
- const session = this.runtime.findSessionByAddress(event.eventTargetAddress);
24
- if (!session) {
25
- this.logger.error(`No session found for address ${event.eventTargetAddress}`);
26
- return;
27
- }
23
+ const session = await this.runtime.getOrCreateSession(event.eventTargetAddress);
28
24
  switch (change.status) {
29
25
  case runtime_1.RelationshipChangeStatus.Accepted:
30
26
  title = "Kontaktanfrage genehmigt";
@@ -1 +1 @@
1
- {"version":3,"file":"OnboardingChangeReceivedModule.js","sourceRoot":"","sources":["../../../src/modules/appEvents/OnboardingChangeReceivedModule.ts"],"names":[],"mappings":";;;AAAA,4CAAyD;AACzD,2DAAuD;AACvD,yCAA4D;AAC5D,0DAAqF;AAIrF,MAAa,mCAAoC,SAAQ,iCAAe;CAAG;AAA3E,kFAA2E;AAE3E,MAAa,8BAA+B,SAAQ,mCAAsD;IAC/F,KAAK,CAAC,IAAI;QACb,qBAAqB;IACzB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,gBAAgB,CAAC,sCAA6B,EAAE,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACxG,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAAC,KAAoC;QAC7E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAA;QACpC,IAAI,KAAK,GAAG,EAAE,CAAA;QACd,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAC3E,IAAI,CAAC,OAAO,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAA;YAC7E,OAAM;SACT;QACD,QAAQ,MAAM,CAAC,MAAM,EAAE;YACnB,KAAK,kCAAwB,CAAC,QAAQ;gBAClC,KAAK,GAAG,0BAA0B,CAAA;gBAClC,IAAI,GAAG,qBAAqB,QAAQ,CAAC,IAAI,gBAAgB,CAAA;gBACzD,MAAK;YAET,KAAK,kCAAwB,CAAC,OAAO;gBACjC,KAAK,GAAG,yBAAyB,CAAA;gBACjC,IAAI,GAAG,mCAAmC,QAAQ,CAAC,IAAI,WAAW,CAAA;gBAClE,MAAK;YAET,KAAK,kCAAwB,CAAC,QAAQ;gBAClC,KAAK,GAAG,0BAA0B,CAAA;gBAClC,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,oCAAoC,CAAA;gBAC3D,MAAK;YAET,KAAK,kCAAwB,CAAC,OAAO;gBACjC,KAAK,GAAG,8BAA8B,CAAA;gBACtC,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,uCAAuC,CAAA;gBAC9D,MAAK;SACZ;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE;YAC1E,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACjB,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;YACnG,CAAC;SACJ,CAAC,CAAA;IACN,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,wBAAwB,EAAE,CAAA;IACnC,CAAC;CACJ;AAlDD,wEAkDC"}
1
+ {"version":3,"file":"OnboardingChangeReceivedModule.js","sourceRoot":"","sources":["../../../src/modules/appEvents/OnboardingChangeReceivedModule.ts"],"names":[],"mappings":";;;AAAA,4CAAyD;AACzD,2DAAuD;AACvD,yCAA4D;AAC5D,0DAAqF;AAIrF,MAAa,mCAAoC,SAAQ,iCAAe;CAAG;AAA3E,kFAA2E;AAE3E,MAAa,8BAA+B,SAAQ,mCAAsD;IAC/F,KAAK,CAAC,IAAI;QACb,qBAAqB;IACzB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,gBAAgB,CAAC,sCAA6B,EAAE,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACxG,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAAC,KAAoC;QAC7E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAA;QACpC,IAAI,KAAK,GAAG,EAAE,CAAA;QACd,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAE/E,QAAQ,MAAM,CAAC,MAAM,EAAE;YACnB,KAAK,kCAAwB,CAAC,QAAQ;gBAClC,KAAK,GAAG,0BAA0B,CAAA;gBAClC,IAAI,GAAG,qBAAqB,QAAQ,CAAC,IAAI,gBAAgB,CAAA;gBACzD,MAAK;YAET,KAAK,kCAAwB,CAAC,OAAO;gBACjC,KAAK,GAAG,yBAAyB,CAAA;gBACjC,IAAI,GAAG,mCAAmC,QAAQ,CAAC,IAAI,WAAW,CAAA;gBAClE,MAAK;YAET,KAAK,kCAAwB,CAAC,QAAQ;gBAClC,KAAK,GAAG,0BAA0B,CAAA;gBAClC,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,oCAAoC,CAAA;gBAC3D,MAAK;YAET,KAAK,kCAAwB,CAAC,OAAO;gBACjC,KAAK,GAAG,8BAA8B,CAAA;gBACtC,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,uCAAuC,CAAA;gBAC9D,MAAK;SACZ;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE;YAC1E,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACjB,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;YACnG,CAAC;SACJ,CAAC,CAAA;IACN,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,wBAAwB,EAAE,CAAA;IACnC,CAAC;CACJ;AA/CD,wEA+CC"}
@@ -21,8 +21,7 @@ class AppSyncModule extends AppRuntimeModule_1.AppRuntimeModule {
21
21
  }
22
22
  async sync() {
23
23
  for (const session of this.runtime.getSessions()) {
24
- const services = this.runtime.getServices(session.address);
25
- const result = await services.transportServices.account.syncEverything();
24
+ const result = await session.transportServices.account.syncEverything();
26
25
  if (result.isError) {
27
26
  this.logger.error(result.error);
28
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AppSyncModule.js","sourceRoot":"","sources":["../../../src/modules/appSync/AppSyncModule.ts"],"names":[],"mappings":";;;AAAA,0DAAqF;AAMrF,MAAa,aAAc,SAAQ,mCAA4C;IAA/E;;QAEY,YAAO,GAAG,KAAK,CAAA;IAmC3B,CAAC;IAjCG,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAEM,IAAI;QACP,qBAAqB;IACzB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACvB,CAAC;IAEO,KAAK,CAAC,IAAI;QACd,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,OAAQ,CAAC,CAAA;YAC3D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,cAAc,EAAE,CAAA;YACxE,IAAI,MAAM,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAClC;SACJ;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAA;SACvF;IACL,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAClC,CAAC;CACJ;AArCD,sCAqCC"}
1
+ {"version":3,"file":"AppSyncModule.js","sourceRoot":"","sources":["../../../src/modules/appSync/AppSyncModule.ts"],"names":[],"mappings":";;;AAAA,0DAAqF;AAMrF,MAAa,aAAc,SAAQ,mCAA4C;IAA/E;;QAEY,YAAO,GAAG,KAAK,CAAA;IAkC3B,CAAC;IAhCG,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAEM,IAAI;QACP,qBAAqB;IACzB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACvB,CAAC;IAEO,KAAK,CAAC,IAAI;QACd,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,cAAc,EAAE,CAAA;YACvE,IAAI,MAAM,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAClC;SACJ;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAA;SACvF;IACL,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAClC,CAAC;CACJ;AApCD,sCAoCC"}
@@ -8,7 +8,7 @@ export declare class PushNotificationModule extends AppRuntimeModule<PushNotific
8
8
  private handleRemoteNotification;
9
9
  private handleTokenRegistration;
10
10
  private handleAccountSelected;
11
- registerPushTokenForLocalAccount(id: string, token: string): Promise<void>;
11
+ registerPushTokenForLocalAccount(address: string, token: string): Promise<void>;
12
12
  getNotificationTokenFromConfig(): Result<string>;
13
13
  stop(): void;
14
14
  }
@@ -21,28 +21,23 @@ class PushNotificationModule extends AppRuntimeModule_1.AppRuntimeModule {
21
21
  const notification = event.notification;
22
22
  const content = notification.content;
23
23
  try {
24
- const account = await this.runtime.selectAccountByAddress(content.accRef, "");
25
- const session = this.runtime.findSession(account.id.toString());
26
- if (!session) {
27
- this.logger.error(`No session found for account ref ${content.accRef}`);
28
- return;
29
- }
24
+ const services = await this.runtime.getServices(content.accRef);
30
25
  switch (content.eventName) {
31
26
  case IBackboneEventContent_1.BackboneEventName.DatawalletModificationsCreated:
32
- const walletResult = await session.transportServices.account.syncDatawallet();
27
+ const walletResult = await services.transportServices.account.syncDatawallet();
33
28
  if (walletResult.isError) {
34
29
  this.logger.error(walletResult);
35
30
  return;
36
31
  }
37
- this.runtime.eventBus.publish(new events_1.DatawalletSynchronizedEvent(session.address));
32
+ this.runtime.eventBus.publish(new events_1.DatawalletSynchronizedEvent(content.accRef));
38
33
  break;
39
34
  case IBackboneEventContent_1.BackboneEventName.ExternalEventCreated:
40
- const syncResult = await session.transportServices.account.syncEverything();
35
+ const syncResult = await services.transportServices.account.syncEverything();
41
36
  if (syncResult.isError) {
42
37
  this.logger.error(syncResult);
43
38
  return;
44
39
  }
45
- this.runtime.eventBus.publish(new events_1.ExternalEventReceivedEvent(session.address, syncResult.value.messages, syncResult.value.relationships));
40
+ this.runtime.eventBus.publish(new events_1.ExternalEventReceivedEvent(content.accRef, syncResult.value.messages, syncResult.value.relationships));
46
41
  break;
47
42
  default:
48
43
  break;
@@ -55,8 +50,8 @@ class PushNotificationModule extends AppRuntimeModule_1.AppRuntimeModule {
55
50
  async handleTokenRegistration(event) {
56
51
  try {
57
52
  this.logger.trace("PushNotificationModule.handleTokenRegistration", event);
58
- for (const account of this.runtime.getSessions()) {
59
- await this.registerPushTokenForLocalAccount(account.id, event.token);
53
+ for (const session of this.runtime.getSessions()) {
54
+ await this.registerPushTokenForLocalAccount(session.account.address, event.token);
60
55
  }
61
56
  }
62
57
  catch (e) {
@@ -64,33 +59,22 @@ class PushNotificationModule extends AppRuntimeModule_1.AppRuntimeModule {
64
59
  }
65
60
  }
66
61
  async handleAccountSelected(event) {
67
- try {
68
- this.logger.trace("PushNotificationModule.handleAccountSelected", event);
69
- const tokenResult = this.getNotificationTokenFromConfig();
70
- if (tokenResult.isSuccess) {
71
- await this.registerPushTokenForLocalAccount(event.data.localAccountId, tokenResult.value);
72
- }
73
- else {
74
- this.logger.error(tokenResult.error);
75
- }
76
- }
77
- catch (e) {
78
- this.logger.error(e);
62
+ this.logger.trace("PushNotificationModule.handleAccountSelected", event);
63
+ const tokenResult = this.getNotificationTokenFromConfig();
64
+ if (tokenResult.isError) {
65
+ this.logger.error(tokenResult.error);
66
+ return;
79
67
  }
68
+ await this.registerPushTokenForLocalAccount(event.data.address, tokenResult.value);
80
69
  }
81
- async registerPushTokenForLocalAccount(id, token) {
70
+ async registerPushTokenForLocalAccount(address, token) {
82
71
  if (!token) {
83
72
  throw AppRuntimeErrors_1.AppRuntimeErrors.modules.pushNotificationModule
84
73
  .tokenRegistrationNotPossible("The registered token was empty. This might be the case if you did not allow push notifications.")
85
74
  .logWith(this.logger);
86
75
  }
87
- const session = this.runtime.findSession(id);
88
- if (!session) {
89
- throw AppRuntimeErrors_1.AppRuntimeErrors.modules.pushNotificationModule
90
- .tokenRegistrationNotPossible("No session for this account found")
91
- .logWith(this.logger);
92
- }
93
- const deviceResult = await session.transportServices.account.getDeviceInfo();
76
+ const services = await this.runtime.getServices(address);
77
+ const deviceResult = await services.transportServices.account.getDeviceInfo();
94
78
  if (deviceResult.isError) {
95
79
  throw AppRuntimeErrors_1.AppRuntimeErrors.modules.pushNotificationModule
96
80
  .tokenRegistrationNotPossible("No device for this account found", deviceResult.error)
@@ -100,7 +84,7 @@ class PushNotificationModule extends AppRuntimeModule_1.AppRuntimeModule {
100
84
  const platform = this.runtime.nativeEnvironment.deviceInfoAccess.deviceInfo.pushService;
101
85
  const handle = token;
102
86
  const installationId = device.id;
103
- const result = await session.transportServices.account.registerPushNotificationToken({
87
+ const result = await services.transportServices.account.registerPushNotificationToken({
104
88
  platform,
105
89
  handle,
106
90
  installationId
@@ -111,7 +95,7 @@ class PushNotificationModule extends AppRuntimeModule_1.AppRuntimeModule {
111
95
  .logWith(this.logger);
112
96
  }
113
97
  else {
114
- this.logger.trace(`PushNotificationModule.registerPushTokenForLocalAccount: Token ${handle} registered for account ${id} on platform ${platform} and installationId ${installationId}`);
98
+ this.logger.trace(`PushNotificationModule.registerPushTokenForLocalAccount: Token ${handle} registered for account ${address} on platform ${platform} and installationId ${installationId}`);
115
99
  }
116
100
  }
117
101
  getNotificationTokenFromConfig() {