diff --git a/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/providers/page-client.tsx b/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/providers/page-client.tsx index 00208c435..ebc3ac6dd 100644 --- a/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/providers/page-client.tsx +++ b/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/providers/page-client.tsx @@ -1,7 +1,7 @@ "use client"; -import { Accordion, AccordionDetails, AccordionGroup, AccordionSummary, AspectRatio, Box, Card, CardContent, CardOverflow, Sheet, Switch } from "@mui/joy"; -import { useState, use } from "react"; +import { AccordionGroup, Card, CardOverflow } from "@mui/joy"; +import { use } from "react"; import { Paragraph } from "@/components/paragraph"; import { useStrictMemo } from "stack-shared/src/hooks/use-strict-memo"; import { SmartSwitch } from "@/components/smart-switch"; @@ -12,11 +12,9 @@ import { ProviderAccordion, CreationType, allCreationTypes, getCreationType } fr export default function ProvidersClient() { const stackAdminApp = useAdminApp(); - const [invalidationCounter, setInvalidationCounter] = useState(0); const projectPromise = useStrictMemo(async () => { return await stackAdminApp.getProject(); - // eslint-disable-next-line - }, [stackAdminApp, invalidationCounter]); + }, [stackAdminApp]); const project = use(projectPromise); const oauthProviders = project.evaluatedConfig.oauthProviders; diff --git a/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/page-client.tsx b/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/page-client.tsx index b18b8d8e2..5b6a474a8 100644 --- a/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/page-client.tsx +++ b/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/page-client.tsx @@ -1,13 +1,11 @@ "use client"; -import { Card, Typography, IconButton, CardContent, Box, List, ListItemButton, ListItem, ListDivider, Button, Input, FormControl, FormLabel, FormHelperText } from "@mui/joy"; -import React, { cache, use, useEffect, useMemo, useState } from "react"; +import { IconButton, List, ListItem, ListDivider, Input, FormControl, FormLabel } from "@mui/joy"; +import React, { use, useState } from "react"; import { Paragraph } from "@/components/paragraph"; import { Icon } from "@/components/icon"; import { Dialog } from "@/components/dialog"; import { AsyncButton } from "@/components/async-button"; -import { SmartLink } from "@/components/smart-link"; -import { InlineCode } from "@/components/inline-code"; import { useStrictMemo } from "stack-shared/src/hooks/use-strict-memo"; import { SimpleCard } from "@/components/simple-card"; import { useAdminApp } from "../../useAdminInterface"; @@ -18,7 +16,6 @@ export default function UrlsAndCallbacksClient() { const [invalidationCounter, setInvalidationCounter] = useState(0); const projectPromise = useStrictMemo(async () => { return await stackAdminApp.getProject(); - // eslint-disable-next-line }, [stackAdminApp, invalidationCounter]); const project = use(projectPromise); const domains = new Set(project.evaluatedConfig.domains); diff --git a/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/provider-accordion.tsx b/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/provider-accordion.tsx index b7d65d98a..a16a2f7bf 100644 --- a/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/provider-accordion.tsx +++ b/packages/stack-server/src/app/(main)/(protected)/projects/[projectId]/auth/urls-and-callbacks/provider-accordion.tsx @@ -1,6 +1,18 @@ "use client"; -import { Accordion, AccordionDetails, AccordionSummary, MenuItem, Select, Option, Typography, Box, Stack, BoxProps, FormControl, FormLabel, Input } from "@mui/joy"; +import { + Accordion, + AccordionDetails, + AccordionSummary, + Select, + Option, + Box, + Stack, + BoxProps, + FormControl, + FormLabel, + Input, +} from "@mui/joy"; import { OauthProviderConfigJson } from "stack-shared"; import { useState } from "react"; import { typedIncludes } from "stack-shared/dist/utils/arrays"; diff --git a/packages/stack-shared/src/hooks/use-strict-memo.tsx b/packages/stack-shared/src/hooks/use-strict-memo.tsx index 2e8e2a731..13cf956ad 100644 --- a/packages/stack-shared/src/hooks/use-strict-memo.tsx +++ b/packages/stack-shared/src/hooks/use-strict-memo.tsx @@ -1,4 +1,4 @@ -import { useId, useInsertionEffect } from "react"; +import { useId, useInsertionEffect, useMemo } from "react"; import { Result } from "../utils/results"; type CacheInner = Map | WeakMap | { isNotNestedMap: true, value: any };