From 59fc4df4b2a8627df5e8b323bebd4aec3ff0b12f Mon Sep 17 00:00:00 2001 From: James Zuccon Date: Sat, 14 Sep 2024 10:31:14 +1000 Subject: [PATCH] Improve cross-platform support Signed-off-by: James Zuccon --- examples/node/genesisTest.js | 8 ++++---- packages/wallet/package.json | 16 +++++++++------- packages/wallet/src/index.browser.ts | 5 ++++- packages/wallet/src/index.node.ts | 5 ++++- 4 files changed, 21 insertions(+), 13 deletions(-) diff --git a/examples/node/genesisTest.js b/examples/node/genesisTest.js index 24dcc57..5beb292 100644 --- a/examples/node/genesisTest.js +++ b/examples/node/genesisTest.js @@ -3,7 +3,7 @@ import { BlockchainLocal, StorageMemory, WalletP2PKH, - StorageSQLite, + StorageLocal, } from '@xo/wallet'; const blockchainLocal = new BlockchainLocal(); @@ -67,9 +67,9 @@ await storageMemory.set('test', { console.log(storageMemory.storage); -const storageIDB = new StorageSQLite(); -await storageIDB.start(); +const storageLocal = new StorageLocal(); +await storageLocal.start(); -await storageIDB.set('test', { +await storageLocal.set('test', { thisShouldNotWork: true, }); diff --git a/packages/wallet/package.json b/packages/wallet/package.json index 06da267..96a0bd3 100644 --- a/packages/wallet/package.json +++ b/packages/wallet/package.json @@ -7,13 +7,15 @@ "module": "dist/index.js", "types": "dist/index.d.ts", "exports": { - "browser": { - "types": "./dist/index.browser.d.ts", - "default": "./dist/index.browser.js" - }, - "node": { - "types": "./dist/index.node.d.ts", - "default": "./dist/index.node.js" + ".": { + "browser": { + "types": "./dist/index.browser.d.ts", + "default": "./dist/index.browser.js" + }, + "node": { + "types": "./dist/index.node.d.ts", + "default": "./dist/index.node.js" + } } }, "files": [ diff --git a/packages/wallet/src/index.browser.ts b/packages/wallet/src/index.browser.ts index 0fcdf45..12aa23c 100644 --- a/packages/wallet/src/index.browser.ts +++ b/packages/wallet/src/index.browser.ts @@ -2,4 +2,7 @@ export * from './index.js'; // These exports will only work in a browser environment. -export * from './storage/storage-idb.js'; +// NOTE: We import and export with a common alias to better support any leveraging libraries. +import { StorageIDB } from './storage/storage-idb.js'; +export { StorageIDB }; +export { StorageIDB as StorageLocal }; diff --git a/packages/wallet/src/index.node.ts b/packages/wallet/src/index.node.ts index 1b41278..120101d 100644 --- a/packages/wallet/src/index.node.ts +++ b/packages/wallet/src/index.node.ts @@ -2,4 +2,7 @@ export * from './index.js'; // These exports will only work in a NodeJS (backend) environment. -export * from './storage/storage-sqlite.js'; +// NOTE: We import and export each module with a common alias so that any leveraging libraries can use the common name and maintain cross-platform compatibility. +import { StorageSQLite } from './storage/storage-sqlite.js'; +export { StorageSQLite }; +export { StorageSQLite as StorageLocal };