diff --git a/src/app/(auth)/(routes)/sign-in/[[...sign-in]]/page.tsx b/src/app/(auth)/(routes)/sign-in/[[...sign-in]]/page.tsx
index 9fe2bb4..f4b1f94 100644
--- a/src/app/(auth)/(routes)/sign-in/[[...sign-in]]/page.tsx
+++ b/src/app/(auth)/(routes)/sign-in/[[...sign-in]]/page.tsx
@@ -1,5 +1,13 @@
-import { SignIn } from '@clerk/nextjs';
+import { NextPage } from 'next';
-export default function Page() {
- return ;
-}
+import SignIn from '@/modules/SignIn';
+
+const Page: NextPage = () => {
+ return (
+ <>
+
+ >
+ );
+};
+
+export default Page;
diff --git a/src/app/(auth)/(routes)/sign-up/[[...sign-up]]/page.tsx b/src/app/(auth)/(routes)/sign-up/[[...sign-up]]/page.tsx
index 0d02dd1..49cc58e 100644
--- a/src/app/(auth)/(routes)/sign-up/[[...sign-up]]/page.tsx
+++ b/src/app/(auth)/(routes)/sign-up/[[...sign-up]]/page.tsx
@@ -1,5 +1,13 @@
-import { SignUp } from '@clerk/nextjs';
+import { NextPage } from 'next';
-export default function Page() {
- return ;
-}
+import SignUp from '@/modules/SignUp';
+
+const Page: NextPage = () => {
+ return (
+ <>
+
+ >
+ );
+};
+
+export default Page;
diff --git a/src/app/(invite)/(routes)/invite/[inviteCode]/page.tsx b/src/app/(invite)/(routes)/invite/[inviteCode]/page.tsx
index 08b55f9..dfbf889 100644
--- a/src/app/(invite)/(routes)/invite/[inviteCode]/page.tsx
+++ b/src/app/(invite)/(routes)/invite/[inviteCode]/page.tsx
@@ -1,8 +1,6 @@
-import { redirectToSignIn } from '@clerk/nextjs/server';
-import { redirect } from 'next/navigation';
+import { NextPage } from 'next';
-import { currentProfile } from '@/common/libs/current-profile';
-import { db } from '@/common/libs/db';
+import Invite from '@/modules/Invite';
interface InviteCodePageProps {
params: {
@@ -10,52 +8,12 @@ interface InviteCodePageProps {
};
}
-const InviteCodePage = async ({ params }: InviteCodePageProps) => {
- const profile = await currentProfile();
-
- if (!profile) {
- return redirectToSignIn();
- }
-
- if (!params.inviteCode) {
- return redirect('/');
- }
-
- const existingServer = await db.server.findFirst({
- where: {
- inviteCode: params.inviteCode,
- members: {
- some: {
- profileId: profile.id,
- },
- },
- },
- });
-
- if (existingServer) {
- return redirect(`/servers/${existingServer.id}`);
- }
-
- const server = await db.server.update({
- where: {
- inviteCode: params.inviteCode,
- },
- data: {
- members: {
- create: [
- {
- profileId: profile.id,
- },
- ],
- },
- },
- });
-
- if (server) {
- return redirect(`/servers/${server.id}`);
- }
-
- return null;
+const Page: NextPage = ({ params }) => {
+ return (
+ <>
+
+ >
+ );
};
-export default InviteCodePage;
+export default Page;
diff --git a/src/modules/Channels/components/Channels.tsx b/src/modules/Channels/components/Channels.tsx
new file mode 100644
index 0000000..b155d1f
--- /dev/null
+++ b/src/modules/Channels/components/Channels.tsx
@@ -0,0 +1,7 @@
+import { SignIn as ClerkSignIn } from '@clerk/nextjs';
+
+const Channels: React.FC = () => {
+ return ;
+};
+
+export default Channels;
diff --git a/src/modules/Channels/index.ts b/src/modules/Channels/index.ts
new file mode 100644
index 0000000..7742766
--- /dev/null
+++ b/src/modules/Channels/index.ts
@@ -0,0 +1,3 @@
+import Channels from './components/Channels';
+
+export default Channels;
\ No newline at end of file
diff --git a/src/modules/Conversations/components/Conversations.tsx b/src/modules/Conversations/components/Conversations.tsx
new file mode 100644
index 0000000..c1afcc6
--- /dev/null
+++ b/src/modules/Conversations/components/Conversations.tsx
@@ -0,0 +1,7 @@
+import { SignIn as ClerkSignIn } from '@clerk/nextjs';
+
+const Conversations: React.FC = () => {
+ return ;
+};
+
+export default Conversations;
diff --git a/src/modules/Conversations/index.ts b/src/modules/Conversations/index.ts
new file mode 100644
index 0000000..beeea72
--- /dev/null
+++ b/src/modules/Conversations/index.ts
@@ -0,0 +1,3 @@
+import Conversations from './components/Conversations';
+
+export default Conversations;
\ No newline at end of file
diff --git a/src/modules/Invite/components/Invite.tsx b/src/modules/Invite/components/Invite.tsx
new file mode 100644
index 0000000..d280778
--- /dev/null
+++ b/src/modules/Invite/components/Invite.tsx
@@ -0,0 +1,59 @@
+import { redirectToSignIn } from '@clerk/nextjs/server';
+import { redirect } from 'next/navigation';
+
+import { currentProfile } from '@/common/libs/current-profile';
+import { db } from '@/common/libs/db';
+
+interface InviteProps {
+ inviteCode: string;
+}
+
+const Invite: React.FC = async ({ inviteCode }) => {
+ const profile = await currentProfile();
+
+ if (!profile) {
+ return redirectToSignIn();
+ }
+
+ if (!inviteCode) {
+ return redirect('/');
+ }
+
+ const existingServer = await db.server.findFirst({
+ where: {
+ inviteCode: inviteCode,
+ members: {
+ some: {
+ profileId: profile.id,
+ },
+ },
+ },
+ });
+
+ if (existingServer) {
+ return redirect(`/servers/${existingServer.id}`);
+ }
+
+ const server = await db.server.update({
+ where: {
+ inviteCode: inviteCode,
+ },
+ data: {
+ members: {
+ create: [
+ {
+ profileId: profile.id,
+ },
+ ],
+ },
+ },
+ });
+
+ if (server) {
+ return redirect(`/servers/${server.id}`);
+ }
+
+ return null;
+};
+
+export default Invite;
diff --git a/src/modules/Invite/index.ts b/src/modules/Invite/index.ts
new file mode 100644
index 0000000..e907a81
--- /dev/null
+++ b/src/modules/Invite/index.ts
@@ -0,0 +1,3 @@
+import Invite from './components/Invite';
+
+export default Invite;
\ No newline at end of file
diff --git a/src/modules/Servers/components/Servers.tsx b/src/modules/Servers/components/Servers.tsx
new file mode 100644
index 0000000..067d9c1
--- /dev/null
+++ b/src/modules/Servers/components/Servers.tsx
@@ -0,0 +1,7 @@
+import { SignIn as ClerkSignIn } from '@clerk/nextjs';
+
+const Servers: React.FC = () => {
+ return ;
+};
+
+export default Servers;
diff --git a/src/modules/Servers/index.ts b/src/modules/Servers/index.ts
new file mode 100644
index 0000000..46734d6
--- /dev/null
+++ b/src/modules/Servers/index.ts
@@ -0,0 +1,3 @@
+import Servers from './components/Servers';
+
+export default Servers;
\ No newline at end of file
diff --git a/src/modules/SetUp/components/SetUp.tsx b/src/modules/SetUp/components/SetUp.tsx
new file mode 100644
index 0000000..651228b
--- /dev/null
+++ b/src/modules/SetUp/components/SetUp.tsx
@@ -0,0 +1,7 @@
+import { SignIn as ClerkSignIn } from '@clerk/nextjs';
+
+const SetUp: React.FC = () => {
+ return ;
+};
+
+export default SetUp;
diff --git a/src/modules/SetUp/index.ts b/src/modules/SetUp/index.ts
new file mode 100644
index 0000000..66be2c8
--- /dev/null
+++ b/src/modules/SetUp/index.ts
@@ -0,0 +1,3 @@
+import SetUp from './components/SetUp';
+
+export default SetUp;
\ No newline at end of file
diff --git a/src/modules/SignIn/components/SignIn.tsx b/src/modules/SignIn/components/SignIn.tsx
new file mode 100644
index 0000000..17bcbf5
--- /dev/null
+++ b/src/modules/SignIn/components/SignIn.tsx
@@ -0,0 +1,7 @@
+import { SignIn as ClerkSignIn } from '@clerk/nextjs';
+
+const SignIn: React.FC = () => {
+ return ;
+};
+
+export default SignIn;
diff --git a/src/modules/SignIn/index.ts b/src/modules/SignIn/index.ts
new file mode 100644
index 0000000..0e64611
--- /dev/null
+++ b/src/modules/SignIn/index.ts
@@ -0,0 +1,3 @@
+import SignIn from './components/SignIn';
+
+export default SignIn;
\ No newline at end of file
diff --git a/src/modules/SignUp/components/SignUp.tsx b/src/modules/SignUp/components/SignUp.tsx
new file mode 100644
index 0000000..c7cc53d
--- /dev/null
+++ b/src/modules/SignUp/components/SignUp.tsx
@@ -0,0 +1,7 @@
+import { SignUp as ClerkSignUp } from '@clerk/nextjs';
+
+const SignUp: React.FC = () => {
+ return ;
+};
+
+export default SignUp;
diff --git a/src/modules/SignUp/index.ts b/src/modules/SignUp/index.ts
new file mode 100644
index 0000000..b88167d
--- /dev/null
+++ b/src/modules/SignUp/index.ts
@@ -0,0 +1,3 @@
+import SignUp from './components/SignUp';
+
+export default SignUp;