package Ġcom . so yle . stories . desktop . view . location . create Ċ Ċ import Ġcom . so yle . stories . common . Async Thread Transformer Ċ import Ġcom . so yle . stories . domain . location . Location Ċ import Ġcom . so yle . stories . location . controllers . Create New Location Controller Ċ import Ġcom . so yle . stories . location . create Location Dialog . Create Location Dialog Ċ import Ġcom . so yle . stories . location . create Location Dialog . Create Location Dialog Locale Ċ import Ġcom . so yle . stories . so yle stories . Application Scope Ċ import Ġcom . so yle . stories . use case . location . createNew Location . Create New Location Ċ Ċ class ĠCreate Location Dialog Factory ( ĊĠĠĠ Ġprivate Ġval Ġon Invoke : Ġ( suspend Ġ( Create New Location . Response Model ) Ġ-> ĠUnit ) Ġ-> ĠUnit Ġ= Ġ{}, ĊĠĠĠ Ġval Ġthread Transformer : ĠAsync Thread Transformer Ġ= ĠAsync Thread Transformer ( Application Scope ()), ĊĠĠĠ Ġval Ġcreate New Location : ĠCreate New Location Controller Double Ġ= ĠCreate New Location Controller Double (), ĊĠĠĠ Ġval Ġlocale : ĠCreate Location Dialog Locale Mock Ġ= ĠCreate Location Dialog Locale Mock () Ċ ) Ġ: ĠCreate Location Dialog . Factory Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġinvoke ( onCreate Location : Ġsuspend Ġ( Create New Location . Response Model ) Ġ-> ĠUnit ): ĠCreate Location Dialog ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġon Invoke ( onCreate Location ) ĊĠĠĠĠĠĠĠ Ġreturn ĠCreate Location Dialog ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthread Transformer , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonCreate Location , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate New Location , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocale ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }