Skip to content

Commit 7ab76ac

Browse files
[Dashboard] Add team ID to ecosystem API requests (#6659)
1 parent 386138e commit 7ab76ac

19 files changed

+114
-27
lines changed

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/add-partner/page.tsx

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
import {} from "@/components/ui/breadcrumb";
2+
import { notFound } from "next/navigation";
3+
import { getTeamBySlug } from "../../../../../../../../../../@/api/team";
24
import { getAuthToken } from "../../../../../../../../../api/lib/getAuthToken";
35
import { loginRedirect } from "../../../../../../../../../login/loginRedirect";
46
import { AddPartnerForm } from "../components/client/add-partner-form.client";
@@ -10,12 +12,19 @@ export default async function AddPartnerPage({
1012
params: Promise<{ slug: string; team_slug: string }>;
1113
}) {
1214
const { slug, team_slug } = await params;
13-
const authToken = await getAuthToken();
15+
const [authToken, team] = await Promise.all([
16+
getAuthToken(),
17+
getTeamBySlug(team_slug),
18+
]);
1419

1520
if (!authToken) {
1621
loginRedirect(`/team/${team_slug}/~/ecosystem/${slug}`);
1722
}
1823

24+
if (!team) {
25+
notFound();
26+
}
27+
1928
const teamSlug = team_slug;
2029
const ecosystemSlug = slug;
2130

@@ -32,7 +41,11 @@ export default async function AddPartnerPage({
3241
<h1 className="mb-6 font-semibold text-2xl tracking-tight">
3342
Add New Partner
3443
</h1>
35-
<AddPartnerForm ecosystem={ecosystem} authToken={authToken} />
44+
<AddPartnerForm
45+
ecosystem={ecosystem}
46+
authToken={authToken}
47+
teamId={team.id}
48+
/>
3649
</div>
3750
</div>
3851
);

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/client/EcosystemPermissionsPage.tsx

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,12 @@ import { IntegrationPermissionsSection } from "../server/integration-permissions
77
export function EcosystemPermissionsPage({
88
params,
99
authToken,
10-
}: { params: { slug: string; team_slug: string }; authToken: string }) {
10+
teamId,
11+
}: {
12+
params: { slug: string; team_slug: string };
13+
authToken: string;
14+
teamId: string;
15+
}) {
1116
const { data: ecosystem } = useEcosystem({
1217
slug: params.slug,
1318
teamIdOrSlug: params.team_slug,
@@ -18,13 +23,19 @@ export function EcosystemPermissionsPage({
1823
<IntegrationPermissionsSection
1924
ecosystem={ecosystem}
2025
authToken={authToken}
26+
teamId={teamId}
27+
/>
28+
<AuthOptionsSection
29+
ecosystem={ecosystem}
30+
authToken={authToken}
31+
teamId={teamId}
2132
/>
22-
<AuthOptionsSection ecosystem={ecosystem} authToken={authToken} />
2333
{ecosystem?.permission === "PARTNER_WHITELIST" && (
2434
<EcosystemPartnersSection
2535
teamSlug={params.team_slug}
2636
ecosystem={ecosystem}
2737
authToken={authToken}
38+
teamId={teamId}
2839
/>
2940
)}
3041
</div>

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/client/add-partner-form.client.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,11 @@ import { PartnerForm, type PartnerFormValues } from "./partner-form.client";
99
export function AddPartnerForm({
1010
ecosystem,
1111
authToken,
12+
teamId,
1213
}: {
1314
ecosystem: Ecosystem;
1415
authToken: string;
16+
teamId: string;
1517
}) {
1618
const router = useDashboardRouter();
1719
const params = useParams();
@@ -21,6 +23,7 @@ export function AddPartnerForm({
2123
const { mutateAsync: addPartner, isPending } = useAddPartner(
2224
{
2325
authToken,
26+
teamId,
2427
},
2528
{
2629
onSuccess: () => {

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/client/auth-options-form.client.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ type AuthOptionsFormData = {
5252
export function AuthOptionsForm({
5353
ecosystem,
5454
authToken,
55-
}: { ecosystem: Ecosystem; authToken: string }) {
55+
teamId,
56+
}: { ecosystem: Ecosystem; authToken: string; teamId: string }) {
5657
const form = useForm<AuthOptionsFormData>({
5758
defaultValues: {
5859
authOptions: ecosystem.authOptions || [],
@@ -147,6 +148,7 @@ export function AuthOptionsForm({
147148
const { mutateAsync: updateEcosystem, isPending } = useUpdateEcosystem(
148149
{
149150
authToken,
151+
teamId,
150152
},
151153
{
152154
onError: (error) => {

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/client/integration-permissions-toggle.client.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ import { useUpdateEcosystem } from "../../hooks/use-update-ecosystem";
1212
export function IntegrationPermissionsToggle({
1313
ecosystem,
1414
authToken,
15-
}: { ecosystem: Ecosystem; authToken: string }) {
15+
teamId,
16+
}: { ecosystem: Ecosystem; authToken: string; teamId: string }) {
1617
const [messageToConfirm, setMessageToConfirm] = useState<
1718
| {
1819
title: string;
@@ -28,6 +29,7 @@ export function IntegrationPermissionsToggle({
2829
} = useUpdateEcosystem(
2930
{
3031
authToken,
32+
teamId,
3133
},
3234
{
3335
onError: (error) => {

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/client/update-partner-form.client.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,12 @@ export function UpdatePartnerForm({
1010
ecosystem,
1111
partner,
1212
authToken,
13+
teamId,
1314
}: {
1415
ecosystem: Ecosystem;
1516
partner: Partner;
1617
authToken: string;
18+
teamId: string;
1719
}) {
1820
const router = useDashboardRouter();
1921
const params = useParams();
@@ -23,6 +25,7 @@ export function UpdatePartnerForm({
2325
const { mutateAsync: updatePartner, isPending } = useUpdatePartner(
2426
{
2527
authToken,
28+
teamId,
2629
},
2730
{
2831
onSuccess: () => {

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/auth-options-section.tsx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,16 @@ import {
77
export function AuthOptionsSection({
88
ecosystem,
99
authToken,
10-
}: { ecosystem?: Ecosystem; authToken: string }) {
10+
teamId,
11+
}: { ecosystem?: Ecosystem; authToken: string; teamId: string }) {
1112
return (
1213
<section className="flex flex-col gap-4 md:gap-8">
1314
{ecosystem ? (
14-
<AuthOptionsForm ecosystem={ecosystem} authToken={authToken} />
15+
<AuthOptionsForm
16+
ecosystem={ecosystem}
17+
authToken={authToken}
18+
teamId={teamId}
19+
/>
1520
) : (
1621
<AuthOptionsFormSkeleton />
1722
)}

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/ecosystem-partners-section.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,13 @@ export function EcosystemPartnersSection({
66
teamSlug,
77
ecosystem,
88
authToken,
9-
}: { teamSlug: string; ecosystem: Ecosystem; authToken: string }) {
9+
teamId,
10+
}: {
11+
teamSlug: string;
12+
ecosystem: Ecosystem;
13+
authToken: string;
14+
teamId: string;
15+
}) {
1016
return (
1117
<div className="rounded-lg border border-border bg-card px-4 py-6 lg:px-6">
1218
<div className="flex flex-col items-start justify-between max-sm:mb-5 lg:flex-row">
@@ -33,6 +39,7 @@ export function EcosystemPartnersSection({
3339
ecosystem={ecosystem}
3440
authToken={authToken}
3541
teamSlug={teamSlug}
42+
teamId={teamId}
3643
/>
3744
</div>
3845
);

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/integration-permissions-section.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ import {
77
export function IntegrationPermissionsSection({
88
ecosystem,
99
authToken,
10-
}: { ecosystem?: Ecosystem; authToken: string }) {
10+
teamId,
11+
}: { ecosystem?: Ecosystem; authToken: string; teamId: string }) {
1112
return (
1213
<div className="relative rounded-lg border border-border bg-card px-4 py-6 lg:px-6">
1314
<h3 className="font-semibold text-xl tracking-tight">
@@ -27,6 +28,7 @@ export function IntegrationPermissionsSection({
2728
<IntegrationPermissionsToggle
2829
ecosystem={ecosystem}
2930
authToken={authToken}
31+
teamId={teamId}
3032
/>
3133
) : (
3234
<IntegrationPermissionsToggleSkeleton />

apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/partners-table.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,17 @@ export function PartnersTable({
2525
ecosystem,
2626
authToken,
2727
teamSlug,
28+
teamId,
2829
}: {
2930
ecosystem: Ecosystem;
3031
authToken: string;
3132
teamSlug: string;
33+
teamId: string;
3234
}) {
3335
const { partners, isPending } = usePartners({
3436
ecosystem,
3537
authToken,
38+
teamId,
3639
});
3740

3841
if (isPending) {
@@ -68,6 +71,7 @@ export function PartnersTable({
6871
ecosystem={ecosystem}
6972
authToken={authToken}
7073
teamSlug={teamSlug}
74+
teamId={teamId}
7175
/>
7276
))}
7377
</TableBody>
@@ -81,12 +85,14 @@ function PartnerRow(props: {
8185
ecosystem: Ecosystem;
8286
teamSlug: string;
8387
authToken: string;
88+
teamId: string;
8489
}) {
8590
const router = useDashboardRouter();
8691
const { mutateAsync: deletePartner, isPending: isDeleting } =
8792
useDeletePartner(
8893
{
8994
authToken: props.authToken,
95+
teamId: props.teamId,
9096
},
9197
{
9298
onError: (error) => {

0 commit comments

Comments
 (0)