From 4d743c5e673264f665112cfffa64691fd8e69d06 Mon Sep 17 00:00:00 2001 From: Darren Clarke Date: Wed, 28 Jun 2023 12:55:24 +0000 Subject: [PATCH] App directory #4 --- .vscode/settings.json | 3 ++ apps/leafcutter/app/(main)/layout.tsx | 2 +- .../_components/Preview.tsx | 2 ++ apps/leafcutter/app/page.tsx | 9 +++--- .../_components}/AdminLogin.tsx | 2 ++ .../{components => app/_components}/Auth.tsx | 4 ++- .../DigitInput/DigitInput.module.css | 0 .../_components}/DigitInput/index.tsx | 2 ++ .../_components}/MetamigoAdmin.tsx | 6 ++-- .../app/_components/MultiProvider.tsx | 8 +++++ .../_components}/accounts/AccountEdit.tsx | 2 ++ .../_components}/accounts/AccountList.tsx | 2 ++ .../_components}/accounts/index.ts | 2 ++ .../_components}/layout/AppBar.tsx | 2 ++ .../_components}/layout/Layout.tsx | 7 ++--- .../_components}/layout/Logo.tsx | 2 ++ .../_components}/layout/Menu.tsx | 2 ++ .../_components}/layout/SubMenu.tsx | 2 ++ .../_components}/layout/index.ts | 4 ++- .../_components}/layout/themes.ts | 0 .../signal/bots/Digits.module.css | 0 .../signal/bots/SignalBotCreate.tsx | 4 ++- .../signal/bots/SignalBotEdit.tsx | 2 ++ .../signal/bots/SignalBotList.tsx | 2 ++ .../signal/bots/SignalBotShow.tsx | 4 ++- .../_components}/signal/bots/index.ts | 2 ++ .../_components}/signal/bots/shared.tsx | 2 ++ .../_components}/users/UserCreate.tsx | 2 ++ .../_components}/users/UserEdit.tsx | 2 ++ .../_components}/users/UserList.tsx | 2 ++ .../_components}/users/index.ts | 2 ++ .../_components}/users/shared.tsx | 2 ++ .../voice/providers/ProviderCreate.tsx | 2 ++ .../voice/providers/ProviderEdit.tsx | 2 ++ .../voice/providers/ProviderList.tsx | 2 ++ .../_components}/voice/providers/index.ts | 2 ++ .../_components}/voice/providers/shared.tsx | 2 ++ .../voice/voicelines/MicInput.module.css | 0 .../voice/voicelines/MicInput.tsx | 2 ++ .../voice/voicelines/VoiceLineCreate.tsx | 2 ++ .../voice/voicelines/VoiceLineEdit.tsx | 2 ++ .../voice/voicelines/VoiceLineList.tsx | 2 ++ .../_components}/voice/voicelines/index.ts | 2 ++ .../voice/voicelines/recorder.module.css | 0 .../_components}/voice/voicelines/shared.tsx | 4 ++- .../voice/voicelines/twilio-languages.ts | 0 .../_components}/webhooks/WebhookCreate.tsx | 2 ++ .../_components}/webhooks/WebhookEdit.tsx | 2 ++ .../_components}/webhooks/WebhookList.tsx | 2 ++ .../_components}/webhooks/index.ts | 2 ++ .../_components}/webhooks/shared.tsx | 2 ++ .../attachments/WhatsappAttachmentList.tsx | 2 ++ .../attachments/WhatsappAttachmentShow.tsx | 2 ++ .../whatsapp/attachments/index.ts | 2 ++ .../whatsapp/bots/WhatsappBotCreate.tsx | 4 ++- .../whatsapp/bots/WhatsappBotEdit.tsx | 2 ++ .../whatsapp/bots/WhatsappBotList.tsx | 2 ++ .../whatsapp/bots/WhatsappBotShow.tsx | 2 ++ .../_components}/whatsapp/bots/index.ts | 2 ++ .../_components}/whatsapp/bots/shared.tsx | 2 ++ .../whatsapp/messages/WhatsappMessageList.tsx | 2 ++ .../whatsapp/messages/WhatsappMessageShow.tsx | 2 ++ .../_components}/whatsapp/messages/index.ts | 2 ++ .../{i18n => app/_i18n}/en.ts | 0 .../{lib => app/_lib}/absolute-url.ts | 0 .../{lib => app/_lib}/apollo-client.ts | 0 .../{lib => app/_lib}/cloudflare.ts | 0 .../{lib => app/_lib}/dataprovider.ts | 0 .../{lib => app/_lib}/graphql-schema.json | 0 .../{lib => app/_lib}/nextauth-adapter.ts | 0 .../{lib => app/_lib}/phone-numbers.ts | 0 .../{styles => app/_styles}/Home.module.css | 0 .../{styles => app/_styles}/globals.css | 0 .../app/admin/_components/Admin.tsx | 16 ++++++++++ apps/metamigo-frontend/app/admin/page.tsx | 5 ++++ .../api/auth/[...nextauth]/route.ts} | 24 +++++++-------- .../api/graphql/[[...path]]/route.ts} | 8 +---- .../api/proxy/[[...path]]/route.js} | 8 ++--- apps/metamigo-frontend/app/layout.tsx | 20 +++++++++++++ .../login/_components/Login.tsx} | 6 ++-- apps/metamigo-frontend/app/login/page.tsx | 5 ++++ apps/metamigo-frontend/app/page.tsx | 3 ++ apps/metamigo-frontend/pages/_app.tsx | 13 --------- apps/metamigo-frontend/pages/admin.tsx | 15 ---------- apps/metamigo-frontend/pages/index.tsx | 29 ------------------- apps/metamigo-frontend/tsconfig.json | 29 +++++++++++++++---- 86 files changed, 223 insertions(+), 107 deletions(-) create mode 100644 .vscode/settings.json rename apps/metamigo-frontend/{components => app/_components}/AdminLogin.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/Auth.tsx (89%) rename apps/metamigo-frontend/{components => app/_components}/DigitInput/DigitInput.module.css (100%) rename apps/metamigo-frontend/{components => app/_components}/DigitInput/index.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/MetamigoAdmin.tsx (94%) create mode 100644 apps/metamigo-frontend/app/_components/MultiProvider.tsx rename apps/metamigo-frontend/{components => app/_components}/accounts/AccountEdit.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/accounts/AccountList.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/accounts/index.ts (95%) rename apps/metamigo-frontend/{components => app/_components}/layout/AppBar.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/layout/Layout.tsx (77%) rename apps/metamigo-frontend/{components => app/_components}/layout/Logo.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/layout/Menu.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/layout/SubMenu.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/layout/index.ts (63%) rename apps/metamigo-frontend/{components => app/_components}/layout/themes.ts (100%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/Digits.module.css (100%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/SignalBotCreate.tsx (89%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/SignalBotEdit.tsx (95%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/SignalBotList.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/SignalBotShow.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/index.ts (96%) rename apps/metamigo-frontend/{components => app/_components}/signal/bots/shared.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/users/UserCreate.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/users/UserEdit.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/users/UserList.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/users/index.ts (95%) rename apps/metamigo-frontend/{components => app/_components}/users/shared.tsx (96%) rename apps/metamigo-frontend/{components => app/_components}/voice/providers/ProviderCreate.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/voice/providers/ProviderEdit.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/voice/providers/ProviderList.tsx (96%) rename apps/metamigo-frontend/{components => app/_components}/voice/providers/index.ts (95%) rename apps/metamigo-frontend/{components => app/_components}/voice/providers/shared.tsx (93%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/MicInput.module.css (100%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/MicInput.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/VoiceLineCreate.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/VoiceLineEdit.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/VoiceLineList.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/index.ts (96%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/recorder.module.css (100%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/shared.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/voice/voicelines/twilio-languages.ts (100%) rename apps/metamigo-frontend/{components => app/_components}/webhooks/WebhookCreate.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/webhooks/WebhookEdit.tsx (98%) rename apps/metamigo-frontend/{components => app/_components}/webhooks/WebhookList.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/webhooks/index.ts (95%) rename apps/metamigo-frontend/{components => app/_components}/webhooks/shared.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/attachments/WhatsappAttachmentList.tsx (94%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/attachments/WhatsappAttachmentShow.tsx (95%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/attachments/index.ts (96%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/bots/WhatsappBotCreate.tsx (92%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/bots/WhatsappBotEdit.tsx (95%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/bots/WhatsappBotList.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/bots/WhatsappBotShow.tsx (99%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/bots/index.ts (96%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/bots/shared.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/messages/WhatsappMessageList.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/messages/WhatsappMessageShow.tsx (97%) rename apps/metamigo-frontend/{components => app/_components}/whatsapp/messages/index.ts (95%) rename apps/metamigo-frontend/{i18n => app/_i18n}/en.ts (100%) rename apps/metamigo-frontend/{lib => app/_lib}/absolute-url.ts (100%) rename apps/metamigo-frontend/{lib => app/_lib}/apollo-client.ts (100%) rename apps/metamigo-frontend/{lib => app/_lib}/cloudflare.ts (100%) rename apps/metamigo-frontend/{lib => app/_lib}/dataprovider.ts (100%) rename apps/metamigo-frontend/{lib => app/_lib}/graphql-schema.json (100%) rename apps/metamigo-frontend/{lib => app/_lib}/nextauth-adapter.ts (100%) rename apps/metamigo-frontend/{lib => app/_lib}/phone-numbers.ts (100%) rename apps/metamigo-frontend/{styles => app/_styles}/Home.module.css (100%) rename apps/metamigo-frontend/{styles => app/_styles}/globals.css (100%) create mode 100644 apps/metamigo-frontend/app/admin/_components/Admin.tsx create mode 100644 apps/metamigo-frontend/app/admin/page.tsx rename apps/metamigo-frontend/{pages/api/auth/[...nextauth].ts => app/api/auth/[...nextauth]/route.ts} (78%) rename apps/metamigo-frontend/{pages/api/graphql/[[...path]].ts => app/api/graphql/[[...path]]/route.ts} (89%) rename apps/metamigo-frontend/{pages/api/proxy/[[...path]].js => app/api/proxy/[[...path]]/route.js} (89%) create mode 100644 apps/metamigo-frontend/app/layout.tsx rename apps/metamigo-frontend/{pages/login.tsx => app/login/_components/Login.tsx} (90%) create mode 100644 apps/metamigo-frontend/app/login/page.tsx create mode 100644 apps/metamigo-frontend/app/page.tsx delete mode 100644 apps/metamigo-frontend/pages/_app.tsx delete mode 100644 apps/metamigo-frontend/pages/admin.tsx delete mode 100644 apps/metamigo-frontend/pages/index.tsx diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..4183c4a --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "prettier.prettierPath": "" +} diff --git a/apps/leafcutter/app/(main)/layout.tsx b/apps/leafcutter/app/(main)/layout.tsx index c9a7d3b..d272093 100644 --- a/apps/leafcutter/app/(main)/layout.tsx +++ b/apps/leafcutter/app/(main)/layout.tsx @@ -17,6 +17,6 @@ type LayoutProps = { export default function Layout({ children }: LayoutProps) { const allHeaders = headers(); const embedded = Boolean(allHeaders.get('x-leafcutter-embedded')); -console.log({embedded}) + return {children}; } diff --git a/apps/leafcutter/app/(main)/preview/[...visualizationID]/_components/Preview.tsx b/apps/leafcutter/app/(main)/preview/[...visualizationID]/_components/Preview.tsx index eb0eab3..88e0cad 100644 --- a/apps/leafcutter/app/(main)/preview/[...visualizationID]/_components/Preview.tsx +++ b/apps/leafcutter/app/(main)/preview/[...visualizationID]/_components/Preview.tsx @@ -1,3 +1,5 @@ +"use client"; + import { FC } from "react"; /* eslint-disable no-underscore-dangle */ import { RawDataViewer } from "@/app/_components/RawDataViewer"; diff --git a/apps/leafcutter/app/page.tsx b/apps/leafcutter/app/page.tsx index 140f4b8..dd2c45d 100644 --- a/apps/leafcutter/app/page.tsx +++ b/apps/leafcutter/app/page.tsx @@ -1,12 +1,13 @@ -import { getSession } from "next-auth/react"; +import { getServerSession } from "next-auth"; +import { authOptions } from "app/_lib/auth"; import { getUserVisualizations } from "@/app/_lib/opensearch"; import { Home } from "@/app/_components/Home"; export default async function Page() { - const context = undefined; - const session = (await getSession(context)) ?? null; + const session = await getServerSession(authOptions); + const { user: { email } }: any = session; const visualizations = await getUserVisualizations( - session?.user?.email ?? "none", + email ?? "none", 20 ); diff --git a/apps/metamigo-frontend/components/AdminLogin.tsx b/apps/metamigo-frontend/app/_components/AdminLogin.tsx similarity index 99% rename from apps/metamigo-frontend/components/AdminLogin.tsx rename to apps/metamigo-frontend/app/_components/AdminLogin.tsx index 0e05efa..7621b25 100644 --- a/apps/metamigo-frontend/components/AdminLogin.tsx +++ b/apps/metamigo-frontend/app/_components/AdminLogin.tsx @@ -1,3 +1,5 @@ +"use client"; + import { FC, useEffect } from "react"; import { CircularProgress, Typography, Grid } from "@mui/material"; import { signIn, signOut, getSession } from "next-auth/react"; diff --git a/apps/metamigo-frontend/components/Auth.tsx b/apps/metamigo-frontend/app/_components/Auth.tsx similarity index 89% rename from apps/metamigo-frontend/components/Auth.tsx rename to apps/metamigo-frontend/app/_components/Auth.tsx index 336a43e..af8cde6 100644 --- a/apps/metamigo-frontend/components/Auth.tsx +++ b/apps/metamigo-frontend/app/_components/Auth.tsx @@ -1,7 +1,9 @@ +"use client"; + import { FC, PropsWithChildren, useEffect } from "react"; import { CircularProgress } from "@mui/material"; import { useSession } from "next-auth/react"; -import { useRouter } from "next/router"; +import { useRouter } from "next/navigation"; export const Auth: FC = ({ children }) => { const router = useRouter(); diff --git a/apps/metamigo-frontend/components/DigitInput/DigitInput.module.css b/apps/metamigo-frontend/app/_components/DigitInput/DigitInput.module.css similarity index 100% rename from apps/metamigo-frontend/components/DigitInput/DigitInput.module.css rename to apps/metamigo-frontend/app/_components/DigitInput/DigitInput.module.css diff --git a/apps/metamigo-frontend/components/DigitInput/index.tsx b/apps/metamigo-frontend/app/_components/DigitInput/index.tsx similarity index 98% rename from apps/metamigo-frontend/components/DigitInput/index.tsx rename to apps/metamigo-frontend/app/_components/DigitInput/index.tsx index 8bd605a..1fe03d8 100644 --- a/apps/metamigo-frontend/components/DigitInput/index.tsx +++ b/apps/metamigo-frontend/app/_components/DigitInput/index.tsx @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable react/display-name */ import { forwardRef } from "react"; import useDigitInput, { InputAttributes } from "react-digit-input"; diff --git a/apps/metamigo-frontend/components/MetamigoAdmin.tsx b/apps/metamigo-frontend/app/_components/MetamigoAdmin.tsx similarity index 94% rename from apps/metamigo-frontend/components/MetamigoAdmin.tsx rename to apps/metamigo-frontend/app/_components/MetamigoAdmin.tsx index d04ea97..a16249b 100644 --- a/apps/metamigo-frontend/components/MetamigoAdmin.tsx +++ b/apps/metamigo-frontend/app/_components/MetamigoAdmin.tsx @@ -1,12 +1,14 @@ +"use client"; + import { FC, useEffect, useState } from "react"; import { Admin, Resource } from "react-admin"; import { useApolloClient } from "@apollo/client"; import polyglotI18nProvider from "ra-i18n-polyglot"; import { ThemeProvider, createTheme } from "@mui/material"; -import { metamigoDataProvider } from "../lib/dataprovider"; +import { metamigoDataProvider } from "../_lib/dataprovider"; import { theme } from "./layout/themes"; import { Layout } from "./layout"; -import englishMessages from "../i18n/en"; +import englishMessages from "../_i18n/en"; import users from "./users"; import accounts from "./accounts"; import whatsappBots from "./whatsapp/bots"; diff --git a/apps/metamigo-frontend/app/_components/MultiProvider.tsx b/apps/metamigo-frontend/app/_components/MultiProvider.tsx new file mode 100644 index 0000000..00aab73 --- /dev/null +++ b/apps/metamigo-frontend/app/_components/MultiProvider.tsx @@ -0,0 +1,8 @@ +"use client"; + +import { FC, PropsWithChildren } from "react"; +import { SessionProvider } from "next-auth/react"; + +export const MultiProvider: FC = ({ children }) => ( + {children} +); diff --git a/apps/metamigo-frontend/components/accounts/AccountEdit.tsx b/apps/metamigo-frontend/app/_components/accounts/AccountEdit.tsx similarity index 99% rename from apps/metamigo-frontend/components/accounts/AccountEdit.tsx rename to apps/metamigo-frontend/app/_components/accounts/AccountEdit.tsx index a05f737..0dd30e2 100644 --- a/apps/metamigo-frontend/components/accounts/AccountEdit.tsx +++ b/apps/metamigo-frontend/app/_components/accounts/AccountEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { FC } from "react"; import { makeStyles } from "@mui/styles"; import { diff --git a/apps/metamigo-frontend/components/accounts/AccountList.tsx b/apps/metamigo-frontend/app/_components/accounts/AccountList.tsx similarity index 98% rename from apps/metamigo-frontend/components/accounts/AccountList.tsx rename to apps/metamigo-frontend/app/_components/accounts/AccountList.tsx index 9bfec3c..b31d3da 100644 --- a/apps/metamigo-frontend/components/accounts/AccountList.tsx +++ b/apps/metamigo-frontend/app/_components/accounts/AccountList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { FC } from "react"; import { List, diff --git a/apps/metamigo-frontend/components/accounts/index.ts b/apps/metamigo-frontend/app/_components/accounts/index.ts similarity index 95% rename from apps/metamigo-frontend/components/accounts/index.ts rename to apps/metamigo-frontend/app/_components/accounts/index.ts index 5633b61..08615d1 100644 --- a/apps/metamigo-frontend/components/accounts/index.ts +++ b/apps/metamigo-frontend/app/_components/accounts/index.ts @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable import/no-named-as-default */ /* eslint-disable import/no-anonymous-default-export */ import AccountIcon from "@mui/icons-material/AccountTree"; diff --git a/apps/metamigo-frontend/components/layout/AppBar.tsx b/apps/metamigo-frontend/app/_components/layout/AppBar.tsx similarity index 98% rename from apps/metamigo-frontend/components/layout/AppBar.tsx rename to apps/metamigo-frontend/app/_components/layout/AppBar.tsx index 07cc0e3..34ec99b 100644 --- a/apps/metamigo-frontend/components/layout/AppBar.tsx +++ b/apps/metamigo-frontend/app/_components/layout/AppBar.tsx @@ -1,3 +1,5 @@ +"use client"; + import { forwardRef } from "react"; import { AppBar, UserMenu, MenuItemLink, useTranslate } from "react-admin"; import Typography from "@mui/material/Typography"; diff --git a/apps/metamigo-frontend/components/layout/Layout.tsx b/apps/metamigo-frontend/app/_components/layout/Layout.tsx similarity index 77% rename from apps/metamigo-frontend/components/layout/Layout.tsx rename to apps/metamigo-frontend/app/_components/layout/Layout.tsx index d940684..d48fa73 100644 --- a/apps/metamigo-frontend/components/layout/Layout.tsx +++ b/apps/metamigo-frontend/app/_components/layout/Layout.tsx @@ -1,4 +1,5 @@ -/* eslint-disable import/no-named-as-default */ +"use client"; + import { Layout as RaLayout, LayoutProps, Sidebar } from "react-admin"; import AppBar from "./AppBar"; import Menu from "./Menu"; @@ -6,7 +7,7 @@ import { theme } from "./themes"; const CustomSidebar = (props: any) => ; -const Layout = (props: LayoutProps) => ( +export const Layout = (props: LayoutProps) => ( ( theme={theme} /> ); - -export default Layout; diff --git a/apps/metamigo-frontend/components/layout/Logo.tsx b/apps/metamigo-frontend/app/_components/layout/Logo.tsx similarity index 99% rename from apps/metamigo-frontend/components/layout/Logo.tsx rename to apps/metamigo-frontend/app/_components/layout/Logo.tsx index 603f1a3..4e78d49 100644 --- a/apps/metamigo-frontend/components/layout/Logo.tsx +++ b/apps/metamigo-frontend/app/_components/layout/Logo.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SVGProps } from "react"; const Logo = (props: SVGProps) => ( diff --git a/apps/metamigo-frontend/components/layout/Menu.tsx b/apps/metamigo-frontend/app/_components/layout/Menu.tsx similarity index 99% rename from apps/metamigo-frontend/components/layout/Menu.tsx rename to apps/metamigo-frontend/app/_components/layout/Menu.tsx index 13526ca..f39d956 100644 --- a/apps/metamigo-frontend/components/layout/Menu.tsx +++ b/apps/metamigo-frontend/app/_components/layout/Menu.tsx @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable camelcase */ import { FC, useState } from "react"; // import { useSelector } from "react-redux"; diff --git a/apps/metamigo-frontend/components/layout/SubMenu.tsx b/apps/metamigo-frontend/app/_components/layout/SubMenu.tsx similarity index 99% rename from apps/metamigo-frontend/components/layout/SubMenu.tsx rename to apps/metamigo-frontend/app/_components/layout/SubMenu.tsx index f9feae7..669c549 100644 --- a/apps/metamigo-frontend/components/layout/SubMenu.tsx +++ b/apps/metamigo-frontend/app/_components/layout/SubMenu.tsx @@ -1,3 +1,5 @@ +"use client"; + import { FC, PropsWithChildren, Fragment, ReactElement } from "react"; import ExpandMore from "@mui/icons-material/ExpandMore"; import List from "@mui/material/List"; diff --git a/apps/metamigo-frontend/components/layout/index.ts b/apps/metamigo-frontend/app/_components/layout/index.ts similarity index 63% rename from apps/metamigo-frontend/components/layout/index.ts rename to apps/metamigo-frontend/app/_components/layout/index.ts index a49f09d..bdb5be0 100644 --- a/apps/metamigo-frontend/components/layout/index.ts +++ b/apps/metamigo-frontend/app/_components/layout/index.ts @@ -1,3 +1,5 @@ +"use client"; + export { default as AppBar } from "./AppBar"; -export { default as Layout } from "./Layout"; +export { Layout } from "./Layout"; export { default as Menu } from "./Menu"; diff --git a/apps/metamigo-frontend/components/layout/themes.ts b/apps/metamigo-frontend/app/_components/layout/themes.ts similarity index 100% rename from apps/metamigo-frontend/components/layout/themes.ts rename to apps/metamigo-frontend/app/_components/layout/themes.ts diff --git a/apps/metamigo-frontend/components/signal/bots/Digits.module.css b/apps/metamigo-frontend/app/_components/signal/bots/Digits.module.css similarity index 100% rename from apps/metamigo-frontend/components/signal/bots/Digits.module.css rename to apps/metamigo-frontend/app/_components/signal/bots/Digits.module.css diff --git a/apps/metamigo-frontend/components/signal/bots/SignalBotCreate.tsx b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotCreate.tsx similarity index 89% rename from apps/metamigo-frontend/components/signal/bots/SignalBotCreate.tsx rename to apps/metamigo-frontend/app/_components/signal/bots/SignalBotCreate.tsx index a1981d3..4e09fe7 100644 --- a/apps/metamigo-frontend/components/signal/bots/SignalBotCreate.tsx +++ b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotCreate.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, Create, @@ -6,7 +8,7 @@ import { CreateProps, } from "react-admin"; import { useSession } from "next-auth/react"; -import { validateE164Number } from "../../../lib/phone-numbers"; +import { validateE164Number } from "../../../_lib/phone-numbers"; const SignalBotCreate = (props: CreateProps) => { const { data: session } = useSession(); diff --git a/apps/metamigo-frontend/components/signal/bots/SignalBotEdit.tsx b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotEdit.tsx similarity index 95% rename from apps/metamigo-frontend/components/signal/bots/SignalBotEdit.tsx rename to apps/metamigo-frontend/app/_components/signal/bots/SignalBotEdit.tsx index 8ac33dd..97fed9b 100644 --- a/apps/metamigo-frontend/components/signal/bots/SignalBotEdit.tsx +++ b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, Edit, TextInput, required, EditProps } from "react-admin"; const SignalBotEdit = (props: EditProps) => ( diff --git a/apps/metamigo-frontend/components/signal/bots/SignalBotList.tsx b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotList.tsx similarity index 97% rename from apps/metamigo-frontend/components/signal/bots/SignalBotList.tsx rename to apps/metamigo-frontend/app/_components/signal/bots/SignalBotList.tsx index f7b9e19..f15148f 100644 --- a/apps/metamigo-frontend/components/signal/bots/SignalBotList.tsx +++ b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, Datagrid, diff --git a/apps/metamigo-frontend/components/signal/bots/SignalBotShow.tsx b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotShow.tsx similarity index 99% rename from apps/metamigo-frontend/components/signal/bots/SignalBotShow.tsx rename to apps/metamigo-frontend/app/_components/signal/bots/SignalBotShow.tsx index e6687b3..f5c0456 100644 --- a/apps/metamigo-frontend/components/signal/bots/SignalBotShow.tsx +++ b/apps/metamigo-frontend/app/_components/signal/bots/SignalBotShow.tsx @@ -1,3 +1,5 @@ +"use client"; + import React, { useState } from "react"; import { Show, @@ -28,7 +30,7 @@ import { SixDigitInput } from "../../DigitInput"; import { sanitizeE164Number, isValidE164Number, -} from "../../../lib/phone-numbers"; +} from "../../../_lib/phone-numbers"; const Sidebar = ({ record }: any) => { const [phoneNumber, setPhoneNumber] = useState(""); diff --git a/apps/metamigo-frontend/components/signal/bots/index.ts b/apps/metamigo-frontend/app/_components/signal/bots/index.ts similarity index 96% rename from apps/metamigo-frontend/components/signal/bots/index.ts rename to apps/metamigo-frontend/app/_components/signal/bots/index.ts index d1d5f00..85dd098 100644 --- a/apps/metamigo-frontend/components/signal/bots/index.ts +++ b/apps/metamigo-frontend/app/_components/signal/bots/index.ts @@ -1,3 +1,5 @@ +"use client"; + import SignalBotIcon from "@mui/icons-material/ChatOutlined"; import SignalBotList from "./SignalBotList"; import SignalBotEdit from "./SignalBotEdit"; diff --git a/apps/metamigo-frontend/components/signal/bots/shared.tsx b/apps/metamigo-frontend/app/_components/signal/bots/shared.tsx similarity index 97% rename from apps/metamigo-frontend/components/signal/bots/shared.tsx rename to apps/metamigo-frontend/app/_components/signal/bots/shared.tsx index ad426af..4a23b15 100644 --- a/apps/metamigo-frontend/components/signal/bots/shared.tsx +++ b/apps/metamigo-frontend/app/_components/signal/bots/shared.tsx @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable react/display-name */ import { SelectInput, diff --git a/apps/metamigo-frontend/components/users/UserCreate.tsx b/apps/metamigo-frontend/app/_components/users/UserCreate.tsx similarity index 97% rename from apps/metamigo-frontend/components/users/UserCreate.tsx rename to apps/metamigo-frontend/app/_components/users/UserCreate.tsx index 1d8e38d..00a210b 100644 --- a/apps/metamigo-frontend/components/users/UserCreate.tsx +++ b/apps/metamigo-frontend/app/_components/users/UserCreate.tsx @@ -1,3 +1,5 @@ +"use client"; + import { FC } from "react"; import { SimpleForm, diff --git a/apps/metamigo-frontend/components/users/UserEdit.tsx b/apps/metamigo-frontend/app/_components/users/UserEdit.tsx similarity index 99% rename from apps/metamigo-frontend/components/users/UserEdit.tsx rename to apps/metamigo-frontend/app/_components/users/UserEdit.tsx index d52e8ab..9b60776 100644 --- a/apps/metamigo-frontend/components/users/UserEdit.tsx +++ b/apps/metamigo-frontend/app/_components/users/UserEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { makeStyles } from "@mui/styles"; import { SimpleForm, diff --git a/apps/metamigo-frontend/components/users/UserList.tsx b/apps/metamigo-frontend/app/_components/users/UserList.tsx similarity index 97% rename from apps/metamigo-frontend/components/users/UserList.tsx rename to apps/metamigo-frontend/app/_components/users/UserList.tsx index 40d8a8d..a66ca6b 100644 --- a/apps/metamigo-frontend/components/users/UserList.tsx +++ b/apps/metamigo-frontend/app/_components/users/UserList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, Datagrid, diff --git a/apps/metamigo-frontend/components/users/index.ts b/apps/metamigo-frontend/app/_components/users/index.ts similarity index 95% rename from apps/metamigo-frontend/components/users/index.ts rename to apps/metamigo-frontend/app/_components/users/index.ts index e48dea3..37b7add 100644 --- a/apps/metamigo-frontend/components/users/index.ts +++ b/apps/metamigo-frontend/app/_components/users/index.ts @@ -1,3 +1,5 @@ +"use client"; + import UserIcon from "@mui/icons-material/People"; import UserList from "./UserList"; import UserEdit from "./UserEdit"; diff --git a/apps/metamigo-frontend/components/users/shared.tsx b/apps/metamigo-frontend/app/_components/users/shared.tsx similarity index 96% rename from apps/metamigo-frontend/components/users/shared.tsx rename to apps/metamigo-frontend/app/_components/users/shared.tsx index dabf6bd..1d841f4 100644 --- a/apps/metamigo-frontend/components/users/shared.tsx +++ b/apps/metamigo-frontend/app/_components/users/shared.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SelectInput, useRecordContext } from "react-admin"; export const UserRoleInput = (props: any) => { diff --git a/apps/metamigo-frontend/components/voice/providers/ProviderCreate.tsx b/apps/metamigo-frontend/app/_components/voice/providers/ProviderCreate.tsx similarity index 98% rename from apps/metamigo-frontend/components/voice/providers/ProviderCreate.tsx rename to apps/metamigo-frontend/app/_components/voice/providers/ProviderCreate.tsx index 19aef0c..599ad26 100644 --- a/apps/metamigo-frontend/components/voice/providers/ProviderCreate.tsx +++ b/apps/metamigo-frontend/app/_components/voice/providers/ProviderCreate.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, TextInput, diff --git a/apps/metamigo-frontend/components/voice/providers/ProviderEdit.tsx b/apps/metamigo-frontend/app/_components/voice/providers/ProviderEdit.tsx similarity index 98% rename from apps/metamigo-frontend/components/voice/providers/ProviderEdit.tsx rename to apps/metamigo-frontend/app/_components/voice/providers/ProviderEdit.tsx index 341ed6e..9cf238e 100644 --- a/apps/metamigo-frontend/components/voice/providers/ProviderEdit.tsx +++ b/apps/metamigo-frontend/app/_components/voice/providers/ProviderEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, TextInput, diff --git a/apps/metamigo-frontend/components/voice/providers/ProviderList.tsx b/apps/metamigo-frontend/app/_components/voice/providers/ProviderList.tsx similarity index 96% rename from apps/metamigo-frontend/components/voice/providers/ProviderList.tsx rename to apps/metamigo-frontend/app/_components/voice/providers/ProviderList.tsx index 00cd366..2839787 100644 --- a/apps/metamigo-frontend/components/voice/providers/ProviderList.tsx +++ b/apps/metamigo-frontend/app/_components/voice/providers/ProviderList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, Datagrid, DateField, TextField, ListProps } from "react-admin"; const ProviderList = (props: ListProps) => ( diff --git a/apps/metamigo-frontend/components/voice/providers/index.ts b/apps/metamigo-frontend/app/_components/voice/providers/index.ts similarity index 95% rename from apps/metamigo-frontend/components/voice/providers/index.ts rename to apps/metamigo-frontend/app/_components/voice/providers/index.ts index 95fbef4..3d9916f 100644 --- a/apps/metamigo-frontend/components/voice/providers/index.ts +++ b/apps/metamigo-frontend/app/_components/voice/providers/index.ts @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable import/no-anonymous-default-export */ import ProviderIcon from "@mui/icons-material/Business"; import ProviderList from "./ProviderList"; diff --git a/apps/metamigo-frontend/components/voice/providers/shared.tsx b/apps/metamigo-frontend/app/_components/voice/providers/shared.tsx similarity index 93% rename from apps/metamigo-frontend/components/voice/providers/shared.tsx rename to apps/metamigo-frontend/app/_components/voice/providers/shared.tsx index b261648..4b11221 100644 --- a/apps/metamigo-frontend/components/voice/providers/shared.tsx +++ b/apps/metamigo-frontend/app/_components/voice/providers/shared.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SelectInput } from "react-admin"; export const ProviderKindInput = (props: any) => ( diff --git a/apps/metamigo-frontend/components/voice/voicelines/MicInput.module.css b/apps/metamigo-frontend/app/_components/voice/voicelines/MicInput.module.css similarity index 100% rename from apps/metamigo-frontend/components/voice/voicelines/MicInput.module.css rename to apps/metamigo-frontend/app/_components/voice/voicelines/MicInput.module.css diff --git a/apps/metamigo-frontend/components/voice/voicelines/MicInput.tsx b/apps/metamigo-frontend/app/_components/voice/voicelines/MicInput.tsx similarity index 99% rename from apps/metamigo-frontend/components/voice/voicelines/MicInput.tsx rename to apps/metamigo-frontend/app/_components/voice/voicelines/MicInput.tsx index a933506..d7532c2 100644 --- a/apps/metamigo-frontend/components/voice/voicelines/MicInput.tsx +++ b/apps/metamigo-frontend/app/_components/voice/voicelines/MicInput.tsx @@ -1,3 +1,5 @@ +"use client"; + import { useInput } from "react-admin"; import React, { useState } from "react"; import dynamic from "next/dynamic"; diff --git a/apps/metamigo-frontend/components/voice/voicelines/VoiceLineCreate.tsx b/apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineCreate.tsx similarity index 98% rename from apps/metamigo-frontend/components/voice/voicelines/VoiceLineCreate.tsx rename to apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineCreate.tsx index 2126f36..9c4b8dd 100644 --- a/apps/metamigo-frontend/components/voice/voicelines/VoiceLineCreate.tsx +++ b/apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineCreate.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, Create, diff --git a/apps/metamigo-frontend/components/voice/voicelines/VoiceLineEdit.tsx b/apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineEdit.tsx similarity index 98% rename from apps/metamigo-frontend/components/voice/voicelines/VoiceLineEdit.tsx rename to apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineEdit.tsx index 8fce338..0223c8b 100644 --- a/apps/metamigo-frontend/components/voice/voicelines/VoiceLineEdit.tsx +++ b/apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, TextInput, diff --git a/apps/metamigo-frontend/components/voice/voicelines/VoiceLineList.tsx b/apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineList.tsx similarity index 97% rename from apps/metamigo-frontend/components/voice/voicelines/VoiceLineList.tsx rename to apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineList.tsx index 316cb01..66cbc53 100644 --- a/apps/metamigo-frontend/components/voice/voicelines/VoiceLineList.tsx +++ b/apps/metamigo-frontend/app/_components/voice/voicelines/VoiceLineList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, ListProps, diff --git a/apps/metamigo-frontend/components/voice/voicelines/index.ts b/apps/metamigo-frontend/app/_components/voice/voicelines/index.ts similarity index 96% rename from apps/metamigo-frontend/components/voice/voicelines/index.ts rename to apps/metamigo-frontend/app/_components/voice/voicelines/index.ts index f071e47..e778f97 100644 --- a/apps/metamigo-frontend/components/voice/voicelines/index.ts +++ b/apps/metamigo-frontend/app/_components/voice/voicelines/index.ts @@ -1,3 +1,5 @@ +"use client"; + import VoiceLineIcon from "@mui/icons-material/PhoneCallback"; import VoiceLineList from "./VoiceLineList"; import VoiceLineEdit from "./VoiceLineEdit"; diff --git a/apps/metamigo-frontend/components/voice/voicelines/recorder.module.css b/apps/metamigo-frontend/app/_components/voice/voicelines/recorder.module.css similarity index 100% rename from apps/metamigo-frontend/components/voice/voicelines/recorder.module.css rename to apps/metamigo-frontend/app/_components/voice/voicelines/recorder.module.css diff --git a/apps/metamigo-frontend/components/voice/voicelines/shared.tsx b/apps/metamigo-frontend/app/_components/voice/voicelines/shared.tsx similarity index 99% rename from apps/metamigo-frontend/components/voice/voicelines/shared.tsx rename to apps/metamigo-frontend/app/_components/voice/voicelines/shared.tsx index dfa5b4a..a574a6b 100644 --- a/apps/metamigo-frontend/components/voice/voicelines/shared.tsx +++ b/apps/metamigo-frontend/app/_components/voice/voicelines/shared.tsx @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable react/display-name */ import React, { useState, useEffect } from "react"; import PlayIcon from "@mui/icons-material/PlayCircleFilled"; @@ -12,7 +14,7 @@ import { TextField, } from "react-admin"; import { IconButton, CircularProgress } from "@mui/material"; -import absoluteUrl from "../../../lib/absolute-url"; +import absoluteUrl from "../../../_lib/absolute-url"; import TwilioLanguages from "./twilio-languages"; type TTSProvider = (voice: any, language: any, prompt: any) => Promise; diff --git a/apps/metamigo-frontend/components/voice/voicelines/twilio-languages.ts b/apps/metamigo-frontend/app/_components/voice/voicelines/twilio-languages.ts similarity index 100% rename from apps/metamigo-frontend/components/voice/voicelines/twilio-languages.ts rename to apps/metamigo-frontend/app/_components/voice/voicelines/twilio-languages.ts diff --git a/apps/metamigo-frontend/components/webhooks/WebhookCreate.tsx b/apps/metamigo-frontend/app/_components/webhooks/WebhookCreate.tsx similarity index 98% rename from apps/metamigo-frontend/components/webhooks/WebhookCreate.tsx rename to apps/metamigo-frontend/app/_components/webhooks/WebhookCreate.tsx index 3971b15..d525f5a 100644 --- a/apps/metamigo-frontend/components/webhooks/WebhookCreate.tsx +++ b/apps/metamigo-frontend/app/_components/webhooks/WebhookCreate.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, FormDataConsumer, diff --git a/apps/metamigo-frontend/components/webhooks/WebhookEdit.tsx b/apps/metamigo-frontend/app/_components/webhooks/WebhookEdit.tsx similarity index 98% rename from apps/metamigo-frontend/components/webhooks/WebhookEdit.tsx rename to apps/metamigo-frontend/app/_components/webhooks/WebhookEdit.tsx index 8def6a0..44818b7 100644 --- a/apps/metamigo-frontend/components/webhooks/WebhookEdit.tsx +++ b/apps/metamigo-frontend/app/_components/webhooks/WebhookEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, TextInput, diff --git a/apps/metamigo-frontend/components/webhooks/WebhookList.tsx b/apps/metamigo-frontend/app/_components/webhooks/WebhookList.tsx similarity index 97% rename from apps/metamigo-frontend/components/webhooks/WebhookList.tsx rename to apps/metamigo-frontend/app/_components/webhooks/WebhookList.tsx index f16a967..22d244e 100644 --- a/apps/metamigo-frontend/components/webhooks/WebhookList.tsx +++ b/apps/metamigo-frontend/app/_components/webhooks/WebhookList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, Datagrid, DateField, TextField, ListProps } from "react-admin"; import { BackendIdField } from "./shared"; diff --git a/apps/metamigo-frontend/components/webhooks/index.ts b/apps/metamigo-frontend/app/_components/webhooks/index.ts similarity index 95% rename from apps/metamigo-frontend/components/webhooks/index.ts rename to apps/metamigo-frontend/app/_components/webhooks/index.ts index c826691..302d3ee 100644 --- a/apps/metamigo-frontend/components/webhooks/index.ts +++ b/apps/metamigo-frontend/app/_components/webhooks/index.ts @@ -1,3 +1,5 @@ +"use client"; + import WebhookIcon from "@mui/icons-material/Send"; import WebhookList from "./WebhookList"; import WebhookEdit from "./WebhookEdit"; diff --git a/apps/metamigo-frontend/components/webhooks/shared.tsx b/apps/metamigo-frontend/app/_components/webhooks/shared.tsx similarity index 99% rename from apps/metamigo-frontend/components/webhooks/shared.tsx rename to apps/metamigo-frontend/app/_components/webhooks/shared.tsx index b0539bd..8e831be 100644 --- a/apps/metamigo-frontend/components/webhooks/shared.tsx +++ b/apps/metamigo-frontend/app/_components/webhooks/shared.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SelectInput, required } from "react-admin"; import { diff --git a/apps/metamigo-frontend/components/whatsapp/attachments/WhatsappAttachmentList.tsx b/apps/metamigo-frontend/app/_components/whatsapp/attachments/WhatsappAttachmentList.tsx similarity index 94% rename from apps/metamigo-frontend/components/whatsapp/attachments/WhatsappAttachmentList.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/attachments/WhatsappAttachmentList.tsx index cb9d047..0c61ffc 100644 --- a/apps/metamigo-frontend/components/whatsapp/attachments/WhatsappAttachmentList.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/attachments/WhatsappAttachmentList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, Datagrid, TextField } from "react-admin"; const WhatsappAttachmentList = (props: any) => ( diff --git a/apps/metamigo-frontend/components/whatsapp/attachments/WhatsappAttachmentShow.tsx b/apps/metamigo-frontend/app/_components/whatsapp/attachments/WhatsappAttachmentShow.tsx similarity index 95% rename from apps/metamigo-frontend/components/whatsapp/attachments/WhatsappAttachmentShow.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/attachments/WhatsappAttachmentShow.tsx index 670d8d9..7eeda88 100644 --- a/apps/metamigo-frontend/components/whatsapp/attachments/WhatsappAttachmentShow.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/attachments/WhatsappAttachmentShow.tsx @@ -1,3 +1,5 @@ +"use client"; + import { Show, ShowProps, SimpleShowLayout, TextField } from "react-admin"; const WhatsappAttachmentShow = (props: ShowProps) => ( diff --git a/apps/metamigo-frontend/components/whatsapp/attachments/index.ts b/apps/metamigo-frontend/app/_components/whatsapp/attachments/index.ts similarity index 96% rename from apps/metamigo-frontend/components/whatsapp/attachments/index.ts rename to apps/metamigo-frontend/app/_components/whatsapp/attachments/index.ts index 5f97734..5ee1843 100644 --- a/apps/metamigo-frontend/components/whatsapp/attachments/index.ts +++ b/apps/metamigo-frontend/app/_components/whatsapp/attachments/index.ts @@ -1,3 +1,5 @@ +"use client"; + import WhatsappAttachmentIcon from "@mui/icons-material/AttachFile"; import WhatsappAttachmentList from "./WhatsappAttachmentList"; import WhatsappAttachmentShow from "./WhatsappAttachmentShow"; diff --git a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotCreate.tsx b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotCreate.tsx similarity index 92% rename from apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotCreate.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotCreate.tsx index 37061e3..51af84c 100644 --- a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotCreate.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotCreate.tsx @@ -1,7 +1,9 @@ +"use client"; + // import dynamic from "next/dynamic"; import { SimpleForm, Create, TextInput, required } from "react-admin"; import { useSession } from "next-auth/react"; -import { validateE164Number } from "../../../lib/phone-numbers"; +import { validateE164Number } from "../../../_lib/phone-numbers"; const WhatsappBotCreate = (props: any) => { // const MuiPhoneNumber = dynamic(() => import("material-ui-phone-number"), { diff --git a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotEdit.tsx b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotEdit.tsx similarity index 95% rename from apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotEdit.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotEdit.tsx index 9297290..e2f07cc 100644 --- a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotEdit.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotEdit.tsx @@ -1,3 +1,5 @@ +"use client"; + import { SimpleForm, Edit, TextInput, required, EditProps } from "react-admin"; const WhatsappBotEdit = (props: EditProps) => ( diff --git a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotList.tsx b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotList.tsx similarity index 97% rename from apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotList.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotList.tsx index a75b250..a7a40e9 100644 --- a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotList.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, Datagrid, diff --git a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotShow.tsx b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotShow.tsx similarity index 99% rename from apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotShow.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotShow.tsx index 5ab18da..c26f54a 100644 --- a/apps/metamigo-frontend/components/whatsapp/bots/WhatsappBotShow.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/bots/WhatsappBotShow.tsx @@ -1,3 +1,5 @@ +"use client"; + import React, { useEffect, useState } from "react"; import { Card, diff --git a/apps/metamigo-frontend/components/whatsapp/bots/index.ts b/apps/metamigo-frontend/app/_components/whatsapp/bots/index.ts similarity index 96% rename from apps/metamigo-frontend/components/whatsapp/bots/index.ts rename to apps/metamigo-frontend/app/_components/whatsapp/bots/index.ts index acf105f..ef7e1c3 100644 --- a/apps/metamigo-frontend/components/whatsapp/bots/index.ts +++ b/apps/metamigo-frontend/app/_components/whatsapp/bots/index.ts @@ -1,3 +1,5 @@ +"use client"; + import WhatsappBotIcon from "@mui/icons-material/WhatsApp"; import WhatsappBotList from "./WhatsappBotList"; import WhatsappBotEdit from "./WhatsappBotEdit"; diff --git a/apps/metamigo-frontend/components/whatsapp/bots/shared.tsx b/apps/metamigo-frontend/app/_components/whatsapp/bots/shared.tsx similarity index 97% rename from apps/metamigo-frontend/components/whatsapp/bots/shared.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/bots/shared.tsx index cf68011..84bade0 100644 --- a/apps/metamigo-frontend/components/whatsapp/bots/shared.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/bots/shared.tsx @@ -1,3 +1,5 @@ +"use client"; + /* eslint-disable react/display-name */ import { SelectInput, diff --git a/apps/metamigo-frontend/components/whatsapp/messages/WhatsappMessageList.tsx b/apps/metamigo-frontend/app/_components/whatsapp/messages/WhatsappMessageList.tsx similarity index 97% rename from apps/metamigo-frontend/components/whatsapp/messages/WhatsappMessageList.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/messages/WhatsappMessageList.tsx index 3c3405b..09c45dc 100644 --- a/apps/metamigo-frontend/components/whatsapp/messages/WhatsappMessageList.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/messages/WhatsappMessageList.tsx @@ -1,3 +1,5 @@ +"use client"; + import { List, ListProps, diff --git a/apps/metamigo-frontend/components/whatsapp/messages/WhatsappMessageShow.tsx b/apps/metamigo-frontend/app/_components/whatsapp/messages/WhatsappMessageShow.tsx similarity index 97% rename from apps/metamigo-frontend/components/whatsapp/messages/WhatsappMessageShow.tsx rename to apps/metamigo-frontend/app/_components/whatsapp/messages/WhatsappMessageShow.tsx index 56f94af..c768e6e 100644 --- a/apps/metamigo-frontend/components/whatsapp/messages/WhatsappMessageShow.tsx +++ b/apps/metamigo-frontend/app/_components/whatsapp/messages/WhatsappMessageShow.tsx @@ -1,3 +1,5 @@ +"use client"; + import { Show, ShowProps, diff --git a/apps/metamigo-frontend/components/whatsapp/messages/index.ts b/apps/metamigo-frontend/app/_components/whatsapp/messages/index.ts similarity index 95% rename from apps/metamigo-frontend/components/whatsapp/messages/index.ts rename to apps/metamigo-frontend/app/_components/whatsapp/messages/index.ts index ff36493..20b93c7 100644 --- a/apps/metamigo-frontend/components/whatsapp/messages/index.ts +++ b/apps/metamigo-frontend/app/_components/whatsapp/messages/index.ts @@ -1,3 +1,5 @@ +"use client"; + import WhatsappMessageIcon from "@mui/icons-material/Message"; import WhatsappMessageList from "./WhatsappMessageList"; import WhatsappMessageShow from "./WhatsappMessageShow"; diff --git a/apps/metamigo-frontend/i18n/en.ts b/apps/metamigo-frontend/app/_i18n/en.ts similarity index 100% rename from apps/metamigo-frontend/i18n/en.ts rename to apps/metamigo-frontend/app/_i18n/en.ts diff --git a/apps/metamigo-frontend/lib/absolute-url.ts b/apps/metamigo-frontend/app/_lib/absolute-url.ts similarity index 100% rename from apps/metamigo-frontend/lib/absolute-url.ts rename to apps/metamigo-frontend/app/_lib/absolute-url.ts diff --git a/apps/metamigo-frontend/lib/apollo-client.ts b/apps/metamigo-frontend/app/_lib/apollo-client.ts similarity index 100% rename from apps/metamigo-frontend/lib/apollo-client.ts rename to apps/metamigo-frontend/app/_lib/apollo-client.ts diff --git a/apps/metamigo-frontend/lib/cloudflare.ts b/apps/metamigo-frontend/app/_lib/cloudflare.ts similarity index 100% rename from apps/metamigo-frontend/lib/cloudflare.ts rename to apps/metamigo-frontend/app/_lib/cloudflare.ts diff --git a/apps/metamigo-frontend/lib/dataprovider.ts b/apps/metamigo-frontend/app/_lib/dataprovider.ts similarity index 100% rename from apps/metamigo-frontend/lib/dataprovider.ts rename to apps/metamigo-frontend/app/_lib/dataprovider.ts diff --git a/apps/metamigo-frontend/lib/graphql-schema.json b/apps/metamigo-frontend/app/_lib/graphql-schema.json similarity index 100% rename from apps/metamigo-frontend/lib/graphql-schema.json rename to apps/metamigo-frontend/app/_lib/graphql-schema.json diff --git a/apps/metamigo-frontend/lib/nextauth-adapter.ts b/apps/metamigo-frontend/app/_lib/nextauth-adapter.ts similarity index 100% rename from apps/metamigo-frontend/lib/nextauth-adapter.ts rename to apps/metamigo-frontend/app/_lib/nextauth-adapter.ts diff --git a/apps/metamigo-frontend/lib/phone-numbers.ts b/apps/metamigo-frontend/app/_lib/phone-numbers.ts similarity index 100% rename from apps/metamigo-frontend/lib/phone-numbers.ts rename to apps/metamigo-frontend/app/_lib/phone-numbers.ts diff --git a/apps/metamigo-frontend/styles/Home.module.css b/apps/metamigo-frontend/app/_styles/Home.module.css similarity index 100% rename from apps/metamigo-frontend/styles/Home.module.css rename to apps/metamigo-frontend/app/_styles/Home.module.css diff --git a/apps/metamigo-frontend/styles/globals.css b/apps/metamigo-frontend/app/_styles/globals.css similarity index 100% rename from apps/metamigo-frontend/styles/globals.css rename to apps/metamigo-frontend/app/_styles/globals.css diff --git a/apps/metamigo-frontend/app/admin/_components/Admin.tsx b/apps/metamigo-frontend/app/admin/_components/Admin.tsx new file mode 100644 index 0000000..408db0d --- /dev/null +++ b/apps/metamigo-frontend/app/admin/_components/Admin.tsx @@ -0,0 +1,16 @@ +"use client"; + +import { FC } from "react"; +import { ApolloProvider } from "@apollo/client"; +import { apolloClient } from "app/_lib/apollo-client"; +import dynamic from "next/dynamic"; + +const MetamigoAdmin = dynamic(() => import("app/_components/MetamigoAdmin"), { + ssr: false, +}); + +export const Admin:FC = () => ( + + + + ); diff --git a/apps/metamigo-frontend/app/admin/page.tsx b/apps/metamigo-frontend/app/admin/page.tsx new file mode 100644 index 0000000..2b99960 --- /dev/null +++ b/apps/metamigo-frontend/app/admin/page.tsx @@ -0,0 +1,5 @@ +import { Admin } from "./_components/Admin"; + +export default function Home() { + return +} diff --git a/apps/metamigo-frontend/pages/api/auth/[...nextauth].ts b/apps/metamigo-frontend/app/api/auth/[...nextauth]/route.ts similarity index 78% rename from apps/metamigo-frontend/pages/api/auth/[...nextauth].ts rename to apps/metamigo-frontend/app/api/auth/[...nextauth]/route.ts index ec37bce..f1680d4 100644 --- a/apps/metamigo-frontend/pages/api/auth/[...nextauth].ts +++ b/apps/metamigo-frontend/app/api/auth/[...nextauth]/route.ts @@ -1,14 +1,14 @@ -import { NextApiRequest, NextApiResponse } from "next"; +import { NextRequest } from "next/server"; import NextAuth from "next-auth"; import Google from "next-auth/providers/google"; import GitHub from "next-auth/providers/github"; import GitLab from "next-auth/providers/gitlab"; import Cognito from "next-auth/providers/cognito"; import { loadConfig, IAppConfig } from "@digiresilience/metamigo-config"; -import { MetamigoAdapter } from "../../../lib/nextauth-adapter"; -import { CloudflareAccessProvider } from "../../../lib/cloudflare"; +import { MetamigoAdapter } from "app/_lib/nextauth-adapter"; +import { CloudflareAccessProvider } from "app/_lib/cloudflare"; -const nextAuthOptions = (config: IAppConfig, req: NextApiRequest) => { +const nextAuthOptions = (config: IAppConfig, req: NextRequest) => { const { nextAuth, cfaccess } = config; const adapter = MetamigoAdapter(config); const providers = []; @@ -16,7 +16,7 @@ const nextAuthOptions = (config: IAppConfig, req: NextApiRequest) => { const { audience, domain } = cfaccess; const cloudflareAccessEnabled = audience && domain; if (cloudflareAccessEnabled) - providers.push(CloudflareAccessProvider(audience, domain, adapter, req)); + providers.push(CloudflareAccessProvider(audience, domain, adapter, req as any)); else { if (nextAuth.google?.id) providers.push( @@ -78,11 +78,11 @@ const nextAuthOptions = (config: IAppConfig, req: NextApiRequest) => { }; }; -const nextAuth = async ( - req: NextApiRequest, - res: NextApiResponse -): Promise => - // @ts-expect-error: Type mismatch - NextAuth(req, res, nextAuthOptions(await loadConfig(), req)); +const handler = async (req: NextRequest) => { + const config = await loadConfig(); + const authOptions = nextAuthOptions(config, req); + // @ts-expect-error: non-existent property + return NextAuth(authOptions)(req); +}; -export default nextAuth; +export { handler as GET, handler as POST }; diff --git a/apps/metamigo-frontend/pages/api/graphql/[[...path]].ts b/apps/metamigo-frontend/app/api/graphql/[[...path]]/route.ts similarity index 89% rename from apps/metamigo-frontend/pages/api/graphql/[[...path]].ts rename to apps/metamigo-frontend/app/api/graphql/[[...path]]/route.ts index b2ddc6c..1225892 100644 --- a/apps/metamigo-frontend/pages/api/graphql/[[...path]].ts +++ b/apps/metamigo-frontend/app/api/graphql/[[...path]]/route.ts @@ -1,6 +1,6 @@ import { createProxyMiddleware } from "http-proxy-middleware"; -export default createProxyMiddleware({ +export const POST = createProxyMiddleware({ target: process.env.NODE_ENV === "production" ? "http://metamigo-api:3001" @@ -28,9 +28,3 @@ export default createProxyMiddleware({ } }, }); - -export const config = { - api: { - bodyParser: false, - }, -}; diff --git a/apps/metamigo-frontend/pages/api/proxy/[[...path]].js b/apps/metamigo-frontend/app/api/proxy/[[...path]]/route.js similarity index 89% rename from apps/metamigo-frontend/pages/api/proxy/[[...path]].js rename to apps/metamigo-frontend/app/api/proxy/[[...path]]/route.js index 470164b..e9820d0 100644 --- a/apps/metamigo-frontend/pages/api/proxy/[[...path]].js +++ b/apps/metamigo-frontend/app/api/proxy/[[...path]]/route.js @@ -1,6 +1,6 @@ import { createProxyMiddleware } from "http-proxy-middleware"; -export default createProxyMiddleware({ +const handler = createProxyMiddleware({ target: process.env.NODE_ENV === "production" ? "http://metamigo-api:3001" @@ -30,8 +30,4 @@ export default createProxyMiddleware({ }, }); -export const config = { - api: { - bodyParser: false, - }, -}; +export { handler as GET, handler as POST, handler as PUT, handler as DELETE}; diff --git a/apps/metamigo-frontend/app/layout.tsx b/apps/metamigo-frontend/app/layout.tsx new file mode 100644 index 0000000..539d92a --- /dev/null +++ b/apps/metamigo-frontend/app/layout.tsx @@ -0,0 +1,20 @@ +import { ReactNode } from "react"; +import "app/_styles/globals.css"; +import { MultiProvider } from "./_components/MultiProvider"; + +type LayoutProps = { + children: ReactNode; +} + +export default function Layout({ children }: LayoutProps) { + return ( + + + + {children} + + + + ); +} + diff --git a/apps/metamigo-frontend/pages/login.tsx b/apps/metamigo-frontend/app/login/_components/Login.tsx similarity index 90% rename from apps/metamigo-frontend/pages/login.tsx rename to apps/metamigo-frontend/app/login/_components/Login.tsx index bb3db39..14f6aea 100644 --- a/apps/metamigo-frontend/pages/login.tsx +++ b/apps/metamigo-frontend/app/login/_components/Login.tsx @@ -1,8 +1,10 @@ +"use client"; + import { FC } from "react"; import { Button } from "@mui/material"; import { signIn, signOut, useSession } from "next-auth/react"; -const MyComponent: FC = () => { +export const Login: FC = () => { const { data: session } = useSession(); return ( @@ -26,5 +28,3 @@ const MyComponent: FC = () => { ); }; - -export default MyComponent; diff --git a/apps/metamigo-frontend/app/login/page.tsx b/apps/metamigo-frontend/app/login/page.tsx new file mode 100644 index 0000000..7bde599 --- /dev/null +++ b/apps/metamigo-frontend/app/login/page.tsx @@ -0,0 +1,5 @@ +import { Login } from "./_components/Login"; + +export default function Page() { + return ; +} diff --git a/apps/metamigo-frontend/app/page.tsx b/apps/metamigo-frontend/app/page.tsx new file mode 100644 index 0000000..67e0859 --- /dev/null +++ b/apps/metamigo-frontend/app/page.tsx @@ -0,0 +1,3 @@ +export default function Page() { + return null; +} diff --git a/apps/metamigo-frontend/pages/_app.tsx b/apps/metamigo-frontend/pages/_app.tsx deleted file mode 100644 index d5aa97c..0000000 --- a/apps/metamigo-frontend/pages/_app.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import "../styles/globals.css"; -import { AppProps } from "next/app"; -import { SessionProvider } from "next-auth/react"; - -function MetamigoStarter({ Component, pageProps }: AppProps) { - return ( - - - - ); -} - -export default MetamigoStarter; diff --git a/apps/metamigo-frontend/pages/admin.tsx b/apps/metamigo-frontend/pages/admin.tsx deleted file mode 100644 index 4492d6e..0000000 --- a/apps/metamigo-frontend/pages/admin.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { ApolloProvider } from "@apollo/client"; -import { apolloClient } from "../lib/apollo-client"; -import dynamic from "next/dynamic"; - -const MetamigoAdmin = dynamic(() => import("../components/MetamigoAdmin"), { - ssr: false, -}); - -export default function Home() { - return ( - - - - ); -} diff --git a/apps/metamigo-frontend/pages/index.tsx b/apps/metamigo-frontend/pages/index.tsx deleted file mode 100644 index 8488d1d..0000000 --- a/apps/metamigo-frontend/pages/index.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import { NextPage } from "next"; -import { Typography, Box, Button, Grid, Link } from "@mui/material"; -import { FC, useEffect, PropsWithChildren } from "react"; -import { useRouter } from "next/router"; - -export const RedirectToAdmin: FC = ({ children }) => { - const router = useRouter(); - useEffect(() => { - router.push("/admin"); - }); - - return <>{children}; -}; - -const Home: NextPage = () => ( - - Metamigo - - - - - - - - - -); - -export default Home; diff --git a/apps/metamigo-frontend/tsconfig.json b/apps/metamigo-frontend/tsconfig.json index 34c0d52..ac093a5 100644 --- a/apps/metamigo-frontend/tsconfig.json +++ b/apps/metamigo-frontend/tsconfig.json @@ -2,7 +2,11 @@ "extends": "tsconfig-link", "compilerOptions": { "target": "es5", - "lib": ["dom", "dom.iterable", "esnext"], + "lib": [ + "dom", + "dom.iterable", + "esnext" + ], "allowJs": true, "forceConsistentCasingInFileNames": true, "noEmit": true, @@ -17,9 +21,24 @@ "strict": true, "baseUrl": ".", "paths": { - "@/*": ["./*", "../../node_modules/*"] - } + "@/*": [ + "./*", + "../../node_modules/*" + ] + }, + "plugins": [ + { + "name": "next" + } + ] }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], - "exclude": ["node_modules"] + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts" + ], + "exclude": [ + "node_modules" + ] }