import { SignUpFragment } from "./SignUpFragment";
import { SignUpFragmentXML } from "./SignUpFragmentXML";

import { LoginFragment } from "./LoginFragment";
import { LoginFragmentXML } from "./LoginFragmentXML";

import { ForgetPasswordFragment } from "./ForgetPasswordFragment";
import { ForgetPasswordFragmentXML } from "./ForgetPasswordFragmentXML";

import { ResetPasswordFragment } from "./ResetPasswordFragment";
import { ResetPasswordFragmentXML } from "./ResetPasswordFragmentXML";

import { ProfileFragment } from "./ProfileFragment";
import { ProfileFragmentXML } from "./ProfileFragmentXML";
import { ProfileBottomSheetXML } from "./ProfileBottomSheetXML";
import { SplashFragmentXML } from "./SplaxhFragmentXML";
import { SplashFragment } from "./SplashFragment";
import { ProfileEditFragment } from "./ProfileEditFragment";
import { ProfileEditFragmentXML } from "./ProfileEditFragmentXML";

export const generateAuthUI = (configuration) => {
  let copyList = [];
  if (!configuration.hasAuth) return copyList;

  //Fragments
  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/SignUpFragment.kt",
    content: SignUpFragment(configuration),
  });

  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/LoginFragment.kt",
    content: LoginFragment(configuration),
  });

  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/ForgetPasswordFragment.kt",
    content: ForgetPasswordFragment(configuration),
  });

  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/ResetPasswordFragment.kt",
    content: ResetPasswordFragment(configuration),
  });

  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/ProfileFragment.kt",
    content: ProfileFragment(configuration),
  });
  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/ProfileEditFragment.kt",
    content: ProfileEditFragment(configuration),
  });

  copyList.push({
    fileName:
      "app/src/main/java/com/" +
      configuration.name.toLowerCase() +
      "/app/ui/fragments/SplashFragment.kt",
    content: SplashFragment(configuration),
  });

  //Layouts
  copyList.push({
    fileName: "app/src/main/res/layout/fragment_login.xml",
    content: LoginFragmentXML(configuration),
  });

  copyList.push({
    fileName: "app/src/main/res/layout/fragment_forget_password.xml",
    content: ForgetPasswordFragmentXML(configuration),
  });

  copyList.push({
    fileName: "app/src/main/res/layout/fragment_reset_password.xml",
    content: ResetPasswordFragmentXML(configuration),
  });

  copyList.push({
    fileName: "app/src/main/res/layout/fragment_sign_up.xml",
    content: SignUpFragmentXML(configuration),
  });

  copyList.push({
    fileName: "app/src/main/res/layout/fragment_profile.xml",
    content: ProfileFragmentXML(configuration),
  });
  copyList.push({
    fileName: "app/src/main/res/layout/fragment_profile_edit.xml",
    content: ProfileEditFragmentXML(configuration),
  });

  copyList.push({
    fileName: "app/src/main/res/layout/bottom_update_profile.xml",
    content: ProfileBottomSheetXML(configuration),
  });

  copyList.push({
    fileName: "app/src/main/res/layout/fragment_splash.xml",
    content: SplashFragmentXML(configuration),
  });

  return copyList;
};
