@casual-simulation/aux-vm 3.1.12 → 3.1.14-alpha.3661157217

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/vm/AuxVM.d.ts CHANGED
@@ -38,6 +38,14 @@ export interface AuxVM extends Initable {
38
38
  * Gets an observable that resolves whenever an error occurs inside the VM.
39
39
  */
40
40
  onError: Observable<AuxChannelErrorType>;
41
+ /**
42
+ * Gets an observable that resolves whenever a VM is added.
43
+ */
44
+ subVMAdded: Observable<AuxSubVM>;
45
+ /**
46
+ * Gets an observable that resolves whenever a VM is removed.
47
+ */
48
+ subVMRemoved: Observable<AuxSubVM>;
41
49
  /**
42
50
  * Sets the user that the VM should be using.
43
51
  * @param user The user.
@@ -90,4 +98,21 @@ export interface AuxVM extends Initable {
90
98
  */
91
99
  createEndpoint?(): Promise<MessagePort>;
92
100
  }
101
+ /**
102
+ * Defines an interface for a Sub VM.
103
+ */
104
+ export interface AuxSubVM {
105
+ /**
106
+ * The sub vm.
107
+ */
108
+ vm: AuxVM;
109
+ /**
110
+ * The ID of the sub vm.
111
+ */
112
+ id: string;
113
+ /**
114
+ * The user for the sub VM.
115
+ */
116
+ user: AuxUser;
117
+ }
93
118
  //# sourceMappingURL=AuxVM.d.ts.map
@@ -1,5 +1,5 @@
1
- import { Subject, SubscriptionLike } from 'rxjs';
2
- import { AuxChannel, ChannelActionResult } from './AuxChannel';
1
+ import { Observable, Subject, SubscriptionLike } from 'rxjs';
2
+ import { AuxChannel, AuxSubChannel, ChannelActionResult } from './AuxChannel';
3
3
  import { AuxUser } from '../AuxUser';
4
4
  import { LocalActions, BotAction, StateUpdatedEvent, AuxPartitions, AuxPartition, PartitionConfig, AuxRuntime, AuxPartitionRealtimeEditModeProvider, LoadSpaceAction, RuntimeStateVersion } from '@casual-simulation/aux-common';
5
5
  import { AuxHelper } from './AuxHelper';
@@ -28,26 +28,32 @@ export declare abstract class BaseAuxChannel implements AuxChannel, Subscription
28
28
  private _version;
29
29
  private _timeSync;
30
30
  private _initStartTime;
31
+ private _subChannels;
31
32
  private _user;
32
33
  private _onLocalEvents;
33
34
  private _onDeviceEvents;
34
35
  private _onStateUpdated;
35
36
  private _onVersionUpdated;
36
37
  private _onConnectionStateChanged;
38
+ private _onSubChannelAdded;
39
+ private _onSubChannelRemoved;
37
40
  private _onError;
41
+ private _tagNameMapper;
38
42
  get onLocalEvents(): Subject<LocalActions[]>;
39
43
  get onDeviceEvents(): Subject<DeviceAction[]>;
40
44
  get onStateUpdated(): Subject<StateUpdatedEvent>;
41
45
  get onVersionUpdated(): Subject<RuntimeStateVersion>;
42
46
  get onConnectionStateChanged(): Subject<StatusUpdate>;
47
+ get onSubChannelAdded(): Observable<AuxSubChannel>;
48
+ get onSubChannelRemoved(): Observable<string>;
43
49
  get onError(): Subject<AuxChannelErrorType>;
44
50
  get helper(): AuxHelper;
45
51
  get timesync(): TimeSyncController;
46
52
  protected get user(): AuxUser;
47
53
  constructor(user: AuxUser, config: AuxConfig, options: AuxChannelOptions);
48
- init(onLocalEvents?: (events: LocalActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void): Promise<void>;
49
- initAndWait(onLocalEvents?: (events: LocalActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void): Promise<void>;
50
- registerListeners(onLocalEvents?: (events: LocalActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void): Promise<void>;
54
+ init(onLocalEvents?: (events: LocalActions[]) => 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>;
55
+ initAndWait(onLocalEvents?: (events: LocalActions[]) => 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>;
56
+ registerListeners(onLocalEvents?: (events: LocalActions[]) => 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>;
51
57
  private _init;
52
58
  protected _getCleanupSubscriptionsForPartition(partition: AuxPartition): SubscriptionLike[];
53
59
  /**
@@ -75,7 +81,7 @@ export declare abstract class BaseAuxChannel implements AuxChannel, Subscription
75
81
  protected _createAuxHelper(): AuxHelper;
76
82
  protected _createTimeSyncController(): TimeSyncController;
77
83
  protected _registerSubscriptions(): void;
78
- protected _registerStateSubscriptionsForPartition(partition: AuxPartition): void;
84
+ protected _registerStateSubscriptionsForPartition(partition: AuxPartition, runtime: AuxRuntime): void;
79
85
  protected _ensureSetup(): Promise<void>;
80
86
  protected _handleStatusUpdated(state: StatusUpdate): Promise<void>;
81
87
  /**
@@ -91,6 +97,18 @@ export declare abstract class BaseAuxChannel implements AuxChannel, Subscription
91
97
  protected _handleLocalEvents(e: LocalActions[]): void;
92
98
  protected _handleDeviceEvents(e: DeviceAction[]): void;
93
99
  protected _loadPartition(space: string, config: PartitionConfig, event: LoadSpaceAction): Promise<void>;
100
+ /**
101
+ * Creates an aux channel using the given runtime.
102
+ * @param runtime The runtime that should be used for the new channel.
103
+ * @param config The configuration that should be used.
104
+ */
105
+ protected abstract _createSubChannel(user: AuxUser, runtime: AuxRuntime, config: AuxConfig): BaseAuxChannel;
106
+ private _attachRuntime;
107
+ private _detachRuntime;
108
+ protected _handleSubChannelAdded(subChannel: AuxSubChannel): void;
109
+ protected _handleSubChannelRemoved(channelId: string): void;
110
+ private _createTagNameMapper;
111
+ private _mapTagAndSpaceNames;
94
112
  private _initUserBot;
95
113
  private _initPortalBots;
96
114
  private _initBuilderBots;
@@ -9,12 +9,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { Subject } from 'rxjs';
11
11
  import { tap, first, startWith } from 'rxjs/operators';
12
- import { BOT_SPACE_TAG, iteratePartitions, AuxRuntime, AuxPartitionRealtimeEditModeProvider, hasValue, asyncResult, addDebugApi, stateUpdatedEvent, registerBuiltinPortal, defineGlobalBot, isPromise, } from '@casual-simulation/aux-common';
12
+ import { BOT_SPACE_TAG, iteratePartitions, AuxRuntime, AuxPartitionRealtimeEditModeProvider, hasValue, asyncResult, addDebugApi, stateUpdatedEvent, registerBuiltinPortal, defineGlobalBot, isPromise, merge, asyncError, botAdded, botUpdated, createBot, getBotSpace, } from '@casual-simulation/aux-common';
13
13
  import { AuxHelper } from './AuxHelper';
14
14
  import { buildVersionNumber } from './AuxConfig';
15
15
  import { remapProgressPercent, } from '@casual-simulation/causal-trees';
16
16
  import { StatusHelper } from './StatusHelper';
17
- import { flatMap, pick } from 'lodash';
17
+ import { flatMap, mapKeys, mapValues, pick, transform } from 'lodash';
18
18
  import { CustomAppHelper } from '../portals/CustomAppHelper';
19
19
  import { v4 as uuid } from 'uuid';
20
20
  export class BaseAuxChannel {
@@ -29,8 +29,11 @@ export class BaseAuxChannel {
29
29
  this._onStateUpdated = new Subject();
30
30
  this._onVersionUpdated = new Subject();
31
31
  this._onConnectionStateChanged = new Subject();
32
+ this._onSubChannelAdded = new Subject();
33
+ this._onSubChannelRemoved = new Subject();
32
34
  this._onError = new Subject();
33
35
  this._eventBuffer = [];
36
+ this._subChannels = [];
34
37
  this._hasInitialState = false;
35
38
  this._version = {
36
39
  localSites: {},
@@ -77,6 +80,12 @@ export class BaseAuxChannel {
77
80
  get onConnectionStateChanged() {
78
81
  return this._onConnectionStateChanged;
79
82
  }
83
+ get onSubChannelAdded() {
84
+ return this._onSubChannelAdded;
85
+ }
86
+ get onSubChannelRemoved() {
87
+ return this._onSubChannelRemoved;
88
+ }
80
89
  get onError() {
81
90
  return this._onError;
82
91
  }
@@ -89,7 +98,7 @@ export class BaseAuxChannel {
89
98
  get user() {
90
99
  return this._user;
91
100
  }
92
- init(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError) {
101
+ init(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError, onSubChannelAdded, onSubChannelRemoved) {
93
102
  return __awaiter(this, void 0, void 0, function* () {
94
103
  if (onLocalEvents) {
95
104
  this.onLocalEvents.subscribe((e) => onLocalEvents(e));
@@ -106,22 +115,28 @@ export class BaseAuxChannel {
106
115
  if (onDeviceEvents) {
107
116
  this.onDeviceEvents.subscribe((e) => onDeviceEvents(e));
108
117
  }
118
+ if (onSubChannelAdded) {
119
+ this.onSubChannelAdded.subscribe((s) => onSubChannelAdded(s));
120
+ }
121
+ if (onSubChannelRemoved) {
122
+ this.onSubChannelRemoved.subscribe((s) => onSubChannelRemoved(s));
123
+ }
109
124
  // if (onError) {
110
125
  // this.onError.subscribe(onError);
111
126
  // }
112
127
  return yield this._init();
113
128
  });
114
129
  }
115
- initAndWait(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError) {
130
+ initAndWait(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError, onSubChannelAdded, onSubChannelRemoved) {
116
131
  return __awaiter(this, void 0, void 0, function* () {
117
132
  const promise = this.onConnectionStateChanged
118
133
  .pipe(first((s) => s.type === 'init'))
119
134
  .toPromise();
120
- yield this.init(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError);
135
+ yield this.init(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError, onSubChannelAdded, onSubChannelRemoved);
121
136
  yield promise;
122
137
  });
123
138
  }
124
- registerListeners(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError) {
139
+ registerListeners(onLocalEvents, onDeviceEvents, onStateUpdated, onVersionUpdated, onConnectionStateChanged, onError, onSubChannelAdded, onSubChannelRemoved) {
125
140
  return __awaiter(this, void 0, void 0, function* () {
126
141
  if (onLocalEvents) {
127
142
  this.onLocalEvents.subscribe((e) => onLocalEvents(e));
@@ -146,6 +161,12 @@ export class BaseAuxChannel {
146
161
  if (onDeviceEvents) {
147
162
  this.onDeviceEvents.subscribe((e) => onDeviceEvents(e));
148
163
  }
164
+ if (onSubChannelAdded) {
165
+ this.onSubChannelAdded.subscribe((s) => onSubChannelAdded(s));
166
+ }
167
+ if (onSubChannelRemoved) {
168
+ this.onSubChannelRemoved.subscribe((s) => onSubChannelRemoved(s));
169
+ }
149
170
  });
150
171
  }
151
172
  _init() {
@@ -217,6 +238,21 @@ export class BaseAuxChannel {
217
238
  sendEvents(events) {
218
239
  return __awaiter(this, void 0, void 0, function* () {
219
240
  if (this._hasInitialState) {
241
+ if (this._tagNameMapper) {
242
+ let mappedEvents = [];
243
+ for (let event of events) {
244
+ if (event.type === 'update_bot') {
245
+ mappedEvents.push(botUpdated(event.id, mapBotTagsAndSpace(event.update, this._tagNameMapper.reverse, (s) => s, null)));
246
+ }
247
+ else if (event.type === 'add_bot') {
248
+ mappedEvents.push(botAdded(mapBotTagsAndSpace(event.bot, this._tagNameMapper.reverse, (s) => s, 'shared')));
249
+ }
250
+ else {
251
+ mappedEvents.push(event);
252
+ }
253
+ }
254
+ events = mappedEvents;
255
+ }
220
256
  yield this._helper.transaction(...events);
221
257
  }
222
258
  else {
@@ -308,7 +344,7 @@ export class BaseAuxChannel {
308
344
  this._sendRemoteEvents(e);
309
345
  }));
310
346
  for (let [, partition] of iteratePartitions(this._partitions)) {
311
- this._registerStateSubscriptionsForPartition(partition);
347
+ this._registerStateSubscriptionsForPartition(partition, this._runtime);
312
348
  }
313
349
  if (this._timeSync) {
314
350
  this._subs.push(this._timeSync, this._timeSync.syncUpdated.subscribe(() => {
@@ -322,7 +358,7 @@ export class BaseAuxChannel {
322
358
  this._timeSync.init();
323
359
  }
324
360
  }
325
- _registerStateSubscriptionsForPartition(partition) {
361
+ _registerStateSubscriptionsForPartition(partition, runtime) {
326
362
  this._subs.push(partition.onStateUpdated
327
363
  .pipe(tap((e) => {
328
364
  if (e.addedBots.length <= 0 &&
@@ -330,11 +366,15 @@ export class BaseAuxChannel {
330
366
  e.updatedBots.length <= 0) {
331
367
  return;
332
368
  }
333
- this._handleStateUpdated(this._runtime.stateUpdated(e));
369
+ let finalState = runtime.stateUpdated(e);
370
+ if (this._tagNameMapper) {
371
+ finalState = this._mapTagAndSpaceNames(finalState, this._tagNameMapper);
372
+ }
373
+ this._handleStateUpdated(finalState);
334
374
  }))
335
375
  .subscribe(null, (e) => console.error(e)), partition.onVersionUpdated
336
376
  .pipe(tap((v) => {
337
- this._version = this._runtime.versionUpdated(v);
377
+ this._version = runtime.versionUpdated(v);
338
378
  this._onVersionUpdated.next(this._version);
339
379
  }))
340
380
  .subscribe(null, (e) => console.error(e)));
@@ -343,7 +383,6 @@ export class BaseAuxChannel {
343
383
  return __awaiter(this, void 0, void 0, function* () {
344
384
  // console.log('[AuxChannel] Got Tree:', this._aux.tree.site.id);
345
385
  if (!this._runtime) {
346
- this._partitions;
347
386
  this._runtime = this._createRuntime();
348
387
  this._subs.push(this._runtime);
349
388
  }
@@ -440,6 +479,12 @@ export class BaseAuxChannel {
440
479
  if (event.type === 'load_space') {
441
480
  this._loadPartition(event.space, event.config, event);
442
481
  }
482
+ else if (event.type === 'attach_runtime') {
483
+ this._attachRuntime(event.runtime, event);
484
+ }
485
+ else if (event.type === 'detach_runtime') {
486
+ this._detachRuntime(event.runtime, event);
487
+ }
443
488
  }
444
489
  this._portalHelper.handleEvents(e);
445
490
  const copiableEvents = e.filter((e) => !e.uncopiable);
@@ -474,10 +519,176 @@ export class BaseAuxChannel {
474
519
  }
475
520
  partition.connect();
476
521
  if (this._hasRegisteredSubs) {
477
- this._registerStateSubscriptionsForPartition(partition);
522
+ this._registerStateSubscriptionsForPartition(partition, this._runtime);
523
+ }
524
+ });
525
+ }
526
+ _attachRuntime(runtime, event) {
527
+ return __awaiter(this, void 0, void 0, function* () {
528
+ try {
529
+ const newUserId = uuid();
530
+ const channelId = uuid();
531
+ let initialStates = {};
532
+ for (let id in runtime.currentState) {
533
+ const bot = runtime.currentState[id];
534
+ const space = getBotSpace(bot);
535
+ if (!initialStates[space]) {
536
+ initialStates[space] = {};
537
+ }
538
+ initialStates[space][id] = createBot(id, bot.tags, space);
539
+ }
540
+ const partitions = mapValues(this._config.partitions, (p, space) => {
541
+ var _a;
542
+ return {
543
+ type: 'memory',
544
+ initialState: (_a = initialStates[space]) !== null && _a !== void 0 ? _a : {},
545
+ };
546
+ });
547
+ const channel = this._createSubChannel({
548
+ id: newUserId,
549
+ name: newUserId,
550
+ token: newUserId,
551
+ username: newUserId,
552
+ }, runtime, {
553
+ config: Object.assign({}, this._config.config),
554
+ // Map all partitions to memory partitions for now
555
+ partitions,
556
+ });
557
+ channel._runtime.userId = newUserId;
558
+ channel._tagNameMapper = this._createTagNameMapper(event.tagNameMapper);
559
+ const subChannel = {
560
+ getInfo: () => __awaiter(this, void 0, void 0, function* () {
561
+ return ({
562
+ id: channelId,
563
+ user: Object.assign(Object.assign({}, this._user), { id: newUserId }),
564
+ });
565
+ }),
566
+ getChannel: () => __awaiter(this, void 0, void 0, function* () { return channel; }),
567
+ };
568
+ this._subChannels.push({
569
+ channel,
570
+ id: channelId,
571
+ });
572
+ this._subs.push(channel);
573
+ this._handleSubChannelAdded(subChannel);
574
+ if (hasValue(event.taskId)) {
575
+ this.sendEvents([asyncResult(event.taskId, null)]);
576
+ }
577
+ }
578
+ catch (err) {
579
+ if (hasValue(event.taskId)) {
580
+ this.sendEvents([asyncError(event.taskId, err)]);
581
+ }
582
+ }
583
+ });
584
+ }
585
+ _detachRuntime(runtime, event) {
586
+ return __awaiter(this, void 0, void 0, function* () {
587
+ try {
588
+ const index = this._subChannels.findIndex((c) => c.channel._runtime === runtime);
589
+ if (index < 0) {
590
+ if (hasValue(event.taskId)) {
591
+ this.sendEvents([asyncResult(event.taskId, null)]);
592
+ }
593
+ return;
594
+ }
595
+ const { channel, id } = this._subChannels[index];
596
+ channel.unsubscribe();
597
+ this._subChannels.splice(index, 1);
598
+ const subIndex = this._subs.indexOf(channel);
599
+ if (subIndex >= 0) {
600
+ this._subs.splice(subIndex, 1);
601
+ }
602
+ this._handleSubChannelRemoved(id);
603
+ if (hasValue(event.taskId)) {
604
+ this.sendEvents([asyncResult(event.taskId, null)]);
605
+ }
606
+ }
607
+ catch (err) {
608
+ if (hasValue(event.taskId)) {
609
+ this.sendEvents([asyncError(event.taskId, err)]);
610
+ }
478
611
  }
479
612
  });
480
613
  }
614
+ _handleSubChannelAdded(subChannel) {
615
+ this._onSubChannelAdded.next(subChannel);
616
+ }
617
+ _handleSubChannelRemoved(channelId) {
618
+ this._onSubChannelRemoved.next(channelId);
619
+ }
620
+ _createTagNameMapper(tagNameMapper) {
621
+ const tagNameMap = new Map();
622
+ const reverseTagNameMap = new Map();
623
+ const forwardTagNameMapper = (name) => {
624
+ if (tagNameMap.has(name)) {
625
+ return tagNameMap.get(name);
626
+ }
627
+ if (tagNameMapper === null || tagNameMapper === void 0 ? void 0 : tagNameMapper.forward) {
628
+ const mapped = tagNameMapper.forward(name);
629
+ if (mapped !== name) {
630
+ if (tagNameMap.has(name) &&
631
+ tagNameMap.get(name) !== mapped) {
632
+ console.warn('[BaseAuxChannel] It is not possible to map multiple different tag names to the same name.');
633
+ return name;
634
+ }
635
+ else if (reverseTagNameMap.has(mapped) &&
636
+ reverseTagNameMap.get(mapped) !== name) {
637
+ console.warn('[BaseAuxChannel] It is not possible to map multiple different tag names to the same name.');
638
+ return name;
639
+ }
640
+ tagNameMap.set(name, mapped);
641
+ reverseTagNameMap.set(mapped, name);
642
+ }
643
+ return mapped;
644
+ }
645
+ return name;
646
+ };
647
+ const reverseTagNameMapper = (name) => {
648
+ if (reverseTagNameMap.has(name)) {
649
+ return reverseTagNameMap.get(name);
650
+ }
651
+ if (tagNameMapper === null || tagNameMapper === void 0 ? void 0 : tagNameMapper.reverse) {
652
+ const mapped = tagNameMapper.reverse(name);
653
+ if (mapped !== name) {
654
+ if (reverseTagNameMap.has(name) &&
655
+ reverseTagNameMap.get(name) !== mapped) {
656
+ console.warn('[BaseAuxChannel] It is not possible to map multiple different tag names to the same name.');
657
+ return name;
658
+ }
659
+ else if (tagNameMap.has(mapped) &&
660
+ tagNameMap.get(mapped) !== name) {
661
+ console.warn('[BaseAuxChannel] It is not possible to map multiple different tag names to the same name.');
662
+ return name;
663
+ }
664
+ reverseTagNameMap.set(name, mapped);
665
+ tagNameMap.set(mapped, name);
666
+ }
667
+ return mapped;
668
+ }
669
+ return name;
670
+ };
671
+ return {
672
+ forward: forwardTagNameMapper,
673
+ reverse: reverseTagNameMapper,
674
+ };
675
+ }
676
+ _mapTagAndSpaceNames(update, tagNameMapper) {
677
+ const u = {
678
+ state: Object.assign({}, update.state),
679
+ addedBots: update.addedBots,
680
+ removedBots: update.removedBots,
681
+ updatedBots: update.updatedBots,
682
+ version: update.version,
683
+ };
684
+ for (let added of update.addedBots) {
685
+ u.state[added] = mapBotTagsAndSpace(update.state[added], tagNameMapper.forward, (s) => s, 'shared');
686
+ }
687
+ for (let updated of update.updatedBots) {
688
+ u.state[updated] = mapBotTagsAndSpace(update.state[updated], tagNameMapper.forward, (s) => s, null);
689
+ }
690
+ return u;
691
+ }
481
692
  _initUserBot() {
482
693
  return __awaiter(this, void 0, void 0, function* () {
483
694
  if (!this.user) {
@@ -556,4 +767,39 @@ export class BaseAuxChannel {
556
767
  }
557
768
  }
558
769
  addDebugApi('getChannel', () => null);
770
+ function mapBotTagsAndSpace(bot, tagNameMapper, spaceNameMapper, defaultSpace) {
771
+ if (hasValue(bot.space)) {
772
+ const space = spaceNameMapper(bot.space);
773
+ if (space !== bot.space) {
774
+ bot = merge(bot, {
775
+ space,
776
+ });
777
+ }
778
+ }
779
+ else if (defaultSpace && defaultSpace !== bot.space) {
780
+ bot = merge(bot, {
781
+ space: defaultSpace,
782
+ });
783
+ }
784
+ let merger = {};
785
+ let hasMerger = false;
786
+ if (hasValue(bot.tags)) {
787
+ merger.tags = mapKeys(bot.tags, (v, k) => tagNameMapper(k));
788
+ hasMerger = true;
789
+ }
790
+ if (hasValue(bot.values)) {
791
+ merger.values = mapKeys(bot.values, (v, k) => tagNameMapper(k));
792
+ hasMerger = true;
793
+ }
794
+ if (hasValue(bot.masks)) {
795
+ merger.masks = transform(bot.masks, (result, value, key) => {
796
+ result[spaceNameMapper(key)] = mapKeys(value, (v, k) => tagNameMapper(k));
797
+ }, {});
798
+ hasMerger = true;
799
+ }
800
+ if (hasMerger) {
801
+ bot = Object.assign({}, bot, merger);
802
+ }
803
+ return bot;
804
+ }
559
805
  //# sourceMappingURL=BaseAuxChannel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAuxChannel.js","sourceRoot":"","sources":["BaseAuxChannel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseAuxChannel.js","sourceRoot":"","sources":["BaseAuxChannel.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AuxVM } from '../AuxVM';
1
+ import { AuxSubVM, AuxVM } from '../AuxVM';
2
2
  import { Observable, Subject } from 'rxjs';
3
3
  import { AuxChannelErrorType } from '../AuxChannelErrorTypes';
4
4
  import { LocalActions, BotAction, BotsState, StateUpdatedEvent, RuntimeStateVersion } from '@casual-simulation/aux-common';
@@ -19,6 +19,8 @@ export declare class TestAuxVM implements AuxVM {
19
19
  connectionStateChanged: Subject<StatusUpdate>;
20
20
  versionUpdated: Subject<RuntimeStateVersion>;
21
21
  onError: Subject<AuxChannelErrorType>;
22
+ subVMAdded: Subject<AuxSubVM>;
23
+ subVMRemoved: Subject<AuxSubVM>;
22
24
  grant: string;
23
25
  user: AuxUser;
24
26
  get stateUpdated(): Observable<StateUpdatedEvent>;
@@ -35,6 +35,8 @@ export class TestAuxVM {
35
35
  this.connectionStateChanged = new Subject();
36
36
  this.onError = new Subject();
37
37
  this.versionUpdated = new Subject();
38
+ this.subVMAdded = new Subject();
39
+ this.subVMRemoved = new Subject();
38
40
  }
39
41
  get stateUpdated() {
40
42
  return this._stateUpdated;
@@ -1 +1 @@
1
- {"version":3,"file":"TestAuxVM.js","sourceRoot":"","sources":["TestAuxVM.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TestAuxVM.js","sourceRoot":"","sources":["TestAuxVM.ts"],"names":[],"mappings":"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"}