From 8bc0608c5bace577350c4adb01501700cc1e5a82 Mon Sep 17 00:00:00 2001 From: Ravi Hegde Date: Wed, 15 Oct 2025 19:19:17 +0530 Subject: [PATCH] feat(sdk-coin-canton): added wallet initialize builder to the builder factory Ticket: COIN-6080 --- CODEOWNERS | 1 + .../src/lib/transactionBuilderFactory.ts | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index f302a3c80c..dfe862a6d1 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -60,6 +60,7 @@ /modules/sdk-coin-baby/ @BitGo/ethalt-team /modules/sdk-coin-bera/ @BitGo/ethalt-team /modules/sdk-coin-bsc/ @BitGo/ethalt-team +/module/sdk-coin-canton/ @BitGo/ethalt-team /modules/sdk-coin-coredao/ @BitGo/ethalt-team /modules/sdk-coin-cosmos/ @BitGo/ethalt-team /modules/sdk-coin-cronos/ @BitGo/ethalt-team diff --git a/modules/sdk-coin-canton/src/lib/transactionBuilderFactory.ts b/modules/sdk-coin-canton/src/lib/transactionBuilderFactory.ts index b963ec4b4d..2ff86d2d85 100644 --- a/modules/sdk-coin-canton/src/lib/transactionBuilderFactory.ts +++ b/modules/sdk-coin-canton/src/lib/transactionBuilderFactory.ts @@ -1,6 +1,8 @@ -import { BaseTransactionBuilderFactory } from '@bitgo/sdk-core'; +import { BaseTransaction, BaseTransactionBuilderFactory } from '@bitgo/sdk-core'; import { TransactionBuilder } from './transactionBuilder'; import { TransferBuilder } from './transferBuilder'; +import { WalletInitBuilder } from './walletInitBuilder'; +import { WalletInitTransaction } from './walletInitialization/walletInitTransaction'; export class TransactionBuilderFactory extends BaseTransactionBuilderFactory { /** @inheritdoc */ @@ -14,7 +16,17 @@ export class TransactionBuilderFactory extends BaseTransactionBuilderFactory { } /** @inheritdoc */ - getWalletInitializationBuilder(): void { - throw new Error('Method not implemented.'); + getWalletInitializationBuilder(tx?: WalletInitTransaction): WalletInitBuilder { + return TransactionBuilderFactory.initializeBuilder(tx, new WalletInitBuilder(this._coinConfig)); + } + + private static initializeBuilder( + tx: TTx | undefined, + builder: TBuilder + ): TBuilder { + if (tx) { + builder.initBuilder(tx); + } + return builder; } }