@sogni-ai/sogni-client 0.2.5 → 0.3.0

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 (41) hide show
  1. package/README.md +160 -4
  2. package/dist/Account/CurrentAccount.d.ts +8 -1
  3. package/dist/Account/CurrentAccount.js +4 -0
  4. package/dist/Account/CurrentAccount.js.map +1 -1
  5. package/dist/Account/index.d.ts +28 -0
  6. package/dist/Account/index.js +29 -1
  7. package/dist/Account/index.js.map +1 -1
  8. package/dist/ApiClient/WebSocketClient/index.d.ts +2 -1
  9. package/dist/ApiClient/WebSocketClient/index.js +8 -8
  10. package/dist/ApiClient/WebSocketClient/index.js.map +1 -1
  11. package/dist/ApiClient/index.d.ts +7 -1
  12. package/dist/ApiClient/index.js +5 -4
  13. package/dist/ApiClient/index.js.map +1 -1
  14. package/dist/Projects/Job.d.ts +6 -3
  15. package/dist/Projects/Job.js.map +1 -1
  16. package/dist/Projects/Project.d.ts +11 -5
  17. package/dist/Projects/Project.js +6 -0
  18. package/dist/Projects/Project.js.map +1 -1
  19. package/dist/Projects/index.d.ts +7 -8
  20. package/dist/Projects/index.js +26 -9
  21. package/dist/Projects/index.js.map +1 -1
  22. package/dist/Projects/types/index.d.ts +69 -2
  23. package/dist/events.d.ts +5 -0
  24. package/dist/events.js +3 -0
  25. package/dist/events.js.map +1 -0
  26. package/dist/index.d.ts +42 -19
  27. package/dist/index.js +20 -3
  28. package/dist/index.js.map +1 -1
  29. package/dist/lib/DataEntity.d.ts +3 -0
  30. package/dist/lib/DataEntity.js.map +1 -1
  31. package/dist/lib/DefaultLogger.d.ts +16 -0
  32. package/dist/lib/DefaultLogger.js +36 -0
  33. package/dist/lib/DefaultLogger.js.map +1 -0
  34. package/dist/lib/RestClient.d.ts +4 -2
  35. package/dist/lib/RestClient.js +3 -2
  36. package/dist/lib/RestClient.js.map +1 -1
  37. package/dist/lib/TypedEventEmitter.d.ts +4 -1
  38. package/dist/lib/TypedEventEmitter.js.map +1 -1
  39. package/dist/version.d.ts +1 -1
  40. package/dist/version.js +1 -1
  41. package/package.json +6 -3
package/README.md CHANGED
@@ -1,8 +1,164 @@
1
1
  # JavaScript Client for Sogni AI API
2
- This library provides a simple way to interact with the Sogni AI API. It is written in TypeScript and can be used
2
+ This library provides a simple way to interact with the Sogni AI Supernet. It is written in TypeScript and can be used
3
3
  in both TypeScript and JavaScript projects. Library can be used in both Node.js and browser environments.
4
4
 
5
- ## Build
5
+ Sogni Supernet uses WebSocket connection for communication between clients, server and workers. Because of this library
6
+ uses event-based API to interact with Supernet.
6
7
 
7
- npm install
8
- npm run build
8
+ ## Installation
9
+ Add library to your project using npm or yarn:
10
+ ```bash
11
+ npm install @sogni-ai/sogni-client
12
+ ```
13
+ or
14
+ ```bash
15
+ yarn add @sogni-ai/sogni-client
16
+ ```
17
+ ## Core concepts
18
+ In order to use Sogni Supernet you need active Sogni account with positive balance.
19
+ You can create one in our [Web App](https://app.sogni.ai) or [Mac App](https://www.sogni.ai/studio).
20
+
21
+ Your account is tied to [Base](https://www.base.org/) Wallet that is created during signup process.
22
+ Because of this client also need access to [Base](https://chainlist.org/chain/8453) or [Base Sepolia](https://chainlist.org/chain/84532) network in order to work.
23
+
24
+ Library will use default provider if none is provided, but note that it is not guaranteed to be always available.
25
+
26
+ ### Supernet Types
27
+ There are 2 worker network types available:
28
+ - `fast` - this network runs on high-end GPUs and is optimized for speed. It is more expensive than `relaxed` network.
29
+ - `relaxed` - this network runs on Apple Mac devices and is optimized for cost. It is cheaper than `fast` network.
30
+
31
+ ### Projects and Jobs
32
+ One request for image generation is called a **Project**. Project can generate one or more images.
33
+ Each image is represented by a **Job**.
34
+
35
+ When you send a project to Supernet, it will be processed by one or more workers. Resulting images will be
36
+ uploaded to Sogni servers and stored there for 24 hours. After this period images will be deleted.
37
+
38
+ ## Client initialization
39
+ To initialize client you need to provide `appId`, and account credentials.
40
+
41
+ ```javascript
42
+ import { SogniClient } from '@sogni-ai/sogni-client';
43
+
44
+ const USERNAME = 'your-username';
45
+ const PASSWORD = 'your-password';
46
+
47
+ // If using default provider
48
+ const options = {
49
+ appId: 'your-app-id', // Required, must be unique string, UUID is recommended
50
+ network: 'fast', // Network to use, 'fast' or 'relaxed'
51
+ }
52
+ // If using custom provider
53
+ const options ={
54
+ appId: 'your-app-id', // Required, must be unique string, UUID is recommended
55
+ jsonRpcUrl: 'https://sepolia.base.org', // Put your custom JSON-RPC URL here
56
+ network: 'fast', // Network to use, 'fast' or 'relaxed'
57
+ }
58
+ const client = await SogniClient.createInstance(options);
59
+ // Login to Sogni account and establish WebSocket connection to Supernet
60
+ await client.login(USERNAME, PASSWORD);
61
+ // Now wait until list of available models is received.
62
+ // This step is only needed if you want to create project immediately.
63
+ const models = await client.waitForModels();
64
+ // You can get list of available models any time from `client.projects.availableModels`
65
+ ```
66
+ **Important Note:**
67
+ - This sample assume you are using ESM modules, if not you need to wrap `await` calls in async function.
68
+ - Sogni is currently in Testnet phase, so you need to provide Base Sepolia network URL.
69
+ - `appId` must be unique string, UUID is recommended. It is used to identify your application.
70
+ - Only one connection per `appId` is allowed. If you try to connect with the same `appId` multiple times, the previous connection will be closed.
71
+
72
+ ## Usage
73
+ After calling `login` method, client will establish WebSocket connection to Sogni Supernet. Within short period of time
74
+ client will receive current balance and list of available models. After this you can start using client to generate images.
75
+
76
+ ### Creating project
77
+ ```javascript
78
+ // Find model that has the most workers
79
+ const mostPopularModel = client.projects.availableModels.reduce((a, b) =>
80
+ a.workerCount > b.workerCount ? a : b
81
+ );
82
+ // Create a project using the most popular model
83
+ const project = await client.projects.create({
84
+ modelId: mostPopularModel.id,
85
+ positivePrompt: 'A cat wearing a hat',
86
+ negativePrompt:
87
+ 'malformation, bad anatomy, bad hands, missing fingers, cropped, low quality, bad quality, jpeg artifacts, watermark',
88
+ stylePrompt: 'anime',
89
+ steps: 20,
90
+ guidance: 7.5,
91
+ numberOfImages: 1
92
+ });
93
+ ```
94
+ **Note:** Full project parameter list can be found in [ProjectParams](https://sogni-ai.github.io/sogni-client/interfaces/ProjectParams.html) docs.
95
+
96
+ ### Getting project status and results
97
+ In general there are 3 ways to work with API:
98
+ 1. Using promises or `async/await` syntax.
99
+ 2. Listening events on `Project` and `Job` class instances.
100
+
101
+ #### Using promises
102
+ ```javascript
103
+ const project = await client.projects.create({
104
+ modelId: mostPopularModel.id,
105
+ steps: 20,
106
+ guidance: 7.5,
107
+ positivePrompt: 'A cat wearing a hat',
108
+ negativePrompt:
109
+ 'malformation, bad anatomy, bad hands, missing fingers, cropped, low quality, bad quality, jpeg artifacts, watermark',
110
+ stylePrompt: 'anime',
111
+ numberOfImages: 4
112
+ });
113
+
114
+ project.on('progress', (progress) => {
115
+ console.log('Project progress:', progress);
116
+ });
117
+
118
+ const imageUrls = await project.waitForCompletion();
119
+ // Now you can use image URLs to download images.
120
+ // Note that images will be available for 24 hours only!
121
+ console.log('Image URLs:', imageUrls);
122
+ ```
123
+
124
+ #### Using events
125
+ ```javascript
126
+ const project = await client.projects.create({
127
+ modelId: mostPopularModel.id,
128
+ steps: 20,
129
+ guidance: 7.5,
130
+ positivePrompt: 'A cat wearing a hat',
131
+ negativePrompt:
132
+ 'malformation, bad anatomy, bad hands, missing fingers, cropped, low quality, bad quality, jpeg artifacts, watermark',
133
+ stylePrompt: 'anime',
134
+ numberOfImages: 4
135
+ });
136
+
137
+ // Fired when one of project jobs completed, you can get the resultUrl from the job
138
+ // without waiting for the entire project to complete
139
+ project.on('jobCompleted', (job) => {
140
+ console.log('Job completed:', job.id, job.resultUrl);
141
+ });
142
+
143
+ // Fired when one of project jobs failed
144
+ project.on('jobFailed', (job) => {
145
+ console.log('Job failed:', job.id, job.error);
146
+ });
147
+
148
+ // Receive project completion percentage in real-time
149
+ project.on('progress', (progress) => {
150
+ // console.log('Project progress:', progress);
151
+ });
152
+
153
+ // Fired when the project is fully completed
154
+ project.on('completed', async (images) => {
155
+ console.log('Project completed:', images);
156
+ });
157
+
158
+ // Fired when the project failed
159
+ project.on('failed', async (errorData) => {
160
+ console.log('Project failed:', errorData);
161
+ });
162
+ ```
163
+ ## Code examples
164
+ You can find more code examples in the [examples](./examples) directory.
@@ -1,7 +1,10 @@
1
1
  import DataEntity from '../lib/DataEntity';
2
2
  import { BalanceData } from './types';
3
3
  import { SupernetType } from '../ApiClient/WebSocketClient/types';
4
- interface AccountData {
4
+ /**
5
+ * @inline
6
+ */
7
+ export interface AccountData {
5
8
  token: string | null;
6
9
  networkStatus: 'connected' | 'disconnected' | 'connecting';
7
10
  network: SupernetType | null;
@@ -10,6 +13,10 @@ interface AccountData {
10
13
  expiresAt?: Date;
11
14
  username?: string;
12
15
  }
16
+ /**
17
+ * Current account data.
18
+ * @expand
19
+ */
13
20
  declare class CurrentAccount extends DataEntity<AccountData> {
14
21
  constructor(data?: AccountData);
15
22
  _update<K extends keyof AccountData>(delta: Partial<AccountData>): void;
@@ -25,6 +25,10 @@ function decodeToken(token) {
25
25
  expiresAt: new Date(data.exp * 1000)
26
26
  };
27
27
  }
28
+ /**
29
+ * Current account data.
30
+ * @expand
31
+ */
28
32
  class CurrentAccount extends DataEntity_1.default {
29
33
  constructor(data) {
30
34
  super(data || getDefaults());
@@ -1 +1 @@
1
- {"version":3,"file":"CurrentAccount.js","sourceRoot":"","sources":["../../src/Account/CurrentAccount.ts"],"names":[],"mappings":";;;;;AAAA,mEAA2C;AAE3C,2CAAuC;AAavC,SAAS,WAAW;IAClB,OAAO;QACL,KAAK,EAAE,IAAI;QACX,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,IAAI;QACb,OAAO,EAAE;YACP,MAAM,EAAE,GAAG;YACX,KAAK,EAAE,GAAG;YACV,GAAG,EAAE,GAAG;YACR,OAAO,EAAE,GAAG;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,MAAM,IAAI,GAAG,IAAA,sBAAS,EAA0D,KAAK,CAAC,CAAC;IACvF,OAAO;QACL,aAAa,EAAE,IAAI,CAAC,IAAI;QACxB,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,cAAe,SAAQ,oBAAuB;IAClD,YAAY,IAAkB;QAC5B,KAAK,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,CAA8B,KAA2B;QAC9D,IAAI,CAAC,IAAI,mCAAQ,IAAI,CAAC,IAAI,GAAM,KAA8B,CAAE,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IACxF,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACjC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,CAAC;CACF;AAED,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"CurrentAccount.js","sourceRoot":"","sources":["../../src/Account/CurrentAccount.ts"],"names":[],"mappings":";;;;;AAAA,mEAA2C;AAE3C,2CAAuC;AAevC,SAAS,WAAW;IAClB,OAAO;QACL,KAAK,EAAE,IAAI;QACX,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,IAAI;QACb,OAAO,EAAE;YACP,MAAM,EAAE,GAAG;YACX,KAAK,EAAE,GAAG;YACV,GAAG,EAAE,GAAG;YACR,OAAO,EAAE,GAAG;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,MAAM,IAAI,GAAG,IAAA,sBAAS,EAA0D,KAAK,CAAC,CAAC;IACvF,OAAO;QACL,aAAa,EAAE,IAAI,CAAC,IAAI;QACxB,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,cAAe,SAAQ,oBAAuB;IAClD,YAAY,IAAkB;QAC5B,KAAK,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,CAA8B,KAA2B;QAC9D,IAAI,CAAC,IAAI,mCAAQ,IAAI,CAAC,IAAI,GAAM,KAA8B,CAAE,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IACxF,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACjC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,CAAC;CACF;AAED,kBAAe,cAAc,CAAC"}
@@ -4,6 +4,9 @@ import { Wallet } from 'ethers';
4
4
  import { ApiReponse } from '../ApiClient';
5
5
  import CurrentAccount from './CurrentAccount';
6
6
  import { SupernetType } from '../ApiClient/WebSocketClient/types';
7
+ /**
8
+ * Account API methods that let you interact with the user's account.
9
+ */
7
10
  declare class AccountApi extends ApiGroup {
8
11
  readonly currentAccount: CurrentAccount;
9
12
  constructor(config: ApiConfig);
@@ -14,15 +17,40 @@ declare class AccountApi extends ApiGroup {
14
17
  getWallet(username: string, password: string): Wallet;
15
18
  create(username: string, email: string, password: string, subscribe?: boolean, referralCode?: string): Promise<AccountCreateData>;
16
19
  setToken(username: string, token: string): void;
20
+ /**
21
+ * Login with username and password. WebSocket connection is established after successful login.
22
+ * @param username
23
+ * @param password
24
+ */
17
25
  login(username: string, password: string): Promise<LoginData>;
26
+ /**
27
+ * Logout the user and close the WebSocket connection.
28
+ */
18
29
  logout(): Promise<void>;
30
+ /**
31
+ * Refresh the balance of the current account.
32
+ */
19
33
  refreshBalance(): Promise<BalanceData>;
34
+ /**
35
+ * Get the balance of a account wallet.
36
+ * @param walletAddress
37
+ */
20
38
  walletBalance(walletAddress: string): Promise<{
21
39
  token: string;
22
40
  ether: string;
23
41
  }>;
24
42
  validateUsername(username: string): Promise<import("../ApiClient").ApiErrorResponse | ApiReponse<undefined>>;
43
+ /**
44
+ * Switch between fast and relaxed networks.
45
+ * Note: This method will close the current WebSocket connection and establish a new one.
46
+ * Do not call this method if you have any active projects.
47
+ * @param network
48
+ */
25
49
  switchNetwork(network: SupernetType): Promise<void>;
50
+ /**
51
+ * Get the transaction history of the current account.
52
+ * @param params
53
+ */
26
54
  transactionHistory(params: TxHistoryParams): Promise<{
27
55
  entries: TxHistoryEntry[];
28
56
  next: TxHistoryParams;
@@ -16,6 +16,9 @@ const ApiGroup_1 = __importDefault(require("../ApiGroup"));
16
16
  const ethers_1 = require("ethers");
17
17
  const ApiClient_1 = require("../ApiClient");
18
18
  const CurrentAccount_1 = __importDefault(require("./CurrentAccount"));
19
+ /**
20
+ * Account API methods that let you interact with the user's account.
21
+ */
19
22
  class AccountApi extends ApiGroup_1.default {
20
23
  constructor(config) {
21
24
  super(config);
@@ -75,6 +78,11 @@ class AccountApi extends ApiGroup_1.default {
75
78
  username
76
79
  });
77
80
  }
81
+ /**
82
+ * Login with username and password. WebSocket connection is established after successful login.
83
+ * @param username
84
+ * @param password
85
+ */
78
86
  login(username, password) {
79
87
  return __awaiter(this, void 0, void 0, function* () {
80
88
  const wallet = this.getWallet(username, password);
@@ -91,15 +99,21 @@ class AccountApi extends ApiGroup_1.default {
91
99
  return res.data;
92
100
  });
93
101
  }
102
+ /**
103
+ * Logout the user and close the WebSocket connection.
104
+ */
94
105
  logout() {
95
106
  return __awaiter(this, void 0, void 0, function* () {
96
107
  this.client.rest.post('/v1/account/logout').catch((e) => {
97
- console.error('Failed to logout', e);
108
+ this.client.logger.error('Failed to logout', e);
98
109
  });
99
110
  this.client.removeAuth();
100
111
  this.currentAccount._clear();
101
112
  });
102
113
  }
114
+ /**
115
+ * Refresh the balance of the current account.
116
+ */
103
117
  refreshBalance() {
104
118
  return __awaiter(this, void 0, void 0, function* () {
105
119
  const res = yield this.client.rest.get('/v1/account/balance');
@@ -107,6 +121,10 @@ class AccountApi extends ApiGroup_1.default {
107
121
  return res.data;
108
122
  });
109
123
  }
124
+ /**
125
+ * Get the balance of a account wallet.
126
+ * @param walletAddress
127
+ */
110
128
  walletBalance(walletAddress) {
111
129
  return __awaiter(this, void 0, void 0, function* () {
112
130
  const res = yield this.client.rest.get('/v1/wallet/balance', {
@@ -133,6 +151,12 @@ class AccountApi extends ApiGroup_1.default {
133
151
  }
134
152
  });
135
153
  }
154
+ /**
155
+ * Switch between fast and relaxed networks.
156
+ * Note: This method will close the current WebSocket connection and establish a new one.
157
+ * Do not call this method if you have any active projects.
158
+ * @param network
159
+ */
136
160
  switchNetwork(network) {
137
161
  return __awaiter(this, void 0, void 0, function* () {
138
162
  this.currentAccount._update({
@@ -142,6 +166,10 @@ class AccountApi extends ApiGroup_1.default {
142
166
  this.client.socket.switchNetwork(network);
143
167
  });
144
168
  }
169
+ /**
170
+ * Get the transaction history of the current account.
171
+ * @param params
172
+ */
145
173
  transactionHistory(params) {
146
174
  return __awaiter(this, void 0, void 0, function* () {
147
175
  const res = yield this.client.rest.get('/v1/transactions/list', {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Account/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Account/index.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,14 @@ import { MessageType, SocketMessageMap } from './messages';
2
2
  import { SocketEventMap } from './events';
3
3
  import RestClient, { AuthData } from '../../lib/RestClient';
4
4
  import { SupernetType } from './types';
5
+ import { Logger } from '../../lib/DefaultLogger';
5
6
  declare class WebSocketClient extends RestClient<SocketEventMap> {
6
7
  appId: string;
7
8
  baseUrl: string;
8
9
  private socket;
9
10
  private _supernetType;
10
11
  private _pingInterval;
11
- constructor(baseUrl: string, appId: string, supernetType?: SupernetType);
12
+ constructor(baseUrl: string, appId: string, supernetType: SupernetType, logger: Logger);
12
13
  set auth(auth: AuthData | null);
13
14
  get supernetType(): SupernetType;
14
15
  get isConnected(): boolean;
@@ -20,8 +20,8 @@ const js_cookie_1 = __importDefault(require("js-cookie"));
20
20
  const version_1 = require("../../version");
21
21
  const PING_INTERVAL = 15000;
22
22
  class WebSocketClient extends RestClient_1.default {
23
- constructor(baseUrl, appId, supernetType = 'fast') {
24
- super(baseUrl);
23
+ constructor(baseUrl, appId, supernetType, logger) {
24
+ super(baseUrl, logger);
25
25
  this.socket = null;
26
26
  this._pingInterval = null;
27
27
  this.appId = appId;
@@ -126,7 +126,7 @@ class WebSocketClient extends RestClient_1.default {
126
126
  }
127
127
  let attempts = 10;
128
128
  while (((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === isomorphic_ws_1.default.CONNECTING) {
129
- console.info('Waiting for WebSocket connection...');
129
+ this._logger.info('Waiting for WebSocket connection...');
130
130
  yield new Promise((resolve) => setTimeout(resolve, 1000));
131
131
  attempts--;
132
132
  if (attempts === 0) {
@@ -146,7 +146,7 @@ class WebSocketClient extends RestClient_1.default {
146
146
  }
147
147
  handleClose(e) {
148
148
  if (e.target === this.socket) {
149
- console.info('WebSocket disconnected, cleanup', e);
149
+ this._logger.info('WebSocket disconnected, cleanup', e);
150
150
  this.disconnect();
151
151
  this.emit('disconnected', {
152
152
  code: e.code,
@@ -155,7 +155,7 @@ class WebSocketClient extends RestClient_1.default {
155
155
  }
156
156
  }
157
157
  handleError(e) {
158
- console.error('WebSocket error:', e);
158
+ this._logger.error('WebSocket error:', e);
159
159
  }
160
160
  handleMessage(e) {
161
161
  let dataPromise;
@@ -180,17 +180,17 @@ class WebSocketClient extends RestClient_1.default {
180
180
  payload[idKey] = payload[idKey].toUpperCase();
181
181
  }
182
182
  });
183
- console.debug('WebSocket:', data.type, payload);
183
+ this._logger.debug('WebSocket:', data.type, payload);
184
184
  this.emit(data.type, payload);
185
185
  })
186
186
  .catch((err) => {
187
- console.error('Failed to parse WebSocket message:', err);
187
+ this._logger.error('Failed to parse WebSocket message:', err);
188
188
  });
189
189
  }
190
190
  send(messageType, data) {
191
191
  return __awaiter(this, void 0, void 0, function* () {
192
192
  yield this.waitForConnection();
193
- console.debug('WebSocket send:', messageType, data);
193
+ this._logger.debug('WebSocket send:', messageType, data);
194
194
  this.socket.send(JSON.stringify({ type: messageType, data: (0, base64_1.base64Encode)(JSON.stringify(data)) }));
195
195
  });
196
196
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ApiClient/WebSocketClient/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ApiClient/WebSocketClient/index.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,12 @@ import { ApiClientEvents } from './events';
5
5
  import { ServerConnectData, ServerDisconnectData } from './WebSocketClient/events';
6
6
  import { JSONValue } from '../types/json';
7
7
  import { SupernetType } from './WebSocketClient/types';
8
+ import { Logger } from '../lib/DefaultLogger';
8
9
  export interface ApiReponse<D = JSONValue> {
9
10
  status: 'success';
10
11
  data: D;
11
12
  }
13
+ /** @inline */
12
14
  export interface ApiErrorResponse {
13
15
  status: 'error';
14
16
  message: string;
@@ -19,6 +21,9 @@ export declare class ApiError extends Error {
19
21
  payload: ApiErrorResponse;
20
22
  constructor(status: number, payload: ApiErrorResponse);
21
23
  }
24
+ /**
25
+ * @inline
26
+ */
22
27
  interface AuthData {
23
28
  token: string;
24
29
  walletAddress: string;
@@ -26,11 +31,12 @@ interface AuthData {
26
31
  }
27
32
  declare class ApiClient extends TypedEventEmitter<ApiClientEvents> {
28
33
  readonly appId: string;
34
+ readonly logger: Logger;
29
35
  private _rest;
30
36
  private _socket;
31
37
  private _auth;
32
38
  private _reconnectAttempts;
33
- constructor(baseUrl: string, socketUrl: string, appId: string, networkType: SupernetType);
39
+ constructor(baseUrl: string, socketUrl: string, appId: string, networkType: SupernetType, logger: Logger);
34
40
  get isAuthenticated(): boolean;
35
41
  get auth(): AuthData | null;
36
42
  get socket(): WebSocketClient;
@@ -19,13 +19,14 @@ class ApiError extends Error {
19
19
  }
20
20
  exports.ApiError = ApiError;
21
21
  class ApiClient extends TypedEventEmitter_1.default {
22
- constructor(baseUrl, socketUrl, appId, networkType) {
22
+ constructor(baseUrl, socketUrl, appId, networkType, logger) {
23
23
  super();
24
24
  this._auth = null;
25
25
  this._reconnectAttempts = WS_RECONNECT_ATTEMPTS;
26
26
  this.appId = appId;
27
- this._rest = new RestClient_1.default(baseUrl);
28
- this._socket = new WebSocketClient_1.default(socketUrl, appId, networkType);
27
+ this.logger = logger;
28
+ this._rest = new RestClient_1.default(baseUrl, logger);
29
+ this._socket = new WebSocketClient_1.default(socketUrl, appId, networkType, logger);
29
30
  this._socket.on('connected', this.handleSocketConnect.bind(this));
30
31
  this._socket.on('disconnected', this.handleSocketDisconnect.bind(this));
31
32
  }
@@ -64,7 +65,7 @@ class ApiClient extends TypedEventEmitter_1.default {
64
65
  if (!data.code || (0, ErrorCode_1.isNotRecoverable)(data.code)) {
65
66
  this.removeAuth();
66
67
  this.emit('disconnected', data);
67
- console.error('Not recoverable socket error', data);
68
+ this.logger.error('Not recoverable socket error', data);
68
69
  return;
69
70
  }
70
71
  if (this._reconnectAttempts <= 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ApiClient/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ApiClient/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import DataEntity, { EntityEvents } from '../lib/DataEntity';
2
2
  import ErrorData from '../types/ErrorData';
3
3
  export type JobStatus = 'pending' | 'initiating' | 'processing' | 'completed' | 'failed' | 'canceled';
4
+ /**
5
+ * @inline
6
+ */
4
7
  export interface JobData {
5
8
  id: string;
6
9
  status: JobStatus;
@@ -13,12 +16,12 @@ export interface JobData {
13
16
  resultUrl?: string | null;
14
17
  error?: ErrorData;
15
18
  }
16
- interface JobEvents extends EntityEvents {
19
+ export interface JobEventMap extends EntityEvents {
17
20
  progress: number;
18
21
  completed: string;
19
- failed: JobData['error'];
22
+ failed: ErrorData;
20
23
  }
21
- declare class Job extends DataEntity<JobData, JobEvents> {
24
+ declare class Job extends DataEntity<JobData, JobEventMap> {
22
25
  constructor(data: JobData);
23
26
  get id(): string;
24
27
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/Projects/Job.ts"],"names":[],"mappings":";;;;;AAAA,mEAA6D;AA8B7D,MAAM,GAAI,SAAQ,oBAA8B;IAC9C,YAAY,IAAa;QACvB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACrD,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAI,MAAM;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAEO,aAAa,CAAC,IAAc;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAU,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;CACF;AAED,kBAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/Projects/Job.ts"],"names":[],"mappings":";;;;;AAAA,mEAA6D;AAiC7D,MAAM,GAAI,SAAQ,oBAAgC;IAChD,YAAY,IAAa;QACvB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACrD,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAI,MAAM;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAEO,aAAa,CAAC,IAAc;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAU,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;CACF;AAED,kBAAe,GAAG,CAAC"}
@@ -3,7 +3,10 @@ import DataEntity, { EntityEvents } from '../lib/DataEntity';
3
3
  import { ProjectParams } from './types';
4
4
  import ErrorData from '../types/ErrorData';
5
5
  export type ProjectStatus = 'pending' | 'queued' | 'processing' | 'completed' | 'failed';
6
- interface ProjectData {
6
+ /**
7
+ * @inline
8
+ */
9
+ export interface ProjectData {
7
10
  id: string;
8
11
  startedAt: Date;
9
12
  params: ProjectParams;
@@ -11,15 +14,18 @@ interface ProjectData {
11
14
  status: ProjectStatus;
12
15
  error?: ErrorData;
13
16
  }
14
- interface SerializedProject extends ProjectData {
17
+ /** @inline */
18
+ export interface SerializedProject extends ProjectData {
15
19
  jobs: JobData[];
16
20
  }
17
- interface ProjectEvents extends EntityEvents {
21
+ export interface ProjectEventMap extends EntityEvents {
18
22
  progress: number;
19
23
  completed: string[];
20
- failed: ProjectData['error'];
24
+ failed: ErrorData;
25
+ jobCompleted: Job;
26
+ jobFailed: Job;
21
27
  }
22
- declare class Project extends DataEntity<ProjectData, ProjectEvents> {
28
+ declare class Project extends DataEntity<ProjectData, ProjectEventMap> {
23
29
  private _jobs;
24
30
  private _lastEmitedProgress;
25
31
  constructor(data: ProjectParams);
@@ -120,6 +120,12 @@ class Project extends DataEntity_1.default {
120
120
  job.on('updated', () => {
121
121
  this.emit('updated', ['jobs']);
122
122
  });
123
+ job.on('completed', () => {
124
+ this.emit('jobCompleted', job);
125
+ });
126
+ job.on('failed', () => {
127
+ this.emit('jobFailed', job);
128
+ });
123
129
  return job;
124
130
  }
125
131
  /**