@casual-simulation/aux-vm-node 3.1.26 → 3.1.28

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@casual-simulation/aux-vm-node",
3
- "version": "3.1.26",
3
+ "version": "3.1.28",
4
4
  "description": "A set of utilities required to security run an AUX in Node.js.",
5
5
  "keywords": [
6
6
  "aux"
@@ -36,16 +36,16 @@
36
36
  "url": "https://github.com/casual-simulation/casualos/issues"
37
37
  },
38
38
  "dependencies": {
39
- "@casual-simulation/aux-common": "^3.1.26",
40
- "@casual-simulation/aux-vm": "^3.1.26",
41
- "@casual-simulation/aux-vm-client": "^3.1.26",
42
- "@casual-simulation/causal-tree-server": "^3.1.23",
43
- "@casual-simulation/causal-trees": "^3.1.23",
39
+ "@casual-simulation/aux-common": "^3.1.28",
40
+ "@casual-simulation/aux-vm": "^3.1.28",
41
+ "@casual-simulation/aux-vm-client": "^3.1.28",
42
+ "@casual-simulation/causal-tree-server": "^3.1.28",
43
+ "@casual-simulation/causal-trees": "^3.1.28",
44
44
  "@casual-simulation/crypto": "^3.1.23",
45
45
  "@casual-simulation/crypto-node": "^3.1.23",
46
46
  "lodash": "4.17.21",
47
47
  "rxjs": "7.5.7",
48
48
  "uuid": "^8.3.2"
49
49
  },
50
- "gitHead": "5e74eaf01e30da58f6a8e31659193ec323530f8c"
50
+ "gitHead": "c87563a9ccb65ba78215d9aeda438507a131c352"
51
51
  }
package/vm/AuxVMNode.js CHANGED
@@ -9,18 +9,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { Subject } from 'rxjs';
11
11
  export class AuxVMNode {
12
- constructor(channel) {
13
- this._channel = channel;
14
- this._localEvents = new Subject();
15
- this._deviceEvents = new Subject();
16
- this._stateUpdated = new Subject();
17
- this._versionUpdated = new Subject();
18
- this._connectionStateChanged = new Subject();
19
- this._onError = new Subject();
20
- this._subVMAdded = new Subject();
21
- this._subVMRemoved = new Subject();
22
- this._subVMMap = new Map();
23
- }
24
12
  get localEvents() {
25
13
  return this._localEvents;
26
14
  }
@@ -48,6 +36,18 @@ export class AuxVMNode {
48
36
  get channel() {
49
37
  return this._channel;
50
38
  }
39
+ constructor(channel) {
40
+ this._channel = channel;
41
+ this._localEvents = new Subject();
42
+ this._deviceEvents = new Subject();
43
+ this._stateUpdated = new Subject();
44
+ this._versionUpdated = new Subject();
45
+ this._connectionStateChanged = new Subject();
46
+ this._onError = new Subject();
47
+ this._subVMAdded = new Subject();
48
+ this._subVMRemoved = new Subject();
49
+ this._subVMMap = new Map();
50
+ }
51
51
  setUser(user) {
52
52
  return this._channel.setUser(user);
53
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AuxVMNode.js","sourceRoot":"","sources":["AuxVMNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuxVMNode.js","sourceRoot":"","sources":["AuxVMNode.ts"],"names":[],"mappings":"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"}
@@ -11,14 +11,14 @@ import { createAuxPartition, createMemoryPartition, createCausalRepoPartition, }
11
11
  import { BaseAuxChannel } from '@casual-simulation/aux-vm';
12
12
  import { Subject } from 'rxjs';
13
13
  export class NodeAuxChannel extends BaseAuxChannel {
14
+ get remoteEvents() {
15
+ return this._remoteEvents;
16
+ }
14
17
  constructor(user, device, config) {
15
18
  super(user, config, {});
16
19
  this._device = device;
17
20
  this._remoteEvents = new Subject();
18
21
  }
19
- get remoteEvents() {
20
- return this._remoteEvents;
21
- }
22
22
  _createPartition(config) {
23
23
  return __awaiter(this, void 0, void 0, function* () {
24
24
  return yield createAuxPartition(config, createMemoryPartition, (config) => createCausalRepoPartition(config, this.user));
@@ -1 +1 @@
1
- {"version":3,"file":"NodeAuxChannel.js","sourceRoot":"","sources":["NodeAuxChannel.ts"],"names":[],"mappings":";;;;;;;;;AAKA,OAAO,EAGH,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,GAE5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAa,cAAc,EAAW,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAc,OAAO,EAAE,MAAM,MAAM,CAAC;AAE3C,MAAM,OAAO,cAAe,SAAQ,cAAc;IAQ9C,YAAY,IAAa,EAAE,MAAkB,EAAE,MAAiB;QAC5D,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,EAAkB,CAAC;IACvD,CAAC;IARD,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAQe,gBAAgB,CAC5B,MAAuB;;YAEvB,OAAO,MAAM,kBAAkB,CAC3B,MAAM,EACN,qBAAqB,EACrB,CAAC,MAAM,EAAE,EAAE,CAAC,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAC3D,CAAC;QACN,CAAC;KAAA;IAEe,iBAAiB,CAAC,MAAsB;;;;;YACpD,MAAM,OAAM,iBAAiB,YAAC,MAAM,CAAC,CAAC;YACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;KAAA;IAES,cAAc;QACpB,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QACvC,mCAAmC;QACnC,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,iBAAiB,CACvB,IAAa,EACb,OAAmB,EACnB,MAAiB;QAEjB,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/D,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC3B,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ"}
1
+ {"version":3,"file":"NodeAuxChannel.js","sourceRoot":"","sources":["NodeAuxChannel.ts"],"names":[],"mappings":";;;;;;;;;AAKA,OAAO,EAGH,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,GAE5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAa,cAAc,EAAW,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAc,OAAO,EAAE,MAAM,MAAM,CAAC;AAE3C,MAAM,OAAO,cAAe,SAAQ,cAAc;IAI9C,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,YAAY,IAAa,EAAE,MAAkB,EAAE,MAAiB;QAC5D,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,EAAkB,CAAC;IACvD,CAAC;IAEe,gBAAgB,CAC5B,MAAuB;;YAEvB,OAAO,MAAM,kBAAkB,CAC3B,MAAM,EACN,qBAAqB,EACrB,CAAC,MAAM,EAAE,EAAE,CAAC,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAC3D,CAAC;QACN,CAAC;KAAA;IAEe,iBAAiB,CAAC,MAAsB;;;;;YACpD,MAAM,OAAM,iBAAiB,YAAC,MAAM,CAAC,CAAC;YACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;KAAA;IAES,cAAc;QACpB,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QACvC,mCAAmC;QACnC,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,iBAAiB,CACvB,IAAa,EACb,OAAmB,EACnB,MAAiB;QAEjB,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/D,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC3B,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ"}