@1sat/wallet-node 0.0.29 → 0.0.30

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.
@@ -1,6 +1,21 @@
1
1
  import type { OneSatServices } from '@1sat/client';
2
2
  import type { PrivateKey } from '@bsv/sdk';
3
- import { Monitor, StorageClient, Wallet, WalletStorageManager } from '@bsv/wallet-toolbox';
3
+ import { Monitor, StorageClient, Wallet, WalletStorageManager, type sdk } from '@bsv/wallet-toolbox';
4
+ export interface BunSqliteStorageConfig {
5
+ provider: 'bun-sqlite';
6
+ filename?: string;
7
+ }
8
+ export interface KnexPgStorageConfig {
9
+ provider: 'knex-pg';
10
+ /** Postgres connection URL — e.g. `postgres://user:pass@host/db`. */
11
+ dbUrl: string;
12
+ /** Optional knex pool override. */
13
+ pool?: {
14
+ min?: number;
15
+ max?: number;
16
+ };
17
+ }
18
+ export type NodeWalletStorageConfig = BunSqliteStorageConfig | KnexPgStorageConfig;
4
19
  export interface NodeWalletConfig {
5
20
  privateKey: PrivateKey | string;
6
21
  chain: 'main' | 'test';
@@ -12,9 +27,18 @@ export interface NodeWalletConfig {
12
27
  backups?: string[];
13
28
  storageIdentityKey: string;
14
29
  connectionTimeout?: number;
15
- filename?: string;
30
+ /**
31
+ * Local storage backend. Defaults to bun-sqlite with `./wallet.db`.
32
+ */
33
+ storage?: NodeWalletStorageConfig;
16
34
  onTransactionBroadcasted?: (txid: string) => void;
17
35
  onTransactionProven?: (txid: string, blockHeight: number) => void;
36
+ /**
37
+ * Skip the initial `monitor.runOnce()` that fires when local storage is
38
+ * active. Set to true when a separate monitor process (e.g. `1sat serve`)
39
+ * is already running against the same storage.
40
+ */
41
+ skipInitialMonitor?: boolean;
18
42
  }
19
43
  export interface NodeWalletResult {
20
44
  wallet: Wallet;
@@ -25,6 +49,12 @@ export interface NodeWalletResult {
25
49
  remoteStorage?: StorageClient;
26
50
  setActiveStorage: (target: 'local' | string) => Promise<void>;
27
51
  addRemote: (url: string) => Promise<void>;
52
+ /**
53
+ * Live getter for the currently active raw storage provider. Use this
54
+ * (not `storage`) when wiring the wallet-server RPC — the manager is
55
+ * single-tenant, the provider is multi-tenant.
56
+ */
57
+ getActiveStorage: () => sdk.WalletStorageProvider;
28
58
  }
29
59
  export declare function createNodeWallet(config: NodeWalletConfig): Promise<NodeWalletResult>;
30
60
  //# sourceMappingURL=createNodeWallet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNodeWallet.d.ts","sourceRoot":"","sources":["../src/createNodeWallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EACN,OAAO,EAEP,aAAa,EAEb,MAAM,EACN,oBAAoB,EACpB,MAAM,qBAAqB,CAAA;AAM5B,MAAM,WAAW,gBAAgB;IAChC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;CACjE;AAED,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,OAAO,EAAE,oBAAoB,CAAA;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACzC;AAED,wBAAsB,gBAAgB,CACrC,MAAM,EAAE,gBAAgB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAmF3B"}
1
+ {"version":3,"file":"createNodeWallet.d.ts","sourceRoot":"","sources":["../src/createNodeWallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EACN,OAAO,EAEP,aAAa,EAEb,MAAM,EACN,oBAAoB,EACpB,KAAK,GAAG,EACR,MAAM,qBAAqB,CAAA;AAM5B,MAAM,WAAW,sBAAsB;IACtC,QAAQ,EAAE,YAAY,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,EAAE,SAAS,CAAA;IACnB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAA;IACb,mCAAmC;IACnC,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACrC;AAED,MAAM,MAAM,uBAAuB,GAChC,sBAAsB,GACtB,mBAAmB,CAAA;AAEtB,MAAM,WAAW,gBAAgB;IAChC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAA;IACjC,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACjE;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,OAAO,EAAE,oBAAoB,CAAA;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzC;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,GAAG,CAAC,qBAAqB,CAAA;CACjD;AAED,wBAAsB,gBAAgB,CACrC,MAAM,EAAE,gBAAgB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAsD3B"}
@@ -2,15 +2,15 @@ import { DEFAULT_FEE_MODEL, createWalletCore } from '@1sat/wallet';
2
2
  import { Monitor, Services, StorageClient, StorageProvider, Wallet, WalletStorageManager, } from '@bsv/wallet-toolbox';
3
3
  import { StorageBunSqlite } from './storage-bun-sqlite';
4
4
  const DEFAULT_STORAGE_NAME = 'wallet';
5
- const DEFAULT_FILENAME = './wallet.db';
5
+ const DEFAULT_SQLITE_FILENAME = './wallet.db';
6
6
  export async function createNodeWallet(config) {
7
7
  const feeModel = config.feeModel ?? DEFAULT_FEE_MODEL;
8
8
  const storageOptions = StorageProvider.createStorageBaseOptions(config.chain);
9
9
  storageOptions.feeModel = feeModel;
10
- const localStorage = new StorageBunSqlite({
11
- ...storageOptions,
12
- filename: config.filename ?? DEFAULT_FILENAME,
13
- });
10
+ const storageConfig = config.storage ?? {
11
+ provider: 'bun-sqlite',
12
+ };
13
+ const localStorage = await buildLocalStorage(storageConfig, storageOptions);
14
14
  await localStorage.migrate(DEFAULT_STORAGE_NAME, config.storageIdentityKey);
15
15
  const core = await createWalletCore(config, localStorage, {
16
16
  Services,
@@ -20,65 +20,62 @@ export async function createNodeWallet(config) {
20
20
  WalletStorageManager,
21
21
  Monitor,
22
22
  });
23
- // Always construct the Monitor — it's cheap (just task registration) and
24
- // the active store can be flipped at runtime via setActiveStorage, so we
25
- // need a Monitor available regardless of the initial config.
26
- const monitor = new Monitor({
27
- chain: config.chain,
28
- services: core.services,
29
- storage: core.storage,
30
- chaintracks: core.services.chaintracks,
31
- msecsWaitPerMerkleProofServiceReq: 500,
32
- taskRunWaitMsecs: 5000,
33
- abandonedMsecs: 300000,
34
- unprovenAttemptsLimitTest: 10,
35
- unprovenAttemptsLimitMain: 144,
36
- });
37
- monitor.addDefaultTasks();
38
- if (config.onTransactionBroadcasted) {
39
- monitor.onTransactionBroadcasted = async (result) => {
40
- if (result.txid)
41
- config.onTransactionBroadcasted(result.txid);
42
- };
43
- }
44
- if (config.onTransactionProven) {
45
- monitor.onTransactionProven = async (status) => {
46
- config.onTransactionProven(status.txid, status.blockHeight);
47
- };
48
- }
49
23
  // Fire monitor.runOnce() on wake when local is active. The server runs
50
24
  // its own monitor when remote is active, so firing ours would duplicate
51
25
  // (and race with) its work. Tasks self-throttle internally via their
52
26
  // per-task intervals, so repeated runOnce calls during rapid activity
53
27
  // are cheap timestamp comparisons.
54
- if (!config.activeRemote) {
55
- monitor.runOnce().catch((err) => {
28
+ let initialRunOnce;
29
+ if (!config.activeRemote && !config.skipInitialMonitor) {
30
+ initialRunOnce = core.monitor.runOnce().catch((err) => {
56
31
  console.error('[wallet-core] initial monitor run failed:', err);
57
32
  });
58
33
  }
59
34
  const destroy = async () => {
60
- try {
61
- monitor.stopTasks();
62
- if (monitor._tasksRunningPromise) {
63
- await monitor._tasksRunningPromise;
35
+ if (initialRunOnce) {
36
+ try {
37
+ await initialRunOnce;
64
38
  }
65
- await monitor.destroy();
39
+ catch { }
66
40
  }
67
- catch { }
68
- try {
69
- await core.destroy();
70
- }
71
- catch { }
41
+ await core.destroy();
72
42
  };
73
43
  return {
74
44
  wallet: core.wallet,
75
45
  services: core.services,
76
- monitor,
46
+ monitor: core.monitor,
77
47
  destroy,
78
48
  storage: core.storage,
79
49
  remoteStorage: core.remoteClients[0],
80
50
  setActiveStorage: core.setActiveStorage,
81
51
  addRemote: core.addRemote,
52
+ getActiveStorage: core.getActiveStorage,
82
53
  };
83
54
  }
55
+ async function buildLocalStorage(config, baseOptions) {
56
+ if (config.provider === 'bun-sqlite') {
57
+ return new StorageBunSqlite({
58
+ ...baseOptions,
59
+ filename: config.filename ?? DEFAULT_SQLITE_FILENAME,
60
+ });
61
+ }
62
+ if (config.provider === 'knex-pg') {
63
+ // Dynamic import — knex + pg are optional peer deps so bun-sqlite-only
64
+ // consumers don't pay for them.
65
+ const { default: knex } = await import('knex');
66
+ const { StoragePg } = await import('./storage-pg');
67
+ const k = knex({
68
+ client: 'pg',
69
+ connection: config.dbUrl,
70
+ pool: config.pool,
71
+ });
72
+ return new StoragePg({
73
+ ...baseOptions,
74
+ knex: k,
75
+ });
76
+ }
77
+ // Exhaustiveness check
78
+ const _exhaustive = config;
79
+ throw new Error(`unsupported storage provider: ${JSON.stringify(_exhaustive)}`);
80
+ }
84
81
  //# sourceMappingURL=createNodeWallet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNodeWallet.js","sourceRoot":"","sources":["../src/createNodeWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createNodeWallet.js","sourceRoot":"","sources":["../src/createNodeWallet.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  export * from '@1sat/wallet';
2
2
  export { createNodeWallet } from './createNodeWallet';
3
- export type { NodeWalletConfig, NodeWalletResult } from './createNodeWallet';
3
+ export type { BunSqliteStorageConfig, KnexPgStorageConfig, NodeWalletConfig, NodeWalletResult, NodeWalletStorageConfig, } from './createNodeWallet';
4
4
  export { StorageBunSqlite } from './storage-bun-sqlite';
5
5
  export type { StorageBunSqliteOptions } from './storage-bun-sqlite';
6
+ export { StoragePg } from './storage-pg';
7
+ export type { StoragePgOptions } from './storage-pg';
6
8
  export { Monitor, Services, StorageClient, StorageProvider, Wallet, WalletPermissionsManager, WalletStorageManager, type sdk as walletSdk, } from '@bsv/wallet-toolbox';
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAEnE,OAAO,EACN,OAAO,EACP,QAAQ,EACR,aAAa,EACb,eAAe,EACf,MAAM,EACN,wBAAwB,EACxB,oBAAoB,EACpB,KAAK,GAAG,IAAI,SAAS,GACrB,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,YAAY,EACX,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,GACvB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,OAAO,EACN,OAAO,EACP,QAAQ,EACR,aAAa,EACb,eAAe,EACf,MAAM,EACN,wBAAwB,EACxB,oBAAoB,EACpB,KAAK,GAAG,IAAI,SAAS,GACrB,MAAM,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from '@1sat/wallet';
2
2
  export { createNodeWallet } from './createNodeWallet';
3
3
  export { StorageBunSqlite } from './storage-bun-sqlite';
4
+ export { StoragePg } from './storage-pg';
4
5
  export { Monitor, Services, StorageClient, StorageProvider, Wallet, WalletPermissionsManager, WalletStorageManager, } from '@bsv/wallet-toolbox';
5
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAGrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAGvD,OAAO,EACN,OAAO,EACP,QAAQ,EACR,aAAa,EACb,eAAe,EACf,MAAM,EACN,wBAAwB,EACxB,oBAAoB,GAEpB,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AASrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAGxC,OAAO,EACN,OAAO,EACP,QAAQ,EACR,aAAa,EACb,eAAe,EACf,MAAM,EACN,wBAAwB,EACxB,oBAAoB,GAEpB,MAAM,qBAAqB,CAAA"}
@@ -69,6 +69,21 @@ export declare class StorageBunSqlite extends StorageProvider {
69
69
  validateEntityForInsert<T extends EntityTimeStamp>(entity: T, trx?: TrxToken, dateFields?: string[], booleanFields?: string[]): Promise<Record<string, unknown>>;
70
70
  validateEntity<T extends EntityTimeStamp>(entity: T, dateFields?: string[], booleanFields?: string[]): T;
71
71
  validateEntities<T extends EntityTimeStamp>(entities: T[], dateFields?: string[], booleanFields?: string[]): T[];
72
+ /**
73
+ * Sum of stored bytes attributable to a single wallet-toolbox user.
74
+ * Used by `@1sat/wallet-server` accounts metering to determine per-user
75
+ * capacity usage without requiring a separate ledger table.
76
+ *
77
+ * Per-user tables (transactions, outputs) are summed directly. Shared
78
+ * rows (proven_txs, proven_tx_reqs) are attributed to every user that
79
+ * references them via `transactions.provenTxId` or `transactions.txid`.
80
+ * In multi-tenant deployments this over-counts aggregate disk usage
81
+ * but reflects each user's standalone storage cost fairly.
82
+ *
83
+ * The equivalent Postgres impl (forthcoming `StoragePg`) uses
84
+ * OCTET_LENGTH(bytea) with the same shape.
85
+ */
86
+ measureUsedBytes(userId: number): Promise<number>;
72
87
  getProvenOrRawTx(txid: string, _trx?: TrxToken): Promise<ProvenOrRawTx>;
73
88
  dbTypeSubstring(source: string, fromOffset: number, forLength?: number): string;
74
89
  getRawTxOfKnownValidTransaction(txid?: string, offset?: number, length?: number, trx?: TrxToken): Promise<number[] | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"storage-bun-sqlite.d.ts","sourceRoot":"","sources":["../src/storage-bun-sqlite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage-bun-sqlite.d.ts","sourceRoot":"","sources":["../src/storage-bun-sqlite.ts"],"names":[],"mappings":"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"}
@@ -452,6 +452,26 @@ export class StorageBunSqlite extends StorageProvider {
452
452
  db.run('DROP INDEX IF EXISTS proven_tx_reqs_txid');
453
453
  },
454
454
  };
455
+ migrations['2026-04-20-001 add transactions userId index'] = {
456
+ up: (db) => {
457
+ db.run('CREATE INDEX IF NOT EXISTS transactions_userId ON transactions(userId)');
458
+ },
459
+ down: (db) => {
460
+ db.run('DROP INDEX IF EXISTS transactions_userId');
461
+ },
462
+ };
463
+ migrations['2026-04-20-002 add outputs userId index'] = {
464
+ up: (db) => {
465
+ db.run('CREATE INDEX IF NOT EXISTS outputs_userId ON outputs(userId)');
466
+ },
467
+ down: (db) => {
468
+ db.run('DROP INDEX IF EXISTS outputs_userId');
469
+ },
470
+ };
471
+ // Storage-payment ledger state lives on the server wallet's own
472
+ // transactions + tx_labels (see @1sat/wallet-server accounts/queries).
473
+ // No separate `accounts` / `payments` tables required; the old
474
+ // 2026-04-20-003 migration that created them has been dropped.
455
475
  return migrations;
456
476
  }
457
477
  async dropAllData() {
@@ -909,6 +929,56 @@ export class StorageBunSqlite extends StorageProvider {
909
929
  // -----------------------------------------------------------------------
910
930
  // getProvenOrRawTx / getRawTxOfKnownValidTransaction
911
931
  // -----------------------------------------------------------------------
932
+ /**
933
+ * Sum of stored bytes attributable to a single wallet-toolbox user.
934
+ * Used by `@1sat/wallet-server` accounts metering to determine per-user
935
+ * capacity usage without requiring a separate ledger table.
936
+ *
937
+ * Per-user tables (transactions, outputs) are summed directly. Shared
938
+ * rows (proven_txs, proven_tx_reqs) are attributed to every user that
939
+ * references them via `transactions.provenTxId` or `transactions.txid`.
940
+ * In multi-tenant deployments this over-counts aggregate disk usage
941
+ * but reflects each user's standalone storage cost fairly.
942
+ *
943
+ * The equivalent Postgres impl (forthcoming `StoragePg`) uses
944
+ * OCTET_LENGTH(bytea) with the same shape.
945
+ */
946
+ async measureUsedBytes(userId) {
947
+ const tx = this.db
948
+ .query(`SELECT COALESCE(SUM(COALESCE(LENGTH(rawTx), 0) + COALESCE(LENGTH(inputBEEF), 0)), 0) AS total
949
+ FROM transactions WHERE userId = ?`)
950
+ .get(userId);
951
+ const proven = this.db
952
+ .query(`SELECT COALESCE(SUM(COALESCE(LENGTH(pt.rawTx), 0) + COALESCE(LENGTH(pt.merklePath), 0)), 0) AS total
953
+ FROM proven_txs pt
954
+ INNER JOIN transactions t ON t.provenTxId = pt.provenTxId
955
+ WHERE t.userId = ?`)
956
+ .get(userId);
957
+ const reqs = this.db
958
+ .query(`SELECT COALESCE(SUM(COALESCE(LENGTH(ptr.rawTx), 0) + COALESCE(LENGTH(ptr.inputBEEF), 0)), 0) AS total
959
+ FROM proven_tx_reqs ptr
960
+ INNER JOIN transactions t ON t.txid = ptr.txid
961
+ WHERE t.userId = ?`)
962
+ .get(userId);
963
+ const out = this.db
964
+ .query(`SELECT COALESCE(SUM(COALESCE(scriptLength, LENGTH(lockingScript), 0)), 0) AS total
965
+ FROM outputs WHERE userId = ?`)
966
+ .get(userId);
967
+ const toNum = (v) => {
968
+ if (v == null)
969
+ return 0;
970
+ if (typeof v === 'number')
971
+ return v;
972
+ if (typeof v === 'bigint')
973
+ return Number(v);
974
+ const n = Number(v);
975
+ return Number.isFinite(n) ? n : 0;
976
+ };
977
+ return (toNum(tx?.total) +
978
+ toNum(proven?.total) +
979
+ toNum(reqs?.total) +
980
+ toNum(out?.total));
981
+ }
912
982
  async getProvenOrRawTx(txid, _trx) {
913
983
  const r = {
914
984
  proven: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"storage-bun-sqlite.js","sourceRoot":"","sources":["../src/storage-bun-sqlite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage-bun-sqlite.js","sourceRoot":"","sources":["../src/storage-bun-sqlite.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * StoragePg — production Postgres backend for `@1sat/wallet-node` wallets.
3
+ *
4
+ * Thin subclass of wallet-toolbox's `StorageKnex` (which already handles the
5
+ * full schema, migrations, and every `WalletStorageProvider` method over
6
+ * knex/pg). The only addition is `measureUsedBytes(userId)`, the accounts
7
+ * metering helper that the `@1sat/wallet-server` gate middleware casts for
8
+ * via `StorageWithFinders`.
9
+ *
10
+ * Shape matches `StorageBunSqlite.measureUsedBytes` — summing bytes across
11
+ * `transactions`, `proven_txs`, `proven_tx_reqs`, and `outputs` for a single
12
+ * userId. Pg's `OCTET_LENGTH(bytea)` replaces sqlite's `LENGTH(blob)`.
13
+ */
14
+ import { StorageKnex, type StorageKnexOptions } from '@bsv/wallet-toolbox/out/src/storage/StorageKnex.js';
15
+ export interface StoragePgOptions extends StorageKnexOptions {
16
+ }
17
+ export declare class StoragePg extends StorageKnex {
18
+ constructor(options: StoragePgOptions);
19
+ /**
20
+ * Sum of stored bytes attributable to a single wallet-toolbox user.
21
+ * Per-user tables (transactions, outputs) are summed directly. Shared
22
+ * rows (proven_txs, proven_tx_reqs) are attributed to every user that
23
+ * references them via `transactions.provenTxId` or `transactions.txid`.
24
+ */
25
+ measureUsedBytes(userId: number): Promise<number>;
26
+ }
27
+ //# sourceMappingURL=storage-pg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-pg.d.ts","sourceRoot":"","sources":["../src/storage-pg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACN,WAAW,EACX,KAAK,kBAAkB,EACvB,MAAM,oDAAoD,CAAA;AAE3D,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;CAAG;AAE/D,qBAAa,SAAU,SAAQ,WAAW;gBAC7B,OAAO,EAAE,gBAAgB;IAIrC;;;;;OAKG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA4CvD"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * StoragePg — production Postgres backend for `@1sat/wallet-node` wallets.
3
+ *
4
+ * Thin subclass of wallet-toolbox's `StorageKnex` (which already handles the
5
+ * full schema, migrations, and every `WalletStorageProvider` method over
6
+ * knex/pg). The only addition is `measureUsedBytes(userId)`, the accounts
7
+ * metering helper that the `@1sat/wallet-server` gate middleware casts for
8
+ * via `StorageWithFinders`.
9
+ *
10
+ * Shape matches `StorageBunSqlite.measureUsedBytes` — summing bytes across
11
+ * `transactions`, `proven_txs`, `proven_tx_reqs`, and `outputs` for a single
12
+ * userId. Pg's `OCTET_LENGTH(bytea)` replaces sqlite's `LENGTH(blob)`.
13
+ */
14
+ import { StorageKnex, } from '@bsv/wallet-toolbox/out/src/storage/StorageKnex.js';
15
+ export class StoragePg extends StorageKnex {
16
+ constructor(options) {
17
+ super(options);
18
+ }
19
+ /**
20
+ * Sum of stored bytes attributable to a single wallet-toolbox user.
21
+ * Per-user tables (transactions, outputs) are summed directly. Shared
22
+ * rows (proven_txs, proven_tx_reqs) are attributed to every user that
23
+ * references them via `transactions.provenTxId` or `transactions.txid`.
24
+ */
25
+ async measureUsedBytes(userId) {
26
+ const k = this.toDb(undefined);
27
+ const [tx] = await k('transactions')
28
+ .where({ userId })
29
+ .select(k.raw('COALESCE(SUM(COALESCE(OCTET_LENGTH("rawTx"), 0) + COALESCE(OCTET_LENGTH("inputBEEF"), 0)), 0) AS total'));
30
+ const [proven] = await k('proven_txs AS pt')
31
+ .innerJoin('transactions AS t', 't.provenTxId', 'pt.provenTxId')
32
+ .where('t.userId', userId)
33
+ .select(k.raw('COALESCE(SUM(COALESCE(OCTET_LENGTH(pt."rawTx"), 0) + COALESCE(OCTET_LENGTH(pt."merklePath"), 0)), 0) AS total'));
34
+ const [reqs] = await k('proven_tx_reqs AS ptr')
35
+ .innerJoin('transactions AS t', 't.txid', 'ptr.txid')
36
+ .where('t.userId', userId)
37
+ .select(k.raw('COALESCE(SUM(COALESCE(OCTET_LENGTH(ptr."rawTx"), 0) + COALESCE(OCTET_LENGTH(ptr."inputBEEF"), 0)), 0) AS total'));
38
+ const [out] = await k('outputs')
39
+ .where({ userId })
40
+ .select(k.raw('COALESCE(SUM(COALESCE("scriptLength", OCTET_LENGTH("lockingScript"), 0)), 0) AS total'));
41
+ return (toNum(tx?.total) +
42
+ toNum(proven?.total) +
43
+ toNum(reqs?.total) +
44
+ toNum(out?.total));
45
+ }
46
+ }
47
+ function toNum(v) {
48
+ if (v == null)
49
+ return 0;
50
+ if (typeof v === 'number')
51
+ return v;
52
+ if (typeof v === 'bigint')
53
+ return Number(v);
54
+ const n = Number(v);
55
+ return Number.isFinite(n) ? n : 0;
56
+ }
57
+ //# sourceMappingURL=storage-pg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-pg.js","sourceRoot":"","sources":["../src/storage-pg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACN,WAAW,GAEX,MAAM,oDAAoD,CAAA;AAI3D,MAAM,OAAO,SAAU,SAAQ,WAAW;IACzC,YAAY,OAAyB;QACpC,KAAK,CAAC,OAAO,CAAC,CAAA;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACpC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAE9B,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,cAAc,CAAC;aAClC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;aACjB,MAAM,CACN,CAAC,CAAC,GAAG,CACJ,wGAAwG,CACxG,CACD,CAAA;QAEF,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,kBAAkB,CAAC;aAC1C,SAAS,CAAC,mBAAmB,EAAE,cAAc,EAAE,eAAe,CAAC;aAC/D,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;aACzB,MAAM,CACN,CAAC,CAAC,GAAG,CACJ,+GAA+G,CAC/G,CACD,CAAA;QAEF,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,uBAAuB,CAAC;aAC7C,SAAS,CAAC,mBAAmB,EAAE,QAAQ,EAAE,UAAU,CAAC;aACpD,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;aACzB,MAAM,CACN,CAAC,CAAC,GAAG,CACJ,gHAAgH,CAChH,CACD,CAAA;QAEF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC;aAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;aACjB,MAAM,CACN,CAAC,CAAC,GAAG,CACJ,uFAAuF,CACvF,CACD,CAAA;QAEF,OAAO,CACN,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC;YAChB,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC;YACpB,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;YAClB,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CACjB,CAAA;IACF,CAAC;CACD;AAED,SAAS,KAAK,CAAC,CAAU;IACxB,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,CAAC,CAAA;IACvB,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAA;IACnC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACnB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAClC,CAAC"}
package/package.json CHANGED
@@ -1,40 +1,62 @@
1
1
  {
2
- "name": "@1sat/wallet-node",
3
- "version": "0.0.29",
4
- "description": "Node/Bun wallet factory for 1Sat Ordinals SDK",
5
- "type": "module",
6
- "main": "./dist/index.js",
7
- "types": "./dist/index.d.ts",
8
- "exports": {
9
- ".": {
10
- "types": "./dist/index.d.ts",
11
- "import": "./dist/index.js"
12
- }
13
- },
14
- "files": ["dist"],
15
- "scripts": {
16
- "build": "tsc",
17
- "dev": "tsc --watch",
18
- "clean": "rm -rf dist"
19
- },
20
- "keywords": ["1sat", "bsv", "ordinals", "wallet", "node", "server", "cli"],
21
- "license": "MIT",
22
- "dependencies": {
23
- "@1sat/wallet": "0.0.47"
24
- },
25
- "peerDependencies": {
26
- "@bsv/sdk": "^2.0.13",
27
- "@bsv/wallet-toolbox": "^2.1.21"
28
- },
29
- "peerDependenciesMeta": {
30
- "better-sqlite3": {
31
- "optional": true
32
- }
33
- },
34
- "devDependencies": {
35
- "@1sat/client": "0.0.21",
36
- "@bsv/sdk": "^2.0.13",
37
- "@bsv/wallet-toolbox": "^2.1.21",
38
- "typescript": "^5.9.3"
39
- }
2
+ "name": "@1sat/wallet-node",
3
+ "version": "0.0.30",
4
+ "description": "Node/Bun wallet factory for 1Sat Ordinals SDK",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "bun": "./src/index.ts",
12
+ "import": "./dist/index.js"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "scripts": {
19
+ "build": "tsc",
20
+ "dev": "tsc --watch",
21
+ "clean": "rm -rf dist"
22
+ },
23
+ "keywords": [
24
+ "1sat",
25
+ "bsv",
26
+ "ordinals",
27
+ "wallet",
28
+ "node",
29
+ "server",
30
+ "cli"
31
+ ],
32
+ "license": "MIT",
33
+ "dependencies": {
34
+ "@1sat/wallet": "0.0.48"
35
+ },
36
+ "peerDependencies": {
37
+ "@bsv/sdk": "^2.0.13",
38
+ "@bsv/wallet-toolbox": "^2.1.21",
39
+ "knex": "^3.1.0",
40
+ "pg": "^8.11.0"
41
+ },
42
+ "peerDependenciesMeta": {
43
+ "better-sqlite3": {
44
+ "optional": true
45
+ },
46
+ "knex": {
47
+ "optional": true
48
+ },
49
+ "pg": {
50
+ "optional": true
51
+ }
52
+ },
53
+ "devDependencies": {
54
+ "@1sat/client": "0.0.21",
55
+ "@bsv/sdk": "^2.0.13",
56
+ "@bsv/wallet-toolbox": "^2.1.21",
57
+ "@types/pg": "^8.11.0",
58
+ "knex": "^3.1.0",
59
+ "pg": "^8.11.0",
60
+ "typescript": "^5.9.3"
61
+ }
40
62
  }