package Ġsa ar land . cis pa . frontmatter Ċ Ċ import Ġsa ar land . cis pa . frontmatter . analy ses . Front matter Metadata Ċ import Ġsa ar land . cis pa . frontmatter . data . Dialog Ċ import Ġsa ar land . cis pa . frontmatter . data . Menu Ċ import Ġsa ar land . cis pa . frontmatter . data . UI View Element Ċ import Ġsa ar land . cis pa . frontmatter . resolvers . Transition Ċ import Ġsa ar land . cis pa . frontmatter . resolvers . UI View Ċ import Ġsa ar land . cis pa . frontmatter . results . ApiModel Ċ import Ġsa ar land . cis pa . frontmatter . results . Simple Layout UIElement Ċ import Ġsa ar land . cis pa . frontmatter . results . Simple UIElement Ċ import Ġso ot . S oot Class Ċ import Ġso ot . util . Hash Multi Map Ċ import Ġso ot . util . Multi Map Ċ Ċ type alias ĠActivity Class Ġ= ĠS oot Class Ċ type alias ĠFragment Class Ġ= ĠS oot Class Ċ type alias ĠActivity Or Fragment Class Ġ= ĠS oot Class Ċ Ċ data Ġclass ĠFragment With Container ( val Ġvalue : ĠFragment Class , Ġval Ġcontainer Id : ĠInt ) ĊĊ Ċ class ĠApp Model ( activity List : ĠCollection < Activity Class >, Ġval Ġmeta : ĠFront matter Metadata ) Ġ{ ĊĠĠĠ Ġval Ġactivities : ĠList < Activity Class > Ġ= Ġactivity List . filter Ġ{ Ġit . is Concrete Ġ} ĊĠĠĠ Ġval Ġfragments : ĠSet < Fragment Class > ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment To Activity . keySet () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġval Ġactivity Labels : ĠMulti Map < Activity Class , ĠString > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġfun Ġset Xml Labels ( activity Labels : ĠMap < Activity Class , ĠString >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . activity Labels . put All ( activity Labels . entries ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġtoast s : ĠMulti Map < Activity Class , ĠString > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġval Ġtransitions : ĠMutable Set < Transition > Ġ= Ġmutable Set Of () ĊĠĠĠ Ġvar Ġactivity Layouts : ĠMulti Map < Activity Class , ĠUIView > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġvar Ġfragment Layouts : ĠMulti Map < Activity Class , ĠUIView > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġvar Ġfragment Mapping : ĠMulti Map < Activity Class , ĠFragment With Container > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġval Ġfragment To Activity : ĠMulti Map < Fragment Class , ĠActivity Class > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġvar Ġorphan ed Fragment Layouts : ĠMulti Map < Activity Class , ĠUIView Element > Ġ= ĠHash Multi Map () ĊĊĠĠĠ Ġvar Ġactivity Menus : ĠMulti Map < Activity Class , ĠMenu > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġval Ġactivity Dialog s : ĠMulti Map < Activity Class , ĠDialog > Ġ= ĠHash Multi Map () ĊĠĠĠ Ġval Ġcontext To Scope : ĠMulti Map < Activity Or Fragment Class , ĠString > Ġ= ĠHash Multi Map () ĊĊĠĠĠ Ġfun Ġupdate Fragment To Activity () Ġ{ ĊĠĠĠĠĠĠĠ Ġfragment Mapping . map Ġ{ Ġ( k , Ġv ) Ġ-> Ġv . value Ġto Ġk Ġ}. to Multi Map ( fragment To Activity ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Flat UI (): ĠList < Simple UIElement > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġui List Ġ= Ġmutable ListOf < Simple UIElement >() ĊĠĠĠĠĠĠĠ Ġactivity Layouts . values (). flatMap Ġ{ Ġit . ui View Element . getAll Children Flatten () Ġ}. forEach Ġ{ Ġui Element Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlisteners Ġ= Ġui Element . listeners . map Ġ{ Ġit . name Ġ}. toSet () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġui List . add ( Simple Layout UIElement ( ui Element . guid , Ġui Element . id , Ġlisteners )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfragment Layouts . values (). flatMap Ġ{ Ġit . ui View Element . getAll Children Flatten () Ġ}. forEach Ġ{ Ġui Element Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlisteners Ġ= Ġui Element . listeners . map Ġ{ Ġit . name Ġ}. toSet () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġui List . add ( Simple Layout UIElement ( ui Element . guid , Ġui Element . id , Ġlisteners )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġactivity Dialog s . values (). flatMap Ġ{ Ġit . buttons Ġ}. forEach Ġ{ Ġbutton Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlisteners Ġ= Ġbutton . listener . map Ġ{ Ġit . name Ġ}. toSet () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġui List . add ( Simple Layout UIElement ( button . guid , Ġbutton . id , Ġlisteners )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfor Ġ( menu Ġin Ġactivity Menus . values ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlisteners Ġ= Ġmenu . listener ?. let Ġ{ Ġset Of ( it . name ) Ġ} Ġ?: Ġempty Set () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( item Ġin Ġmenu . getAll Items ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġui List . add ( Simple Layout UIElement ( item . guid , Ġitem . id , Ġlisteners )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġui List . toList () ĊĠĠĠ Ġ} Ċ } Ċ