@casual-simulation/aux-vm-deno 3.2.6 → 3.2.7-alpha.6226622763
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/managers/DenoSimulation.d.ts +9 -5
- package/managers/DenoSimulation.js +28 -17
- package/managers/DenoSimulation.js.map +1 -1
- package/package.json +6 -6
- package/vm/DenoAuxChannel.d.ts +5 -5
- package/vm/DenoAuxChannel.js +4 -20
- package/vm/DenoAuxChannel.js.map +1 -1
- package/vm/DenoVM.d.ts +7 -8
- package/vm/DenoVM.js +6 -20
- package/vm/DenoVM.js.map +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { AuxPartitionConfig } from '@casual-simulation/aux-common';
|
|
2
|
-
import {
|
|
1
|
+
import { AuxPartitionConfig, ConnectionIndicator } from '@casual-simulation/aux-common';
|
|
2
|
+
import { BaseSimulation, LoginManager } from '@casual-simulation/aux-vm';
|
|
3
3
|
import { DenoVM } from '../vm/DenoVM';
|
|
4
|
-
import { PortalManager, ProgressManager } from '@casual-simulation/aux-vm/managers';
|
|
4
|
+
import { PortalManager, ProgressManager, SimulationOrigin } from '@casual-simulation/aux-vm/managers';
|
|
5
5
|
import { RemoteSimulation } from '@casual-simulation/aux-vm-client';
|
|
6
6
|
/**
|
|
7
7
|
* Defines an interface for objects that represent bot simulations.
|
|
@@ -20,11 +20,15 @@ export declare class DenoSimulationImpl extends BaseSimulation implements DenoSi
|
|
|
20
20
|
private _login;
|
|
21
21
|
private _progress;
|
|
22
22
|
private _portals;
|
|
23
|
+
private _origin;
|
|
24
|
+
get origin(): SimulationOrigin;
|
|
25
|
+
get inst(): string;
|
|
26
|
+
get recordName(): string;
|
|
23
27
|
get login(): LoginManager;
|
|
24
28
|
get progress(): ProgressManager;
|
|
25
29
|
get portals(): PortalManager;
|
|
26
|
-
static createPartitions(id: string,
|
|
27
|
-
constructor(
|
|
30
|
+
static createPartitions(id: string, indicator: ConnectionIndicator, defaultHost: string): AuxPartitionConfig;
|
|
31
|
+
constructor(indicator: ConnectionIndicator, origin: SimulationOrigin, id: string, vm: DenoVM);
|
|
28
32
|
protected _beforeVmInit(): void;
|
|
29
33
|
}
|
|
30
34
|
//# sourceMappingURL=DenoSimulation.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { parseSimulationId, TEMPORARY_BOT_PARTITION_ID,
|
|
2
|
-
import { BaseSimulation, LoginManager
|
|
1
|
+
import { parseSimulationId, TEMPORARY_BOT_PARTITION_ID, TEMPORARY_SHARED_PARTITION_ID, REMOTE_TEMPORARY_SHARED_PARTITION_ID, getConnectionId, DEFAULT_BRANCH_NAME, } from '@casual-simulation/aux-common';
|
|
2
|
+
import { BaseSimulation, LoginManager } from '@casual-simulation/aux-vm';
|
|
3
3
|
import { PortalManager, ProgressManager, } from '@casual-simulation/aux-vm/managers';
|
|
4
4
|
import { getFinalUrl } from '@casual-simulation/aux-vm-client';
|
|
5
5
|
/**
|
|
@@ -7,6 +7,16 @@ import { getFinalUrl } from '@casual-simulation/aux-vm-client';
|
|
|
7
7
|
* to reactively edit bots.
|
|
8
8
|
*/
|
|
9
9
|
export class DenoSimulationImpl extends BaseSimulation {
|
|
10
|
+
get origin() {
|
|
11
|
+
return this._origin;
|
|
12
|
+
}
|
|
13
|
+
get inst() {
|
|
14
|
+
var _a;
|
|
15
|
+
return (_a = this._origin.inst) !== null && _a !== void 0 ? _a : this.id;
|
|
16
|
+
}
|
|
17
|
+
get recordName() {
|
|
18
|
+
return this._origin.recordName;
|
|
19
|
+
}
|
|
10
20
|
get login() {
|
|
11
21
|
return this._login;
|
|
12
22
|
}
|
|
@@ -16,44 +26,45 @@ export class DenoSimulationImpl extends BaseSimulation {
|
|
|
16
26
|
get portals() {
|
|
17
27
|
return this._portals;
|
|
18
28
|
}
|
|
19
|
-
static createPartitions(id,
|
|
29
|
+
static createPartitions(id, indicator, defaultHost) {
|
|
20
30
|
const parsedId = parseSimulationId(id);
|
|
21
31
|
const host = getFinalUrl(defaultHost, parsedId.host);
|
|
32
|
+
const connectionId = getConnectionId(indicator);
|
|
22
33
|
return {
|
|
23
34
|
shared: {
|
|
24
|
-
type: '
|
|
25
|
-
|
|
35
|
+
type: 'remote_yjs',
|
|
36
|
+
recordName: null,
|
|
37
|
+
inst: parsedId.channel,
|
|
38
|
+
branch: DEFAULT_BRANCH_NAME,
|
|
26
39
|
host: host,
|
|
27
40
|
},
|
|
28
|
-
[ADMIN_PARTITION_ID]: {
|
|
29
|
-
type: 'remote_causal_repo',
|
|
30
|
-
branch: ADMIN_BRANCH_NAME,
|
|
31
|
-
host: host,
|
|
32
|
-
private: true,
|
|
33
|
-
static: true,
|
|
34
|
-
},
|
|
35
41
|
[TEMPORARY_BOT_PARTITION_ID]: {
|
|
36
42
|
type: 'memory',
|
|
37
43
|
private: true,
|
|
38
44
|
initialState: {},
|
|
39
45
|
},
|
|
40
46
|
[TEMPORARY_SHARED_PARTITION_ID]: {
|
|
41
|
-
type: '
|
|
42
|
-
|
|
47
|
+
type: 'remote_yjs',
|
|
48
|
+
recordName: null,
|
|
49
|
+
inst: parsedId.channel,
|
|
50
|
+
branch: `${DEFAULT_BRANCH_NAME}-player-${connectionId}`,
|
|
43
51
|
host: host,
|
|
44
52
|
temporary: true,
|
|
45
53
|
remoteEvents: false,
|
|
46
54
|
},
|
|
47
55
|
[REMOTE_TEMPORARY_SHARED_PARTITION_ID]: {
|
|
48
56
|
type: 'other_players_repo',
|
|
49
|
-
|
|
57
|
+
recordName: null,
|
|
58
|
+
inst: parsedId.channel,
|
|
59
|
+
branch: DEFAULT_BRANCH_NAME,
|
|
50
60
|
host: host,
|
|
51
61
|
},
|
|
52
62
|
};
|
|
53
63
|
}
|
|
54
|
-
constructor(
|
|
64
|
+
constructor(indicator, origin, id, vm) {
|
|
55
65
|
super(id, vm);
|
|
56
|
-
this.
|
|
66
|
+
this._origin = origin;
|
|
67
|
+
this.helper.userId = getConnectionId(indicator);
|
|
57
68
|
this._login = new LoginManager(this._vm);
|
|
58
69
|
this._progress = new ProgressManager(this._vm);
|
|
59
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DenoSimulation.js","sourceRoot":"","sources":["DenoSimulation.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"DenoSimulation.js","sourceRoot":"","sources":["DenoSimulation.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@casual-simulation/aux-vm-deno",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.7-alpha.6226622763",
|
|
4
4
|
"description": "A set of utilities required to securely run an AUX in Deno.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"aux"
|
|
@@ -39,10 +39,10 @@
|
|
|
39
39
|
"url": "https://github.com/casual-simulation/casualos/issues"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@casual-simulation/aux-common": "^3.2.
|
|
43
|
-
"@casual-simulation/aux-
|
|
44
|
-
"@casual-simulation/aux-vm
|
|
45
|
-
"@casual-simulation/
|
|
42
|
+
"@casual-simulation/aux-common": "^3.2.7-alpha.6226622763",
|
|
43
|
+
"@casual-simulation/aux-runtime": "^3.2.7-alpha.6226622763",
|
|
44
|
+
"@casual-simulation/aux-vm": "^3.2.7-alpha.6226622763",
|
|
45
|
+
"@casual-simulation/aux-vm-client": "^3.2.7-alpha.6226622763",
|
|
46
46
|
"@casual-simulation/crypto": "^3.2.0",
|
|
47
47
|
"@casual-simulation/crypto-browser": "^3.2.0",
|
|
48
48
|
"comlink": "4.3.1",
|
|
@@ -51,5 +51,5 @@
|
|
|
51
51
|
"rxjs": "7.5.7",
|
|
52
52
|
"uuid": "^8.3.2"
|
|
53
53
|
},
|
|
54
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "90c8d333924255b93b9654dc100fc74181b6138b"
|
|
55
55
|
}
|
package/vm/DenoAuxChannel.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import '@casual-simulation/aux-vm/globalThis-polyfill';
|
|
2
|
-
import {
|
|
3
|
-
import { AuxConfig, AuxSubChannel,
|
|
2
|
+
import { PartitionConfig, AuxPartition, ConnectionIndicator } from '@casual-simulation/aux-common';
|
|
3
|
+
import { AuxConfig, AuxSubChannel, BaseAuxChannel } from '@casual-simulation/aux-vm';
|
|
4
4
|
import { RemoteAuxChannel } from '@casual-simulation/aux-vm-client';
|
|
5
|
+
import { AuxRuntime } from '@casual-simulation/aux-runtime';
|
|
5
6
|
export declare class DenoAuxChannel extends RemoteAuxChannel {
|
|
6
|
-
constructor(defaultHost: string,
|
|
7
|
-
protected _handlePartitionEvents(events: BotAction[]): Promise<void>;
|
|
7
|
+
constructor(defaultHost: string, indicator: ConnectionIndicator, config: AuxConfig);
|
|
8
8
|
protected _createPartition(config: PartitionConfig): Promise<AuxPartition>;
|
|
9
|
-
protected _createSubChannel(
|
|
9
|
+
protected _createSubChannel(indicator: ConnectionIndicator, runtime: AuxRuntime, config: AuxConfig): BaseAuxChannel;
|
|
10
10
|
protected _handleSubChannelAdded(subChannel: AuxSubChannel): void;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=DenoAuxChannel.d.ts.map
|
package/vm/DenoAuxChannel.js
CHANGED
|
@@ -8,27 +8,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import '@casual-simulation/aux-vm/globalThis-polyfill';
|
|
11
|
-
import { SERVER_ROLE } from '@casual-simulation/causal-trees';
|
|
12
11
|
import { RemoteAuxChannel } from '@casual-simulation/aux-vm-client';
|
|
13
12
|
import { proxy } from 'comlink';
|
|
14
13
|
export class DenoAuxChannel extends RemoteAuxChannel {
|
|
15
|
-
constructor(defaultHost,
|
|
16
|
-
super(
|
|
17
|
-
}
|
|
18
|
-
// TODO: Move this logic to an AuxModule
|
|
19
|
-
// Overridden to automatically execute events from the server.
|
|
20
|
-
_handlePartitionEvents(events) {
|
|
21
|
-
const _super = Object.create(null, {
|
|
22
|
-
_handlePartitionEvents: { get: () => super._handlePartitionEvents }
|
|
23
|
-
});
|
|
24
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
yield _super._handlePartitionEvents.call(this, events);
|
|
26
|
-
let filtered = events.filter((e) => e.type === 'device' && e.device.roles.indexOf(SERVER_ROLE) >= 0);
|
|
27
|
-
let mapped = filtered.map((e) => e.event);
|
|
28
|
-
if (filtered.length > 0) {
|
|
29
|
-
yield this.sendEvents(mapped);
|
|
30
|
-
}
|
|
31
|
-
});
|
|
14
|
+
constructor(defaultHost, indicator, config) {
|
|
15
|
+
super(indicator, config, {});
|
|
32
16
|
}
|
|
33
17
|
_createPartition(config) {
|
|
34
18
|
const _super = Object.create(null, {
|
|
@@ -39,8 +23,8 @@ export class DenoAuxChannel extends RemoteAuxChannel {
|
|
|
39
23
|
return partition;
|
|
40
24
|
});
|
|
41
25
|
}
|
|
42
|
-
_createSubChannel(
|
|
43
|
-
const channel = new DenoAuxChannel(null,
|
|
26
|
+
_createSubChannel(indicator, runtime, config) {
|
|
27
|
+
const channel = new DenoAuxChannel(null, indicator, config);
|
|
44
28
|
channel._runtime = runtime;
|
|
45
29
|
return channel;
|
|
46
30
|
}
|
package/vm/DenoAuxChannel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DenoAuxChannel.js","sourceRoot":"","sources":["DenoAuxChannel.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"DenoAuxChannel.js","sourceRoot":"","sources":["DenoAuxChannel.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,+CAA+C,CAAC;AAavD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,MAAM,OAAO,cAAe,SAAQ,gBAAgB;IAChD,YACI,WAAmB,EACnB,SAA8B,EAC9B,MAAiB;QAEjB,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC;IAEe,gBAAgB,CAC5B,MAAuB;;;;;YAEvB,IAAI,SAAS,GAAG,MAAM,OAAM,gBAAgB,YAAC,MAAM,CAAC,CAAC;YACrD,OAAO,SAAS,CAAC;QACrB,CAAC;KAAA;IAES,iBAAiB,CACvB,SAA8B,EAC9B,OAAmB,EACnB,MAAiB;QAEjB,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5D,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC3B,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,sBAAsB,CAAC,UAAyB;QACtD,OAAO,KAAK,CAAC,sBAAsB,CAC/B,KAAK,CAAC;YACF,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,UAAU,EAAE,GAAS,EAAE,gDAAC,OAAA,KAAK,CAAC,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC,CAAA,GAAA;SAC/D,CAAC,CACL,CAAC;IACN,CAAC;CACJ"}
|
package/vm/DenoVM.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BotAction, ConnectionIndicator, StateUpdatedEvent, StoredAux } from '@casual-simulation/aux-common';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import { Remote } from 'comlink';
|
|
4
|
-
import { AuxConfig, AuxVM,
|
|
4
|
+
import { AuxConfig, AuxVM, ChannelActionResult, AuxSubVM } from '@casual-simulation/aux-vm';
|
|
5
5
|
import { AuxChannel, AuxChannelErrorType } from '@casual-simulation/aux-vm';
|
|
6
|
-
import { StatusUpdate, DeviceAction } from '@casual-simulation/
|
|
6
|
+
import { StatusUpdate, DeviceAction } from '@casual-simulation/aux-common';
|
|
7
|
+
import { RuntimeActions, RuntimeStateVersion } from '@casual-simulation/aux-runtime';
|
|
7
8
|
/**
|
|
8
9
|
* Defines an interface for an AUX that is run inside a virtual machine.
|
|
9
10
|
* That is, the AUX is run inside a web worker.
|
|
@@ -21,7 +22,7 @@ export declare class DenoVM implements AuxVM {
|
|
|
21
22
|
private _config;
|
|
22
23
|
private _worker;
|
|
23
24
|
private _proxy;
|
|
24
|
-
private
|
|
25
|
+
private _initialIndicator;
|
|
25
26
|
closed: boolean;
|
|
26
27
|
/**
|
|
27
28
|
* The ID of the simulation.
|
|
@@ -30,7 +31,7 @@ export declare class DenoVM implements AuxVM {
|
|
|
30
31
|
/**
|
|
31
32
|
* Creates a new Simulation VM.
|
|
32
33
|
*/
|
|
33
|
-
constructor(
|
|
34
|
+
constructor(indicator: ConnectionIndicator, config: AuxConfig);
|
|
34
35
|
get subVMAdded(): Observable<AuxSubVM>;
|
|
35
36
|
get subVMRemoved(): Observable<AuxSubVM>;
|
|
36
37
|
get connectionStateChanged(): Observable<StatusUpdate>;
|
|
@@ -43,15 +44,13 @@ export declare class DenoVM implements AuxVM {
|
|
|
43
44
|
/**
|
|
44
45
|
* The observable list of events that should be produced locally.
|
|
45
46
|
*/
|
|
46
|
-
get localEvents(): Observable<
|
|
47
|
+
get localEvents(): Observable<RuntimeActions[]>;
|
|
47
48
|
get deviceEvents(): Observable<DeviceAction[]>;
|
|
48
49
|
/**
|
|
49
50
|
* The observable list of bot state updates from this simulation.
|
|
50
51
|
*/
|
|
51
52
|
get stateUpdated(): Observable<StateUpdatedEvent>;
|
|
52
53
|
get versionUpdated(): Observable<RuntimeStateVersion>;
|
|
53
|
-
setUser(user: AuxUser): Promise<void>;
|
|
54
|
-
setGrant(grant: string): Promise<void>;
|
|
55
54
|
/**
|
|
56
55
|
* Sends the given list of events to the simulation.
|
|
57
56
|
* @param events The events to send to the simulation.
|
package/vm/DenoVM.js
CHANGED
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import { Subject } from 'rxjs';
|
|
11
11
|
import { wrap, proxy } from 'comlink';
|
|
12
|
-
import { remapProgressPercent, } from '@casual-simulation/
|
|
12
|
+
import { remapProgressPercent, } from '@casual-simulation/aux-common';
|
|
13
13
|
import { DenoWorker, polyfillMessageChannel } from 'deno-vm';
|
|
14
14
|
import { URL } from 'url';
|
|
15
15
|
import { RemoteAuxVM } from '@casual-simulation/aux-vm-client';
|
|
@@ -23,8 +23,8 @@ export class DenoVM {
|
|
|
23
23
|
/**
|
|
24
24
|
* Creates a new Simulation VM.
|
|
25
25
|
*/
|
|
26
|
-
constructor(
|
|
27
|
-
this.
|
|
26
|
+
constructor(indicator, config) {
|
|
27
|
+
this._initialIndicator = indicator;
|
|
28
28
|
this._config = config;
|
|
29
29
|
this._localEvents = new Subject();
|
|
30
30
|
this._deviceEvents = new Subject();
|
|
@@ -105,7 +105,7 @@ export class DenoVM {
|
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
107
|
const wrapper = wrap(this._worker);
|
|
108
|
-
this._proxy = yield new wrapper(null, this.
|
|
108
|
+
this._proxy = yield new wrapper(null, this._initialIndicator, this._config);
|
|
109
109
|
let statusMapper = remapProgressPercent(0.2, 1);
|
|
110
110
|
return yield this._proxy.initAndWait(proxy((events) => this._localEvents.next(events)), proxy((events) => this._deviceEvents.next(events)), proxy((state) => this._stateUpdated.next(state)), proxy((version) => this._versionUpdated.next(version)), proxy((state) => this._connectionStateChanged.next(statusMapper(state))), proxy((err) => this._onError.next(err)), proxy((channel) => this._handleAddedSubChannel(channel)), proxy((id) => this._handleRemovedSubChannel(id)));
|
|
111
111
|
});
|
|
@@ -128,20 +128,6 @@ export class DenoVM {
|
|
|
128
128
|
get versionUpdated() {
|
|
129
129
|
return this._versionUpdated;
|
|
130
130
|
}
|
|
131
|
-
setUser(user) {
|
|
132
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
133
|
-
if (!this._proxy)
|
|
134
|
-
return null;
|
|
135
|
-
return yield this._proxy.setUser(user);
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
setGrant(grant) {
|
|
139
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
-
if (!this._proxy)
|
|
141
|
-
return null;
|
|
142
|
-
return yield this._proxy.setGrant(grant);
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
131
|
/**
|
|
146
132
|
* Sends the given list of events to the simulation.
|
|
147
133
|
* @param events The events to send to the simulation.
|
|
@@ -227,11 +213,11 @@ export class DenoVM {
|
|
|
227
213
|
}
|
|
228
214
|
_handleAddedSubChannel(subChannel) {
|
|
229
215
|
return __awaiter(this, void 0, void 0, function* () {
|
|
230
|
-
const { id,
|
|
216
|
+
const { id, indicator } = yield subChannel.getInfo();
|
|
231
217
|
const channel = (yield subChannel.getChannel());
|
|
232
218
|
const subVM = {
|
|
233
219
|
id,
|
|
234
|
-
|
|
220
|
+
indicator,
|
|
235
221
|
vm: this._createSubVM(channel),
|
|
236
222
|
channel,
|
|
237
223
|
};
|
package/vm/DenoVM.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DenoVM.js","sourceRoot":"","sources":["DenoVM.ts"],"names":[],"mappings":";;;;;;;;;
|
|
1
|
+
{"version":3,"file":"DenoVM.js","sourceRoot":"","sources":["DenoVM.ts"],"names":[],"mappings":"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"}
|