nicoalbanese / kirimase

Build full-stack Next.js apps, incredibly fast
https://kirimase.dev
MIT License
2.55k stars 116 forks source link

SignIn component added by `kirimase init` even when nextauth wasn't selected #12

Closed beaumccartney closed 1 year ago

beaumccartney commented 1 year ago

Repro:

"use client";
import { useSession, signIn, signOut } from "next-auth/react";
import { Button } from "../ui/button";

export default function SignIn() {
  const { data: session, status } = useSession();

  if (status === "loading") return <div>Loading...</div>;

  if (session) {
    return (
      <>
        Signed in as {session.user?.email} <br />
        <Button variant={"destructive"} onClick={() => signOut()}>Sign out</Button>
      </>
    );
  }
  return (
    <>
      Not signed in <br />
      <Button onClick={() => signIn()}>Sign in</Button>
    </>
  );
}
beaumccartney commented 1 year ago

another odd quirk, when I then run kirimase add and select nextauth, it removes the Button component from SignIn.tsx and uses a normal button. Diff below:

diff --git a/src/components/auth/SignIn.tsx b/src/components/auth/SignIn.tsx
index 20dcdef..22fdc18 100644
--- a/src/components/auth/SignIn.tsx
+++ b/src/components/auth/SignIn.tsx
@@ -1,6 +1,5 @@
 "use client";
 import { useSession, signIn, signOut } from "next-auth/react";
-import { Button } from "../ui/button";

 export default function SignIn() {
   const { data: session, status } = useSession();
@@ -11,14 +10,14 @@ export default function SignIn() {
     return (
       <>
         Signed in as {session.user?.email} <br />
-        <Button variant={"destructive"} onClick={() => signOut()}>Sign out</Button>
+        <button onClick={() => signOut()}>Sign out</button>
       </>
     );
   }
   return (
     <>
       Not signed in <br />
-      <Button onClick={() => signIn()}>Sign in</Button>
+      <button onClick={() => signIn()}>Sign in</button>
     </>
   );
-}
\ No newline at end of file
+}
nicoalbanese commented 1 year ago

Hey - thanks for flagging! Have fixed and will be fixed with the next update to npm (within next day or so). Cheers!