/* Ċ Ġ* ĠCopyright Ġ 2 0 2 2 ĠV ital iy ĠZ ar ub in Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġcom . key gen qt . viewer . android . features . other . ui . screens . signIn Ċ Ċ import Ġandroid . content . res . Configuration Ċ import Ġandroidx . compose . foundation . layout . Column Ċ import Ġandroidx . compose . foundation . text . Keyboard Actions Ċ import Ġandroidx . compose . material 3 . Material Theme Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Experimental Compose Ui Api Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġandroidx . compose . ui . text . input . I me Action Ċ import Ġandroidx . compose . ui . text . input . Keyboard Type Ċ import Ġandroidx . compose . ui . tool ing . preview . Devices Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġcom . key gen qt . forms . base . FormField State Ċ import Ġcom . key gen qt . forms . base . Form Fields State Ċ import Ġcom . key gen qt . forms . fields . FormField Ċ import Ġcom . key gen qt . viewer . android . R Ċ import Ġcom . key gen qt . viewer . android . extensions . Animated Nav Graph State Ċ import Ġcom . key gen qt . viewer . android . extensions . La unched Effect Animation Ċ import Ġcom . key gen qt . viewer . android . extensions . textField Colors Ċ import Ġcom . key gen qt . viewer . android . features . other . ui . forms . SignIn Fields Form . SignIn Nick name Ċ import Ġcom . key gen qt . viewer . android . theme . App Theme Ċ Ċ /** Ċ Ġ* ĠForm Ġpage Ġ[ SignIn Body ] Ċ Ġ* Ċ Ġ* Ġ@ param Ġloading Ġstate Ġcall Ġquery Ġto Ġapi Ċ Ġ* Ġ@ param Ġsubmit Click Ġsubmit Ċ Ġ*/ Ċ @ Opt In ( Experimental Compose Ui Api :: class ) Ċ @ Composable Ċ fun ĠSign In Form ( ĊĠĠĠ Ġform Fields : ĠForm Fields State , ĊĠĠĠ Ġloading : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġsubmit Click : Ġ() Ġ-> ĠUnit Ġ= Ġ{}, Ċ ) Ġ{ ĊĠĠĠ ĠColumn Ġ{ ĊĊĠĠĠĠĠĠĠ ĠForm Field ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ= Ġstring Resource ( id Ġ= ĠR . string . sign _ in _ form _ nickname ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġenabled Ġ= Ġ! loading , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ= Ġform Fields . get ( SignIn Nick name ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ ime Action Ġ= ĠI me Action . Done , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkeyboard Type Ġ= ĠKeyboard Type . Text , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkeyboard Actions Ġ= ĠKeyboard Actions ( on Done Ġ= Ġ{ Ġsubmit Click . invoke () Ġ}), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolors Ġ= ĠMaterial Theme . textField Colors () ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠLa unched Effect Animation Ġ{ Ġstate Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( state Ġ== ĠAnimated Nav Graph State . END ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġform Fields . get ( SignIn Nick name ). request Focus () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Preview ( ui Mode Ġ= ĠConfiguration . UI _ MODE _ N IGHT _ NO , Ġdevice Ġ= ĠDevices . PIXEL _ 4 ) Ċ @ Preview ( ui Mode Ġ= ĠConfiguration . UI _ MODE _ N IGHT _ YES , Ġdevice Ġ= ĠDevices . PIXEL _ 4 ) Ċ @ Composable Ċ private Ġfun ĠPreview () Ġ{ ĊĠĠĠ ĠApp Theme Ġ{ ĊĠĠĠĠĠĠĠ ĠSign In Form ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠForm Fields State (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd ( SignIn Nick name , ĠForm Field State ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ