@casual-simulation/aux-vm 3.2.7-alpha.6385045848 → 3.2.7-alpha.6777319727

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.
package/auth/AuxAuth.d.ts CHANGED
@@ -105,6 +105,12 @@ export interface AuxAuth {
105
105
  * @param backgroundLogin Whether to only try to log in in the background. This will prevent any UI from popping up to log the user in but may not be able to login the user completely. Defaults to false.
106
106
  */
107
107
  login(backgroundLogin?: boolean): Promise<AuthData>;
108
+ /**
109
+ * Logs the user out.
110
+ * Returns a promise that resolves when the user is logged out.
111
+ * Only supported on protocol version 8 or more.
112
+ */
113
+ logout(): Promise<void>;
108
114
  /**
109
115
  * Gets a record key for the given record.
110
116
  * @param recordName The name of the record.
@@ -14,6 +14,10 @@ export interface AuthHelperInterface extends SubscriptionLike {
14
14
  * Gets whether this inst supports authentication.
15
15
  */
16
16
  supportsAuthentication: boolean;
17
+ /**
18
+ * Gets the current login status.
19
+ */
20
+ currentLoginStatus: LoginStatus | null;
17
21
  /**
18
22
  * Gets an observable that resolves whenever a login status is available.
19
23
  */
@@ -89,5 +93,9 @@ export interface AuthHelperInterface extends SubscriptionLike {
89
93
  * @param recordKey The record key.
90
94
  */
91
95
  getRecordKeyPolicy(recordKey: string): Promise<PublicRecordKeyPolicy>;
96
+ /**
97
+ * Logs the user out.
98
+ */
99
+ logout(): Promise<void>;
92
100
  }
93
101
  //# sourceMappingURL=AuthHelperInterface.d.ts.map
@@ -3,28 +3,38 @@ import { BotsState, Bot } from '@casual-simulation/aux-common';
3
3
  * Defines a base class for bot helper-like managers.
4
4
  */
5
5
  export declare abstract class BaseHelper<TBot extends Bot> {
6
- private _userId;
6
+ private _configBotId;
7
7
  /**
8
8
  * Creates a new bot helper.
9
- * @param userBotId The ID of the user's bot.
9
+ * @param configBotId The ID of the config bot.
10
10
  */
11
- constructor();
11
+ constructor(configBotId: string);
12
12
  /**
13
13
  * Gets the ID of the user's bot.
14
+ * @deprecated Use configBotId instead.
14
15
  */
15
16
  get userId(): string;
16
17
  /**
17
18
  * Sets the ID of the user's bot.
18
19
  */
19
20
  set userId(id: string);
21
+ /**
22
+ * Gets the ID of the config bot.
23
+ */
24
+ get configBotId(): string;
20
25
  /**
21
26
  * Gets all the bots that represent an object.
22
27
  */
23
28
  get objects(): TBot[];
24
29
  /**
25
30
  * Gets the bot for the current user.
31
+ * @deprecated Use configBot instead.
26
32
  */
27
33
  get userBot(): TBot;
34
+ /**
35
+ * Gets the config bot.
36
+ */
37
+ get configBot(): TBot;
28
38
  /**
29
39
  * Gets the current local bot state.
30
40
  */
@@ -5,22 +5,30 @@ import { getActiveObjects, } from '@casual-simulation/aux-common';
5
5
  export class BaseHelper {
6
6
  /**
7
7
  * Creates a new bot helper.
8
- * @param userBotId The ID of the user's bot.
8
+ * @param configBotId The ID of the config bot.
9
9
  */
10
- constructor() {
11
- this._userId = null;
10
+ constructor(configBotId) {
11
+ this._configBotId = null;
12
+ this._configBotId = configBotId;
12
13
  }
13
14
  /**
14
15
  * Gets the ID of the user's bot.
16
+ * @deprecated Use configBotId instead.
15
17
  */
16
18
  get userId() {
17
- return this._userId;
19
+ return this._configBotId;
18
20
  }
19
21
  /**
20
22
  * Sets the ID of the user's bot.
21
23
  */
22
24
  set userId(id) {
23
- this._userId = id;
25
+ this._configBotId = id;
26
+ }
27
+ /**
28
+ * Gets the ID of the config bot.
29
+ */
30
+ get configBotId() {
31
+ return this._configBotId;
24
32
  }
25
33
  /**
26
34
  * Gets all the bots that represent an object.
@@ -30,15 +38,22 @@ export class BaseHelper {
30
38
  }
31
39
  /**
32
40
  * Gets the bot for the current user.
41
+ * @deprecated Use configBot instead.
33
42
  */
34
43
  get userBot() {
35
- if (!this._userId) {
44
+ return this.configBot;
45
+ }
46
+ /**
47
+ * Gets the config bot.
48
+ */
49
+ get configBot() {
50
+ if (!this._configBotId) {
36
51
  return null;
37
52
  }
38
53
  if (!this.botsState) {
39
54
  return null;
40
55
  }
41
- return this.botsState[this._userId];
56
+ return this.botsState[this._configBotId];
42
57
  }
43
58
  }
44
59
  //# sourceMappingURL=BaseHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseHelper.js","sourceRoot":"","sources":["BaseHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,gBAAgB,GAEnB,MAAM,+BAA+B,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAgB,UAAU;IAG5B;;;OAGG;IACH;QANQ,YAAO,GAAW,IAAI,CAAC;IAMhB,CAAC;IAEhB;;OAEG;IACH,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,MAAM,CAAC,EAAU;QACjB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACP,OAAe,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACP,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO,IAAI,CAAC;SACf;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACjB,OAAO,IAAI,CAAC;SACf;QACD,OAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;CAMJ"}
1
+ {"version":3,"file":"BaseHelper.js","sourceRoot":"","sources":["BaseHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,gBAAgB,GAEnB,MAAM,+BAA+B,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAgB,UAAU;IAG5B;;;OAGG;IACH,YAAY,WAAmB;QANvB,iBAAY,GAAW,IAAI,CAAC;QAOhC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,MAAM,CAAC,EAAU;QACjB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACP,OAAe,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACT,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpB,OAAO,IAAI,CAAC;SACf;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACjB,OAAO,IAAI,CAAC;SACf;QACD,OAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;CAMJ"}
@@ -1,4 +1,4 @@
1
- import { BotIndex, StoredAux, ConnectionIndicator } from '@casual-simulation/aux-common';
1
+ import { BotIndex, StoredAux, PartitionAuthMessage } from '@casual-simulation/aux-common';
2
2
  import { Observable, Subject, SubscriptionLike } from 'rxjs';
3
3
  import { BotHelper } from './BotHelper';
4
4
  import { BotWatcher } from './BotWatcher';
@@ -33,6 +33,7 @@ export declare class BaseSimulation implements Simulation {
33
33
  * Gets the ID of the simulation that is currently being used.
34
34
  */
35
35
  get id(): string;
36
+ get configBotId(): string;
36
37
  /**
37
38
  * Gets whether the app is connected to the inst but may
38
39
  * or may not be synced to the inst.
@@ -54,15 +55,15 @@ export declare class BaseSimulation implements Simulation {
54
55
  get watcher(): BotWatcher;
55
56
  get connection(): ConnectionManager;
56
57
  get code(): CodeLanguageManager;
58
+ get onAuthMessage(): Observable<PartitionAuthMessage>;
57
59
  get localEvents(): Observable<RuntimeActions>;
58
60
  get onError(): Observable<AuxChannelErrorType>;
59
61
  get deviceEvents(): Observable<DeviceAction>;
60
62
  /**
61
63
  * Creates a new simulation for the given user and channel ID.
62
- * @param id The ID of the channel.
63
64
  * @param vm The VM that should be used.
64
65
  */
65
- constructor(id: string, vm: AuxVM);
66
+ constructor(vm: AuxVM);
66
67
  get onSubSimulationAdded(): Observable<Simulation>;
67
68
  get onSubSimulationRemoved(): Observable<Simulation>;
68
69
  /**
@@ -80,6 +81,7 @@ export declare class BaseSimulation implements Simulation {
80
81
  * Exports the causal tree for the simulation.
81
82
  */
82
83
  export(): Promise<StoredAux>;
84
+ sendAuthMessage(message: PartitionAuthMessage): Promise<void>;
83
85
  private _getTreeName;
84
86
  private _init;
85
87
  /**
@@ -93,11 +95,9 @@ export declare class BaseSimulation implements Simulation {
93
95
  protected _beforeVmInit(): void;
94
96
  /**
95
97
  * Creates a sub simulation from the given VM.
96
- * @param user The user that should be used by the sim.
97
- * @param id The ID of the sim.
98
98
  * @param vm The VM that the simulation should use.
99
99
  */
100
- protected _createSubSimulation(indicator: ConnectionIndicator, id: string, vm: AuxVM): BaseSimulation;
100
+ protected _createSubSimulation(vm: AuxVM): BaseSimulation;
101
101
  /**
102
102
  * Triggered after the VM is initialized.
103
103
  * Useful if services need to be configured after the VM has been initialized.
@@ -25,6 +25,9 @@ export class BaseSimulation {
25
25
  get id() {
26
26
  return this._id;
27
27
  }
28
+ get configBotId() {
29
+ return this._vm.configBotId;
30
+ }
28
31
  /**
29
32
  * Gets whether the app is connected to the inst but may
30
33
  * or may not be synced to the inst.
@@ -63,6 +66,9 @@ export class BaseSimulation {
63
66
  get code() {
64
67
  return this._code;
65
68
  }
69
+ get onAuthMessage() {
70
+ return this._vm.onAuthMessage;
71
+ }
66
72
  get localEvents() {
67
73
  return this._vm.localEvents.pipe(flatMap((e) => e));
68
74
  }
@@ -74,13 +80,11 @@ export class BaseSimulation {
74
80
  }
75
81
  /**
76
82
  * Creates a new simulation for the given user and channel ID.
77
- * @param id The ID of the channel.
78
83
  * @param vm The VM that should be used.
79
84
  */
80
- constructor(id, vm) {
85
+ constructor(vm) {
81
86
  this._vm = vm;
82
- this._vm.id = id;
83
- this._id = id;
87
+ this._id = vm.id;
84
88
  this._onSubSimulationAdded = new Subject();
85
89
  this._onSubSimulationRemoved = new Subject();
86
90
  this._subSimulations = new Map();
@@ -126,6 +130,9 @@ export class BaseSimulation {
126
130
  export() {
127
131
  return this._vm.export();
128
132
  }
133
+ sendAuthMessage(message) {
134
+ return this._vm.sendAuthMessage(message);
135
+ }
129
136
  _getTreeName(id) {
130
137
  return getTreeName(id);
131
138
  }
@@ -163,7 +170,7 @@ export class BaseSimulation {
163
170
  // during initialization.
164
171
  this._initBotWatcher();
165
172
  this._subscriptions.push(this._vm.subVMAdded.subscribe((vm) => __awaiter(this, void 0, void 0, function* () {
166
- const sim = this._createSubSimulation(vm.indicator, vm.id, vm.vm);
173
+ const sim = this._createSubSimulation(vm.vm);
167
174
  if (sim) {
168
175
  this._subSimulations.set(vm.id, sim);
169
176
  this._onSubSimulationAdded.next(sim);
@@ -179,12 +186,10 @@ export class BaseSimulation {
179
186
  }
180
187
  /**
181
188
  * Creates a sub simulation from the given VM.
182
- * @param user The user that should be used by the sim.
183
- * @param id The ID of the sim.
184
189
  * @param vm The VM that the simulation should use.
185
190
  */
186
- _createSubSimulation(indicator, id, vm) {
187
- return new BaseSimulation(id, vm);
191
+ _createSubSimulation(vm) {
192
+ return new BaseSimulation(vm);
188
193
  }
189
194
  /**
190
195
  * Triggered after the VM is initialized.
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSimulation.js","sourceRoot":"","sources":["BaseSimulation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseSimulation.js","sourceRoot":"","sources":["BaseSimulation.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export declare class BotHelper extends BaseHelper<PrecalculatedBot> {
20
20
  get inst(): string;
21
21
  /**
22
22
  * Creates a new bot helper.
23
+ * @param configBotId The ID of the config bot.
23
24
  * @param vm The VM that is in use.
24
25
  * @param batch Whether to batch bot updates together.
25
26
  */
@@ -22,15 +22,17 @@ export class BotHelper extends BaseHelper {
22
22
  }
23
23
  /**
24
24
  * Creates a new bot helper.
25
+ * @param configBotId The ID of the config bot.
25
26
  * @param vm The VM that is in use.
26
27
  * @param batch Whether to batch bot updates together.
27
28
  */
28
29
  constructor(vm, batch = true) {
29
- super();
30
+ super(vm.configBotId);
30
31
  this._botUpdates = [];
31
32
  this._batchPending = false;
32
33
  this._vm = vm;
33
34
  this._batchUpdates = batch;
35
+ this.userId = vm.configBotId;
34
36
  }
35
37
  /**
36
38
  * Gets the current local bot state.
@@ -1 +1 @@
1
- {"version":3,"file":"BotHelper.js","sourceRoot":"","sources":["BotHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BotHelper.js","sourceRoot":"","sources":["BotHelper.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ConnectionInfo, WebsocketErrorCode } from '@casual-simulation/aux-common';
1
+ import { ConnectionInfo, WebsocketErrorCode, WebsocketErrorInfo } from '@casual-simulation/aux-common';
2
2
  import { Observable, SubscriptionLike } from 'rxjs';
3
3
  import { AuxVM } from '../vm/AuxVM';
4
4
  /**
@@ -19,7 +19,7 @@ export interface LoginState {
19
19
  authenticated: boolean;
20
20
  authorized: boolean;
21
21
  info?: ConnectionInfo;
22
+ error?: WebsocketErrorInfo;
22
23
  authenticationError?: WebsocketErrorCode;
23
- authorizationError?: WebsocketErrorCode;
24
24
  }
25
25
  //# sourceMappingURL=LoginManager.d.ts.map
@@ -17,7 +17,7 @@ export class LoginManager {
17
17
  }
18
18
  else if (update.type === 'authorization' &&
19
19
  acc.authorized !== update.authorized) {
20
- return Object.assign(Object.assign({}, acc), { authorized: update.authorized, authorizationError: update.reason });
20
+ return Object.assign(Object.assign({}, acc), { authorized: update.authorized, error: update.error });
21
21
  }
22
22
  return acc;
23
23
  }, { authenticated: false, authorized: null }), startWith({ authenticated: false, authorized: null }), distinctUntilChanged(), shareReplay(1));
@@ -1 +1 @@
1
- {"version":3,"file":"LoginManager.js","sourceRoot":"","sources":["LoginManager.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,WAAW,EACX,IAAI,EACJ,SAAS,EACT,GAAG,EACH,oBAAoB,GACvB,MAAM,gBAAgB,CAAC;AAGxB;;GAEG;AACH,MAAM,OAAO,YAAY;IAMrB,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,YAAY,EAAS;QACjB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QAEd,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAC1D,IAAI,CACA,CAAC,GAAe,EAAE,MAAoB,EAAE,EAAE;YACtC,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE;gBAClC,uCACO,GAAG,KACN,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAClC,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,UAAU,EAAW,IAAI,IAC3B;aACL;iBAAM,IACH,MAAM,CAAC,IAAI,KAAK,eAAe;gBAC/B,GAAG,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU,EACtC;gBACE,uCACO,GAAG,KACN,UAAU,EAAE,MAAM,CAAC,UAAU,EAC7B,kBAAkB,EAAE,MAAM,CAAC,MAAM,IACnC;aACL;YACD,OAAO,GAAG,CAAC;QACf,CAAC,EACD,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAW,IAAI,EAAE,CACtD,EACD,SAAS,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAW,IAAI,EAAE,CAAC,EAC9D,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAC9C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,EAClC,oBAAoB,EAAE,CACzB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,WAAW;QACP,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;CACJ"}
1
+ {"version":3,"file":"LoginManager.js","sourceRoot":"","sources":["LoginManager.ts"],"names":[],"mappings":"AAQA,OAAO,EACH,WAAW,EACX,IAAI,EACJ,SAAS,EACT,GAAG,EACH,oBAAoB,GACvB,MAAM,gBAAgB,CAAC;AAGxB;;GAEG;AACH,MAAM,OAAO,YAAY;IAMrB,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,YAAY,EAAS;QACjB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QAEd,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAC1D,IAAI,CACA,CAAC,GAAe,EAAE,MAAoB,EAAE,EAAE;YACtC,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE;gBAClC,uCACO,GAAG,KACN,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAClC,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,UAAU,EAAW,IAAI,IAC3B;aACL;iBAAM,IACH,MAAM,CAAC,IAAI,KAAK,eAAe;gBAC/B,GAAG,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU,EACtC;gBACE,uCACO,GAAG,KACN,UAAU,EAAE,MAAM,CAAC,UAAU,EAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,IACrB;aACL;YACD,OAAO,GAAG,CAAC;QACf,CAAC,EACD,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAW,IAAI,EAAE,CACtD,EACD,SAAS,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAW,IAAI,EAAE,CAAC,EAC9D,oBAAoB,EAAE,EACtB,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAC9C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,EAClC,oBAAoB,EAAE,CACzB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,WAAW;QACP,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;CACJ"}
@@ -1,4 +1,4 @@
1
- import { BotIndex, StoredAux } from '@casual-simulation/aux-common';
1
+ import { BotIndex, StoredAux, PartitionAuthMessage } from '@casual-simulation/aux-common';
2
2
  import { BotWatcher } from './BotWatcher';
3
3
  import { Observable } from 'rxjs';
4
4
  import { DeviceAction } from '@casual-simulation/aux-common';
@@ -31,6 +31,10 @@ export interface Simulation extends Initable {
31
31
  * Gets the ID of the simulation that is currently being used.
32
32
  */
33
33
  id: string;
34
+ /**
35
+ * Gets the config bot ID for the simulation.
36
+ */
37
+ get configBotId(): string;
34
38
  /**
35
39
  * Gets whether the app is connected to the inst but may
36
40
  * or may not be synced to the inst.
@@ -77,6 +81,10 @@ export interface Simulation extends Initable {
77
81
  * Gets the observable list of errors from the simulation.
78
82
  */
79
83
  onError: Observable<AuxChannelErrorType>;
84
+ /**
85
+ * Gets the observable list of auth messages to and from the simulation.
86
+ */
87
+ onAuthMessage: Observable<PartitionAuthMessage>;
80
88
  /**
81
89
  * Gets the observable list of sub simulations that have been added.
82
90
  */
@@ -99,5 +107,10 @@ export interface Simulation extends Initable {
99
107
  * Exports the causal tree for the simulation.
100
108
  */
101
109
  export(): Promise<StoredAux>;
110
+ /**
111
+ * Sends the given auth message to the simulation.
112
+ * @param message The message.
113
+ */
114
+ sendAuthMessage(message: PartitionAuthMessage): Promise<void>;
102
115
  }
103
116
  //# sourceMappingURL=Simulation.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@casual-simulation/aux-vm",
3
- "version": "3.2.7-alpha.6385045848",
3
+ "version": "3.2.7-alpha.6777319727",
4
4
  "description": "A set of abstractions required to securely run an AUX.",
5
5
  "keywords": [
6
6
  "aux"
@@ -39,9 +39,9 @@
39
39
  "url": "https://github.com/casual-simulation/casualos/issues"
40
40
  },
41
41
  "dependencies": {
42
- "@casual-simulation/aux-common": "^3.2.7-alpha.6385045848",
43
- "@casual-simulation/aux-records": "^3.2.7-alpha.6385045848",
44
- "@casual-simulation/aux-runtime": "^3.2.7-alpha.6385045848",
42
+ "@casual-simulation/aux-common": "^3.2.7-alpha.6777319727",
43
+ "@casual-simulation/aux-records": "^3.2.7-alpha.6777319727",
44
+ "@casual-simulation/aux-runtime": "^3.2.7-alpha.6777319727",
45
45
  "@casual-simulation/crypto": "^3.2.0",
46
46
  "@casual-simulation/fast-json-stable-stringify": "^3.1.11",
47
47
  "@casual-simulation/timesync": "^3.1.28",
@@ -53,5 +53,5 @@
53
53
  "rxjs": "7.5.7",
54
54
  "uuid": "^8.3.2"
55
55
  },
56
- "gitHead": "2d6d8b2d8764aba957d36158f186a5d90ef4e536"
56
+ "gitHead": "cb79f312a97a8425a573a851f99f1774f50589ff"
57
57
  }
@@ -2,7 +2,7 @@ import { AuxConfig } from './AuxConfig';
2
2
  import { AuxChannelErrorType } from './AuxChannelErrorTypes';
3
3
  import { Observable, SubscriptionLike } from 'rxjs';
4
4
  import { RuntimeActions, RuntimeStateVersion } from '@casual-simulation/aux-runtime';
5
- import { BotAction, ConnectionIndicator, DeviceAction, StateUpdatedEvent, StatusUpdate, StoredAux } from '@casual-simulation/aux-common';
5
+ import { BotAction, DeviceAction, PartitionAuthMessage, StateUpdatedEvent, StatusUpdate, StoredAux } from '@casual-simulation/aux-common';
6
6
  /**
7
7
  * Defines an interface for the static members of an AUX.
8
8
  */
@@ -10,7 +10,7 @@ export interface AuxStatic {
10
10
  /**
11
11
  * Creates a new AUX using the given config.
12
12
  */
13
- new (defaultHost: string, indicator: ConnectionIndicator, config: AuxConfig): AuxChannel;
13
+ new (defaultHost: string, config: AuxConfig): AuxChannel;
14
14
  }
15
15
  /**
16
16
  * Defines an interface for an AUX.
@@ -41,6 +41,10 @@ export interface AuxChannel extends SubscriptionLike {
41
41
  * The observable that is resolved whenever an error occurs.
42
42
  */
43
43
  onError: Observable<AuxChannelErrorType>;
44
+ /**
45
+ * The observable that is resolved whenever an auth message is sent from a partition.
46
+ */
47
+ onAuthMessage: Observable<PartitionAuthMessage>;
44
48
  /**
45
49
  * The observable that is triggered whenever a sub channel has been added.
46
50
  */
@@ -58,8 +62,9 @@ export interface AuxChannel extends SubscriptionLike {
58
62
  * @param onError The callback that should be triggered whenever an error occurs.
59
63
  * @param onSubChannelAdded The callback that should be triggered whenever a sub channel is added.
60
64
  * @param onSubChannelRemoved The callback that should be triggered whenever a sub channel is removed.
65
+ * @param onAuthMessage The callback that should be triggered whenever an auth message is sent from a partition.
61
66
  */
62
- init(onLocalEvents?: (events: RuntimeActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void, onSubChannelAdded?: (channel: AuxSubChannel) => void, onSubChannelRemoved?: (channelId: string) => void): Promise<void>;
67
+ init(onLocalEvents?: (events: RuntimeActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void, onSubChannelAdded?: (channel: AuxSubChannel) => void, onSubChannelRemoved?: (channelId: string) => void, onAuthMessage?: (message: PartitionAuthMessage) => void): Promise<void>;
63
68
  /**
64
69
  * Initializes the AUX and waits for the connection to be initialized.
65
70
  * @param onLocalEvents The callback that should be triggered whenever a local event is emitted from the AUX.
@@ -69,8 +74,9 @@ export interface AuxChannel extends SubscriptionLike {
69
74
  * @param onError The callback that should be triggered whenever an error occurs.
70
75
  * @param onSubChannelAdded The callback that should be triggered whenever a sub channel is added.
71
76
  * @param onSubChannelRemoved The callback that should be triggered whenever a sub channel is removed.
77
+ * @param onAuthMessage The callback that should be triggered whenever an auth message is sent from a partition.
72
78
  */
73
- initAndWait(onLocalEvents?: (events: RuntimeActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void, onSubChannelAdded?: (channel: AuxSubChannel) => void, onSubChannelRemoved?: (channelId: string) => void): Promise<void>;
79
+ initAndWait(onLocalEvents?: (events: RuntimeActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void, onSubChannelAdded?: (channel: AuxSubChannel) => void, onSubChannelRemoved?: (channelId: string) => void, onAuthMessage?: (message: PartitionAuthMessage) => void): Promise<void>;
74
80
  /**
75
81
  * Registers the given listeners with the channel.
76
82
  * @param onLocalEvents The callback that should be triggered whenever a local event is emitted from the AUX.
@@ -80,8 +86,9 @@ export interface AuxChannel extends SubscriptionLike {
80
86
  * @param onError The callback that should be triggered whenever an error occurs.
81
87
  * @param onSubChannelAdded The callback that should be triggered whenever a sub channel is added.
82
88
  * @param onSubChannelRemoved The callback that should be triggered whenever a sub channel is removed.
89
+ * @param onAuthMessage The callback that should be triggered whenever an auth message is sent from a partition.
83
90
  */
84
- registerListeners(onLocalEvents?: (events: RuntimeActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void, onSubChannelAdded?: (channel: AuxSubChannel) => void, onSubChannelRemoved?: (channelId: string) => void): Promise<void>;
91
+ registerListeners(onLocalEvents?: (events: RuntimeActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void, onSubChannelAdded?: (channel: AuxSubChannel) => void, onSubChannelRemoved?: (channelId: string) => void, onAuthMessage?: (message: PartitionAuthMessage) => void): Promise<void>;
85
92
  /**
86
93
  * Sends the given list of bots events to the AUX for processing.
87
94
  * @param events The events.
@@ -119,6 +126,11 @@ export interface AuxChannel extends SubscriptionLike {
119
126
  * Gets the list of tags that are in use.
120
127
  */
121
128
  getTags(): Promise<string[]>;
129
+ /**
130
+ * Sends the given auth message.
131
+ * @param message The message to send.
132
+ */
133
+ sendAuthMessage(message: PartitionAuthMessage): Promise<void>;
122
134
  }
123
135
  export interface ChannelActionResult {
124
136
  /**
@@ -149,8 +161,8 @@ export interface AuxSubChannelInfo {
149
161
  */
150
162
  id: string;
151
163
  /**
152
- * The connection indicator to use for the sub channel.
164
+ * The ID of the config bot.
153
165
  */
154
- indicator: ConnectionIndicator;
166
+ configBotId: string;
155
167
  }
156
168
  //# sourceMappingURL=AuxChannel.d.ts.map
package/vm/AuxConfig.d.ts CHANGED
@@ -4,6 +4,13 @@ import { AuxDevice } from '@casual-simulation/aux-runtime';
4
4
  * Defines the possible configuration options for a simulation.
5
5
  */
6
6
  export interface AuxConfig {
7
+ /**
8
+ * The ID of the config bot.
9
+ */
10
+ configBotId: string;
11
+ /**
12
+ * The configuration parameters for the simulation.
13
+ */
7
14
  config: AuxConfigParameters;
8
15
  /**
9
16
  * Defines the partitioning structure for bots.
@@ -1 +1 @@
1
- {"version":3,"file":"AuxConfig.js","sourceRoot":"","sources":["AuxConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,QAAQ,GAIX,MAAM,+BAA+B,CAAC;AAkGvC,MAAM,UAAU,kBAAkB,CAAC,MAA2B;;IAC1D,IAAI,CAAC,MAAM,EAAE;QACT,OAAO,IAAI,CAAC;KACf;IACD,qCACI,IAAI,EAAE,MAAM,CAAC,WAAW,IACrB,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,KACrC,UAAU,EAAE,MAAA,MAAM,CAAC,UAAU,mCAAI,SAAS,IAC5C;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,EAAE;QACV,OAAO;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;SACd,CAAC;KACL;IACD,MAAM,YAAY,GAAG,2CAA2C,CAAC;IACjE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE1E,IAAI,KAAK,GAAqB,KAAK,CAAC;IACpC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;QACtB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;YAClB,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC5B;KACJ;IAED,OAAO;QACH,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK;KACR,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"AuxConfig.js","sourceRoot":"","sources":["AuxConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,QAAQ,GAIX,MAAM,+BAA+B,CAAC;AA0GvC,MAAM,UAAU,kBAAkB,CAAC,MAA2B;;IAC1D,IAAI,CAAC,MAAM,EAAE;QACT,OAAO,IAAI,CAAC;KACf;IACD,qCACI,IAAI,EAAE,MAAM,CAAC,WAAW,IACrB,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,KACrC,UAAU,EAAE,MAAA,MAAM,CAAC,UAAU,mCAAI,SAAS,IAC5C;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,EAAE;QACV,OAAO;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;SACd,CAAC;KACL;IACD,MAAM,YAAY,GAAG,2CAA2C,CAAC;IACjE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE1E,IAAI,KAAK,GAAqB,KAAK,CAAC;IACpC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;QACtB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;YAClB,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC5B;KACJ;IAED,OAAO;QACH,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK;KACR,CAAC;AACN,CAAC"}
package/vm/AuxHelper.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { BotsState, Bot, PartialBot, BotSpace, AuxPartitions, AuxPartition, BotCalculationContext, StoredAux, ConnectionIndicator } from '@casual-simulation/aux-common';
1
+ import { BotsState, Bot, PartialBot, BotSpace, AuxPartitions, AuxPartition, BotCalculationContext, StoredAux } from '@casual-simulation/aux-common';
2
2
  import { DeviceAction, RemoteActions } from '@casual-simulation/aux-common';
3
3
  import { Subject } from 'rxjs';
4
4
  import { BaseHelper } from '../managers/BaseHelper';
@@ -21,9 +21,11 @@ export declare class AuxHelper extends BaseHelper<Bot> {
21
21
  set supressLogs(value: boolean);
22
22
  /**
23
23
  * Creates a new bot helper.
24
+ * @param configBotId The ID of the config bot.
24
25
  * @param partitions The partitions that the helper should use.
26
+ * @param runtime The runtime that the helper should use.
25
27
  */
26
- constructor(partitions: AuxPartitions, runtime: AuxRuntime);
28
+ constructor(configBotId: string, partitions: AuxPartitions, runtime: AuxRuntime);
27
29
  /**
28
30
  * Gets the current local bot state.
29
31
  */
@@ -62,10 +64,10 @@ export declare class AuxHelper extends BaseHelper<Bot> {
62
64
  updateBot(bot: Bot, newData: PartialBot): Promise<void>;
63
65
  /**
64
66
  * Creates or updates the user bot for the given user.
65
- * @param user The user that the bot is for.
67
+ * @param botId The ID of the bot.
66
68
  * @param userBot The bot to update. If null or undefined then a bot will be created.
67
69
  */
68
- createOrUpdateUserBot(indicator: ConnectionIndicator, userBot: Bot): Promise<void>;
70
+ createOrUpdateUserBot(botId: string, userBot: Bot): Promise<void>;
69
71
  createOrUpdateBuilderBots(builder: string): Promise<void>;
70
72
  destroyBuilderBots(builder: string): Promise<void>;
71
73
  formulaBatch(formulas: string[]): Promise<void>;
package/vm/AuxHelper.js CHANGED
@@ -7,7 +7,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { getActiveObjects, createBot, merge, botAdded, botUpdated, tagsOnBot, getBotSpace, TEMPORARY_BOT_PARTITION_ID, hasValue, addState, calculateBotValue, getPartitionState, createPrecalculatedContext, runScript, asyncError, botRemoved, isBot, getBotsStateFromStoredAux, getConnectionId, } from '@casual-simulation/aux-common';
10
+ import { getActiveObjects, createBot, merge, botAdded, botUpdated, tagsOnBot, getBotSpace, TEMPORARY_BOT_PARTITION_ID, hasValue, addState, calculateBotValue, getPartitionState, createPrecalculatedContext, runScript, asyncError, botRemoved, isBot, getBotsStateFromStoredAux, } from '@casual-simulation/aux-common';
11
11
  import { Subject } from 'rxjs';
12
12
  import { union, sortBy, pick, transform } from 'lodash';
13
13
  import { BaseHelper } from '../managers/BaseHelper';
@@ -26,10 +26,12 @@ export class AuxHelper extends BaseHelper {
26
26
  }
27
27
  /**
28
28
  * Creates a new bot helper.
29
+ * @param configBotId The ID of the config bot.
29
30
  * @param partitions The partitions that the helper should use.
31
+ * @param runtime The runtime that the helper should use.
30
32
  */
31
- constructor(partitions, runtime) {
32
- super();
33
+ constructor(configBotId, partitions, runtime) {
34
+ super(configBotId);
33
35
  this._localEvents = new Subject();
34
36
  this._remoteEvents = new Subject();
35
37
  this._deviceEvents = new Subject();
@@ -190,15 +192,14 @@ export class AuxHelper extends BaseHelper {
190
192
  }
191
193
  /**
192
194
  * Creates or updates the user bot for the given user.
193
- * @param user The user that the bot is for.
195
+ * @param botId The ID of the bot.
194
196
  * @param userBot The bot to update. If null or undefined then a bot will be created.
195
197
  */
196
- createOrUpdateUserBot(indicator, userBot) {
198
+ createOrUpdateUserBot(botId, userBot) {
197
199
  return __awaiter(this, void 0, void 0, function* () {
198
200
  if (!userBot) {
199
- const connectionId = getConnectionId(indicator);
200
201
  this._log('[AuxHelper] Create user bot');
201
- yield this.createBot(connectionId, {}, TEMPORARY_BOT_PARTITION_ID in this._partitions
202
+ yield this.createBot(botId, {}, TEMPORARY_BOT_PARTITION_ID in this._partitions
202
203
  ? TEMPORARY_BOT_PARTITION_ID
203
204
  : undefined);
204
205
  this._log('[AuxHelper] User bot created');