diff --git a/apps/web/app/FormbricksClient.tsx b/apps/web/app/(app)/FormbricksClient.tsx similarity index 75% rename from apps/web/app/FormbricksClient.tsx rename to apps/web/app/(app)/FormbricksClient.tsx index 50a77d4414..85ffe17554 100644 --- a/apps/web/app/FormbricksClient.tsx +++ b/apps/web/app/(app)/FormbricksClient.tsx @@ -5,14 +5,6 @@ import { formbricksEnabled } from "@/lib/formbricks"; import formbricks from "@formbricks/js"; import { useEffect } from "react"; -/* if (typeof window !== "undefined" && formbricksEnabled) { - formbricks.init({ - environmentId: env.NEXT_PUBLIC_FORMBRICKS_ENVIRONMENT_ID || "", - apiHost: env.NEXT_PUBLIC_FORMBRICKS_API_HOST || "", - debug: true, - }); -} */ - export default function FormbricksClient({ session }) { useEffect(() => { if (formbricksEnabled && session.user && formbricks) { diff --git a/apps/web/app/environments/[environmentId]/PosthogIdentify.tsx b/apps/web/app/(app)/PosthogIdentify.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/PosthogIdentify.tsx rename to apps/web/app/(app)/PosthogIdentify.tsx diff --git a/apps/web/app/billing-confirmation/ConfirmationPage.tsx b/apps/web/app/(app)/billing-confirmation/ConfirmationPage.tsx similarity index 100% rename from apps/web/app/billing-confirmation/ConfirmationPage.tsx rename to apps/web/app/(app)/billing-confirmation/ConfirmationPage.tsx diff --git a/apps/web/app/billing-confirmation/page.tsx b/apps/web/app/(app)/billing-confirmation/page.tsx similarity index 100% rename from apps/web/app/billing-confirmation/page.tsx rename to apps/web/app/(app)/billing-confirmation/page.tsx diff --git a/apps/web/app/environments/[environmentId]/AddProductModal.tsx b/apps/web/app/(app)/environments/[environmentId]/AddProductModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/AddProductModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/AddProductModal.tsx diff --git a/apps/web/app/environments/[environmentId]/EnvironmentsNavbar.tsx b/apps/web/app/(app)/environments/[environmentId]/EnvironmentsNavbar.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/EnvironmentsNavbar.tsx rename to apps/web/app/(app)/environments/[environmentId]/EnvironmentsNavbar.tsx diff --git a/apps/web/app/environments/[environmentId]/ResponseFilterContext.tsx b/apps/web/app/(app)/environments/[environmentId]/ResponseFilterContext.tsx similarity index 92% rename from apps/web/app/environments/[environmentId]/ResponseFilterContext.tsx rename to apps/web/app/(app)/environments/[environmentId]/ResponseFilterContext.tsx index 37e01ca447..9fcdbd7bf9 100644 --- a/apps/web/app/environments/[environmentId]/ResponseFilterContext.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/ResponseFilterContext.tsx @@ -3,8 +3,8 @@ import { QuestionOption, QuestionOptions, -} from "@/app/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox"; -import { QuestionFilterOptions } from "@/app/environments/[environmentId]/surveys/[surveyId]/ResponseFilter"; +} from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox"; +import { QuestionFilterOptions } from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/ResponseFilter"; import { getTodayDate } from "@/lib/surveys/surveys"; import { createContext, useContext, useState } from "react"; diff --git a/apps/web/app/environments/[environmentId]/actions.ts b/apps/web/app/(app)/environments/[environmentId]/actions.ts similarity index 100% rename from apps/web/app/environments/[environmentId]/actions.ts rename to apps/web/app/(app)/environments/[environmentId]/actions.ts diff --git a/apps/web/app/environments/[environmentId]/attributes/AttributeActivityTab.tsx b/apps/web/app/(app)/environments/[environmentId]/attributes/AttributeActivityTab.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/attributes/AttributeActivityTab.tsx rename to apps/web/app/(app)/environments/[environmentId]/attributes/AttributeActivityTab.tsx diff --git a/apps/web/app/environments/[environmentId]/attributes/AttributeClassesList.tsx b/apps/web/app/(app)/environments/[environmentId]/attributes/AttributeClassesList.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/attributes/AttributeClassesList.tsx rename to apps/web/app/(app)/environments/[environmentId]/attributes/AttributeClassesList.tsx diff --git a/apps/web/app/environments/[environmentId]/attributes/AttributeDetailModal.tsx b/apps/web/app/(app)/environments/[environmentId]/attributes/AttributeDetailModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/attributes/AttributeDetailModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/attributes/AttributeDetailModal.tsx diff --git a/apps/web/app/environments/[environmentId]/attributes/AttributeSettingsTab.tsx b/apps/web/app/(app)/environments/[environmentId]/attributes/AttributeSettingsTab.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/attributes/AttributeSettingsTab.tsx rename to apps/web/app/(app)/environments/[environmentId]/attributes/AttributeSettingsTab.tsx diff --git a/apps/web/app/environments/[environmentId]/attributes/UploadAttributesModal.tsx b/apps/web/app/(app)/environments/[environmentId]/attributes/UploadAttributesModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/attributes/UploadAttributesModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/attributes/UploadAttributesModal.tsx diff --git a/apps/web/app/environments/[environmentId]/attributes/page.tsx b/apps/web/app/(app)/environments/[environmentId]/attributes/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/attributes/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/attributes/page.tsx diff --git a/apps/web/app/environments/[environmentId]/events/AddNoCodeEventModal.tsx b/apps/web/app/(app)/environments/[environmentId]/events/AddNoCodeEventModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/events/AddNoCodeEventModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/events/AddNoCodeEventModal.tsx diff --git a/apps/web/app/environments/[environmentId]/events/EventActivityTab.tsx b/apps/web/app/(app)/environments/[environmentId]/events/EventActivityTab.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/events/EventActivityTab.tsx rename to apps/web/app/(app)/environments/[environmentId]/events/EventActivityTab.tsx diff --git a/apps/web/app/environments/[environmentId]/events/EventClassesList.tsx b/apps/web/app/(app)/environments/[environmentId]/events/EventClassesList.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/events/EventClassesList.tsx rename to apps/web/app/(app)/environments/[environmentId]/events/EventClassesList.tsx diff --git a/apps/web/app/environments/[environmentId]/events/EventDetailModal.tsx b/apps/web/app/(app)/environments/[environmentId]/events/EventDetailModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/events/EventDetailModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/events/EventDetailModal.tsx diff --git a/apps/web/app/environments/[environmentId]/events/EventSettingsTab.tsx b/apps/web/app/(app)/environments/[environmentId]/events/EventSettingsTab.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/events/EventSettingsTab.tsx rename to apps/web/app/(app)/environments/[environmentId]/events/EventSettingsTab.tsx diff --git a/apps/web/app/environments/[environmentId]/events/page.tsx b/apps/web/app/(app)/environments/[environmentId]/events/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/events/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/events/page.tsx diff --git a/apps/web/app/environments/[environmentId]/events/testURLmatch.ts b/apps/web/app/(app)/environments/[environmentId]/events/testURLmatch.ts similarity index 100% rename from apps/web/app/environments/[environmentId]/events/testURLmatch.ts rename to apps/web/app/(app)/environments/[environmentId]/events/testURLmatch.ts diff --git a/apps/web/app/environments/[environmentId]/groups/page.tsx b/apps/web/app/(app)/environments/[environmentId]/groups/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/groups/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/groups/page.tsx diff --git a/apps/web/app/environments/[environmentId]/integrations/DocsSidebar.tsx b/apps/web/app/(app)/environments/[environmentId]/integrations/DocsSidebar.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/integrations/DocsSidebar.tsx rename to apps/web/app/(app)/environments/[environmentId]/integrations/DocsSidebar.tsx diff --git a/apps/web/app/environments/[environmentId]/integrations/IntegrationsPageTitle.tsx b/apps/web/app/(app)/environments/[environmentId]/integrations/IntegrationsPageTitle.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/integrations/IntegrationsPageTitle.tsx rename to apps/web/app/(app)/environments/[environmentId]/integrations/IntegrationsPageTitle.tsx diff --git a/apps/web/app/environments/[environmentId]/integrations/layout.tsx b/apps/web/app/(app)/environments/[environmentId]/integrations/layout.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/integrations/layout.tsx rename to apps/web/app/(app)/environments/[environmentId]/integrations/layout.tsx diff --git a/apps/web/app/environments/[environmentId]/integrations/page.tsx b/apps/web/app/(app)/environments/[environmentId]/integrations/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/integrations/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/integrations/page.tsx diff --git a/apps/web/app/environments/[environmentId]/layout.tsx b/apps/web/app/(app)/environments/[environmentId]/layout.tsx similarity index 63% rename from apps/web/app/environments/[environmentId]/layout.tsx rename to apps/web/app/(app)/environments/[environmentId]/layout.tsx index 5fad307eb2..20023c3c94 100644 --- a/apps/web/app/environments/[environmentId]/layout.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/layout.tsx @@ -1,12 +1,10 @@ -import EnvironmentsNavbar from "@/app/environments/[environmentId]/EnvironmentsNavbar"; +import EnvironmentsNavbar from "@/app/(app)/environments/[environmentId]/EnvironmentsNavbar"; import ToasterClient from "@/components/ToasterClient"; import { getServerSession } from "next-auth"; import { redirect } from "next/navigation"; import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; -import PosthogIdentify from "./PosthogIdentify"; import FormbricksClient from "../../FormbricksClient"; -import { PosthogClientWrapper } from "../../PosthogClientWrapper"; -import { ResponseFilterProvider } from "@/app/environments/[environmentId]/ResponseFilterContext"; +import { ResponseFilterProvider } from "@/app/(app)/environments/[environmentId]/ResponseFilterContext"; import { hasUserEnvironmentAccess } from "@/lib/api/apiHelper"; export default async function EnvironmentLayout({ children, params }) { @@ -22,16 +20,13 @@ export default async function EnvironmentLayout({ children, params }) { return ( <> - - -
- {children} -
-
- +
+ {children} +
+
); diff --git a/apps/web/app/environments/[environmentId]/page.tsx b/apps/web/app/(app)/environments/[environmentId]/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/page.tsx diff --git a/apps/web/app/environments/[environmentId]/people/[personId]/ActivityFeed.tsx b/apps/web/app/(app)/environments/[environmentId]/people/[personId]/ActivityFeed.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/[personId]/ActivityFeed.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/[personId]/ActivityFeed.tsx diff --git a/apps/web/app/environments/[environmentId]/people/[personId]/ActivityItemComponents.tsx b/apps/web/app/(app)/environments/[environmentId]/people/[personId]/ActivityItemComponents.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/[personId]/ActivityItemComponents.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/[personId]/ActivityItemComponents.tsx diff --git a/apps/web/app/environments/[environmentId]/people/[personId]/PersonDetails.tsx b/apps/web/app/(app)/environments/[environmentId]/people/[personId]/PersonDetails.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/[personId]/PersonDetails.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/[personId]/PersonDetails.tsx diff --git a/apps/web/app/environments/[environmentId]/people/[personId]/ResponsesFeed.tsx b/apps/web/app/(app)/environments/[environmentId]/people/[personId]/ResponsesFeed.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/[personId]/ResponsesFeed.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/[personId]/ResponsesFeed.tsx diff --git a/apps/web/app/environments/[environmentId]/people/[personId]/page.tsx b/apps/web/app/(app)/environments/[environmentId]/people/[personId]/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/[personId]/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/[personId]/page.tsx diff --git a/apps/web/app/environments/[environmentId]/people/layout.tsx b/apps/web/app/(app)/environments/[environmentId]/people/layout.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/layout.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/layout.tsx diff --git a/apps/web/app/environments/[environmentId]/people/loading.tsx b/apps/web/app/(app)/environments/[environmentId]/people/loading.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/loading.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/loading.tsx diff --git a/apps/web/app/environments/[environmentId]/people/page.tsx b/apps/web/app/(app)/environments/[environmentId]/people/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/people/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/people/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/SettingsCard.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/SettingsCard.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/SettingsCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/SettingsCard.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/SettingsNavbar.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/SettingsNavbar.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/SettingsNavbar.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/SettingsNavbar.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/SettingsTitle.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/SettingsTitle.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/SettingsTitle.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/SettingsTitle.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/api-keys/AddApiKeyModal.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/api-keys/AddApiKeyModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/api-keys/AddApiKeyModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/api-keys/AddApiKeyModal.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/api-keys/ApiKeyList.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/api-keys/ApiKeyList.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/api-keys/ApiKeyList.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/api-keys/ApiKeyList.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/api-keys/EditApiKeys.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/api-keys/EditApiKeys.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/api-keys/EditApiKeys.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/api-keys/EditApiKeys.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/api-keys/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/api-keys/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/api-keys/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/api-keys/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/billing/PricingTable.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/billing/PricingTable.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/billing/PricingTable.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/billing/PricingTable.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/billing/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/billing/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/billing/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/billing/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/layout.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/layout.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/layout.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/layout.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/lookandfeel/editLookAndFeel.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/editLookAndFeel.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/lookandfeel/editLookAndFeel.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/editLookAndFeel.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/lookandfeel/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/lookandfeel/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/members/AddMemberModal.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/members/AddMemberModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/members/AddMemberModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/members/AddMemberModal.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/members/EditMemberships.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/members/EditMemberships.tsx similarity index 99% rename from apps/web/app/environments/[environmentId]/settings/members/EditMemberships.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/members/EditMemberships.tsx index 1a8405c4e2..562a9426c1 100644 --- a/apps/web/app/environments/[environmentId]/settings/members/EditMemberships.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/members/EditMemberships.tsx @@ -1,6 +1,6 @@ "use client"; -import ShareInviteModal from "@/app/environments/[environmentId]/settings/members/ShareInviteModal"; +import ShareInviteModal from "@/app/(app)/environments/[environmentId]/settings/members/ShareInviteModal"; import DeleteDialog from "@/components/shared/DeleteDialog"; import LoadingSpinner from "@/components/shared/LoadingSpinner"; import CreateTeamModal from "@/components/team/CreateTeamModal"; diff --git a/apps/web/app/environments/[environmentId]/settings/members/EditTeamName.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/members/EditTeamName.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/members/EditTeamName.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/members/EditTeamName.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/members/ShareInviteModal.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/members/ShareInviteModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/members/ShareInviteModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/members/ShareInviteModal.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/members/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/members/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/members/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/members/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/notifications/EditAlerts.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/EditAlerts.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/notifications/EditAlerts.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/notifications/EditAlerts.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/notifications/EditWeeklySummary.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/EditWeeklySummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/notifications/EditWeeklySummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/notifications/EditWeeklySummary.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/notifications/NotificationSwitch.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/NotificationSwitch.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/notifications/NotificationSwitch.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/notifications/NotificationSwitch.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/notifications/actions.ts b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/actions.ts similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/notifications/actions.ts rename to apps/web/app/(app)/environments/[environmentId]/settings/notifications/actions.ts diff --git a/apps/web/app/environments/[environmentId]/settings/notifications/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/page.tsx similarity index 97% rename from apps/web/app/environments/[environmentId]/settings/notifications/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/notifications/page.tsx index 9cf2499322..cc75c2b8c4 100644 --- a/apps/web/app/environments/[environmentId]/settings/notifications/page.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/page.tsx @@ -1,5 +1,5 @@ import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; -import SettingsCard from "@/app/environments/[environmentId]/settings/SettingsCard"; +import SettingsCard from "@/app/(app)/environments/[environmentId]/settings/SettingsCard"; import { prisma } from "@formbricks/database"; import { NotificationSettings } from "@formbricks/types/users"; import { getServerSession } from "next-auth"; diff --git a/apps/web/app/environments/[environmentId]/settings/notifications/types.ts b/apps/web/app/(app)/environments/[environmentId]/settings/notifications/types.ts similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/notifications/types.ts rename to apps/web/app/(app)/environments/[environmentId]/settings/notifications/types.ts diff --git a/apps/web/app/environments/[environmentId]/settings/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/product/editProduct.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/product/editProduct.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/product/editProduct.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/product/editProduct.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/product/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/product/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/product/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/product/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/profile/editProfile.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/profile/editProfile.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/profile/editProfile.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/profile/editProfile.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/profile/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/profile/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/profile/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/profile/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/setup/EnvironmentNotice.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/setup/EnvironmentNotice.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/setup/EnvironmentNotice.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/setup/EnvironmentNotice.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/setup/SetupInstructions.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/setup/SetupInstructions.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/setup/SetupInstructions.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/setup/SetupInstructions.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/setup/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/setup/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/setup/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/setup/page.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/tags/EditTagsWrapper.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/tags/EditTagsWrapper.tsx similarity index 98% rename from apps/web/app/environments/[environmentId]/settings/tags/EditTagsWrapper.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/tags/EditTagsWrapper.tsx index e9d6818c82..03d6ec264d 100644 --- a/apps/web/app/environments/[environmentId]/settings/tags/EditTagsWrapper.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/tags/EditTagsWrapper.tsx @@ -1,6 +1,6 @@ "use client"; -import MergeTagsCombobox from "@/app/environments/[environmentId]/settings/tags/MergeTagsCombobox"; +import MergeTagsCombobox from "@/app/(app)/environments/[environmentId]/settings/tags/MergeTagsCombobox"; import EmptySpaceFiller from "@/components/shared/EmptySpaceFiller"; import LoadingSpinner from "@/components/shared/LoadingSpinner"; import { useDeleteTag, useMergeTags, useUpdateTag } from "@/lib/tags/mutateTags"; diff --git a/apps/web/app/environments/[environmentId]/settings/tags/MergeTagsCombobox.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/tags/MergeTagsCombobox.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/tags/MergeTagsCombobox.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/tags/MergeTagsCombobox.tsx diff --git a/apps/web/app/environments/[environmentId]/settings/tags/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/tags/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/settings/tags/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/settings/tags/page.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/PreviewSurvey.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/PreviewSurvey.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/PreviewSurvey.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/PreviewSurvey.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/SurveyList.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/SurveyList.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/SurveyList.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/SurveyList.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/RatingResponse.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/RatingResponse.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/RatingResponse.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/RatingResponse.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/ResponsesLimitReachedBanner.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/ResponsesLimitReachedBanner.tsx similarity index 93% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/ResponsesLimitReachedBanner.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/ResponsesLimitReachedBanner.tsx index 0302aaca59..d38660a9d7 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/ResponsesLimitReachedBanner.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/ResponsesLimitReachedBanner.tsx @@ -1,4 +1,4 @@ -import { getAnalysisData } from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; +import { getAnalysisData } from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; import { RESPONSES_LIMIT_FREE } from "@formbricks/lib/constants"; import Link from "next/link"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/data.ts b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/data.ts similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/data.ts rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/data.ts diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/layout.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/layout.tsx similarity index 86% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/layout.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/layout.tsx index 77a64a2c78..4d6aaf16bc 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/layout.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/layout.tsx @@ -1,7 +1,7 @@ import { Metadata } from "next"; import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; import { getServerSession } from "next-auth"; -import { getAnalysisData } from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; +import { getAnalysisData } from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; type Props = { params: { surveyId: string; environmentId: string }; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseNote.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseNote.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseNote.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseNote.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage.tsx similarity index 74% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage.tsx index 7c7d4178e0..05f5bf14be 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage.tsx @@ -1,10 +1,10 @@ "use client"; -import CustomFilter from "@/app/environments/[environmentId]/surveys/[surveyId]/CustomFilter"; -import SummaryHeader from "@/app/environments/[environmentId]/surveys/[surveyId]/SummaryHeader"; -import SurveyResultsTabs from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs"; -import ResponseTimeline from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTimeline"; +import CustomFilter from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/CustomFilter"; +import SummaryHeader from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/SummaryHeader"; +import SurveyResultsTabs from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs"; +import ResponseTimeline from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTimeline"; import ContentWrapper from "@/components/shared/ContentWrapper"; -import { useResponseFilter } from "@/app/environments/[environmentId]/ResponseFilterContext"; +import { useResponseFilter } from "@/app/(app)/environments/[environmentId]/ResponseFilterContext"; import { getFilterResponses } from "@/lib/surveys/surveys"; import { TResponse } from "@formbricks/types/v1/responses"; import { TSurvey } from "@formbricks/types/v1/surveys"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTagsWrapper.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTagsWrapper.tsx similarity index 97% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTagsWrapper.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTagsWrapper.tsx index f31ec71c3c..3b34a590e9 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTagsWrapper.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTagsWrapper.tsx @@ -1,6 +1,6 @@ "use client"; -import TagsCombobox from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/TagsCombobox"; +import TagsCombobox from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/TagsCombobox"; import { removeTagFromResponse, useAddTagToResponse, useCreateTag } from "@/lib/tags/mutateTags"; import { useTagsForEnvironment } from "@/lib/tags/tags"; import React, { useEffect, useState } from "react"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTimeline.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTimeline.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTimeline.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponseTimeline.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/SingleResponse.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/SingleResponse.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/SingleResponse.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/SingleResponse.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/Tag.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/Tag.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/Tag.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/Tag.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/TagsCombobox.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/TagsCombobox.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/TagsCombobox.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/TagsCombobox.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/page.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/page.tsx similarity index 78% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/page.tsx index 63e7d25128..d8c3234d52 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/page.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/page.tsx @@ -1,8 +1,8 @@ export const revalidate = REVALIDATION_INTERVAL; import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; -import ResponsePage from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage"; -import { getAnalysisData } from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; +import ResponsePage from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/ResponsePage"; +import { getAnalysisData } from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; import { getServerSession } from "next-auth"; import ResponsesLimitReachedBanner from "../ResponsesLimitReachedBanner"; import { REVALIDATION_INTERVAL } from "@formbricks/lib/constants"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/CTASummary.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/CTASummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/CTASummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/CTASummary.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/ConsentSummary.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/ConsentSummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/ConsentSummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/ConsentSummary.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton.tsx similarity index 87% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton.tsx index 1f1a0b0a1f..e895a2331d 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton.tsx @@ -1,6 +1,6 @@ "use client"; -import LinkSurveyModal from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkSurveyModal"; +import LinkSurveyModal from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkSurveyModal"; import { TSurvey } from "@formbricks/types/v1/surveys"; import { Button } from "@formbricks/ui"; import { ShareIcon } from "@heroicons/react/24/outline"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkSurveyModal.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkSurveyModal.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkSurveyModal.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkSurveyModal.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/MultipleChoiceSummary.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/MultipleChoiceSummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/MultipleChoiceSummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/MultipleChoiceSummary.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/NPSSummary.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/NPSSummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/NPSSummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/NPSSummary.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/OpenTextSummary.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/OpenTextSummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/OpenTextSummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/OpenTextSummary.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/RatingSummary.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/RatingSummary.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/RatingSummary.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/RatingSummary.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/StatusDropdown.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/StatusDropdown.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/StatusDropdown.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/StatusDropdown.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SuccessMessage.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SuccessMessage.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SuccessMessage.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SuccessMessage.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList.tsx similarity index 97% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList.tsx index 9dcc67a20b..29cb3b0f2e 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList.tsx @@ -1,4 +1,4 @@ -import ConsentSummary from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/ConsentSummary"; +import ConsentSummary from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/ConsentSummary"; import EmptySpaceFiller from "@/components/shared/EmptySpaceFiller"; import { QuestionType, diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryMetadata.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryMetadata.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryMetadata.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryMetadata.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryPage.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryPage.tsx similarity index 71% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryPage.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryPage.tsx index eb14498f08..9737b5fba6 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryPage.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryPage.tsx @@ -1,11 +1,11 @@ "use client"; -import CustomFilter from "@/app/environments/[environmentId]/surveys/[surveyId]/CustomFilter"; -import SummaryHeader from "@/app/environments/[environmentId]/surveys/[surveyId]/SummaryHeader"; -import SurveyResultsTabs from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs"; -import SummaryList from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList"; -import SummaryMetadata from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryMetadata"; +import CustomFilter from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/CustomFilter"; +import SummaryHeader from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/SummaryHeader"; +import SurveyResultsTabs from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/SurveyResultsTabs"; +import SummaryList from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryList"; +import SummaryMetadata from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SummaryMetadata"; import ContentWrapper from "@/components/shared/ContentWrapper"; -import { useResponseFilter } from "@/app/environments/[environmentId]/ResponseFilterContext"; +import { useResponseFilter } from "@/app/(app)/environments/[environmentId]/ResponseFilterContext"; import { getFilterResponses } from "@/lib/surveys/surveys"; import { TResponse } from "@formbricks/types/v1/responses"; import { TSurveyWithAnalytics } from "@formbricks/types/v1/surveys"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/page.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/page.tsx similarity index 89% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/page.tsx index 8815358fe7..de13a60452 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/page.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/page.tsx @@ -1,7 +1,7 @@ export const revalidate = REVALIDATION_INTERVAL; import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; -import { getAnalysisData } from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; +import { getAnalysisData } from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/data"; import { getServerSession } from "next-auth"; import ResponsesLimitReachedBanner from "../ResponsesLimitReachedBanner"; import SummaryPage from "./SummaryPage"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/CustomFilter.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/CustomFilter.tsx similarity index 99% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/CustomFilter.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/CustomFilter.tsx index 0055095620..e752f0e6ee 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/CustomFilter.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/CustomFilter.tsx @@ -23,7 +23,7 @@ import { TResponse } from "@formbricks/types/v1/responses"; import { TSurvey } from "@formbricks/types/v1/surveys"; import { createId } from "@paralleldrive/cuid2"; import ResponseFilter from "./ResponseFilter"; -import { DateRange, useResponseFilter } from "@/app/environments/[environmentId]/ResponseFilterContext"; +import { DateRange, useResponseFilter } from "@/app/(app)/environments/[environmentId]/ResponseFilterContext"; import { useTagsForEnvironment } from "@/lib/tags/tags"; enum DateSelected { diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/QuestionFilterComboBox.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionFilterComboBox.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/QuestionFilterComboBox.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionFilterComboBox.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/ResponseFilter.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/ResponseFilter.tsx similarity index 97% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/ResponseFilter.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/ResponseFilter.tsx index 06ff787c95..609de1e617 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/ResponseFilter.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/ResponseFilter.tsx @@ -6,8 +6,8 @@ import { useState, useEffect } from "react"; import { Popover, PopoverTrigger, PopoverContent, Button, Checkbox } from "@formbricks/ui"; import { ChevronDown, ChevronUp, Plus } from "lucide-react"; import { TrashIcon } from "@heroicons/react/24/solid"; -import QuestionFilterComboBox from "@/app/environments/[environmentId]/surveys/[surveyId]/QuestionFilterComboBox"; -import { useResponseFilter } from "@/app/environments/[environmentId]/ResponseFilterContext"; +import QuestionFilterComboBox from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionFilterComboBox"; +import { useResponseFilter } from "@/app/(app)/environments/[environmentId]/ResponseFilterContext"; import clsx from "clsx"; export type QuestionFilterOptions = { diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/SummaryHeader.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/SummaryHeader.tsx similarity index 97% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/SummaryHeader.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/SummaryHeader.tsx index 174050afa1..e8fc53fa19 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/SummaryHeader.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/SummaryHeader.tsx @@ -33,8 +33,8 @@ import SurveyStatusIndicator from "@/components/shared/SurveyStatusIndicator"; import { useSurveyMutation } from "@/lib/surveys/mutateSurveys"; import toast from "react-hot-toast"; import { useRouter } from "next/navigation"; -import SuccessMessage from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SuccessMessage"; -import LinkSurveyShareButton from "@/app/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton"; +import SuccessMessage from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/SuccessMessage"; +import LinkSurveyShareButton from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/summary/LinkModalButton"; import LoadingSpinner from "@/components/shared/LoadingSpinner"; interface SummaryHeaderProps { diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/AddQuestionButton.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/AddQuestionButton.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/AddQuestionButton.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/AddQuestionButton.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings.tsx similarity index 89% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings.tsx index b46bead798..53d2e4ddb3 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings.tsx @@ -1,5 +1,5 @@ import React from "react"; -import LogicEditor from "@/app/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor"; +import LogicEditor from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor"; import UpdateQuestionId from "./UpdateQuestionId"; import { Question } from "@formbricks/types/questions"; import { Survey } from "@formbricks/types/surveys"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/CTAQuestionForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/CTAQuestionForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/CTAQuestionForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/CTAQuestionForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/ConsentQuestionForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/ConsentQuestionForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/ConsentQuestionForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/ConsentQuestionForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/EditThankYouCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/EditThankYouCard.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/EditThankYouCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/EditThankYouCard.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/HowToSendCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/HowToSendCard.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/HowToSendCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/HowToSendCard.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceMultiForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceMultiForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceMultiForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceMultiForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceSingleForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceSingleForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceSingleForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/MultipleChoiceSingleForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/NPSQuestionForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/NPSQuestionForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/NPSQuestionForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/NPSQuestionForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/OpenQuestionForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/OpenQuestionForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/OpenQuestionForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/OpenQuestionForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionCard.tsx similarity index 98% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionCard.tsx index 3aea7e8560..d422231eef 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionCard.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionCard.tsx @@ -1,6 +1,6 @@ "use client"; -import AdvancedSettings from "@/app/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings"; +import AdvancedSettings from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/AdvancedSettings"; import { getQuestionTypeName } from "@/lib/questions"; import { cn } from "@formbricks/lib/cn"; import { QuestionType } from "@formbricks/types/questions"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionMenu.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionMenu.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionMenu.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionMenu.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsAudienceTabs.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsAudienceTabs.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsAudienceTabs.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsAudienceTabs.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsView.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsView.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsView.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/QuestionsView.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/RatingQuestionForm.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/RatingQuestionForm.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/RatingQuestionForm.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/RatingQuestionForm.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/RatingTypeDropdown.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/RatingTypeDropdown.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/RatingTypeDropdown.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/RatingTypeDropdown.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/RecontactOptionsCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/RecontactOptionsCard.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/RecontactOptionsCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/RecontactOptionsCard.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/ResponseOptionsCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/ResponseOptionsCard.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/ResponseOptionsCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/ResponseOptionsCard.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/SettingsView.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SettingsView.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/SettingsView.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SettingsView.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/StrictModeDroppable.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/StrictModeDroppable.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/StrictModeDroppable.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/StrictModeDroppable.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/SurveyEditor.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyEditor.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/SurveyEditor.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyEditor.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/UpdateQuestionId.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/UpdateQuestionId.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/UpdateQuestionId.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/UpdateQuestionId.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/WhenToSendCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/WhenToSendCard.tsx similarity index 98% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/WhenToSendCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/WhenToSendCard.tsx index cef9064324..28e20f78c7 100644 --- a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/WhenToSendCard.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/WhenToSendCard.tsx @@ -1,6 +1,6 @@ "use client"; -import AddNoCodeEventModal from "@/app/environments/[environmentId]/events/AddNoCodeEventModal"; +import AddNoCodeEventModal from "@/app/(app)/environments/[environmentId]/events/AddNoCodeEventModal"; import LoadingSpinner from "@/components/shared/LoadingSpinner"; import { useEventClasses } from "@/lib/eventClasses/eventClasses"; import { cn } from "@formbricks/lib/cn"; diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/WhoToSendCard.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/WhoToSendCard.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/WhoToSendCard.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/WhoToSendCard.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/page.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/edit/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/page.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/[surveyId]/page.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/[surveyId]/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/page.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/page.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/page.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/templates/TemplateContainer.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/templates/TemplateContainer.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/templates/TemplateContainer.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/templates/TemplateContainer.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/templates/TemplateList.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/templates/TemplateList.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/templates/TemplateList.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/templates/TemplateList.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/templates/loading.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/templates/loading.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/templates/loading.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/templates/loading.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/templates/page.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/templates/page.tsx similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/templates/page.tsx rename to apps/web/app/(app)/environments/[environmentId]/surveys/templates/page.tsx diff --git a/apps/web/app/environments/[environmentId]/surveys/templates/templates.ts b/apps/web/app/(app)/environments/[environmentId]/surveys/templates/templates.ts similarity index 100% rename from apps/web/app/environments/[environmentId]/surveys/templates/templates.ts rename to apps/web/app/(app)/environments/[environmentId]/surveys/templates/templates.ts diff --git a/apps/web/app/environments/page.tsx b/apps/web/app/(app)/environments/page.tsx similarity index 100% rename from apps/web/app/environments/page.tsx rename to apps/web/app/(app)/environments/page.tsx diff --git a/apps/web/app/(app)/layout.tsx b/apps/web/app/(app)/layout.tsx new file mode 100644 index 0000000000..0e0d19e320 --- /dev/null +++ b/apps/web/app/(app)/layout.tsx @@ -0,0 +1,29 @@ +import FormbricksClient from "@/app/(app)/FormbricksClient"; +import { PHProvider, PostHogPageview } from "@/app/PostHogClient"; +import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; +import { getServerSession } from "next-auth"; +import { redirect } from "next/navigation"; +import { Suspense } from "react"; +import PosthogIdentify from "./PosthogIdentify"; + +export default async function AppLayout({ children }) { + const session = await getServerSession(authOptions); + if (!session) { + return redirect(`/auth/login`); + } + + return ( + <> + + + + + <> + + + {children} + + + + ); +} diff --git a/apps/web/app/onboarding/Greeting.tsx b/apps/web/app/(app)/onboarding/Greeting.tsx similarity index 100% rename from apps/web/app/onboarding/Greeting.tsx rename to apps/web/app/(app)/onboarding/Greeting.tsx diff --git a/apps/web/app/onboarding/Objective.tsx b/apps/web/app/(app)/onboarding/Objective.tsx similarity index 100% rename from apps/web/app/onboarding/Objective.tsx rename to apps/web/app/(app)/onboarding/Objective.tsx diff --git a/apps/web/app/onboarding/Onboarding.tsx b/apps/web/app/(app)/onboarding/Onboarding.tsx similarity index 100% rename from apps/web/app/onboarding/Onboarding.tsx rename to apps/web/app/(app)/onboarding/Onboarding.tsx diff --git a/apps/web/app/onboarding/Product.tsx b/apps/web/app/(app)/onboarding/Product.tsx similarity index 100% rename from apps/web/app/onboarding/Product.tsx rename to apps/web/app/(app)/onboarding/Product.tsx diff --git a/apps/web/app/onboarding/Role.tsx b/apps/web/app/(app)/onboarding/Role.tsx similarity index 100% rename from apps/web/app/onboarding/Role.tsx rename to apps/web/app/(app)/onboarding/Role.tsx diff --git a/apps/web/app/onboarding/page.tsx b/apps/web/app/(app)/onboarding/page.tsx similarity index 60% rename from apps/web/app/onboarding/page.tsx rename to apps/web/app/(app)/onboarding/page.tsx index 7ab057fbf8..a534f83911 100644 --- a/apps/web/app/onboarding/page.tsx +++ b/apps/web/app/(app)/onboarding/page.tsx @@ -1,14 +1,8 @@ +import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; import { getServerSession } from "next-auth"; import Onboarding from "./Onboarding"; -import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; -import FormbricksClient from "@/app/FormbricksClient"; export default async function OnboardingPage() { const session = await getServerSession(authOptions); - return ( - <> - - - - ); + return ; } diff --git a/apps/web/app/auth/forgot-password/email-sent/page.tsx b/apps/web/app/(auth)/auth/forgot-password/email-sent/page.tsx similarity index 100% rename from apps/web/app/auth/forgot-password/email-sent/page.tsx rename to apps/web/app/(auth)/auth/forgot-password/email-sent/page.tsx diff --git a/apps/web/app/auth/forgot-password/page.tsx b/apps/web/app/(auth)/auth/forgot-password/page.tsx similarity index 71% rename from apps/web/app/auth/forgot-password/page.tsx rename to apps/web/app/(auth)/auth/forgot-password/page.tsx index f66f45038f..33fd8cf46f 100644 --- a/apps/web/app/auth/forgot-password/page.tsx +++ b/apps/web/app/(auth)/auth/forgot-password/page.tsx @@ -1,4 +1,4 @@ -import { PasswordResetForm } from "../../../components/auth/RequestPasswordResetForm"; +import { PasswordResetForm } from "@/components/auth/RequestPasswordResetForm"; import FormWrapper from "@/components/auth/FormWrapper"; const ForgotPasswordPage: React.FC = () => { diff --git a/apps/web/app/auth/forgot-password/reset/page.tsx b/apps/web/app/(auth)/auth/forgot-password/reset/page.tsx similarity index 100% rename from apps/web/app/auth/forgot-password/reset/page.tsx rename to apps/web/app/(auth)/auth/forgot-password/reset/page.tsx diff --git a/apps/web/app/auth/forgot-password/reset/success/page.tsx b/apps/web/app/(auth)/auth/forgot-password/reset/success/page.tsx similarity index 100% rename from apps/web/app/auth/forgot-password/reset/success/page.tsx rename to apps/web/app/(auth)/auth/forgot-password/reset/success/page.tsx diff --git a/apps/web/app/(auth)/auth/layout.tsx b/apps/web/app/(auth)/auth/layout.tsx new file mode 100644 index 0000000000..38108b3e12 --- /dev/null +++ b/apps/web/app/(auth)/auth/layout.tsx @@ -0,0 +1,16 @@ +import { getServerSession } from "next-auth"; +import { redirect } from "next/navigation"; + +export default async function AuthLayout({ children }: { children: React.ReactNode }) { + const session = await getServerSession(); + if (session) { + redirect(`/`); + } + return ( +
+
+
{children}
+
+
+ ); +} diff --git a/apps/web/app/auth/login/page.tsx b/apps/web/app/(auth)/auth/login/page.tsx similarity index 100% rename from apps/web/app/auth/login/page.tsx rename to apps/web/app/(auth)/auth/login/page.tsx diff --git a/apps/web/app/auth/signup-without-verification-success/page.tsx b/apps/web/app/(auth)/auth/signup-without-verification-success/page.tsx similarity index 100% rename from apps/web/app/auth/signup-without-verification-success/page.tsx rename to apps/web/app/(auth)/auth/signup-without-verification-success/page.tsx diff --git a/apps/web/app/auth/signup/page.tsx b/apps/web/app/(auth)/auth/signup/page.tsx similarity index 100% rename from apps/web/app/auth/signup/page.tsx rename to apps/web/app/(auth)/auth/signup/page.tsx diff --git a/apps/web/app/auth/verification-requested/page.tsx b/apps/web/app/(auth)/auth/verification-requested/page.tsx similarity index 100% rename from apps/web/app/auth/verification-requested/page.tsx rename to apps/web/app/(auth)/auth/verification-requested/page.tsx diff --git a/apps/web/app/auth/verify/page.tsx b/apps/web/app/(auth)/auth/verify/page.tsx similarity index 100% rename from apps/web/app/auth/verify/page.tsx rename to apps/web/app/(auth)/auth/verify/page.tsx diff --git a/apps/web/app/invite/InviteContentComponents.tsx b/apps/web/app/(auth)/invite/InviteContentComponents.tsx similarity index 100% rename from apps/web/app/invite/InviteContentComponents.tsx rename to apps/web/app/(auth)/invite/InviteContentComponents.tsx diff --git a/apps/web/app/invite/page.tsx b/apps/web/app/(auth)/invite/page.tsx similarity index 100% rename from apps/web/app/invite/page.tsx rename to apps/web/app/(auth)/invite/page.tsx diff --git a/apps/web/app/(auth)/layout.tsx b/apps/web/app/(auth)/layout.tsx new file mode 100644 index 0000000000..950a83c444 --- /dev/null +++ b/apps/web/app/(auth)/layout.tsx @@ -0,0 +1,13 @@ +import { PHProvider, PostHogPageview } from "../PostHogClient"; +import { Suspense } from "react"; + +export default function AppLayout({ children }) { + return ( + <> + + + + {children} + + ); +} diff --git a/apps/web/app/PostHogClient.tsx b/apps/web/app/PostHogClient.tsx new file mode 100644 index 0000000000..2569d6c746 --- /dev/null +++ b/apps/web/app/PostHogClient.tsx @@ -0,0 +1,40 @@ +"use client"; + +import { env } from "@/env.mjs"; +import { usePathname, useSearchParams } from "next/navigation"; +import posthog from "posthog-js"; +import { PostHogProvider } from "posthog-js/react"; +import { useEffect } from "react"; + +const posthogEnabled = env.NEXT_PUBLIC_POSTHOG_API_KEY && env.NEXT_PUBLIC_POSTHOG_API_HOST; + +if (typeof window !== "undefined") { + if (posthogEnabled) { + posthog.init(process.env.NEXT_PUBLIC_POSTHOG_API_KEY!, { + api_host: process.env.NEXT_PUBLIC_POSTHOG_API_HOST, + }); + } +} + +export function PostHogPageview(): JSX.Element { + const pathname = usePathname(); + const searchParams = useSearchParams(); + + useEffect(() => { + if (posthogEnabled && pathname) { + let url = window.origin + pathname; + if (searchParams && searchParams.toString()) { + url = url + `?${searchParams.toString()}`; + } + posthog.capture("$pageview", { + $current_url: url, + }); + } + }, [pathname, searchParams]); + + return <>; +} + +export function PHProvider({ children }: { children: React.ReactNode }) { + return posthogEnabled ? {children} : children; +} diff --git a/apps/web/app/PosthogClientWrapper.tsx b/apps/web/app/PosthogClientWrapper.tsx deleted file mode 100644 index ddbb7635cd..0000000000 --- a/apps/web/app/PosthogClientWrapper.tsx +++ /dev/null @@ -1,48 +0,0 @@ -"use client"; - -import { env } from "@/env.mjs"; -import { usePathname, useSearchParams } from "next/navigation"; -import posthog from "posthog-js"; -import { PostHogProvider } from "posthog-js/react"; -import { useEffect } from "react"; - -const posthogEnabled = env.NEXT_PUBLIC_POSTHOG_API_KEY && env.NEXT_PUBLIC_POSTHOG_API_HOST; - -// Check that PostHog is client-side (used to handle Next.js SSR) -if ( - typeof window !== "undefined" && - posthogEnabled && - typeof env.NEXT_PUBLIC_POSTHOG_API_KEY === "string" && - typeof env.NEXT_PUBLIC_POSTHOG_API_HOST === "string" -) { - posthog.init(env.NEXT_PUBLIC_POSTHOG_API_KEY, { - api_host: env.NEXT_PUBLIC_POSTHOG_API_HOST, - // Disable in development - loaded: (posthog) => { - if (process.env.NODE_ENV === "development") posthog.opt_out_capturing(); - }, - }); -} - -export function PosthogClientWrapper({ children }: { children: React.ReactNode }) { - const pathname = usePathname(); - const searchParams = useSearchParams(); - - useEffect(() => { - if (posthogEnabled && pathname) { - let url = window.origin + pathname; - if (searchParams?.toString()) { - url = url + `?${searchParams.toString()}`; - } - posthog.capture("$pageview", { - $current_url: url, - }); - } - }, [pathname, searchParams]); - - if (posthogEnabled) { - return {children}; - } else { - return <>{children}; - } -} diff --git a/apps/web/app/auth/layout.tsx b/apps/web/app/auth/layout.tsx deleted file mode 100644 index a5d03b3a45..0000000000 --- a/apps/web/app/auth/layout.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { getServerSession } from "next-auth"; -import { redirect } from "next/navigation"; -import { PosthogClientWrapper } from "../PosthogClientWrapper"; - -export default async function AuthLayout({ children }: { children: React.ReactNode }) { - const session = await getServerSession(); - if (session) { - redirect(`/`); - } - return ( - -
-
-
{children}
-
-
-
- ); -} diff --git a/apps/web/app/billing-confirmation/layout.tsx b/apps/web/app/billing-confirmation/layout.tsx deleted file mode 100644 index dcfc3698e4..0000000000 --- a/apps/web/app/billing-confirmation/layout.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { PosthogClientWrapper } from "../PosthogClientWrapper"; - -export default async function AuthLayout({ children }: { children: React.ReactNode }) { - return {children}; -} diff --git a/apps/web/app/invite/layout.tsx b/apps/web/app/invite/layout.tsx deleted file mode 100644 index dcfc3698e4..0000000000 --- a/apps/web/app/invite/layout.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { PosthogClientWrapper } from "../PosthogClientWrapper"; - -export default async function AuthLayout({ children }: { children: React.ReactNode }) { - return {children}; -} diff --git a/apps/web/app/onboarding/layout.tsx b/apps/web/app/onboarding/layout.tsx deleted file mode 100644 index da28cdff01..0000000000 --- a/apps/web/app/onboarding/layout.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; -import { getServerSession } from "next-auth"; -import { redirect } from "next/navigation"; -import PosthogIdentify from "../environments/[environmentId]/PosthogIdentify"; -import { PosthogClientWrapper } from "../PosthogClientWrapper"; - -export default async function EnvironmentLayout({ children }) { - const session = await getServerSession(authOptions); - if (!session) { - return redirect(`/auth/login`); - } - - return ( - <> - - {children} - - ); -} diff --git a/apps/web/components/team/CreateTeamModal.tsx b/apps/web/components/team/CreateTeamModal.tsx index 0565481f90..daeebcc738 100644 --- a/apps/web/components/team/CreateTeamModal.tsx +++ b/apps/web/components/team/CreateTeamModal.tsx @@ -8,7 +8,7 @@ import { useRouter } from "next/navigation"; import { useState } from "react"; import { useForm } from "react-hook-form"; import toast from "react-hot-toast"; -import { createTeam } from "../../app/environments/[environmentId]/actions"; +import { createTeam } from "@/app/(app)/environments/[environmentId]/actions"; interface CreateTeamModalProps { open: boolean; diff --git a/apps/web/lib/surveys/surveys.ts b/apps/web/lib/surveys/surveys.ts index c79de58be3..c6b01195e6 100644 --- a/apps/web/lib/surveys/surveys.ts +++ b/apps/web/lib/surveys/surveys.ts @@ -5,11 +5,14 @@ import { TResponse } from "@formbricks/types/v1/responses"; import { OptionsType, QuestionOptions, -} from "@/app/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox"; -import { QuestionFilterOptions } from "@/app/environments/[environmentId]/surveys/[surveyId]/ResponseFilter"; +} from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/QuestionsComboBox"; +import { QuestionFilterOptions } from "@/app/(app)/environments/[environmentId]/surveys/[surveyId]/ResponseFilter"; import { QuestionType } from "@formbricks/types/questions"; import { TTag } from "@formbricks/types/v1/tags"; -import { DateRange, SelectedFilterValue } from "@/app/environments/[environmentId]/ResponseFilterContext"; +import { + DateRange, + SelectedFilterValue, +} from "@/app/(app)/environments/[environmentId]/ResponseFilterContext"; import { isArray } from "lodash"; import { isWithinInterval } from "date-fns";