import Ġkotlinx . html . js . onClick Function Ċ import Ġreact .* Ċ import Ġreact . dom . p ĊĊ Ċ external Ġinterface ĠVideo List Props : ĠR Props Ġ{ ĊĠĠĠ Ġvar Ġvideos : ĠList < Video > Ċ } Ċ Ċ external Ġinterface ĠVideo List State : ĠR State Ġ{ ĊĠĠĠ Ġvar Ġselected Video : ĠVideo ? Ċ } Ċ Ċ @ Js Export Ċ @ Experimental Js Export Ċ class ĠVideo List : ĠR Component < Video List Props , ĠVideo List State >() Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠR Builder . render () Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( video Ġin Ġprops . videos ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= Ġvideo . id . toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġattrs Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Function Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsetState Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Video Ġ= Ġif Ġ( state . selected Video Ġ== Ġvideo ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvideo ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( video Ġ== Ġstate . selected Video ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+" âĸ ¶ Ġ" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+" ${ video . speaker }: Ġ${ video . title }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠR Builder . video List ( handler : ĠVideo List Props . () Ġ-> ĠUnit ): ĠReact Element Ġ{ ĊĠĠĠ Ġreturn Ġchild ( Video List :: class ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . attrs ( handler ) ĊĠĠĠ Ġ} Ċ }