package Ġio . horizontal systems . bank wallet . modules . nft . collection . events Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġio . horizontal systems . bank wallet . core . App Ċ import Ġio . horizontal systems . bank wallet . modules . balance . Balance X Rate Repository Ċ import Ġio . horizontal systems . bank wallet . modules . hs nft . Hs N ft Api Provider Ċ import Ġio . horizontal systems . bank wallet . modules . nft . EventType Ċ import Ġio . horizontal systems . bank wallet . ui . compose . Select Ċ Ċ class ĠN ft Collection Events Module Ġ{ ĊĊĠĠĠ Ġclass ĠFactory ( private Ġval Ġcollection Uid : ĠString ) Ġ: ĠViewModel Provider . Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠViewModel > Ġcreate ( model Class : ĠClass < T >): ĠT Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġservice Ġ= ĠN ft Collection Events Service ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcollection Uid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠH s N ft Api Provider (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApp . nft Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBalance X Rate Repository ( App . currency Manager , ĠApp . market Kit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠN ft Collection Events ViewModel ( service ) Ġas ĠT ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ data Ġclass ĠView Item ( ĊĠĠĠ Ġval ĠeventType Select : ĠSelect < EventType >, ĊĠĠĠ Ġval Ġevents : ĠList < Collection Event > Ċ ) Ċ Ċ sealed Ġclass ĠSelector Dialog State Ġ{ ĊĠĠĠ Ġobject ĠClosed Ġ: ĠSelector Dialog State () ĊĠĠĠ Ġclass ĠOpen ed ( val Ġselect : ĠSelect < EventType >) Ġ: ĠSelector Dialog State () Ċ } Ċ