/* Ċ Ġ* ĠCopyright Ġ 2 0 2 1 ĠPeter ĠKen ji ĠY aman aka Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . py am soft . tr ick le . main Ċ Ċ import Ġandroidx . annotation . Check Result Ċ import Ġandroidx . annotation . Id Res Ċ import Ġcom . py am soft . py d roid . ui . navigator . Navigator Ċ import Ġcom . py am soft . tr ick le . core . Activity Scope Ċ import Ġcom . py am soft . tr ick le . home . Home Component Ċ import Ġcom . py am soft . tr ick le . settings . AppSettings Component Ċ import Ġcom . py am soft . tr ick le . settings . Settings Component Ċ import Ġdagger . Bind s Ċ import Ġdagger . Bind s Instance Ċ import Ġdagger . Module Ċ import Ġdagger . Sub component Ċ import Ġjavax . inject . Named Ċ Ċ @ Activity Scope Ċ @ Sub component ( modules Ġ= Ġ[ Main Component . Main Module :: class ]) Ċ internal Ġinterface ĠMain Component Ġ{ ĊĊĠ Ġ@ Check Result Ġfun Ġplus Home (): ĠHome Component . Factory ĊĊĠ Ġ@ Check Result Ġfun Ġplus Settings (): ĠSettings Component . Factory ĊĊĠ Ġ@ Check Result Ġfun Ġplus AppSettings (): ĠApp Settings Component . Factory ĊĊĠ Ġfun Ġinject ( activity : ĠMainActivity ) ĊĊĠ Ġ@ Sub component . Factory ĊĠ Ġinterface ĠFactory Ġ{ ĊĊĠĠĠ Ġ@ Check Result ĊĠĠĠ Ġfun Ġcreate ( ĊĠĠĠĠĠĠĠ Ġ@ Bind s Instance Ġactivity : ĠMainActivity , ĊĠĠĠĠĠĠĠ Ġ@ Bind s Instance Ġ@ Id Res Ġ@ Named (" main _ container ") Ġfragment Container Id : ĠInt , ĊĠĠĠ Ġ): ĠMain Component ĊĠ Ġ} ĊĊĠ Ġ@ Module ĊĠ Ġabstract Ġclass ĠMain Module Ġ{ ĊĊĠĠĠ Ġ@ Bind s ĊĠĠĠ Ġ@ Check Result ĊĠĠĠ Ġinternal Ġabstract Ġfun Ġbind Navigator ( impl : ĠMain Navigator ): ĠNavigator < Main Page > ĊĠ Ġ} Ċ } Ċ