@supraio/client-sdk 0.0.1-master.5 → 0.0.1-master.9

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.
Files changed (51) hide show
  1. package/dist/browser/src/Firebase/collections.d.ts +7 -6
  2. package/dist/browser/src/Firebase/collections.js +27 -12
  3. package/dist/browser/src/Firebase/collections.js.map +1 -1
  4. package/dist/browser/src/Platform/daemonHelper.d.ts +1 -1
  5. package/dist/browser/src/Platform/sshHelper.js +27 -2
  6. package/dist/browser/src/Platform/sshHelper.js.map +1 -1
  7. package/dist/browser/src/Process/Options.d.ts +12 -0
  8. package/dist/browser/src/Process/ProcessSdk.d.ts +22 -10
  9. package/dist/browser/src/Process/ProcessSdk.js +52 -37
  10. package/dist/browser/src/Process/ProcessSdk.js.map +1 -1
  11. package/dist/browser/src/Sdk.d.ts +2 -0
  12. package/dist/browser/src/Sdk.js +3 -1
  13. package/dist/browser/src/Sdk.js.map +1 -1
  14. package/dist/browser/src/Server/Options.d.ts +8 -0
  15. package/dist/browser/src/Server/Options.js +2 -0
  16. package/dist/browser/src/Server/Options.js.map +1 -0
  17. package/dist/browser/src/{Process → Server}/Server.d.ts +0 -0
  18. package/dist/browser/src/{Process → Server}/Server.js +0 -0
  19. package/dist/browser/src/Server/Server.js.map +1 -0
  20. package/dist/browser/src/Server/ServerSdk.d.ts +8 -0
  21. package/dist/browser/src/Server/ServerSdk.js +27 -0
  22. package/dist/browser/src/Server/ServerSdk.js.map +1 -0
  23. package/dist/browser/src/Session/SessionSdk.js +4 -4
  24. package/dist/browser/src/Session/SessionSdk.js.map +1 -1
  25. package/dist/node/src/Firebase/collections.d.ts +7 -6
  26. package/dist/node/src/Firebase/collections.js +30 -14
  27. package/dist/node/src/Firebase/collections.js.map +1 -1
  28. package/dist/node/src/Platform/daemonHelper.d.ts +1 -1
  29. package/dist/node/src/Platform/sshHelper.js +27 -2
  30. package/dist/node/src/Platform/sshHelper.js.map +1 -1
  31. package/dist/node/src/Process/Options.d.ts +12 -0
  32. package/dist/node/src/Process/ProcessSdk.d.ts +22 -10
  33. package/dist/node/src/Process/ProcessSdk.js +52 -37
  34. package/dist/node/src/Process/ProcessSdk.js.map +1 -1
  35. package/dist/node/src/Sdk.d.ts +2 -0
  36. package/dist/node/src/Sdk.js +3 -1
  37. package/dist/node/src/Sdk.js.map +1 -1
  38. package/dist/node/src/Server/Options.d.ts +8 -0
  39. package/dist/node/src/Server/Options.js +3 -0
  40. package/dist/node/src/Server/Options.js.map +1 -0
  41. package/dist/node/src/{Process → Server}/Server.d.ts +0 -0
  42. package/dist/node/src/{Process → Server}/Server.js +0 -0
  43. package/dist/node/src/Server/Server.js.map +1 -0
  44. package/dist/node/src/Server/ServerSdk.d.ts +8 -0
  45. package/dist/node/src/Server/ServerSdk.js +31 -0
  46. package/dist/node/src/Server/ServerSdk.js.map +1 -0
  47. package/dist/node/src/Session/SessionSdk.js +4 -4
  48. package/dist/node/src/Session/SessionSdk.js.map +1 -1
  49. package/package.json +1 -1
  50. package/dist/browser/src/Process/Server.js.map +0 -1
  51. 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 '../Process/Server';
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 getServerCollection(firebaseApp: firebase.app.App): firebase.firestore.CollectionReference<Server>;
20
- export declare function getSessionCollection(firebaseApp: firebase.app.App): firebase.firestore.CollectionReference<RemoteSession>;
21
- export declare function getServerAppCollection(firebaseApp: firebase.app.App, serverUid: string): firebase.firestore.CollectionReference<ServerApp>;
22
- export declare function getServerVolumeCollection(firebaseApp: firebase.app.App, serverUid: string): firebase.firestore.CollectionReference<ServerVolume>;
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 getUserCollectionPath(firebaseApp, collection) {
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
- return `${MainCollection.USER}/${user.uid}${collection ? '/' + collection : ''}`;
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 getUserDocument(firebaseApp) {
23
- return firebaseApp.firestore().doc(getUserCollectionPath(firebaseApp, null));
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
- return firebaseApp.firestore().collection(getUserCollectionPath(firebaseApp, UserCollection.SERVER));
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
- return firebaseApp.firestore().collection(getUserCollectionPath(firebaseApp, UserCollection.SESSION));
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
- return getServerCollection(firebaseApp).doc(serverUid).collection(UserServerCollection.APP);
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
- return getServerCollection(firebaseApp).doc(serverUid).collection(UserServerCollection.VOLUME);
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,SAAS,qBAAqB,CAC7B,WAA6B,EAC7B,UAAiC;IAEjC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC;IAC5C,IAAI,CAAC,IAAI,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;KAC7C;IAED,OAAO,GAAG,cAAc,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,WAA6B;IAC5D,OAAO,WAAW,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAA+C,CAAC;AAC5H,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAA6B;IAChE,OAAO,WAAW,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,CAAmD,CAAC;AACxJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAA6B;IACjE,OAAO,WAAW,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,WAAW,EAAE,cAAc,CAAC,OAAO,CAAC,CAA0D,CAAC;AAChK,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAA6B,EAAE,SAAiB;IACtF,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,oBAAoB,CAAC,GAAG,CAAsD,CAAC;AAClJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,WAA6B,EAAE,SAAiB;IACzF,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAyD,CAAC;AACxJ,CAAC"}
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"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import { Server } from '../Process/Server';
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 {
@@ -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('RSASSA-PKCS1-v1_5', 2048, sshKeyName);
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;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,kBAAkB,CAAC;AAC1B,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;AAE1C,MAAM,WAAW,GAAG,MAAM,CAAC;AAC3B,MAAM,2BAA2B,GAAG,YAAY,CAAC,CAAC,8BAA8B;AAChF,MAAM,4BAA4B,GAAG,QAAQ,CAAC,CAAC,8BAA8B;AAC7E,MAAM,uBAAuB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,2BAA2B,CAAC,CAAC;AAC1F,MAAM,wBAAwB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,4BAA4B,CAAC,CAAC;AAE5F,MAAM,cAAc,GAAG,iBAAiB,CAAC;AACzC,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAA4B;IACtE,IAAI,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE;QAC5B,OAAO,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC;KAC/B;IAED,IAAI,SAAS,GAAkB,IAAI,CAAC;IAEpC,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;QACrC,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;KACxD;SAAM;QACN,MAAM,aAAa,GAAG,OAAO,EAAE,GAAG,EAAE,aAAa,IAAI,uBAAuB,CAAC;QAC7E,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,CAAkB,CAAC,CAAC,kCAAkC;QAC3F,IAAI;YACH,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACzD,SAAS,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC;SACvC;QAAC,OAAO,KAAK,EAAE;YACf,uBAAuB;SACvB;KACD;IAED,IAAI,SAAS,KAAK,IAAI,EAAE;QACvB,MAAM,UAAU,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,QAAQ,EAAE,CAAC,QAAQ,CAAC;QAChE,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,GAAG,MAAM,eAAe,CAAC,mBAAmB,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QACtG,SAAS,GAAG,kBAAkB,CAAC;QAE/B,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;YACrC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,SAAU,CAAC,CAAC,CAAC,+DAA+D;YACxH,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;SACzD;aAAM;YACN,MAAM,aAAa,GAAG,OAAO,EAAE,GAAG,EAAE,aAAa,IAAI,uBAAuB,CAAC;YAC7E,MAAM,cAAc,GAAG,OAAO,EAAE,GAAG,EAAE,cAAc,IAAI,wBAAwB,CAAC;YAChF,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,CAAkB,CAAC,CAAC,kCAAkC;YAC3F,MAAM,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,SAAU,CAAC,CAAC,CAAC,+DAA+D;YAC9G,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;SAChE;KACD;IAED,OAAO,SAAS,CAAC;AAClB,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 firebase from 'firebase';
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 firebaseApp;
9
+ private serverSdk;
10
10
  private sockPath;
11
- constructor(options: Options | undefined, sessionSdk: SessionSdk, firebaseApp: () => Promise<firebase.app.App>);
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 remotelly and locally as well.
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 remotelly
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, firebaseApp) {
5
+ constructor(options, sessionSdk, serverSdk) {
7
6
  this.options = options;
8
7
  this.sessionSdk = sessionSdk;
9
- this.firebaseApp = firebaseApp;
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 remotelly and locally as well.
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 remotelly
88
+ * Returns all currently running processes remotely
57
89
  */
58
- async getProcesses() {
59
- const servers = await this.getServers();
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
- try {
63
- const serverProcesses = await this.getServerProcesses(server);
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.filter((process) => attachedScreenIds.includes(process.screenId));
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)));
@@ -1 +1 @@
1
- {"version":3,"file":"ProcessSdk.js","sourceRoot":"","sources":["../../../../src/Process/ProcessSdk.ts"],"names":[],"mappings":"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"}
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);
@@ -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.process = new ProcessSdk(this.options, this.session, this.getAuthenticatedFirebaseApp);
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;AAEpC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEhC,MAAM,OAAO,GAAG;IAOf,YACkB,OAAiB;QAAjB,YAAO,GAAP,OAAO,CAAU;QAmB3B,gCAA2B,GAAG,KAAK,IAAI,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;gBACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC;gBACnD,IAAI,CAAC,gBAAgB,EAAE;oBACtB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;iBACrD;gBACD,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBAChF,IAAI,CAAC,eAAe,EAAE;oBACrB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;iBACjE;gBACD,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;aACrC;YAED,OAAO,IAAI,CAAC,WAAW,CAAC;QACzB,CAAC,CAAA;QA/BA,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,sBAAsB,CAAC;QACzE,IAAI,CAAC,WAAW,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC;YAC1E,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,eAAe,EAAE,iBAAiB,CAAC;YAC5D,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEnC,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,cAAc,CAAC,CAAC;QAC9F,IAAI,CAAC,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO,CAAC,cAA+B;QACnD,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC7C,CAAC;IAkBO,KAAK,CAAC,QAAQ,CAAC,eAA6C;QACnE,IAAI,SAA4B,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,IAAI;gBACH,iFAAiF;gBACjF,iGAAiG;gBACjG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;gBACpE,OAAO;aACP;YAAC,OAAO,KAAK,EAAE;gBACf,SAAS,GAAG,KAAK,CAAA;gBACjB,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACD;QACD,MAAM,SAAS,CAAC;IACjB,CAAC;CACD"}
1
+ {"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/Sdk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export interface GetServersOptions {
2
+ /** Filter only specified servers */
3
+ serverUids?: string[];
4
+ }
5
+ export interface FindServerOptions {
6
+ /** Filter only specified server */
7
+ serverUid?: string;
8
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Options.js.map
@@ -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"}
@@ -0,0 +1,8 @@
1
+ import firebase from 'firebase';
2
+ import { FindServerOptions, GetServersOptions } from './Options';
3
+ export declare class ServerSdk {
4
+ private firebaseApp;
5
+ constructor(firebaseApp: () => Promise<firebase.app.App>);
6
+ getServers(options?: GetServersOptions): Promise<import("./Server").Server[]>;
7
+ findServer(processOptions: FindServerOptions): Promise<import("./Server").Server>;
8
+ }
@@ -0,0 +1,27 @@
1
+ import { getServerCollection } from '../Firebase/collections';
2
+ export class ServerSdk {
3
+ constructor(firebaseApp) {
4
+ this.firebaseApp = firebaseApp;
5
+ }
6
+ async getServers(options) {
7
+ const firebaseApp = await this.firebaseApp();
8
+ const serversCol = await getServerCollection(firebaseApp);
9
+ const query = options?.serverUids
10
+ ? serversCol.where('serverUid', 'in', options.serverUids)
11
+ : serversCol;
12
+ const serversDocument = await query.get();
13
+ return serversDocument.docs.map((doc) => doc.data());
14
+ }
15
+ async findServer(processOptions) {
16
+ const firebaseApp = await this.firebaseApp();
17
+ const serversCol = await getServerCollection(firebaseApp);
18
+ const serversDocument = await serversCol.get();
19
+ const firstServerDocument = serversDocument.docs.find((s) => s.data().serverUid === processOptions.serverUid);
20
+ if (!firstServerDocument) {
21
+ throw new Error(`No servers found for user`);
22
+ }
23
+ const firstServer = firstServerDocument.data();
24
+ return firstServer;
25
+ }
26
+ }
27
+ //# sourceMappingURL=ServerSdk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerSdk.js","sourceRoot":"","sources":["../../../../src/Server/ServerSdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,MAAM,OAAO,SAAS;IAErB,YACS,WAA4C;QAA5C,gBAAW,GAAX,WAAW,CAAiC;IAClD,CAAC;IAEG,KAAK,CAAC,UAAU,CAAC,OAA2B;QAClD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,OAAO,EAAE,UAAU;YAChC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC;YACzD,CAAC,CAAC,UAAU,CAAC;QACd,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC;QAC1C,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,cAAiC;QACxD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,CAAC;QAC/C,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,KAAK,cAAc,CAAC,SAAS,CAAC,CAAC;QAC9G,IAAI,CAAC,mBAAmB,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC7C;QACD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC;QAC/C,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"}
@@ -88,21 +88,21 @@ export class SessionSdk {
88
88
  },
89
89
  createdAt: session.createdAt,
90
90
  };
91
- const sessionsCol = getSessionCollection(firebaseApp);
91
+ const sessionsCol = await getSessionCollection(firebaseApp);
92
92
  await sessionsCol.doc(session.uid).set(remoteSession);
93
- const userDoc = getUserDocument(firebaseApp);
93
+ const userDoc = await getUserDocument(firebaseApp);
94
94
  await userDoc.update({
95
95
  'performRequests.ensureSessionsAt': new Date(),
96
96
  });
97
97
  }
98
98
  async deleteRemoteSession(session) {
99
99
  const firebaseApp = await this.firebaseApp();
100
- const sessionsCol = getSessionCollection(firebaseApp);
100
+ const sessionsCol = await getSessionCollection(firebaseApp);
101
101
  await sessionsCol.doc(session.uid).delete();
102
102
  }
103
103
  async getRemoteByCurrent(session) {
104
104
  const firebaseApp = await this.firebaseApp();
105
- const sessionsCol = getSessionCollection(firebaseApp);
105
+ const sessionsCol = await getSessionCollection(firebaseApp);
106
106
  const sessionDocument = await sessionsCol.doc(session.uid).get();
107
107
  const remoteSession = sessionDocument.data();
108
108
  if (!remoteSession) {
@@ -1 +1 @@
1
- {"version":3,"file":"SessionSdk.js","sourceRoot":"","sources":["../../../../src/Session/SessionSdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionSdk.js","sourceRoot":"","sources":["../../../../src/Session/SessionSdk.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAGhF,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,MAAM,OAAO,UAAU;IAEtB,YACkB,OAA4B,EACrC,WAA4C,EAC5C,cAA+B;QAFtB,YAAO,GAAP,OAAO,CAAqB;QACrC,gBAAW,GAAX,WAAW,CAAiC;QAC5C,mBAAc,GAAd,cAAc,CAAiB;IACrC,CAAC;IAEJ;;;OAGG;IACI,KAAK,CAAC,OAAO,CAAC,cAA+B;QACnD,IAAI;YACH,IAAI,cAAc,EAAE,SAAS,EAAE;gBAC9B,OAAO,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;aAC/B;iBAAM;gBACN,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;aACpC;SACD;QAAC,OAAO,KAAK,EAAE;YACf,MAAM,OAAO,GAAG,cAAc,EAAE,OAAO,IAAI,eAAe,CAAC;YAC3D,IAAI,OAAO,IAAI,CAAC,EAAE;gBACjB,MAAM,KAAK,CAAC;aACZ;YAED,kFAAkF;YAClF,OAAO,IAAI,CAAC,OAAO,CAAC;gBACnB,GAAG,cAAc;gBACjB,OAAO,EAAE,OAAO,GAAG,CAAC;aACpB,CAAC,CAAC;SACH;IACF,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS;QACrB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,GAAG;QACf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACzD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC/B,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;gBACvC,OAAO,OAAO,CAAC;aACf;iBAAM;gBACN,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAClC,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;aACxC;SACD;QAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,eAAe;QAC5B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,OAAO,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;SAC/B;aAAM;YACN,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;SAClB;IACF,CAAC;IAEO,KAAK,CAAC,UAAU;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAClC,OAAO,UAAU,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,OAAuB;QACxD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAkB;YACpC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,GAAG,EAAE;gBACJ,SAAS,EAAE,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC;aACnD;YACD,MAAM,EAAE;gBACP,EAAE,EAAE,gBAAgB,EAAE;gBACtB,MAAM,EAAE,oBAAoB,EAAE;aAC9B;YACD,SAAS,EAAE,OAAO,CAAC,SAAS;SAC5B,CAAC;QACF,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,CAAC,MAAM,CAAC;YACpB,kCAAkC,EAAE,IAAI,IAAI,EAAE;SAC9C,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,OAAuB;QACxD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,OAAuB;QACvD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACjE,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,aAAa,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SACjD;QACD,OAAO,aAAa,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAAuB;QACnD,IAAI;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAC7D,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;SACtD;QAAC,OAAO,KAAK,EAAE;YACf,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO,KAAK,CAAC;SACb;IACF,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,aAAwC;QAC1E,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC;QACrG,OAAO,aAAa,EAAE,GAAG,EAAE,SAAS,KAAK,iBAAiB,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,OAAuB;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACzD,MAAM,WAAW,GAAG,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAuB;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACzD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;QAClE,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAEO,oBAAoB;QAC3B,OAAO;YACN,GAAG,EAAE,kBAAkB,EAAE;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE;SACrB,CAAC;IACH,CAAC;CACD"}
@@ -1,6 +1,6 @@
1
1
  import firebase from 'firebase';
2
2
  import { ServerApp } from '../Process/App/App';
3
- import { Server } from '../Process/Server';
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 getServerCollection(firebaseApp: firebase.app.App): firebase.firestore.CollectionReference<Server>;
20
- export declare function getSessionCollection(firebaseApp: firebase.app.App): firebase.firestore.CollectionReference<RemoteSession>;
21
- export declare function getServerAppCollection(firebaseApp: firebase.app.App, serverUid: string): firebase.firestore.CollectionReference<ServerApp>;
22
- export declare function getServerVolumeCollection(firebaseApp: firebase.app.App, serverUid: string): firebase.firestore.CollectionReference<ServerVolume>;
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>>;