@ultraos/wallet-sdk 0.1.1 → 0.2.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.
- package/README.md +1 -0
- package/package.json +1 -1
- package/src/lib/interfaces/wallet-sdk-options.interface.d.ts +3 -0
- package/src/lib/interfaces/wallet-sdk-options.interface.d.ts.map +1 -1
- package/src/lib/interfaces/wallet-sdk-options.interface.js.map +1 -1
- package/src/lib/ultra-wallet-sdk.d.ts.map +1 -1
- package/src/lib/ultra-wallet-sdk.js +6 -3
- package/src/lib/ultra-wallet-sdk.js.map +1 -1
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -3,8 +3,11 @@
|
|
|
3
3
|
* Used primarily when falling back to the Web Wallet if no Ultra extension is available.
|
|
4
4
|
*
|
|
5
5
|
* @property {('mainnet' | 'testnet' | string)} [environment] - Target environment; defaults to 'mainnet' if unspecified.
|
|
6
|
+
* @property {'web' | 'extension'} [provider] - Specifies the type of provider being used.
|
|
6
7
|
*/
|
|
7
8
|
export interface UltraWalletSdkOptions {
|
|
8
9
|
environment?: 'mainnet' | 'testnet' | string;
|
|
10
|
+
provider?: UltraWalletSdkProvider;
|
|
9
11
|
}
|
|
12
|
+
export type UltraWalletSdkProvider = 'web' | 'extension';
|
|
10
13
|
//# sourceMappingURL=wallet-sdk-options.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-sdk-options.interface.d.ts","sourceRoot":"","sources":["../../../../../../libs/wallet-sdk/src/lib/interfaces/wallet-sdk-options.interface.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"wallet-sdk-options.interface.d.ts","sourceRoot":"","sources":["../../../../../../libs/wallet-sdk/src/lib/interfaces/wallet-sdk-options.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IAC7C,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,WAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-sdk-options.interface.js","sourceRoot":"","sources":["../../../../../../libs/wallet-sdk/src/lib/interfaces/wallet-sdk-options.interface.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Options to configure the UltraWalletClient behavior.\n * Used primarily when falling back to the Web Wallet if no Ultra extension is available.\n *\n * @property {('mainnet' | 'testnet' | string)} [environment] - Target environment; defaults to 'mainnet' if unspecified.\n */\nexport interface UltraWalletSdkOptions {\n environment?: 'mainnet' | 'testnet' | string;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"wallet-sdk-options.interface.js","sourceRoot":"","sources":["../../../../../../libs/wallet-sdk/src/lib/interfaces/wallet-sdk-options.interface.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Options to configure the UltraWalletClient behavior.\n * Used primarily when falling back to the Web Wallet if no Ultra extension is available.\n *\n * @property {('mainnet' | 'testnet' | string)} [environment] - Target environment; defaults to 'mainnet' if unspecified.\n * @property {'web' | 'extension'} [provider] - Specifies the type of provider being used.\n */\nexport interface UltraWalletSdkOptions {\n environment?: 'mainnet' | 'testnet' | string;\n provider?: UltraWalletSdkProvider;\n}\n\nexport type UltraWalletSdkProvider = 'web' | 'extension';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ultra-wallet-sdk.d.ts","sourceRoot":"","sources":["../../../../../libs/wallet-sdk/src/lib/ultra-wallet-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EAEb,qBAAqB,
|
|
1
|
+
{"version":3,"file":"ultra-wallet-sdk.d.ts","sourceRoot":"","sources":["../../../../../libs/wallet-sdk/src/lib/ultra-wallet-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EAEb,qBAAqB,EAEtB,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,qBAAa,cAAc;IAUb,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IATrC,OAAO,CAAC,QAAQ,CAAsB;IAEtC;;;;;;OAMG;gBAC0B,OAAO,CAAC,EAAE,qBAAqB;IAI5D,OAAO,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAItE,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAI7C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAIvE,eAAe,CACb,WAAW,EAAE,qBAAqB,GAAG,qBAAqB,EAAE,EAC5D,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAIhD,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAI5C,YAAY,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAIpG,OAAO,CAAC,qBAAqB;CAY9B"}
|
|
@@ -35,12 +35,15 @@ export class UltraWalletSDK {
|
|
|
35
35
|
return this.provider.purchaseItem(itemType, itemId);
|
|
36
36
|
}
|
|
37
37
|
resolveWalletProvider() {
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
const requestedProvider = this.options?.provider;
|
|
39
|
+
if (requestedProvider === 'extension') {
|
|
40
|
+
return new ExtensionProvider(this.options);
|
|
40
41
|
}
|
|
41
|
-
|
|
42
|
+
if (requestedProvider === 'web') {
|
|
42
43
|
return new WebProvider(this.options);
|
|
43
44
|
}
|
|
45
|
+
const extensionAvailable = isExtensionAvailable();
|
|
46
|
+
return extensionAvailable ? new ExtensionProvider(this.options) : new WebProvider(this.options);
|
|
44
47
|
}
|
|
45
48
|
}
|
|
46
49
|
//# sourceMappingURL=ultra-wallet-sdk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ultra-wallet-sdk.js","sourceRoot":"","sources":["../../../../../libs/wallet-sdk/src/lib/ultra-wallet-sdk.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ultra-wallet-sdk.js","sourceRoot":"","sources":["../../../../../libs/wallet-sdk/src/lib/ultra-wallet-sdk.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,cAAc;IAGzB;;;;;;OAMG;IACH,YAA6B,OAA+B;QAA/B,YAAO,GAAP,OAAO,CAAwB;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAED,OAAO,CAAC,MAAsB;QAC5B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;IAED,WAAW,CAAC,OAAe;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,eAAe,CACb,WAA4D,EAC5D,OAAgC;QAEhC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;IAED,YAAY,CAAC,QAA0B,EAAE,MAAc;QACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAEO,qBAAqB;QAC3B,MAAM,iBAAiB,GAAuC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC;QACrF,IAAI,iBAAiB,KAAK,WAAW,EAAE,CAAC;YACtC,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,iBAAiB,KAAK,KAAK,EAAE,CAAC;YAChC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,kBAAkB,GAAG,oBAAoB,EAAE,CAAC;QAClD,OAAO,kBAAkB,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClG,CAAC;CACF","sourcesContent":["import {\n BlockchainTransaction,\n ConnectParams,\n ConnectResult,\n PurchaseItemResult,\n PurchaseItemType,\n SignMessageResult,\n SignTransactionOptions,\n SignTransactionResult,\n UltraResponse,\n UltraWalletProvider,\n UltraWalletSdkOptions,\n UltraWalletSdkProvider,\n} from './interfaces';\nimport { ExtensionProvider, WebProvider } from './providers';\nimport { isExtensionAvailable } from './utils/detection';\n\n/**\n * UltraWalletClient acts as a Facade for interacting with the Ultra Wallet.\n * It provides a unified API regardless of the underlying provider implementation (Extension or Web).\n */\nexport class UltraWalletSDK {\n private provider: UltraWalletProvider;\n\n /**\n * Constructs an UltraWalletClient instance.\n * If the Ultra Wallet Extension is available (window.ultra), it will be used automatically.\n * If the Extension is not available, the Web Wallet provider will be initialized using the given network options.\n *\n * @param {UltraWalletSdkOptions} [options] - Configuration options for the Web Wallet fallback (environment or custom URL).\n */\n constructor(private readonly options?: UltraWalletSdkOptions) {\n this.provider = this.resolveWalletProvider();\n }\n\n connect(params?: ConnectParams): Promise<UltraResponse<ConnectResult>> {\n return this.provider.connect(params);\n }\n\n disconnect(): Promise<UltraResponse<boolean>> {\n return this.provider.disconnect();\n }\n\n signMessage(message: string): Promise<UltraResponse<SignMessageResult>> {\n return this.provider.signMessage(message);\n }\n\n signTransaction(\n transaction: BlockchainTransaction | BlockchainTransaction[],\n options?: SignTransactionOptions,\n ): Promise<UltraResponse<SignTransactionResult>> {\n return this.provider.signTransaction(transaction, options);\n }\n\n getChainId(): Promise<UltraResponse<string>> {\n return this.provider.getChainId();\n }\n\n purchaseItem(itemType: PurchaseItemType, itemId: string): Promise<UltraResponse<PurchaseItemResult>> {\n return this.provider.purchaseItem(itemType, itemId);\n }\n\n private resolveWalletProvider(): UltraWalletProvider {\n const requestedProvider: UltraWalletSdkProvider | undefined = this.options?.provider;\n if (requestedProvider === 'extension') {\n return new ExtensionProvider(this.options);\n }\n if (requestedProvider === 'web') {\n return new WebProvider(this.options);\n }\n\n const extensionAvailable = isExtensionAvailable();\n return extensionAvailable ? new ExtensionProvider(this.options) : new WebProvider(this.options);\n }\n}\n"]}
|