/* Ċ Ġ* ĠRunner Be ĠÂ© Ġ 2 0 2 2 ĠTeam ĠApple M ango . Ġall Ġrights Ġreserved . Ċ Ġ* ĠRunner Be Ġlicense Ġis Ġunder Ġthe ĠMIT . Ċ Ġ* Ċ Ġ* Ġ[ Gradle Scope Extensions . kt ] Ġcreated Ġby ĠJ i ĠS ung bin Ġon Ġ 2 2 . Ġ 1 . Ġ 3 1 . Ġìĺ¤ í ĽĦ Ġ 9 : 5 9 Ċ Ġ* Ċ Ġ* ĠPlease Ġsee : Ġhttps :// github . com / app lem ango - runner be / Runner Be - Android / blob / main / LICENSE . Ċ Ġ*/ Ċ Ċ import Ġorg . gradle . api . artifacts . Project Dependency Ċ import Ġorg . gradle . api . artifacts . dsl . Dependency Handler Ċ import Ġorg . gradle . plugin . use . Plugin Dependencies Spec Ċ Ċ // Ġplugin Ċ fun ĠPlugin Dependencies Spec . install Library D fm H ilt Test ( ĊĠĠĠ Ġis Presentation : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġis DF M : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġtest Needed : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġexclude H ilt : ĠBoolean Ġ= Ġfalse , Ċ ) Ġ{ ĊĠĠĠ Ġif Ġ(! is Presentation Ġ&& Ġ! is DF M ) Ġ{ ĊĠĠĠĠĠĠĠ Ġid (" com . android . library ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( is DF M ) Ġ{ ĊĠĠĠĠĠĠĠ Ġid (" com . android . dynamic - feature ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġid (" kotlin - android ") ĊĠĠĠ Ġid (" kotlin - k apt ") ĊĠĠĠ Ġif Ġ(! is DF M Ġ&& Ġ! exclude H ilt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġid (" d agger . h ilt . android . plugin ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( test Needed ) Ġ{ ĊĠĠĠĠĠĠĠ Ġid (" de . mann oder ma us . android - junit 5 ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// Ġid (" sc abb ard . gradle ") Ġversion ĠVersions . Util . Sc abb ard Ċ } Ċ Ċ // Ġdependencies Ċ fun ĠDependency Handler . install Shared Compose Orbit H ilt Test ( ĊĠĠĠ Ġis Shared Module : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġexclude H ilt : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġexclude Compose : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġtest Needed : ĠBoolean Ġ= Ġfalse , Ċ ) Ġ{ ĊĠĠĠ Ġimplementation ( Dependencies . Orbit . Main ) ĊĠĠĠ Ġif Ġ(! is Shared Module ) Ġ{ ĊĠĠĠĠĠĠĠ Ġimplementation Project ( Project Constants . Shared Android ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ(! exclude H ilt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġimplementation ( Dependencies . Jet pack . H ilt ) ĊĠĠĠĠĠĠĠ Ġadd (" k apt ", ĠDependencies . Compiler . H ilt ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ(! exclude Compose ) Ġ{ ĊĠĠĠĠĠĠĠ ĠDependencies . Compose . forEach (:: implementation ) ĊĠĠĠĠĠĠĠ ĠDependencies . Debug . Compose . forEach (:: debug Implementation ) ĊĠĠĠĠĠĠĠ Ġimplementation Project ( Project Constants . Shared Compose ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( test Needed ) Ġ{ ĊĠĠĠĠĠĠĠ Ġadd (" test Implementation ", ĠDependencies . Orbit . Test ) ĊĠĠĠĠĠĠĠ Ġadd (" test Implementation ", ĠDependencies . Test . J unit Api ) ĊĠĠĠĠĠĠĠ Ġadd (" test Runtime Only ", ĠDependencies . Test . J unit Engine ) ĊĠĠĠĠĠĠĠ Ġadd (" test Implementation ", ĠDependencies . Test . Ham crest ) ĊĠĠĠĠĠĠĠ Ġadd (" test Implementation ", ĠDependencies . Test . Coroutine ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠDependency Handler . implementation Project ( path : ĠString ) Ġ{ ĊĠĠĠ Ġadd (" implementation ", Ġproject ( path )) Ċ } Ċ Ċ private Ġfun ĠDependency Handler . implementation ( dependency : ĠAny ) Ġ{ ĊĠĠĠ Ġadd (" implementation ", Ġdependency ) Ċ } Ċ Ċ private Ġfun ĠDependency Handler . debug Implementation ( dependency : ĠAny ) Ġ{ ĊĠĠĠ Ġadd (" debug Implementation ", Ġdependency ) Ċ } Ċ Ċ private Ġfun ĠDependency Handler . project ( path : ĠString ) Ġ= ĊĠĠĠ Ġproject ( map Of ( Pair (" path ", Ġpath ))) Ġas ĠProject Dependency Ċ