package Ġjp . co . sor am its u . feature _ wallet _ impl . di Ċ Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġjp . co . sor am its u . common . data . network . Http ExceptionHandler Ċ import Ġjp . co . sor am its u . common . data . network . Network Api Creator Ċ import Ġjp . co . sor am its u . common . data . network . runtime . calls . Sub strate Calls Ċ import Ġjp . co . sor am its u . common . di . scope . Feature Scope Ċ import Ġjp . co . sor am its u . common . interfaces . File Provider Ċ import Ġjp . co . sor am its u . common . utils . Suspend able Property Ċ import Ġjp . co . sor am its u . core _ db . dao . Asset Dao Ċ import Ġjp . co . sor am its u . core _ db . dao . Ph ishing Address Dao Ċ import Ġjp . co . sor am its u . core _ db . dao . Token Dao Ċ import Ġjp . co . sor am its u . core _ db . dao . Transaction Dao Ċ import Ġjp . co . sor am its u . fe ar less _ utils . encrypt . Key pair Factory Ċ import Ġjp . co . sor am its u . fe ar less _ utils . encrypt . Signer Ċ import Ġjp . co . sor am its u . fe ar less _ utils . runtime . Runtime Snapshot Ċ import Ġjp . co . sor am its u . fe ar less _ utils . ws rpc . Socket Service Ċ import Ġjp . co . sor am its u . feature _ account _ api . domain . interfaces . Account Repository Ċ import Ġjp . co . sor am its u . feature _ account _ api . domain . up dat ers . Account Update Scope Ċ import Ġjp . co . sor am its u . feature _ wallet _ api . data . cache . Asset Cache Ċ import Ġjp . co . sor am its u . feature _ wallet _ api . di . Wallet Up dat ers Ċ import Ġjp . co . sor am its u . feature _ wallet _ api . domain . interfaces . Token Repository Ċ import Ġjp . co . sor am its u . feature _ wallet _ api . domain . interfaces . Wallet Interactor Ċ import Ġjp . co . sor am its u . feature _ wallet _ api . domain . interfaces . Wallet Repository Ċ import Ġjp . co . sor am its u . feature _ wallet _ api . domain . model . Buy Token Registry Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . Build Config Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . buy Token . R amp Provider Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . blockchain . Sub strate Remote Source Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . blockchain . W ss Sub strate Source Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . blockchain . struct . account . Account Info Factory Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . blockchain . struct . extr insic . Transfer Extr insic Factory Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . blockchain . up dat ers . Account Info Schema Updater Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . blockchain . up dat ers . Payment Updater Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . ph ishing . Ph ishing Api Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . network . sub scan . Sub scan Network Api Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . repository . Token Repository Impl Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . data . repository . Wallet Repository Impl Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . domain . Wallet Interactor Impl Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . presentation . balance . asset Actions . Buy Mixin Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . presentation . balance . asset Actions . Buy Mixin Provider Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . presentation . send . Transfer Validity Checks Ċ import Ġjp . co . sor am its u . feature _ wallet _ impl . presentation . send . Transfer Validity Checks Provider Ċ Ċ @ Module Ċ class ĠWallet Feature Module Ġ{ ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Sub scan Api ( network Api Creator : ĠNetwork Api Creator ): ĠSub scan Network Api Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnetwork Api Creator . create ( Sub scan Network Api :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Asset Cache ( token Dao : ĠToken Dao , Ġasset Dao : ĠAsset Dao ): ĠAsset Cache Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAsset Cache ( token Dao , Ġasset Dao ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Dual RefCount Property () Ġ= ĠS uspend able Property < Boolean >() ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Extr insic Factory ( ĊĠĠĠĠĠĠĠ Ġdual RefCount Property : ĠS uspend able Property < Boolean >, ĊĠĠĠĠĠĠĠ Ġsigner : ĠSign er ĊĠĠĠ Ġ) Ġ= ĠTransfer Extr insic Factory ( dual RefCount Property , Ġsigner ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Account Info Factory ( ĊĠĠĠĠĠĠĠ Ġdual RefCount Property : ĠS uspend able Property < Boolean > ĊĠĠĠ Ġ) Ġ= ĠAccount Info Factory ( dual RefCount Property ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Ph ishing Api ( network Api Creator : ĠNetwork Api Creator ): ĠPh ishing Api Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnetwork Api Creator . create ( Ph ishing Api :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Sub strate Source ( ĊĠĠĠĠĠĠĠ Ġsocket Service : ĠSocket Service , ĊĠĠĠĠĠĠĠ Ġkey pair Factory : ĠKey pair Factory , ĊĠĠĠĠĠĠĠ Ġaccount Info Factory : ĠAccount Info Factory , ĊĠĠĠĠĠĠĠ Ġextr insic Factory : ĠTransfer Extr insic Factory , ĊĠĠĠĠĠĠĠ Ġsubstr ate Calls : ĠSub strate Calls , ĊĠĠĠĠĠĠĠ Ġruntime Property : ĠS uspend able Property < Runtime Snapshot > ĊĠĠĠ Ġ): ĠSub strate Remote Source Ġ= ĠW ss Sub strate Source ( ĊĠĠĠĠĠĠĠ Ġsocket Service , ĊĠĠĠĠĠĠĠ Ġkey pair Factory , ĊĠĠĠĠĠĠĠ Ġaccount Info Factory , ĊĠĠĠĠĠĠĠ Ġextr insic Factory , ĊĠĠĠĠĠĠĠ Ġruntime Property , ĊĠĠĠĠĠĠĠ Ġsubstr ate Calls ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Token Repository ( ĊĠĠĠĠĠĠĠ Ġtoken Dao : ĠToken Dao ĊĠĠĠ Ġ): ĠToken Repository Ġ= ĠToken Repository Impl ( ĊĠĠĠĠĠĠĠ Ġtoken Dao ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Wallet Repository ( ĊĠĠĠĠĠĠĠ Ġsubstr ate Source : ĠSub strate Remote Source , ĊĠĠĠĠĠĠĠ Ġtransaction Dao : ĠTransaction Dao , ĊĠĠĠĠĠĠĠ Ġsub scan Network Api : ĠSub scan Network Api , ĊĠĠĠĠĠĠĠ Ġhttp ExceptionHandler : ĠHttp ExceptionHandler , ĊĠĠĠĠĠĠĠ Ġph ishing Api : ĠPh ishing Api , ĊĠĠĠĠĠĠĠ Ġph ishing Address Dao : ĠPh ishing Address Dao , ĊĠĠĠĠĠĠĠ Ġasset Cache : ĠAsset Cache ĊĠĠĠ Ġ): ĠWallet Repository Ġ= ĠWallet Repository Impl ( ĊĠĠĠĠĠĠĠ Ġsubstr ate Source , ĊĠĠĠĠĠĠĠ Ġtransaction Dao , ĊĠĠĠĠĠĠĠ Ġsub scan Network Api , ĊĠĠĠĠĠĠĠ Ġhttp ExceptionHandler , ĊĠĠĠĠĠĠĠ Ġph ishing Api , ĊĠĠĠĠĠĠĠ Ġasset Cache , ĊĠĠĠĠĠĠĠ Ġph ishing Address Dao ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Wallet Interactor ( ĊĠĠĠĠĠĠĠ Ġwallet Repository : ĠWallet Repository , ĊĠĠĠĠĠĠĠ Ġaccount Repository : ĠAccount Repository , ĊĠĠĠĠĠĠĠ Ġfile Provider : ĠFile Provider ĊĠĠĠ Ġ): ĠWallet Interactor Ġ= ĠWallet Interactor Impl ( wallet Repository , Ġaccount Repository , Ġfile Provider ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Buy Token Integration (): ĠBu y Token Registry Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠBu y Token Registry ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġavailable Providers Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR amp Provider ( host Ġ= ĠBuild Config . R AMP _ HOST , Ġapi Token Ġ= ĠBuild Config . R AMP _ TOKEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Buy Mixin ( ĊĠĠĠĠĠĠĠ Ġbuy Token Registry : ĠBu y Token Registry ĊĠĠĠ Ġ): ĠBu y Mixin . Presentation Ġ= ĠBu y Mixin Provider ( buy Token Registry ) ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Transfer Checks (): ĠTransfer Validity Checks . Presentation Ġ= ĠTransfer Validity Checks Provider () ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Account Schema Updater ( ĊĠĠĠĠĠĠĠ Ġaccount Info Factory : ĠAccount Info Factory ĊĠĠĠ Ġ): ĠAccount Info Schema Updater Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAccount Info Schema Updater ( account Info Factory ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Payment Updater ( ĊĠĠĠĠĠĠĠ Ġremote Source : ĠSub strate Remote Source , ĊĠĠĠĠĠĠĠ Ġaccount Info Factory : ĠAccount Info Factory , ĊĠĠĠĠĠĠĠ Ġasset Cache : ĠAsset Cache , ĊĠĠĠĠĠĠĠ Ġtransaction Dao : ĠTransaction Dao , ĊĠĠĠĠĠĠĠ Ġaccount Update Scope : ĠAccount Update Scope ĊĠĠĠ Ġ): ĠPayment Updater Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠPayment Updater ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremote Source , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġasset Cache , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccount Info Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Dao , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccount Update Scope ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Feature Scope ĊĠĠĠ Ġfun Ġprovide Feature Up dat ers ( ĊĠĠĠĠĠĠĠ Ġschema Updater : ĠAccount Info Schema Updater , ĊĠĠĠĠĠĠĠ Ġpayment Updater : ĠPayment Updater ĊĠĠĠ Ġ): ĠWallet Up dat ers Ġ= ĠWallet Up dat ers ( ĊĠĠĠĠĠĠĠ Ġup dat ers Ġ= ĠarrayOf ( schema Updater , Ġpayment Updater ) ĊĠĠĠ Ġ) Ċ }