package Ġorg . h smith . jira _ api _ client . data . input . builder čĊč Ċ import Ġorg . h smith . jira _ api _ client . data . input . J ira Field Input čĊč Ċ class ĠJira Rest Field Data Factory Ġ: ĠJira Field Data Factory Ġ{ čĊĠĠĠ Ġoverride Ġfun Ġ< T ValueType Ġ: ĠAny > Ġnew Simple Field ( fieldId : ĠString , Ġvalue : ĠT ValueType ): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn ĠJira Field Input ( fieldId , Ġvalue ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġ< T ValueType Ġ: ĠAny > Ġnew Id Map Field ( fieldId : ĠString , Ġvalue : ĠT ValueType ): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn ĠJira Field Input ( fieldId , Ġbuild Map (" id ", Ġvalue )) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġ< T ValueType Ġ: ĠAny > Ġnew Key Map Field ( fieldId : ĠString , Ġvalue : ĠT ValueType ): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn ĠJira Field Input ( fieldId , Ġbuild Map (" key ", Ġvalue )) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġ< T ValueType Ġ: ĠAny > ĠnewName Map Field ( fieldId : ĠString , Ġvalue : ĠT ValueType ): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn ĠJira Field Input ( fieldId , Ġbuild Map (" name ", Ġvalue )) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġ< T ValueType Ġ: ĠAny > ĠnewValue Map Field ( fieldId : ĠString , Ġvalue : ĠT ValueType ): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn ĠJira Field Input ( fieldId , Ġbuild Map (" value ", Ġvalue )) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġnew Document Field ( fieldId : ĠString , Ġvalue : ĠString ): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġdocument Ġ= ĠHashMap < String , ĠAny >() čĊĠĠĠĠĠĠĠ Ġdocument [" type "] Ġ= Ġ" doc " čĊĠĠĠĠĠĠĠ Ġdocument [" version "] Ġ= Ġ 1 čĊčĊĠĠĠĠĠĠĠ Ġval Ġcontent Ġ= ĠHashMap < String , ĠAny >() čĊĠĠĠĠĠĠĠ Ġcontent [" type "] Ġ= Ġ" paragraph " čĊčĊĠĠĠĠĠĠĠ Ġval Ġinner Content Ġ= ĠHashMap < String , ĠAny >() čĊĠĠĠĠĠĠĠ Ġinner Content [" type "] Ġ= Ġ" text " čĊĠĠĠĠĠĠĠ Ġinner Content [" text "] Ġ= Ġvalue čĊčĊĠĠĠĠĠĠĠ Ġcontent [" content "] Ġ= ĠarrayOf ( inner Content Ġas ĠMap < String , ĠAny >) čĊĠĠĠĠĠĠĠ Ġdocument [" content "] Ġ= ĠarrayOf ( content Ġas ĠMap < String , ĠAny >) čĊčĊĠĠĠĠĠĠĠ Ġreturn ĠJira Field Input ( fieldId , Ġdocument ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġ< T ValueType Ġ: ĠAny > Ġnew Multi Value Name Field ( fieldId : ĠString , Ġvalue Set : ĠSet < T ValueType >): ĠJira Field Input Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġvalue Map Set : ĠSet < Map < String , ĠT ValueType >> Ġ= Ġvalue Set . map Ġ{ Ġvalue Ġ-> Ġbuild Map (" name ", Ġvalue ) Ġ}. toSet () čĊĠĠĠĠĠĠĠ Ġreturn Ġnew Simple Field ( fieldId , Ġvalue Map Set ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġprivate Ġfun Ġ< T ValueType Ġ: ĠAny > Ġbuild Map ( key : ĠString , Ġvalue : ĠT ValueType ): ĠMap < String , ĠT ValueType > Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġmap Of ( Pair ( key , Ġvalue )) čĊĠĠĠ Ġ} č Ċ } čĊ