package Ġcom . peer bridge . android . ui . component Ċ Ċ import Ġandroidx . compose . foundation . background Ċ import Ġandroidx . compose . foundation . layout .* Ċ import Ġandroidx . compose . foundation . shape . Rounded Corner Shape Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . material . Surface Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . key Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . draw . clip Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Parameter Ċ import Ġandroidx . compose . ui . unit . Dp Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġcom . peer bridge . android . crypto . md 5 Ċ import Ġcom . peer bridge . android . data . Sample PublicKey Provider Ċ import Ġcom . peer bridge . android . ui . theme . Peer Bridge Theme Ċ import Ġcom . peer bridge . android . ui . theme . Blue 5 0 0 Ċ import Ġcom . peer bridge . android . ui . theme . The med Preview Parameter Provider Ċ Ċ @ Composable Ċ fun ĠAvatar ( publicKey Hex : ĠString , Ġmodifier : ĠModifier Ġ= ĠModifier , Ġsize : ĠD p Ġ= Ġ 3 2 . dp ) Ġ{ ĊĠĠĠ Ġval Ġgrid Ġ= ĠpublicKey Hex . md 5 . as U ByteArray (). map Ġ{ Ġit . toInt () Ġ/ Ġ 2 5 5 f Ġ}. chunk ed ( 4 ) Ġ// Ġ 4 x 4 ĠGrid ĊĊĠĠĠ ĠColumn ( modifier Ġ= Ġmodifier ) Ġ{ ĊĠĠĠĠĠĠĠ Ġgrid . forEach Indexed Ġ{ ĠrowIndex , Ġrow Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkey ( rowIndex ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRow ( modifier Ġ= ĠModifier . padding ( all Ġ= Ġ 1 . dp )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ(( cell Index , Ġcell ) Ġin Ġrow . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkey ( cell Index ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcolor Ġ= ĠBlue 5 0 0 . copy ( alpha Ġ= Ġcell ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġshape Ġ= ĠRo unded Corner Shape ( 2 . 5 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBox ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( all Ġ= Ġ 1 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. size ( size / 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. clip ( shape ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠAvatar Preview (@ Preview Parameter ( Sample PublicKey Provider :: class ) Ġparams : ĠPair < String , ĠBoolean >) Ġ{ ĊĠĠĠ Ġval Ġ( publicKey Hex , Ġis Dark Theme ) Ġ= Ġparams ĊĠĠĠ ĠPeer Bridge Theme ( dark Theme Ġ= Ġis Dark Theme ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSurface ( color Ġ= ĠMaterial Theme . colors . background ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAvatar ( publicKey Hex ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ