@supraio/client-sdk 0.0.1-master.1 → 0.0.1-master.10
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/dist/browser/src/Firebase/collections.d.ts +7 -6
- package/dist/browser/src/Firebase/collections.js +27 -12
- package/dist/browser/src/Firebase/collections.js.map +1 -1
- package/dist/browser/src/Options.d.ts +4 -4
- package/dist/browser/src/Options.js +4 -4
- package/dist/browser/src/Options.js.map +1 -1
- package/dist/browser/src/Platform/daemonHelper.d.ts +1 -1
- package/dist/browser/src/Platform/daemonHelper.js +2 -2
- package/dist/browser/src/Platform/daemonHelper.js.map +1 -1
- package/dist/browser/src/Platform/sshHelper.js +27 -2
- package/dist/browser/src/Platform/sshHelper.js.map +1 -1
- package/dist/browser/src/Process/App/App.d.ts +3 -1
- package/dist/browser/src/Process/Options.d.ts +12 -0
- package/dist/browser/src/Process/Process.d.ts +1 -0
- package/dist/browser/src/Process/ProcessSdk.d.ts +22 -10
- package/dist/browser/src/Process/ProcessSdk.js +53 -37
- package/dist/browser/src/Process/ProcessSdk.js.map +1 -1
- package/dist/browser/src/Sdk.d.ts +2 -0
- package/dist/browser/src/Sdk.js +3 -1
- package/dist/browser/src/Sdk.js.map +1 -1
- package/dist/browser/src/Server/Options.d.ts +8 -0
- package/dist/browser/src/Server/Options.js +2 -0
- package/dist/browser/src/Server/Options.js.map +1 -0
- package/dist/browser/src/{Process → Server}/Server.d.ts +0 -0
- package/dist/browser/src/{Process → Server}/Server.js +0 -0
- package/dist/browser/src/Server/Server.js.map +1 -0
- package/dist/browser/src/Server/ServerSdk.d.ts +8 -0
- package/dist/browser/src/Server/ServerSdk.js +27 -0
- package/dist/browser/src/Server/ServerSdk.js.map +1 -0
- package/dist/browser/src/Session/SessionSdk.d.ts +8 -0
- package/dist/browser/src/Session/SessionSdk.js +28 -6
- package/dist/browser/src/Session/SessionSdk.js.map +1 -1
- package/dist/browser/src/User/User.d.ts +1 -0
- package/dist/node/src/Firebase/collections.d.ts +7 -6
- package/dist/node/src/Firebase/collections.js +30 -14
- package/dist/node/src/Firebase/collections.js.map +1 -1
- package/dist/node/src/Options.d.ts +4 -4
- package/dist/node/src/Options.js +4 -4
- package/dist/node/src/Options.js.map +1 -1
- package/dist/node/src/Platform/daemonHelper.d.ts +1 -1
- package/dist/node/src/Platform/daemonHelper.js +2 -2
- package/dist/node/src/Platform/daemonHelper.js.map +1 -1
- package/dist/node/src/Platform/sshHelper.js +27 -2
- package/dist/node/src/Platform/sshHelper.js.map +1 -1
- package/dist/node/src/Process/App/App.d.ts +3 -1
- package/dist/node/src/Process/Options.d.ts +12 -0
- package/dist/node/src/Process/Process.d.ts +1 -0
- package/dist/node/src/Process/ProcessSdk.d.ts +22 -10
- package/dist/node/src/Process/ProcessSdk.js +53 -37
- package/dist/node/src/Process/ProcessSdk.js.map +1 -1
- package/dist/node/src/Sdk.d.ts +2 -0
- package/dist/node/src/Sdk.js +3 -1
- package/dist/node/src/Sdk.js.map +1 -1
- package/dist/node/src/Server/Options.d.ts +8 -0
- package/dist/node/src/Server/Options.js +3 -0
- package/dist/node/src/Server/Options.js.map +1 -0
- package/dist/node/src/{Process → Server}/Server.d.ts +0 -0
- package/dist/node/src/{Process → Server}/Server.js +0 -0
- package/dist/node/src/Server/Server.js.map +1 -0
- package/dist/node/src/Server/ServerSdk.d.ts +8 -0
- package/dist/node/src/Server/ServerSdk.js +31 -0
- package/dist/node/src/Server/ServerSdk.js.map +1 -0
- package/dist/node/src/Session/SessionSdk.d.ts +8 -0
- package/dist/node/src/Session/SessionSdk.js +28 -6
- package/dist/node/src/Session/SessionSdk.js.map +1 -1
- package/dist/node/src/User/User.d.ts +1 -0
- package/package.json +1 -1
- package/dist/browser/src/Process/Server.js.map +0 -1
- package/dist/node/src/Process/Server.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import firebase from 'firebase';
|
|
2
2
|
import { ServerApp } from '../Process/App/App';
|
|
3
|
-
import { Server } from '../
|
|
3
|
+
import { Server } from '../Server/Server';
|
|
4
4
|
import { ServerVolume } from '../Process/Volume/Volume';
|
|
5
5
|
import { RemoteSession } from '../Session/RemoteSession';
|
|
6
6
|
import { User } from '../User/User';
|
|
@@ -15,8 +15,9 @@ export declare enum UserServerCollection {
|
|
|
15
15
|
APP = "apps",
|
|
16
16
|
VOLUME = "volumes"
|
|
17
17
|
}
|
|
18
|
-
export declare function getUserDocument(firebaseApp: firebase.app.App): firebase.firestore.DocumentReference<User
|
|
19
|
-
export declare function
|
|
20
|
-
export declare function
|
|
21
|
-
export declare function
|
|
22
|
-
export declare function
|
|
18
|
+
export declare function getUserDocument(firebaseApp: firebase.app.App): Promise<firebase.firestore.DocumentReference<User>>;
|
|
19
|
+
export declare function getServerDocument(firebaseApp: firebase.app.App, serverUid: string): Promise<firebase.firestore.DocumentReference<Server>>;
|
|
20
|
+
export declare function getServerCollection(firebaseApp: firebase.app.App): Promise<firebase.firestore.CollectionReference<Server>>;
|
|
21
|
+
export declare function getSessionCollection(firebaseApp: firebase.app.App): Promise<firebase.firestore.CollectionReference<RemoteSession>>;
|
|
22
|
+
export declare function getServerAppCollection(firebaseApp: firebase.app.App, serverUid: string): Promise<firebase.firestore.CollectionReference<ServerApp>>;
|
|
23
|
+
export declare function getServerVolumeCollection(firebaseApp: firebase.app.App, serverUid: string): Promise<firebase.firestore.CollectionReference<ServerVolume>>;
|
|
@@ -12,26 +12,41 @@ export var UserServerCollection;
|
|
|
12
12
|
UserServerCollection["APP"] = "apps";
|
|
13
13
|
UserServerCollection["VOLUME"] = "volumes";
|
|
14
14
|
})(UserServerCollection || (UserServerCollection = {}));
|
|
15
|
-
function
|
|
15
|
+
export async function getUserDocument(firebaseApp) {
|
|
16
16
|
const user = firebaseApp.auth().currentUser;
|
|
17
17
|
if (!user) {
|
|
18
18
|
throw new Error(`User is not authenticated`);
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
const usersSnapshot = await firebaseApp.firestore().collection(MainCollection.USER).where('uid', '==', user.uid).get();
|
|
21
|
+
if (usersSnapshot.empty) {
|
|
22
|
+
throw new Error(`User was not found: ${user.uid}`);
|
|
23
|
+
}
|
|
24
|
+
const userSnapshot = usersSnapshot.docs[0];
|
|
25
|
+
return userSnapshot.ref;
|
|
21
26
|
}
|
|
22
|
-
export function
|
|
23
|
-
|
|
27
|
+
export async function getServerDocument(firebaseApp, serverUid) {
|
|
28
|
+
const serverCollection = await getServerCollection(firebaseApp);
|
|
29
|
+
const serversSnapshot = await serverCollection.where('serverUid', '==', serverUid).get();
|
|
30
|
+
if (serversSnapshot.empty) {
|
|
31
|
+
throw new Error(`Server was not found: ${serverUid}`);
|
|
32
|
+
}
|
|
33
|
+
const serverSnapshot = serversSnapshot.docs[0];
|
|
34
|
+
return serverSnapshot.ref;
|
|
24
35
|
}
|
|
25
|
-
export function getServerCollection(firebaseApp) {
|
|
26
|
-
|
|
36
|
+
export async function getServerCollection(firebaseApp) {
|
|
37
|
+
const userDoc = await getUserDocument(firebaseApp);
|
|
38
|
+
return userDoc.collection(UserCollection.SERVER);
|
|
27
39
|
}
|
|
28
|
-
export function getSessionCollection(firebaseApp) {
|
|
29
|
-
|
|
40
|
+
export async function getSessionCollection(firebaseApp) {
|
|
41
|
+
const userDoc = await getUserDocument(firebaseApp);
|
|
42
|
+
return userDoc.collection(UserCollection.SESSION);
|
|
30
43
|
}
|
|
31
|
-
export function getServerAppCollection(firebaseApp, serverUid) {
|
|
32
|
-
|
|
44
|
+
export async function getServerAppCollection(firebaseApp, serverUid) {
|
|
45
|
+
const serverDoc = await getServerDocument(firebaseApp, serverUid);
|
|
46
|
+
return serverDoc.collection(UserServerCollection.APP);
|
|
33
47
|
}
|
|
34
|
-
export function getServerVolumeCollection(firebaseApp, serverUid) {
|
|
35
|
-
|
|
48
|
+
export async function getServerVolumeCollection(firebaseApp, serverUid) {
|
|
49
|
+
const serverDoc = await getServerDocument(firebaseApp, serverUid);
|
|
50
|
+
return serverDoc.collection(UserServerCollection.VOLUME);
|
|
36
51
|
}
|
|
37
52
|
//# sourceMappingURL=collections.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collections.js","sourceRoot":"","sources":["../../../../src/Firebase/collections.ts"],"names":[],"mappings":"AAOA,MAAM,CAAN,IAAY,cAEX;AAFD,WAAY,cAAc;IACzB,+BAAa,CAAA;AACd,CAAC,EAFW,cAAc,KAAd,cAAc,QAEzB;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACzB,qCAAmB,CAAA;IACnB,mCAAiB,CAAA;AAClB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC/B,oCAAY,CAAA;IACZ,0CAAkB,CAAA;AACnB,CAAC,EAHW,oBAAoB,KAApB,oBAAoB,QAG/B;AAED,
|
|
1
|
+
{"version":3,"file":"collections.js","sourceRoot":"","sources":["../../../../src/Firebase/collections.ts"],"names":[],"mappings":"AAOA,MAAM,CAAN,IAAY,cAEX;AAFD,WAAY,cAAc;IACzB,+BAAa,CAAA;AACd,CAAC,EAFW,cAAc,KAAd,cAAc,QAEzB;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACzB,qCAAmB,CAAA;IACnB,mCAAiB,CAAA;AAClB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC/B,oCAAY,CAAA;IACZ,0CAAkB,CAAA;AACnB,CAAC,EAHW,oBAAoB,KAApB,oBAAoB,QAG/B;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAA6B;IAClE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC;IAC5C,IAAI,CAAC,IAAI,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;KAC7C;IACD,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACvH,IAAI,aAAa,CAAC,KAAK,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;KACnD;IACD,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO,YAAY,CAAC,GAAiD,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,WAA6B,EAAE,SAAiB;IACvF,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC;IACzF,IAAI,eAAe,CAAC,KAAK,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;KACtD;IACD,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,cAAc,CAAC,GAAG,CAAC;AAC3B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,WAA6B;IACtE,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAmD,CAAC;AACpG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,WAA6B;IACvE,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAA0D,CAAC;AAC5G,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,WAA6B,EAAE,SAAiB;IAC5F,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAClE,OAAO,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,GAAG,CAAsD,CAAC;AAC5G,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,WAA6B,EAAE,SAAiB;IAC/F,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAClE,OAAO,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAyD,CAAC;AAClH,CAAC"}
|
|
@@ -16,14 +16,14 @@ export interface AuthOptions {
|
|
|
16
16
|
export declare enum NetStreamDriver {
|
|
17
17
|
/** Default value for native client */
|
|
18
18
|
DriverSimpleTCP = "simple_tcp",
|
|
19
|
-
/** Supported only in browser WASM */
|
|
20
|
-
|
|
19
|
+
/** Supported only in browser plain js or WASM */
|
|
20
|
+
DriverJSWebsocket = "js_websocket"
|
|
21
21
|
}
|
|
22
22
|
export declare enum NetPacketDriver {
|
|
23
23
|
/** Default value for native client */
|
|
24
24
|
DriverSimpleUDP = "simple_udp",
|
|
25
|
-
/** Supported only in browser WASM */
|
|
26
|
-
|
|
25
|
+
/** Supported only in browser plain js or WASM */
|
|
26
|
+
DriverJSWebsocket = "js_websocket",
|
|
27
27
|
/** TCP replacement for simple_udp which prevents loosing packets */
|
|
28
28
|
DriverSimpleTCP = "simple_tcp"
|
|
29
29
|
}
|
|
@@ -2,15 +2,15 @@ export var NetStreamDriver;
|
|
|
2
2
|
(function (NetStreamDriver) {
|
|
3
3
|
/** Default value for native client */
|
|
4
4
|
NetStreamDriver["DriverSimpleTCP"] = "simple_tcp";
|
|
5
|
-
/** Supported only in browser WASM */
|
|
6
|
-
NetStreamDriver["
|
|
5
|
+
/** Supported only in browser plain js or WASM */
|
|
6
|
+
NetStreamDriver["DriverJSWebsocket"] = "js_websocket";
|
|
7
7
|
})(NetStreamDriver || (NetStreamDriver = {}));
|
|
8
8
|
export var NetPacketDriver;
|
|
9
9
|
(function (NetPacketDriver) {
|
|
10
10
|
/** Default value for native client */
|
|
11
11
|
NetPacketDriver["DriverSimpleUDP"] = "simple_udp";
|
|
12
|
-
/** Supported only in browser WASM */
|
|
13
|
-
NetPacketDriver["
|
|
12
|
+
/** Supported only in browser plain js or WASM */
|
|
13
|
+
NetPacketDriver["DriverJSWebsocket"] = "js_websocket";
|
|
14
14
|
/** TCP replacement for simple_udp which prevents loosing packets */
|
|
15
15
|
NetPacketDriver["DriverSimpleTCP"] = "simple_tcp";
|
|
16
16
|
})(NetPacketDriver || (NetPacketDriver = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Options.js","sourceRoot":"","sources":["../../../src/Options.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IAC1B,sCAAsC;IACtC,iDAA8B,CAAA;IAC9B,
|
|
1
|
+
{"version":3,"file":"Options.js","sourceRoot":"","sources":["../../../src/Options.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IAC1B,sCAAsC;IACtC,iDAA8B,CAAA;IAC9B,iDAAiD;IACjD,qDAAkC,CAAA;AACnC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IAC1B,sCAAsC;IACtC,iDAA8B,CAAA;IAC9B,iDAAiD;IACjD,qDAAkC,CAAA;IAClC,oEAAoE;IACpE,iDAA8B,CAAA;AAC/B,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { Server } from '../
|
|
2
|
+
import { Server } from '../Server/Server';
|
|
3
3
|
import { RemoteSession } from '../Session/RemoteSession';
|
|
4
4
|
import { NetPacketDriver, NetStreamDriver, Options } from '../Options';
|
|
5
5
|
export declare enum MsgType {
|
|
@@ -35,7 +35,7 @@ export function getServerInfo(server, session, options) {
|
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
37
|
function getMetadataPortForDriver(server, driver) {
|
|
38
|
-
if (driver === NetStreamDriver.
|
|
38
|
+
if (driver === NetStreamDriver.DriverJSWebsocket) {
|
|
39
39
|
return server.metadataWSPort ?? DEFAULT_METADATA_WS_PORT;
|
|
40
40
|
}
|
|
41
41
|
if (driver === NetStreamDriver.DriverSimpleTCP) {
|
|
@@ -44,7 +44,7 @@ function getMetadataPortForDriver(server, driver) {
|
|
|
44
44
|
throw new Error(`Unknown metadata driver ${driver}`);
|
|
45
45
|
}
|
|
46
46
|
function getScreenPortForDriver(server, driver) {
|
|
47
|
-
if (driver === NetPacketDriver.
|
|
47
|
+
if (driver === NetPacketDriver.DriverJSWebsocket) {
|
|
48
48
|
return server.screenWSPort ?? DEFAULT_SCREEN_WS_PORT;
|
|
49
49
|
}
|
|
50
50
|
if (driver === NetPacketDriver.DriverSimpleUDP) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemonHelper.js","sourceRoot":"","sources":["../../../../src/Platform/daemonHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIvD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAW,MAAM,YAAY,CAAC;AAEvE,MAAM,CAAN,IAAY,OAUX;AAVD,WAAY,OAAO;IAClB,wDAAkB,CAAA;IAClB,4DAAoB,CAAA;IACpB,wDAAkB,CAAA;IAClB,sDAAiB,CAAA;IACjB,oDAAgB,CAAA;IAChB,wDAAkB,CAAA;IAClB,wDAAkB,CAAA;IAClB,0DAAmB,CAAA;IACnB,wEAA0B,CAAA;AAC3B,CAAC,EAVW,OAAO,KAAP,OAAO,QAUlB;AA6BD,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAE7C,MAAM,qBAAqB,GAAG,IAAI,CAAC;AACnC,MAAM,wBAAwB,GAAG,IAAI,CAAC;AACtC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEpC,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,OAAsB,EAAE,OAA4B;IACjG,MAAM,cAAc,GAAG,OAAO,EAAE,OAAO,EAAE,cAAc,IAAI,eAAe,CAAC,eAAe,CAAC;IAC3F,MAAM,YAAY,GAAG,OAAO,EAAE,OAAO,EAAE,YAAY,IAAI,eAAe,CAAC,eAAe,CAAC;IAEvF,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,sBAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAEhE,OAAO;QACN,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;QAC3B,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;QACnC,cAAc,EAAE,cAAc;QAC9B,YAAY,EAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,GAAG,YAAY;QAClD,YAAY,EAAE,YAAY;QAC1B,UAAU,EAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,GAAG,UAAU;QAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;KACrB,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAc,EAAE,MAAuB;IACxE,IAAI,MAAM,KAAK,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"daemonHelper.js","sourceRoot":"","sources":["../../../../src/Platform/daemonHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { homedir, userInfo } from 'os';
|
|
2
2
|
import { join } from 'path';
|
|
3
3
|
import 'js-keygen/bundle';
|
|
4
|
-
const { generateKeyPair } = window.keygen;
|
|
5
4
|
const SSH_DIRNAME = '.ssh';
|
|
6
5
|
const DEFAULT_PUBLIC_KEY_FILENAME = 'id_rsa.pub'; // TODO only RSA supported now
|
|
7
6
|
const DEFAULT_PRIVATE_KEY_FILENAME = 'id_rsa'; // TODO only RSA supported now
|
|
@@ -9,6 +8,32 @@ const DEFAULT_PUBLIC_KEY_PATH = join(homedir(), SSH_DIRNAME, DEFAULT_PUBLIC_KEY_
|
|
|
9
8
|
const DEFAULT_PRIVATE_KEY_PATH = join(homedir(), SSH_DIRNAME, DEFAULT_PRIVATE_KEY_FILENAME);
|
|
10
9
|
const PUBLIC_KEY_KEY = 'supra.publicKey';
|
|
11
10
|
const PRIVATE_KEY_KEY = 'supra.privateKey';
|
|
11
|
+
function generateKeyPair(sshKeyName) {
|
|
12
|
+
if (process.env.TARGET === 'browser') {
|
|
13
|
+
return window.keygen.generateKeyPair('RSASSA-PKCS1-v1_5', 2048, sshKeyName);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
const crypto = eval('require')('crypto'); // TODO make it better than eval()
|
|
17
|
+
return new Promise((resolve, reject) => crypto.generateKeyPair('rsa', {
|
|
18
|
+
modulusLength: 2048,
|
|
19
|
+
publicKeyEncoding: {
|
|
20
|
+
type: 'spki',
|
|
21
|
+
format: 'pem',
|
|
22
|
+
},
|
|
23
|
+
privateKeyEncoding: {
|
|
24
|
+
type: 'pkcs8',
|
|
25
|
+
format: 'pem',
|
|
26
|
+
},
|
|
27
|
+
}, (error, publicKey, privateKey) => {
|
|
28
|
+
if (error) {
|
|
29
|
+
reject(error);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
resolve([publicKey, privateKey]);
|
|
33
|
+
}
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
12
37
|
export async function getLocalSshPublicKey(options) {
|
|
13
38
|
if (options?.ssh?.publicKey) {
|
|
14
39
|
return options?.ssh?.publicKey;
|
|
@@ -30,7 +55,7 @@ export async function getLocalSshPublicKey(options) {
|
|
|
30
55
|
}
|
|
31
56
|
if (publicKey === null) {
|
|
32
57
|
const sshKeyName = options?.ssh?.keyName ?? userInfo().username;
|
|
33
|
-
const [privateKey, generatedPublicKey] = await generateKeyPair(
|
|
58
|
+
const [privateKey, generatedPublicKey] = await generateKeyPair(sshKeyName);
|
|
34
59
|
publicKey = generatedPublicKey;
|
|
35
60
|
if (process.env.TARGET === 'browser') {
|
|
36
61
|
window.localStorage.setItem(PUBLIC_KEY_KEY, publicKey); // eslint-disable-line @typescript-eslint/no-non-null-assertion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sshHelper.js","sourceRoot":"","sources":["../../../../src/Platform/sshHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"sshHelper.js","sourceRoot":"","sources":["../../../../src/Platform/sshHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,9 +10,21 @@ export interface OpenOptions {
|
|
|
10
10
|
/** If this option is specified, it will fail when process of application not running */
|
|
11
11
|
runningOnly?: boolean;
|
|
12
12
|
}
|
|
13
|
+
export interface StartOptions {
|
|
14
|
+
/** Identify server where the process will be running */
|
|
15
|
+
serverUid: string;
|
|
16
|
+
/** Name of application which creating the process */
|
|
17
|
+
appName: string;
|
|
18
|
+
/** array of args passed to program process when is started */
|
|
19
|
+
appArgs: string[];
|
|
20
|
+
}
|
|
13
21
|
export interface CloseOptions {
|
|
14
22
|
/** Identify server where the process will be stopped */
|
|
15
23
|
serverUid: string;
|
|
16
24
|
/** Name of application which closing the process */
|
|
17
25
|
appName: string;
|
|
18
26
|
}
|
|
27
|
+
export interface GetProcessesOptions {
|
|
28
|
+
/** Identify server where the process will be listed */
|
|
29
|
+
serverUid: string;
|
|
30
|
+
}
|
|
@@ -1,34 +1,46 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { OpenOptions, CloseOptions } from "./Options";
|
|
1
|
+
import { OpenOptions, CloseOptions, StartOptions, GetProcessesOptions } from "./Options";
|
|
3
2
|
import { Process } from './Process';
|
|
4
3
|
import { Options } from '../Options';
|
|
5
4
|
import { SessionSdk } from '../Session/SessionSdk';
|
|
5
|
+
import { ServerSdk } from '../Server/ServerSdk';
|
|
6
6
|
export declare class ProcessSdk {
|
|
7
7
|
private options;
|
|
8
8
|
private sessionSdk;
|
|
9
|
-
private
|
|
9
|
+
private serverSdk;
|
|
10
10
|
private sockPath;
|
|
11
|
-
constructor(options: Options | undefined, sessionSdk: SessionSdk,
|
|
11
|
+
constructor(options: Options | undefined, sessionSdk: SessionSdk, serverSdk: ServerSdk);
|
|
12
12
|
/**
|
|
13
13
|
* Open process with given options.
|
|
14
14
|
* It can open existing process or create new process based on options.
|
|
15
15
|
* If not special options specified, try to reuse existing process of app.
|
|
16
16
|
*/
|
|
17
17
|
open(openOptions: OpenOptions): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Start process with given options.
|
|
20
|
+
* It's not starting new, when app is already running
|
|
21
|
+
*/
|
|
22
|
+
start(startOptions: StartOptions): Promise<{
|
|
23
|
+
screenDriver: import("../Options").NetPacketDriver;
|
|
24
|
+
metadataDriver: import("../Options").NetStreamDriver;
|
|
25
|
+
screenID: string;
|
|
26
|
+
screenHost: string;
|
|
27
|
+
metadataHost: string;
|
|
28
|
+
clientID: string;
|
|
29
|
+
clientSecret: string;
|
|
30
|
+
secure: boolean;
|
|
31
|
+
}>;
|
|
18
32
|
/**
|
|
19
33
|
* Close process with given options.
|
|
20
|
-
* It closes the given process
|
|
34
|
+
* It closes the given process remotely and locally as well.
|
|
21
35
|
*/
|
|
22
36
|
close(closeOptions: CloseOptions): Promise<void>;
|
|
23
37
|
/**
|
|
24
|
-
* Returns all currently running processes
|
|
38
|
+
* Returns all currently running processes remotely
|
|
25
39
|
*/
|
|
26
|
-
getProcesses(): Promise<Process[]>;
|
|
40
|
+
getProcesses(getProcessesOptions?: GetProcessesOptions): Promise<Process[]>;
|
|
27
41
|
/**
|
|
28
42
|
* Returns all currently running processes locally attached to this computer
|
|
29
43
|
*/
|
|
30
|
-
getAttachedProcesses(): Promise<Process[]>;
|
|
31
|
-
private getServers;
|
|
32
|
-
private findServer;
|
|
44
|
+
getAttachedProcesses(getProcessesOptions?: GetProcessesOptions): Promise<Process[]>;
|
|
33
45
|
private getServerProcesses;
|
|
34
46
|
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { getServerInfo, invoke, MsgType, } from '../Platform/daemonHelper';
|
|
2
|
-
import { getServerCollection } from '../Firebase/collections';
|
|
3
2
|
import { getSockPath } from '../Platform/pathHelper';
|
|
4
3
|
const SCREEN_ID_SIZE = 40;
|
|
5
4
|
export class ProcessSdk {
|
|
6
|
-
constructor(options, sessionSdk,
|
|
5
|
+
constructor(options, sessionSdk, serverSdk) {
|
|
7
6
|
this.options = options;
|
|
8
7
|
this.sessionSdk = sessionSdk;
|
|
9
|
-
this.
|
|
8
|
+
this.serverSdk = serverSdk;
|
|
10
9
|
this.sockPath = getSockPath(options);
|
|
11
10
|
}
|
|
12
11
|
/**
|
|
@@ -15,7 +14,7 @@ export class ProcessSdk {
|
|
|
15
14
|
* If not special options specified, try to reuse existing process of app.
|
|
16
15
|
*/
|
|
17
16
|
async open(openOptions) {
|
|
18
|
-
const server = await this.findServer(openOptions);
|
|
17
|
+
const server = await this.serverSdk.findServer(openOptions);
|
|
19
18
|
const serverInfo = getServerInfo(server, await this.sessionSdk.getRemote(), this.options);
|
|
20
19
|
const processes = await this.getServerProcesses(server);
|
|
21
20
|
const runningProcess = processes.find((process) => process.appName === openOptions.appName);
|
|
@@ -33,12 +32,45 @@ export class ProcessSdk {
|
|
|
33
32
|
};
|
|
34
33
|
await invoke(this.sockPath, MsgType.AttachProcess, Buffer.from(JSON.stringify(attachInfo), 'ascii'));
|
|
35
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Start process with given options.
|
|
37
|
+
* It's not starting new, when app is already running
|
|
38
|
+
*/
|
|
39
|
+
async start(startOptions) {
|
|
40
|
+
const server = await this.serverSdk.findServer(startOptions);
|
|
41
|
+
const serverInfo = getServerInfo(server, await this.sessionSdk.getRemote(), this.options);
|
|
42
|
+
const processes = await this.getServerProcesses(server);
|
|
43
|
+
const runningProcess = processes.find((process) => process.appName === startOptions.appName);
|
|
44
|
+
let screenID;
|
|
45
|
+
if (!runningProcess) {
|
|
46
|
+
const startInfo = {
|
|
47
|
+
...serverInfo,
|
|
48
|
+
AppName: startOptions.appName,
|
|
49
|
+
AppArgs: startOptions.appArgs,
|
|
50
|
+
};
|
|
51
|
+
const screenIDBuffer = await invoke(this.sockPath, MsgType.StartProcess, Buffer.from(JSON.stringify(startInfo), 'utf8'));
|
|
52
|
+
screenID = screenIDBuffer.toString('ascii');
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
screenID = runningProcess.screenId;
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
screenDriver: serverInfo.ScreenDriver,
|
|
59
|
+
metadataDriver: serverInfo.MetadataDriver,
|
|
60
|
+
screenID: screenID,
|
|
61
|
+
screenHost: serverInfo.ScreenHost,
|
|
62
|
+
metadataHost: serverInfo.MetadataHost,
|
|
63
|
+
clientID: serverInfo.ClientID,
|
|
64
|
+
clientSecret: serverInfo.ClientSecret,
|
|
65
|
+
secure: serverInfo.Secure,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
36
68
|
/**
|
|
37
69
|
* Close process with given options.
|
|
38
|
-
* It closes the given process
|
|
70
|
+
* It closes the given process remotely and locally as well.
|
|
39
71
|
*/
|
|
40
72
|
async close(closeOptions) {
|
|
41
|
-
const server = await this.findServer(closeOptions);
|
|
73
|
+
const server = await this.serverSdk.findServer(closeOptions);
|
|
42
74
|
const processes = await this.getServerProcesses(server);
|
|
43
75
|
const runningProcess = processes.find((process) => process.appName === closeOptions.appName);
|
|
44
76
|
if (runningProcess) {
|
|
@@ -53,54 +85,37 @@ export class ProcessSdk {
|
|
|
53
85
|
}
|
|
54
86
|
}
|
|
55
87
|
/**
|
|
56
|
-
* Returns all currently running processes
|
|
88
|
+
* Returns all currently running processes remotely
|
|
57
89
|
*/
|
|
58
|
-
async getProcesses() {
|
|
59
|
-
const
|
|
90
|
+
async getProcesses(getProcessesOptions) {
|
|
91
|
+
const serverOptions = {};
|
|
92
|
+
if (getProcessesOptions?.serverUid) {
|
|
93
|
+
serverOptions.serverUids = [getProcessesOptions.serverUid];
|
|
94
|
+
}
|
|
95
|
+
const servers = await this.serverSdk.getServers(serverOptions);
|
|
60
96
|
const processes = [];
|
|
61
97
|
for (const server of servers) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
processes.push(...serverProcesses);
|
|
65
|
-
}
|
|
66
|
-
catch (error) {
|
|
67
|
-
console.error(error);
|
|
68
|
-
}
|
|
98
|
+
const serverProcesses = await this.getServerProcesses(server);
|
|
99
|
+
processes.push(...serverProcesses);
|
|
69
100
|
}
|
|
70
101
|
return processes;
|
|
71
102
|
}
|
|
72
103
|
/**
|
|
73
104
|
* Returns all currently running processes locally attached to this computer
|
|
74
105
|
*/
|
|
75
|
-
async getAttachedProcesses() {
|
|
76
|
-
const processes = await this.getProcesses();
|
|
106
|
+
async getAttachedProcesses(getProcessesOptions) {
|
|
107
|
+
const processes = await this.getProcesses(getProcessesOptions);
|
|
77
108
|
const attachedScreenIdsData = await invoke(this.sockPath, MsgType.ListAttachedProcesses, Buffer.from(JSON.stringify({})));
|
|
78
109
|
const attachedScreenIds = [];
|
|
79
110
|
for (let i = 0; i < attachedScreenIdsData.byteLength; i += SCREEN_ID_SIZE) {
|
|
80
111
|
const screenId = attachedScreenIdsData.slice(i, i + SCREEN_ID_SIZE).toString('ascii');
|
|
81
112
|
attachedScreenIds.push(screenId);
|
|
82
113
|
}
|
|
83
|
-
const attachedProcesses = processes
|
|
114
|
+
const attachedProcesses = processes
|
|
115
|
+
.filter((process) => attachedScreenIds.includes(process.screenId))
|
|
116
|
+
.filter((process) => !getProcessesOptions?.serverUid || getProcessesOptions.serverUid === process.serverUid);
|
|
84
117
|
return attachedProcesses;
|
|
85
118
|
}
|
|
86
|
-
async getServers() {
|
|
87
|
-
const firebaseApp = await this.firebaseApp();
|
|
88
|
-
const serversCol = getServerCollection(firebaseApp);
|
|
89
|
-
const serversDocument = await serversCol.get();
|
|
90
|
-
return serversDocument.docs.map((doc) => doc.data());
|
|
91
|
-
}
|
|
92
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
93
|
-
async findServer(processOptions) {
|
|
94
|
-
const firebaseApp = await this.firebaseApp();
|
|
95
|
-
const serversCol = getServerCollection(firebaseApp);
|
|
96
|
-
const serversDocument = await serversCol.get();
|
|
97
|
-
const firstServerDocument = serversDocument.docs.find((s) => s.data().serverUid === processOptions.serverUid);
|
|
98
|
-
if (!firstServerDocument) {
|
|
99
|
-
throw new Error(`No servers found for user`);
|
|
100
|
-
}
|
|
101
|
-
const firstServer = firstServerDocument.data();
|
|
102
|
-
return firstServer;
|
|
103
|
-
}
|
|
104
119
|
async getServerProcesses(server) {
|
|
105
120
|
const serverInfo = getServerInfo(server, await this.sessionSdk.getRemote(), this.options);
|
|
106
121
|
const screenIdsData = await invoke(this.sockPath, MsgType.ListProcesses, Buffer.from(JSON.stringify(serverInfo)));
|
|
@@ -120,6 +135,7 @@ export class ProcessSdk {
|
|
|
120
135
|
const process = {
|
|
121
136
|
appName: processInfoData.toString('ascii'),
|
|
122
137
|
screenId,
|
|
138
|
+
serverUid: server.serverUid,
|
|
123
139
|
};
|
|
124
140
|
processes.push(process);
|
|
125
141
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProcessSdk.js","sourceRoot":"","sources":["../../../../src/Process/ProcessSdk.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProcessSdk.js","sourceRoot":"","sources":["../../../../src/Process/ProcessSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,11 @@ import { Options } from "./Options";
|
|
|
2
2
|
import { ProcessSdk } from "./Process/ProcessSdk";
|
|
3
3
|
import { ConnectOptions } from './Session/Options';
|
|
4
4
|
import { SessionSdk } from "./Session/SessionSdk";
|
|
5
|
+
import { ServerSdk } from './Server/ServerSdk';
|
|
5
6
|
export declare class Sdk {
|
|
6
7
|
private readonly options?;
|
|
7
8
|
readonly session: SessionSdk;
|
|
9
|
+
readonly server: ServerSdk;
|
|
8
10
|
readonly process: ProcessSdk;
|
|
9
11
|
private readonly firebaseApp;
|
|
10
12
|
constructor(options?: Options | undefined);
|
package/dist/browser/src/Sdk.js
CHANGED
|
@@ -4,6 +4,7 @@ import { SessionSdk } from "./Session/SessionSdk";
|
|
|
4
4
|
import * as defaultFirebaseOptions from '../firebase.json';
|
|
5
5
|
import { createSessionStorage } from './Session/sessionStorageFactory';
|
|
6
6
|
import { wait } from './Timer/wait';
|
|
7
|
+
import { ServerSdk } from './Server/ServerSdk';
|
|
7
8
|
const FIREBASE_APP_NAME = 'sdk';
|
|
8
9
|
export class Sdk {
|
|
9
10
|
constructor(options) {
|
|
@@ -28,7 +29,8 @@ export class Sdk {
|
|
|
28
29
|
: firebase.app(FIREBASE_APP_NAME);
|
|
29
30
|
const sessionStorage = createSessionStorage(this.options);
|
|
30
31
|
this.session = new SessionSdk(this.options, this.getAuthenticatedFirebaseApp, sessionStorage);
|
|
31
|
-
this.
|
|
32
|
+
this.server = new ServerSdk(this.getAuthenticatedFirebaseApp);
|
|
33
|
+
this.process = new ProcessSdk(this.options, this.session, this.server);
|
|
32
34
|
}
|
|
33
35
|
/**
|
|
34
36
|
* @alias sdk.session.connect
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/Sdk.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,sBAAsB,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/Sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Options.js","sourceRoot":"","sources":["../../../../src/Server/Options.ts"],"names":[],"mappings":""}
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/Server/Server.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IACnB,2BAAe,CAAA;IACf,+BAAmB,CAAA;AACpB,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB"}
|