hive-stream 3.0.3 → 3.0.5

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/DOCUMENTATION.md +693 -1
  2. package/README.md +251 -1
  3. package/dist/adapters/mongodb.adapter.js +21 -30
  4. package/dist/adapters/mongodb.adapter.js.map +1 -1
  5. package/dist/adapters/postgresql.adapter.js +16 -16
  6. package/dist/adapters/postgresql.adapter.js.map +1 -1
  7. package/dist/adapters/sqlite.adapter.js +17 -17
  8. package/dist/adapters/sqlite.adapter.js.map +1 -1
  9. package/dist/api.js +2 -0
  10. package/dist/api.js.map +1 -1
  11. package/dist/builders.d.ts +444 -0
  12. package/dist/builders.js +1609 -0
  13. package/dist/builders.js.map +1 -0
  14. package/dist/config.d.ts +10 -1
  15. package/dist/config.js +90 -4
  16. package/dist/config.js.map +1 -1
  17. package/dist/contracts/coinflip.contract.js +18 -21
  18. package/dist/contracts/coinflip.contract.js.map +1 -1
  19. package/dist/contracts/dice.contract.js +18 -21
  20. package/dist/contracts/dice.contract.js.map +1 -1
  21. package/dist/contracts/helpers.d.ts +2 -0
  22. package/dist/contracts/helpers.js +18 -11
  23. package/dist/contracts/helpers.js.map +1 -1
  24. package/dist/contracts/nft.contract.js +5 -10
  25. package/dist/contracts/nft.contract.js.map +1 -1
  26. package/dist/contracts/rps.contract.js +35 -23
  27. package/dist/contracts/rps.contract.js.map +1 -1
  28. package/dist/index.d.ts +1 -0
  29. package/dist/index.js +1 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/metadata.d.ts +13 -0
  32. package/dist/metadata.js +256 -0
  33. package/dist/metadata.js.map +1 -1
  34. package/dist/streamer.d.ts +148 -12
  35. package/dist/streamer.js +1102 -53
  36. package/dist/streamer.js.map +1 -1
  37. package/dist/types/hive-stream.d.ts +623 -0
  38. package/dist/utils.d.ts +475 -0
  39. package/dist/utils.js +1618 -8
  40. package/dist/utils.js.map +1 -1
  41. package/package.json +4 -5
package/README.md CHANGED
@@ -36,6 +36,19 @@ console.log(getHiveStreamMetadata().writeOperations);
36
36
 
37
37
  This metadata is static runtime data (no network calls) and includes config defaults, event callback signatures, write operation signatures, adapter metadata, contract trigger info, and valid `TimeAction` values.
38
38
 
39
+ ## AI Skills
40
+
41
+ This repo now includes installable AI skills for both Claude Code and Codex, tailored to building on top of `hive-stream` instead of raw Hive RPC primitives.
42
+
43
+ Quick locations:
44
+
45
+ - Claude bundle: `.claude/skills/hive-stream`
46
+ - Codex bundle: `codex-skills/hive-stream`
47
+
48
+ For full install and usage instructions, see [AI-SKILLS.md](AI-SKILLS.md).
49
+
50
+ Both skill bundles include focused references for package surface, contracts and triggers, transfer flows and builder APIs, and the built-in contract catalog.
51
+
39
52
  ## Configuration
40
53
 
41
54
  The `Streamer` object can accept an object of configuration values which are all optional. However, some operations like transferring Hive Engine tokens or other operations on the blockchain that are not READ ONLY, will require the active key and/or posting keys supplied as well as a username.
@@ -54,6 +67,7 @@ CamelCase config keys are recommended for readability. Legacy uppercase keys are
54
67
 
55
68
  ```
56
69
  const options = {
70
+ env: true,
57
71
  activeKey: '',
58
72
  postingKey: '',
59
73
  jsonId: 'hivestream',
@@ -77,6 +91,8 @@ const options = {
77
91
  const ss = new Streamer(options);
78
92
  ```
79
93
 
94
+ If you prefer loading credentials from environment variables, pass `env: true`. Hive Stream will read canonical keys like `ACTIVE_KEY` and `USERNAME`, plus Hive-friendly aliases like `HIVE_ACCOUNT` and `HIVE_ACTIVE_KEY`.
95
+
80
96
  If you want the built-in API without starting block streaming yet:
81
97
 
82
98
  ```javascript
@@ -102,8 +118,9 @@ These event subscriptions and contract actions are separate paths: subscriptions
102
118
  #### Watch for transfers
103
119
 
104
120
  ```javascript
105
- ss.onTransfer('myaccount', (op, { sender, amount, asset, memo }, blockNumber, blockId, prevBlockId, trxId, blockTime) => {
121
+ ss.onTransfer('myaccount', (op, blockNumber, blockId, prevBlockId, trxId, blockTime) => {
106
122
  // Fires only when op.to === 'myaccount'
123
+ // Parse op.amount yourself, for example: "1.000 HIVE"
107
124
  });
108
125
  ```
109
126
 
@@ -180,6 +197,20 @@ transferHiveTokens(from, to, amount, symbol, memo = '') {
180
197
  }
181
198
  ```
182
199
 
200
+ ### Burn Hive (HIVE or HBD)
201
+ ```javascript
202
+ burnHiveTokens(from, amount, symbol, memo = '') {
203
+
204
+ }
205
+ ```
206
+
207
+ ### Burn A Percentage Of An Incoming Transfer
208
+ ```javascript
209
+ burnTransferPercentage(from, transferOrAmount, percentage, memo = '', allowedSymbols = ['HIVE', 'HBD']) {
210
+
211
+ }
212
+ ```
213
+
183
214
  ### Transfer Hive Engine Tokens
184
215
  ```javascript
185
216
  transferHiveEngineTokens(from, to, symbol, quantity, memo = '') {
@@ -187,6 +218,13 @@ transferHiveEngineTokens(from, to, symbol, quantity, memo = '') {
187
218
  }
188
219
  ```
189
220
 
221
+ ### Burn Hive Engine Tokens
222
+ ```javascript
223
+ burnHiveEngineTokens(from, symbol, quantity, memo = '') {
224
+
225
+ }
226
+ ```
227
+
190
228
  ### Transfer Hive Engine Tokens to Multiple Accounts
191
229
  ```javascript
192
230
  transferHiveEngineTokensMultiple(from, accounts = [], symbol, memo = '', amount = '0') {
@@ -194,6 +232,150 @@ transferHiveEngineTokensMultiple(from, accounts = [], symbol, memo = '', amount
194
232
  }
195
233
  ```
196
234
 
235
+ ### Burn part of an inbound transfer safely
236
+ ```javascript
237
+ const { Streamer } = require('hive-stream');
238
+
239
+ const ss = new Streamer({ env: true });
240
+
241
+ ss.flows.autoBurnIncomingTransfers({
242
+ percentage: 67,
243
+ memo: ({ transaction }) => `Auto-burn 67% of ${transaction.id}`
244
+ });
245
+
246
+ ss.start();
247
+ ```
248
+
249
+ ### Forward inbound transfers automatically
250
+ ```javascript
251
+ const { Streamer } = require('hive-stream');
252
+
253
+ const ss = new Streamer({ env: true });
254
+
255
+ ss.flows.autoForwardIncomingTransfers({
256
+ to: 'treasury',
257
+ percentage: 100,
258
+ memo: ({ transaction }) => `Forwarded from ${transaction.id}`
259
+ });
260
+
261
+ ss.start();
262
+ ```
263
+
264
+ ### Split inbound transfers across multiple accounts
265
+ ```javascript
266
+ const { Streamer } = require('hive-stream');
267
+
268
+ const ss = new Streamer({ env: true });
269
+
270
+ ss.flows.autoSplitIncomingTransfers({
271
+ recipients: [
272
+ { account: 'null', percentage: 69, memo: 'Feel the burn' },
273
+ { account: 'treasury' }
274
+ ]
275
+ });
276
+
277
+ ss.start();
278
+ ```
279
+
280
+ ### Refund inbound transfers automatically
281
+ ```javascript
282
+ const { Streamer } = require('hive-stream');
283
+
284
+ const ss = new Streamer({ env: true });
285
+
286
+ ss.flows.autoRefundIncomingTransfers({
287
+ memo: ({ transfer }) => `Refunded ${transfer.rawAmount} to ${transfer.from}`
288
+ });
289
+
290
+ ss.start();
291
+ ```
292
+
293
+ ### Route inbound transfers with one flow
294
+ ```javascript
295
+ const { Streamer } = require('hive-stream');
296
+
297
+ const ss = new Streamer({ env: true });
298
+
299
+ ss.flows.autoRouteIncomingTransfers({
300
+ routes: [
301
+ { type: 'burn', percentage: 67, memo: 'Auto-burn 67%' },
302
+ { to: 'treasury', memo: 'Treasury remainder' }
303
+ ]
304
+ });
305
+
306
+ ss.start();
307
+ ```
308
+
309
+ ### Route grouped payouts with an optional on-top donation
310
+ ```javascript
311
+ const { Streamer } = require('hive-stream');
312
+
313
+ const ss = new Streamer({ env: true });
314
+
315
+ ss.flows.autoRouteIncomingTransfers({
316
+ account: 'tweet-backup',
317
+ routes: [
318
+ { to: 'tweet-catcher', percentage: 20, memo: 'Tweet watcher share' },
319
+ { group: [{ account: 'node-1' }, { account: 'node-2' }], percentage: 4, memo: 'Node operator share' },
320
+ { group: [{ account: 'wit-1' }, { account: 'wit-2' }], percentage: 6, memo: 'Witness share' },
321
+ { type: 'burn', percentage: 70, memo: 'Burn share' },
322
+ { to: 'platform-op', mode: 'onTop', percentage: 8, memo: 'Optional platform donation' }
323
+ ]
324
+ });
325
+
326
+ ss.start();
327
+ ```
328
+
329
+ ### Chain inbound transfer flows with a builder
330
+ ```javascript
331
+ const { Streamer } = require('hive-stream');
332
+
333
+ const ss = new Streamer({ env: true });
334
+
335
+ ss.flows
336
+ .incomingTransfers()
337
+ .burn(69, 'Feel the burn')
338
+ .remainderTo('treasury', 'Treasury remainder')
339
+ .start();
340
+
341
+ ss.start();
342
+ ```
343
+
344
+ ### Preview a payout plan before the flow starts
345
+ ```javascript
346
+ const { Streamer } = require('hive-stream');
347
+
348
+ const ss = new Streamer({ env: true });
349
+
350
+ const plan = ss.flows
351
+ .incomingTransfers('tweet-backup')
352
+ .forwardTo('tweet-catcher', 20, 'Tweet watcher share')
353
+ .forwardGroup([{ account: 'node-1' }, { account: 'node-2' }], 4, { memo: 'Node operator share' })
354
+ .remainderToGroup([{ account: 'wit-1' }, { account: 'wit-2' }], { memo: 'Witness share' })
355
+ .burn(70, 'Burn share')
356
+ .donateOnTop('platform-op', 8, 'Optional platform donation')
357
+ .plan({ from: 'buyer', to: 'tweet-backup', amount: '1.080 HBD', memo: 'Archive this tweet' });
358
+
359
+ console.log(plan.baseAmount); // "1.000"
360
+ console.log(plan.onTopAmount); // "0.080"
361
+ console.log(plan.routes);
362
+ ```
363
+
364
+ `flows.autoBurnIncomingTransfers()` is the quickest high-level option for the burn case. `flows.autoForwardIncomingTransfers()` covers treasury forwarding, `flows.autoSplitIncomingTransfers()` handles common revenue-sharing, and `flows.autoRefundIncomingTransfers()` is useful for rejecting unsupported payments. `flows.autoRouteIncomingTransfers()` is the general router for mixed burn/transfer/group routes, and `flows.planIncomingTransferRoutes()` previews the same math without broadcasting. In base routes, one destination can omit `percentage`/`basisPoints` and automatically receive the remainder. Routes with `mode: 'onTop'` are treated as a surcharge on the base payout amount, so a `1.000 HBD` base payout with an `8%` donation should arrive as `1.080 HBD`.
365
+
366
+ `flows.incomingTransfers()` is the chainable version of the same idea. Single-step builders compile down to `autoBurnIncomingTransfers()`, `autoForwardIncomingTransfers()`, or `autoRefundIncomingTransfers()`. Multi-step builders compile down to `autoRouteIncomingTransfers()`, and `.plan(...)` gives you the exact rounded output before any transfer is sent.
367
+
368
+ ### Money Namespace
369
+ ```javascript
370
+ const ss = new Streamer();
371
+
372
+ ss.money.parseAssetAmount('1.000 HIVE');
373
+ ss.money.formatAmount('1.2399'); // "1.239"
374
+ ss.money.calculatePercentageAmount('10.000', 12.5); // "1.250"
375
+ ss.money.splitAmountByBasisPoints('1.000', [6900, 3100]); // ["0.690", "0.310"]
376
+ ss.money.splitAmountByWeights('1.080', [10000, 800]); // ["1.000", "0.080"]
377
+ ```
378
+
197
379
  ### Issue Hive Engine Tokens
198
380
  ```javascript
199
381
  issueHiveEngineTokens(from, to, symbol, quantity, memo = '') {
@@ -244,6 +426,59 @@ updateProposalVotes({ voter, proposal_ids, approve }, signingKeys?)
244
426
  removeProposals({ proposal_owner, proposal_ids }, signingKeys?)
245
427
  ```
246
428
 
429
+ ### Operation Builders
430
+ ```javascript
431
+ const { Streamer } = require('hive-stream');
432
+
433
+ const ss = new Streamer({ env: true });
434
+
435
+ await ss.ops
436
+ .transfer()
437
+ .from('alice')
438
+ .to('bob')
439
+ .hive(1.25)
440
+ .memo('Builder transfer example')
441
+ .send();
442
+
443
+ await ss.ops
444
+ .createProposal()
445
+ .creator('alice')
446
+ .receiver('treasury')
447
+ .startDate(new Date('2026-04-01T00:00:00.000Z'))
448
+ .endDate(new Date('2026-05-01T00:00:00.000Z'))
449
+ .dailyHbd(12.5)
450
+ .subject('Builder proposal example')
451
+ .permlink('builder-proposal-example')
452
+ .send();
453
+ ```
454
+
455
+ Additional chainable write builders are available for Hive Engine token ops and governance/voting:
456
+
457
+ ```javascript
458
+ await ss.ops
459
+ .transferEngine()
460
+ .from('alice')
461
+ .to('bob')
462
+ .symbol('BEE')
463
+ .quantity('1.23456')
464
+ .memo('Engine transfer')
465
+ .send();
466
+
467
+ await ss.ops
468
+ .voteProposals()
469
+ .voter('alice')
470
+ .ids(1, 2, 3)
471
+ .approve()
472
+ .send();
473
+
474
+ await ss.ops
475
+ .upvote()
476
+ .author('bob')
477
+ .permlink('my-post')
478
+ .weight(25)
479
+ .send();
480
+ ```
481
+
247
482
  ### Upvote/Downvote Posts
248
483
  ```javascript
249
484
  upvote(votePercentage = '100.0', username, permlink) {
@@ -374,6 +609,21 @@ Sample snippets for the newest contracts live in `examples/contracts/`:
374
609
  - `examples/contracts/tipjar.ts`
375
610
  - `examples/contracts/exchange.ts`
376
611
 
612
+ Higher-level flow examples live in `examples/flows/`:
613
+
614
+ - `examples/flows/auto-burn.ts`
615
+ - `examples/flows/auto-forward.ts`
616
+ - `examples/flows/auto-split.ts`
617
+ - `examples/flows/auto-refund.ts`
618
+ - `examples/flows/builder-burn-route.ts`
619
+ - `examples/flows/grouped-route-on-top.ts`
620
+ - `examples/flows/builder-payout-plan.ts`
621
+
622
+ Chainable operation examples live in `examples/ops/`:
623
+
624
+ - `examples/ops/transfer-builder.ts`
625
+ - `examples/ops/proposal-builder.ts`
626
+
377
627
  ## Time-based Actions
378
628
 
379
629
  It's like a cron job for your contracts. Time-based actions allow you to execute contract functions over a wide variety of different periods. Want to call a function every 3 seconds block time or want to call a function once per day? Time-based actions are an easy way to run time code.
@@ -27,29 +27,19 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
27
27
  this.mongo.options = options;
28
28
  }
29
29
  async getDbInstance() {
30
- try {
31
- if (this.db) {
32
- return this.db;
33
- }
34
- if (!this.client) {
35
- this.client = new mongodb_1.MongoClient(this.mongo.uri, this.mongo.options);
36
- }
37
- await this.client.connect();
38
- this.db = this.client.db(this.mongo.database);
30
+ if (this.db) {
39
31
  return this.db;
40
32
  }
41
- catch (e) {
42
- throw e;
33
+ if (!this.client) {
34
+ this.client = new mongodb_1.MongoClient(this.mongo.uri, this.mongo.options);
43
35
  }
36
+ await this.client.connect();
37
+ this.db = this.client.db(this.mongo.database);
38
+ return this.db;
44
39
  }
45
40
  async create() {
46
- try {
47
- await this.getDbInstance();
48
- return true;
49
- }
50
- catch (e) {
51
- throw e;
52
- }
41
+ await this.getDbInstance();
42
+ return true;
53
43
  }
54
44
  async loadActions() {
55
45
  if (!this.db) {
@@ -89,6 +79,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
89
79
  catch (e) {
90
80
  throw e;
91
81
  }
82
+ return null;
92
83
  }
93
84
  async saveState(data) {
94
85
  try {
@@ -165,7 +156,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
165
156
  }
166
157
  const collection = this.db.collection(table);
167
158
  const documents = await collection.find(queryObject).toArray();
168
- return documents.length ? documents : null;
159
+ return documents.length ? documents : [];
169
160
  }
170
161
  async findOne(table, queryObject) {
171
162
  if (!this.db) {
@@ -220,7 +211,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
220
211
  }
221
212
  const collection = this.db.collection('events');
222
213
  const events = await collection.find({}).sort({ date: -1, _id: -1 }).toArray();
223
- return events.length ? events : null;
214
+ return events.length ? events : [];
224
215
  }
225
216
  catch (error) {
226
217
  console.error('[MongodbAdapter] Error getting events:', error);
@@ -234,7 +225,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
234
225
  }
235
226
  const collection = this.db.collection('events');
236
227
  const events = await collection.find({ contract }).sort({ date: -1, _id: -1 }).toArray();
237
- return events.length ? events : null;
228
+ return events.length ? events : [];
238
229
  }
239
230
  catch (error) {
240
231
  console.error('[MongodbAdapter] Error getting events by contract:', error);
@@ -255,7 +246,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
255
246
  { 'payload.account': account }
256
247
  ]
257
248
  }).sort({ date: -1, _id: -1 }).toArray();
258
- return events.length ? events : null;
249
+ return events.length ? events : [];
259
250
  }
260
251
  catch (error) {
261
252
  console.error('[MongodbAdapter] Error getting events by account:', error);
@@ -269,7 +260,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
269
260
  }
270
261
  const collection = this.db.collection('transfers');
271
262
  const transfers = await collection.find({}).sort({ blockNumber: -1, _id: -1 }).toArray();
272
- return transfers.length ? transfers : null;
263
+ return transfers.length ? transfers : [];
273
264
  }
274
265
  catch (error) {
275
266
  console.error('[MongodbAdapter] Error getting transfers:', error);
@@ -283,7 +274,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
283
274
  }
284
275
  const collection = this.db.collection('transfers');
285
276
  const transfers = await collection.find({ contractName: contract }).sort({ blockNumber: -1, _id: -1 }).toArray();
286
- return transfers.length ? transfers : null;
277
+ return transfers.length ? transfers : [];
287
278
  }
288
279
  catch (error) {
289
280
  console.error('[MongodbAdapter] Error getting transfers by contract:', error);
@@ -297,7 +288,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
297
288
  }
298
289
  const collection = this.db.collection('transfers');
299
290
  const transfers = await collection.find({ sender: account }).sort({ blockNumber: -1, _id: -1 }).toArray();
300
- return transfers.length ? transfers : null;
291
+ return transfers.length ? transfers : [];
301
292
  }
302
293
  catch (error) {
303
294
  console.error('[MongodbAdapter] Error getting transfers by account:', error);
@@ -311,7 +302,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
311
302
  }
312
303
  const collection = this.db.collection('transfers');
313
304
  const transfers = await collection.find({ blockId }).sort({ blockNumber: -1, _id: -1 }).toArray();
314
- return transfers.length ? transfers : null;
305
+ return transfers.length ? transfers : [];
315
306
  }
316
307
  catch (error) {
317
308
  console.error('[MongodbAdapter] Error getting transfers by block ID:', error);
@@ -325,7 +316,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
325
316
  }
326
317
  const collection = this.db.collection('customJson');
327
318
  const jsons = await collection.find({}).sort({ blockNumber: -1, _id: -1 }).toArray();
328
- return jsons.length ? jsons : null;
319
+ return jsons.length ? jsons : [];
329
320
  }
330
321
  catch (error) {
331
322
  console.error('[MongodbAdapter] Error getting JSON:', error);
@@ -339,7 +330,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
339
330
  }
340
331
  const collection = this.db.collection('customJson');
341
332
  const jsons = await collection.find({ contractName: contract }).sort({ blockNumber: -1, _id: -1 }).toArray();
342
- return jsons.length ? jsons : null;
333
+ return jsons.length ? jsons : [];
343
334
  }
344
335
  catch (error) {
345
336
  console.error('[MongodbAdapter] Error getting JSON by contract:', error);
@@ -353,7 +344,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
353
344
  }
354
345
  const collection = this.db.collection('customJson');
355
346
  const jsons = await collection.find({ sender: account }).sort({ blockNumber: -1, _id: -1 }).toArray();
356
- return jsons.length ? jsons : null;
347
+ return jsons.length ? jsons : [];
357
348
  }
358
349
  catch (error) {
359
350
  console.error('[MongodbAdapter] Error getting JSON by account:', error);
@@ -367,7 +358,7 @@ class MongodbAdapter extends base_adapter_1.AdapterBase {
367
358
  }
368
359
  const collection = this.db.collection('customJson');
369
360
  const jsons = await collection.find({ blockId }).sort({ blockNumber: -1, _id: -1 }).toArray();
370
- return jsons.length ? jsons : null;
361
+ return jsons.length ? jsons : [];
371
362
  }
372
363
  catch (error) {
373
364
  console.error('[MongodbAdapter] Error getting JSON by block ID:', error);
@@ -1 +1 @@
1
- {"version":3,"file":"mongodb.adapter.js","sourceRoot":"","sources":["../../src/adapters/mongodb.adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongodb.adapter.js","sourceRoot":"","sources":["../../src/adapters/mongodb.adapter.ts"],"names":[],"mappings":"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"}
@@ -250,7 +250,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
250
250
  contractPayload: JSON.parse(row.contractPayload) ?? {}
251
251
  }));
252
252
  }
253
- return null;
253
+ return [];
254
254
  }
255
255
  catch (error) {
256
256
  console.error('[PostgreSQLAdapter] Error getting transfers:', error);
@@ -269,7 +269,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
269
269
  data: JSON.parse(row.data) ?? {}
270
270
  }));
271
271
  }
272
- return null;
272
+ return [];
273
273
  }
274
274
  catch (error) {
275
275
  console.error('[PostgreSQLAdapter] Error getting events:', error);
@@ -289,7 +289,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
289
289
  data: JSON.parse(row.data) ?? {}
290
290
  }));
291
291
  }
292
- return null;
292
+ return [];
293
293
  }
294
294
  catch (error) {
295
295
  console.error('[PostgreSQLAdapter] Error getting events by contract:', error);
@@ -309,7 +309,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
309
309
  data: JSON.parse(row.data) ?? {}
310
310
  }));
311
311
  }
312
- return null;
312
+ return [];
313
313
  }
314
314
  catch (error) {
315
315
  console.error('[PostgreSQLAdapter] Error getting events by account:', error);
@@ -328,7 +328,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
328
328
  contractPayload: JSON.parse(row.contractPayload) ?? {}
329
329
  }));
330
330
  }
331
- return null;
331
+ return [];
332
332
  }
333
333
  catch (error) {
334
334
  console.error('[PostgreSQLAdapter] Error getting transfers by contract:', error);
@@ -347,7 +347,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
347
347
  contractPayload: JSON.parse(row.contractPayload) ?? {}
348
348
  }));
349
349
  }
350
- return null;
350
+ return [];
351
351
  }
352
352
  catch (error) {
353
353
  console.error('[PostgreSQLAdapter] Error getting transfers by account:', error);
@@ -366,7 +366,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
366
366
  contractPayload: JSON.parse(row.contractPayload) ?? {}
367
367
  }));
368
368
  }
369
- return null;
369
+ return [];
370
370
  }
371
371
  catch (error) {
372
372
  console.error('[PostgreSQLAdapter] Error getting transfers by blockId:', error);
@@ -384,7 +384,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
384
384
  contractPayload: JSON.parse(row.contractPayload) ?? {}
385
385
  }));
386
386
  }
387
- return null;
387
+ return [];
388
388
  }
389
389
  catch (error) {
390
390
  console.error('[PostgreSQLAdapter] Error getting JSON:', error);
@@ -403,7 +403,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
403
403
  contractPayload: JSON.parse(row.contractPayload) ?? {}
404
404
  }));
405
405
  }
406
- return null;
406
+ return [];
407
407
  }
408
408
  catch (error) {
409
409
  console.error('[PostgreSQLAdapter] Error getting JSON by contract:', error);
@@ -422,7 +422,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
422
422
  contractPayload: JSON.parse(row.contractPayload) ?? {}
423
423
  }));
424
424
  }
425
- return null;
425
+ return [];
426
426
  }
427
427
  catch (error) {
428
428
  console.error('[PostgreSQLAdapter] Error getting JSON by account:', error);
@@ -441,7 +441,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
441
441
  contractPayload: JSON.parse(row.contractPayload) ?? {}
442
442
  }));
443
443
  }
444
- return null;
444
+ return [];
445
445
  }
446
446
  catch (error) {
447
447
  console.error('[PostgreSQLAdapter] Error getting JSON by blockId:', error);
@@ -461,7 +461,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
461
461
  async find(table, query) {
462
462
  try {
463
463
  const rows = await this.db(table).where(query);
464
- return rows.length ? rows : null;
464
+ return rows.length ? rows : [];
465
465
  }
466
466
  catch (error) {
467
467
  console.error(`[PostgreSQLAdapter] Error finding in table ${table}:`, error);
@@ -516,7 +516,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
516
516
  query.where('account', account);
517
517
  }
518
518
  const rows = await query;
519
- return rows.length ? rows : null;
519
+ return rows.length ? rows : [];
520
520
  }
521
521
  catch (error) {
522
522
  console.error('[PostgreSQLAdapter] Error getting exchange balances:', error);
@@ -540,7 +540,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
540
540
  query.where('status', filters.status);
541
541
  }
542
542
  const rows = await query;
543
- return rows.length ? rows : null;
543
+ return rows.length ? rows : [];
544
544
  }
545
545
  catch (error) {
546
546
  console.error('[PostgreSQLAdapter] Error getting exchange orders:', error);
@@ -563,7 +563,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
563
563
  query.where('quote_asset', filters.quote);
564
564
  }
565
565
  const rows = await query;
566
- return rows.length ? rows : null;
566
+ return rows.length ? rows : [];
567
567
  }
568
568
  catch (error) {
569
569
  console.error('[PostgreSQLAdapter] Error getting exchange trades:', error);
@@ -592,7 +592,7 @@ class PostgreSQLAdapter extends base_adapter_1.AdapterBase {
592
592
  asks: typeof row.asks === 'string' ? JSON.parse(row.asks) : row.asks
593
593
  }));
594
594
  }
595
- return null;
595
+ return [];
596
596
  }
597
597
  catch (error) {
598
598
  console.error('[PostgreSQLAdapter] Error getting exchange order book snapshots:', error);