package Ġother . mv vm . fragment Ċ Ċ import Ġcom . android . tools . idea . wizard . template . Module Template Data Ċ import Ġcom . android . tools . idea . wizard . template . Recipe Executor Ċ import Ġcom . android . tools . idea . wizard . template . impl . activities . common . addAll Kotlin Dependencies Ċ import Ġother . mv vm . activity . src . app _ package . mv vm Ac it ivity Kt Ċ import Ġother . mv vm . activity . src . app _ package . mv vm ViewModel Ċ import Ġother . mv vm . activity . src . res . layout . mv vm Activity Xml Ċ import Ġother . mv vm . fragment . src . app _ package . mv vm Fragment Kt Ċ import Ġother . mv vm . fragment . src . app _ package . mv vm Fragment ViewModel Ċ import Ġother . mv vm . fragment . src . res . layout . mv vm Fragment Xml ĊĊ Ċ fun ĠRecipe Executor . mv vm Fragment Recipe ( ĊĠĠĠĠĠĠĠ Ġmodule Data : ĠModule Template Data , ĊĠĠĠĠĠĠĠ Ġfragment Class : ĠString , ĊĠĠĠĠĠĠĠ Ġlayout Name : ĠString , ĊĠĠĠĠĠĠĠ ĠpackageName : ĠString Ċ ) Ġ{ ĊĠĠĠ Ġval Ġ( project Data , Ġsrc Out , Ġres Out ) Ġ= Ġmodule Data ĊĠĠĠ Ġval Ġkt Or Java Ext Ġ= Ġproject Data . language . extension ĊĠĠĠ Ġadd All Kotlin Dependencies ( module Data ) Ċ // ĠĠĠ Ġgenerate Manifest ( Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġmodule Data Ġ= Ġmodule Data , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Class Ġ= Ġ"${ fragment Class } Activity ", Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Title Ġ= Ġfragment Class , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠpackageName Ġ= ĠpackageName , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġis Launcher Ġ= Ġfalse , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġhas No ActionBar Ġ= Ġfalse , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġgenerate Activity Title Ġ= Ġtrue , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Theme Ġ= Ġfalse , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġuse Material 2 Ġ= Ġfalse Ċ // ĠĠĠ Ġ) ĊĊĠĠĠ Ġval Ġmv vm Fragment Ġ= Ġmv vm Fragment Kt ( project Data , Ġfragment Class , Ġlayout Name , ĠpackageName ) ĊĠĠĠ Ġ// Ġ ä¿ĿåŃĺ Activity ĊĠĠĠ Ġsave ( mv vm Fragment , Ġsrc Out . resolve (" ui / fragment /${ fragment Class } Fragment .${ kt Or Java Ext } ")) ĊĠĠĠ Ġ// Ġ ä¿ĿåŃĺ xml ĊĠĠĠ Ġsave ( mv vm Fragment Xml ( packageName , Ġfragment Class ), Ġres Out . resolve (" layout /${ layout Name }. xml ")) ĊĠĠĠ Ġ// Ġ ä¿ĿåŃĺ view model ĊĠĠĠ Ġsave ( mv vm Fragment ViewModel ( packageName , Ġfragment Class ), Ġsrc Out . resolve (" view model / state / Fragment ${ fragment Class } ViewModel .${ kt Or Java Ext } ")) Ċ }