@supraio/client-sdk 0.0.1-mz-warmup.0 → 0.0.1-mz-warmup.4

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 (39) hide show
  1. package/dist/browser/src/Firebase/collections.d.ts +1 -1
  2. package/dist/browser/src/Platform/daemonHelper.d.ts +1 -1
  3. package/dist/browser/src/Process/Options.d.ts +12 -0
  4. package/dist/browser/src/Process/ProcessSdk.d.ts +22 -10
  5. package/dist/browser/src/Process/ProcessSdk.js +52 -37
  6. package/dist/browser/src/Process/ProcessSdk.js.map +1 -1
  7. package/dist/browser/src/Sdk.d.ts +2 -0
  8. package/dist/browser/src/Sdk.js +3 -1
  9. package/dist/browser/src/Sdk.js.map +1 -1
  10. package/dist/browser/src/Server/Options.d.ts +8 -0
  11. package/dist/browser/src/Server/Options.js +2 -0
  12. package/dist/browser/src/Server/Options.js.map +1 -0
  13. package/dist/browser/src/{Process → Server}/Server.d.ts +0 -0
  14. package/dist/browser/src/{Process → Server}/Server.js +0 -0
  15. package/dist/browser/src/Server/Server.js.map +1 -0
  16. package/dist/browser/src/Server/ServerSdk.d.ts +8 -0
  17. package/dist/browser/src/Server/ServerSdk.js +27 -0
  18. package/dist/browser/src/Server/ServerSdk.js.map +1 -0
  19. package/dist/node/src/Firebase/collections.d.ts +1 -1
  20. package/dist/node/src/Platform/daemonHelper.d.ts +1 -1
  21. package/dist/node/src/Process/Options.d.ts +12 -0
  22. package/dist/node/src/Process/ProcessSdk.d.ts +22 -10
  23. package/dist/node/src/Process/ProcessSdk.js +52 -37
  24. package/dist/node/src/Process/ProcessSdk.js.map +1 -1
  25. package/dist/node/src/Sdk.d.ts +2 -0
  26. package/dist/node/src/Sdk.js +3 -1
  27. package/dist/node/src/Sdk.js.map +1 -1
  28. package/dist/node/src/Server/Options.d.ts +8 -0
  29. package/dist/node/src/Server/Options.js +3 -0
  30. package/dist/node/src/Server/Options.js.map +1 -0
  31. package/dist/node/src/{Process → Server}/Server.d.ts +0 -0
  32. package/dist/node/src/{Process → Server}/Server.js +0 -0
  33. package/dist/node/src/Server/Server.js.map +1 -0
  34. package/dist/node/src/Server/ServerSdk.d.ts +8 -0
  35. package/dist/node/src/Server/ServerSdk.js +31 -0
  36. package/dist/node/src/Server/ServerSdk.js.map +1 -0
  37. package/package.json +1 -1
  38. package/dist/browser/src/Process/Server.js.map +0 -1
  39. 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';
@@ -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 {
@@ -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 = await 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 = await 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"}
@@ -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';
@@ -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 {
@@ -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
  }
@@ -2,14 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProcessSdk = void 0;
4
4
  const daemonHelper_1 = require("../Platform/daemonHelper");
5
- const collections_1 = require("../Firebase/collections");
6
5
  const pathHelper_1 = require("../Platform/pathHelper");
7
6
  const SCREEN_ID_SIZE = 40;
8
7
  class ProcessSdk {
9
- constructor(options, sessionSdk, firebaseApp) {
8
+ constructor(options, sessionSdk, serverSdk) {
10
9
  this.options = options;
11
10
  this.sessionSdk = sessionSdk;
12
- this.firebaseApp = firebaseApp;
11
+ this.serverSdk = serverSdk;
13
12
  this.sockPath = pathHelper_1.getSockPath(options);
14
13
  }
15
14
  /**
@@ -18,7 +17,7 @@ class ProcessSdk {
18
17
  * If not special options specified, try to reuse existing process of app.
19
18
  */
20
19
  async open(openOptions) {
21
- const server = await this.findServer(openOptions);
20
+ const server = await this.serverSdk.findServer(openOptions);
22
21
  const serverInfo = daemonHelper_1.getServerInfo(server, await this.sessionSdk.getRemote(), this.options);
23
22
  const processes = await this.getServerProcesses(server);
24
23
  const runningProcess = processes.find((process) => process.appName === openOptions.appName);
@@ -36,12 +35,45 @@ class ProcessSdk {
36
35
  };
37
36
  await daemonHelper_1.invoke(this.sockPath, daemonHelper_1.MsgType.AttachProcess, Buffer.from(JSON.stringify(attachInfo), 'ascii'));
38
37
  }
38
+ /**
39
+ * Start process with given options.
40
+ * It's not starting new, when app is already running
41
+ */
42
+ async start(startOptions) {
43
+ const server = await this.serverSdk.findServer(startOptions);
44
+ const serverInfo = daemonHelper_1.getServerInfo(server, await this.sessionSdk.getRemote(), this.options);
45
+ const processes = await this.getServerProcesses(server);
46
+ const runningProcess = processes.find((process) => process.appName === startOptions.appName);
47
+ let screenID;
48
+ if (!runningProcess) {
49
+ const startInfo = {
50
+ ...serverInfo,
51
+ AppName: startOptions.appName,
52
+ AppArgs: startOptions.appArgs,
53
+ };
54
+ const screenIDBuffer = await daemonHelper_1.invoke(this.sockPath, daemonHelper_1.MsgType.StartProcess, Buffer.from(JSON.stringify(startInfo), 'utf8'));
55
+ screenID = screenIDBuffer.toString('ascii');
56
+ }
57
+ else {
58
+ screenID = runningProcess.screenId;
59
+ }
60
+ return {
61
+ screenDriver: serverInfo.ScreenDriver,
62
+ metadataDriver: serverInfo.MetadataDriver,
63
+ screenID: screenID,
64
+ screenHost: serverInfo.ScreenHost,
65
+ metadataHost: serverInfo.MetadataHost,
66
+ clientID: serverInfo.ClientID,
67
+ clientSecret: serverInfo.ClientSecret,
68
+ secure: serverInfo.Secure,
69
+ };
70
+ }
39
71
  /**
40
72
  * Close process with given options.
41
- * It closes the given process remotelly and locally as well.
73
+ * It closes the given process remotely and locally as well.
42
74
  */
43
75
  async close(closeOptions) {
44
- const server = await this.findServer(closeOptions);
76
+ const server = await this.serverSdk.findServer(closeOptions);
45
77
  const processes = await this.getServerProcesses(server);
46
78
  const runningProcess = processes.find((process) => process.appName === closeOptions.appName);
47
79
  if (runningProcess) {
@@ -56,54 +88,37 @@ class ProcessSdk {
56
88
  }
57
89
  }
58
90
  /**
59
- * Returns all currently running processes remotelly
91
+ * Returns all currently running processes remotely
60
92
  */
61
- async getProcesses() {
62
- const servers = await this.getServers();
93
+ async getProcesses(getProcessesOptions) {
94
+ const serverOptions = {};
95
+ if (getProcessesOptions?.serverUid) {
96
+ serverOptions.serverUids = [getProcessesOptions.serverUid];
97
+ }
98
+ const servers = await this.serverSdk.getServers(serverOptions);
63
99
  const processes = [];
64
100
  for (const server of servers) {
65
- try {
66
- const serverProcesses = await this.getServerProcesses(server);
67
- processes.push(...serverProcesses);
68
- }
69
- catch (error) {
70
- console.error(error);
71
- }
101
+ const serverProcesses = await this.getServerProcesses(server);
102
+ processes.push(...serverProcesses);
72
103
  }
73
104
  return processes;
74
105
  }
75
106
  /**
76
107
  * Returns all currently running processes locally attached to this computer
77
108
  */
78
- async getAttachedProcesses() {
79
- const processes = await this.getProcesses();
109
+ async getAttachedProcesses(getProcessesOptions) {
110
+ const processes = await this.getProcesses(getProcessesOptions);
80
111
  const attachedScreenIdsData = await daemonHelper_1.invoke(this.sockPath, daemonHelper_1.MsgType.ListAttachedProcesses, Buffer.from(JSON.stringify({})));
81
112
  const attachedScreenIds = [];
82
113
  for (let i = 0; i < attachedScreenIdsData.byteLength; i += SCREEN_ID_SIZE) {
83
114
  const screenId = attachedScreenIdsData.slice(i, i + SCREEN_ID_SIZE).toString('ascii');
84
115
  attachedScreenIds.push(screenId);
85
116
  }
86
- const attachedProcesses = processes.filter((process) => attachedScreenIds.includes(process.screenId));
117
+ const attachedProcesses = processes
118
+ .filter((process) => attachedScreenIds.includes(process.screenId))
119
+ .filter((process) => !getProcessesOptions?.serverUid || getProcessesOptions.serverUid === process.serverUid);
87
120
  return attachedProcesses;
88
121
  }
89
- async getServers() {
90
- const firebaseApp = await this.firebaseApp();
91
- const serversCol = await collections_1.getServerCollection(firebaseApp);
92
- const serversDocument = await serversCol.get();
93
- return serversDocument.docs.map((doc) => doc.data());
94
- }
95
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
96
- async findServer(processOptions) {
97
- const firebaseApp = await this.firebaseApp();
98
- const serversCol = await collections_1.getServerCollection(firebaseApp);
99
- const serversDocument = await serversCol.get();
100
- const firstServerDocument = serversDocument.docs.find((s) => s.data().serverUid === processOptions.serverUid);
101
- if (!firstServerDocument) {
102
- throw new Error(`No servers found for user`);
103
- }
104
- const firstServer = firstServerDocument.data();
105
- return firstServer;
106
- }
107
122
  async getServerProcesses(server) {
108
123
  const serverInfo = daemonHelper_1.getServerInfo(server, await this.sessionSdk.getRemote(), this.options);
109
124
  const screenIdsData = await daemonHelper_1.invoke(this.sockPath, daemonHelper_1.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);
@@ -29,6 +29,7 @@ const SessionSdk_1 = require("./Session/SessionSdk");
29
29
  const defaultFirebaseOptions = __importStar(require("../firebase.json"));
30
30
  const sessionStorageFactory_1 = require("./Session/sessionStorageFactory");
31
31
  const wait_1 = require("./Timer/wait");
32
+ const ServerSdk_1 = require("./Server/ServerSdk");
32
33
  const FIREBASE_APP_NAME = 'sdk';
33
34
  class Sdk {
34
35
  constructor(options) {
@@ -53,7 +54,8 @@ class Sdk {
53
54
  : firebase_1.default.app(FIREBASE_APP_NAME);
54
55
  const sessionStorage = sessionStorageFactory_1.createSessionStorage(this.options);
55
56
  this.session = new SessionSdk_1.SessionSdk(this.options, this.getAuthenticatedFirebaseApp, sessionStorage);
56
- this.process = new ProcessSdk_1.ProcessSdk(this.options, this.session, this.getAuthenticatedFirebaseApp);
57
+ this.server = new ServerSdk_1.ServerSdk(this.getAuthenticatedFirebaseApp);
58
+ this.process = new ProcessSdk_1.ProcessSdk(this.options, this.session, this.server);
57
59
  }
58
60
  /**
59
61
  * @alias sdk.session.connect
@@ -1 +1 @@
1
- {"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/Sdk.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAgC;AAEhC,qDAAkD;AAElD,qDAAkD;AAClD,yEAA2D;AAC3D,2EAAuE;AACvE,uCAAoC;AAEpC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEhC,MAAa,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,kBAAQ,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,kBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC;YAC1E,CAAC,CAAC,kBAAQ,CAAC,aAAa,CAAC,eAAe,EAAE,iBAAiB,CAAC;YAC5D,CAAC,CAAC,kBAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEnC,MAAM,cAAc,GAAG,4CAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,cAAc,CAAC,CAAC;QAC9F,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAU,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,WAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACD;QACD,MAAM,SAAS,CAAC;IACjB,CAAC;CACD;AA1DD,kBA0DC"}
1
+ {"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../src/Sdk.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAgC;AAEhC,qDAAkD;AAElD,qDAAkD;AAClD,yEAA2D;AAC3D,2EAAuE;AACvE,uCAAoC;AACpC,kDAA+C;AAE/C,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEhC,MAAa,GAAG;IAQf,YACkB,OAAiB;QAAjB,YAAO,GAAP,OAAO,CAAU;QAoB3B,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,kBAAQ,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;QAhCA,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,sBAAsB,CAAC;QACzE,IAAI,CAAC,WAAW,GAAG,CAAC,kBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC;YAC1E,CAAC,CAAC,kBAAQ,CAAC,aAAa,CAAC,eAAe,EAAE,iBAAiB,CAAC;YAC5D,CAAC,CAAC,kBAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEnC,MAAM,cAAc,GAAG,4CAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,cAAc,CAAC,CAAC;QAC9F,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACxE,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,WAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACD;QACD,MAAM,SAAS,CAAC;IACjB,CAAC;CACD;AA5DD,kBA4DC"}
@@ -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,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# 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,IAAY,QAGX;AAHD,WAAY,QAAQ;IACnB,2BAAe,CAAA;IACf,+BAAmB,CAAA;AACpB,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,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,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServerSdk = void 0;
4
+ const collections_1 = require("../Firebase/collections");
5
+ class ServerSdk {
6
+ constructor(firebaseApp) {
7
+ this.firebaseApp = firebaseApp;
8
+ }
9
+ async getServers(options) {
10
+ const firebaseApp = await this.firebaseApp();
11
+ const serversCol = await collections_1.getServerCollection(firebaseApp);
12
+ const query = options?.serverUids
13
+ ? serversCol.where('serverUid', 'in', options.serverUids)
14
+ : serversCol;
15
+ const serversDocument = await query.get();
16
+ return serversDocument.docs.map((doc) => doc.data());
17
+ }
18
+ async findServer(processOptions) {
19
+ const firebaseApp = await this.firebaseApp();
20
+ const serversCol = await collections_1.getServerCollection(firebaseApp);
21
+ const serversDocument = await serversCol.get();
22
+ const firstServerDocument = serversDocument.docs.find((s) => s.data().serverUid === processOptions.serverUid);
23
+ if (!firstServerDocument) {
24
+ throw new Error(`No servers found for user`);
25
+ }
26
+ const firstServer = firstServerDocument.data();
27
+ return firstServer;
28
+ }
29
+ }
30
+ exports.ServerSdk = ServerSdk;
31
+ //# sourceMappingURL=ServerSdk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerSdk.js","sourceRoot":"","sources":["../../../../src/Server/ServerSdk.ts"],"names":[],"mappings":";;;AACA,yDAA8D;AAG9D,MAAa,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,iCAAmB,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,iCAAmB,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;AA3BD,8BA2BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supraio/client-sdk",
3
- "version": "0.0.1-mz-warmup.0",
3
+ "version": "0.0.1-mz-warmup.4",
4
4
  "description": "Client SDK for Supra",
5
5
  "main": "dist/node/src/index.js",
6
6
  "browser": "dist/browser/src/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/Process/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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/Process/Server.ts"],"names":[],"mappings":";;;AACA,IAAY,QAGX;AAHD,WAAY,QAAQ;IACnB,2BAAe,CAAA;IACf,+BAAmB,CAAA;AACpB,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}