@@ -18,6 +18,7 @@ import {
18
18
AssetProvider ,
19
19
Cardano ,
20
20
ChainHistoryProvider ,
21
+ DRepProvider ,
21
22
HandleProvider ,
22
23
NetworkInfoProvider ,
23
24
ProviderFactory ,
@@ -39,6 +40,7 @@ import {
39
40
BlockfrostAssetProvider ,
40
41
BlockfrostChainHistoryProvider ,
41
42
BlockfrostClient ,
43
+ BlockfrostDRepProvider ,
42
44
BlockfrostNetworkInfoProvider ,
43
45
BlockfrostRewardsProvider ,
44
46
BlockfrostTxSubmitProvider ,
@@ -81,6 +83,7 @@ export type CreateKeyAgent = (dependencies: KeyAgentDependencies) => Promise<Asy
81
83
export const keyManagementFactory = new ProviderFactory < CreateKeyAgent > ( ) ;
82
84
export const assetProviderFactory = new ProviderFactory < AssetProvider > ( ) ;
83
85
export const chainHistoryProviderFactory = new ProviderFactory < ChainHistoryProvider > ( ) ;
86
+ export const drepProviderFactory = new ProviderFactory < DRepProvider > ( ) ;
84
87
export const networkInfoProviderFactory = new ProviderFactory < NetworkInfoProvider > ( ) ;
85
88
export const rewardsProviderFactory = new ProviderFactory < RewardsProvider > ( ) ;
86
89
export const txSubmitProviderFactory = new ProviderFactory < TxSubmitProvider > ( ) ;
@@ -181,6 +184,19 @@ chainHistoryProviderFactory.register(BLOCKFROST_PROVIDER, async (params: any, lo
181
184
} ) ;
182
185
} ) ;
183
186
187
+ drepProviderFactory . register ( BLOCKFROST_PROVIDER , async ( params : any , logger ) : Promise < DRepProvider > => {
188
+ if ( params . baseUrl === undefined ) throw new Error ( `${ BlockfrostDRepProvider . name } : ${ MISSING_URL_PARAM } ` ) ;
189
+
190
+ return new Promise < DRepProvider > ( async ( resolve ) => {
191
+ resolve (
192
+ new BlockfrostDRepProvider (
193
+ new BlockfrostClient ( { baseUrl : params . baseUrl } , { rateLimiter : { schedule : ( task ) => task ( ) } } ) ,
194
+ logger
195
+ )
196
+ ) ;
197
+ } ) ;
198
+ } ) ;
199
+
184
200
networkInfoProviderFactory . register (
185
201
HTTP_PROVIDER ,
186
202
async ( params : any , logger : Logger ) : Promise < NetworkInfoProvider > => {
@@ -483,6 +499,11 @@ export const getWallet = async (props: GetWalletProps) => {
483
499
env . TEST_CLIENT_CHAIN_HISTORY_PROVIDER_PARAMS ,
484
500
logger
485
501
) ,
502
+ drepProvider : await drepProviderFactory . create (
503
+ env . TEST_CLIENT_DREP_PROVIDER ,
504
+ env . TEST_CLIENT_DREP_PROVIDER_PARAMS ,
505
+ logger
506
+ ) ,
486
507
handleProvider : await handleProviderFactory . create (
487
508
env . TEST_CLIENT_HANDLE_PROVIDER ,
488
509
env . TEST_CLIENT_HANDLE_PROVIDER_PARAMS ,
@@ -571,6 +592,11 @@ export const getSharedWallet = async (props: GetSharedWalletProps) => {
571
592
env . TEST_CLIENT_CHAIN_HISTORY_PROVIDER_PARAMS ,
572
593
logger
573
594
) ,
595
+ drepProvider : await drepProviderFactory . create (
596
+ env . TEST_CLIENT_DREP_PROVIDER ,
597
+ env . TEST_CLIENT_DREP_PROVIDER_PARAMS ,
598
+ logger
599
+ ) ,
574
600
handleProvider : await handleProviderFactory . create (
575
601
env . TEST_CLIENT_HANDLE_PROVIDER ,
576
602
env . TEST_CLIENT_HANDLE_PROVIDER_PARAMS ,
0 commit comments