feat: set unlimited seats to true for pro plans
This commit is contained in:
@@ -10,6 +10,7 @@ import { env } from "next-runtime-env";
|
|||||||
|
|
||||||
import type { dbClient } from "@kan/db/client";
|
import type { dbClient } from "@kan/db/client";
|
||||||
import * as memberRepo from "@kan/db/repository/member.repo";
|
import * as memberRepo from "@kan/db/repository/member.repo";
|
||||||
|
import * as subscriptionRepo from "@kan/db/repository/subscription.repo";
|
||||||
import * as userRepo from "@kan/db/repository/user.repo";
|
import * as userRepo from "@kan/db/repository/user.repo";
|
||||||
import * as workspaceRepo from "@kan/db/repository/workspace.repo";
|
import * as workspaceRepo from "@kan/db/repository/workspace.repo";
|
||||||
import * as schema from "@kan/db/schema";
|
import * as schema from "@kan/db/schema";
|
||||||
@@ -203,6 +204,24 @@ export const initAuth = (db: dbClient) => {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
onSubscriptionComplete: async ({
|
||||||
|
subscription,
|
||||||
|
stripeSubscription,
|
||||||
|
}) => {
|
||||||
|
// Set unlimited seats to true for pro plans
|
||||||
|
if (subscription.plan === "pro") {
|
||||||
|
await subscriptionRepo.updateByStripeSubscriptionId(
|
||||||
|
db,
|
||||||
|
stripeSubscription.id,
|
||||||
|
{
|
||||||
|
unlimitedSeats: true,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`Pro subscription ${stripeSubscription.id} activated with unlimited seats`,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -127,6 +127,7 @@ export const getByPublicIdWithMembers = (
|
|||||||
plan: true,
|
plan: true,
|
||||||
status: true,
|
status: true,
|
||||||
seats: true,
|
seats: true,
|
||||||
|
unlimitedSeats: true,
|
||||||
periodStart: true,
|
periodStart: true,
|
||||||
periodEnd: true,
|
periodEnd: true,
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user