* create seed for org upgrade * migrate about/new pages * pages refactor + use persistant zustand store * invited members view + confirm button * add check to org slug * check reserved subdomain * remove quotes from subdomain env var * intro to creation + billing * create price * fix types * createWithPaymentIntent + permission check on teams * open stripe link in popup * intro to tests * organization price and seat override tests * move permissions to a new permission service * update env and permission check * intro to paid invoice trigger * dont use subId * wip * Get e2e working with migration of teams and members * fix ts errors * Get flow working again * Fix various issues and refactor * Some more fixes * Fix wrong page route link * Platform onboarding fix and moving members of team to org rix * Platform onboarding fix and moving members of team to org rix * Fix tests, found a bug * Get custom price flow working * Get admin impersonation flow working for a non-existent user * Fix unit test * Admin onboarding handover * fix admin onboarding tests * fix ts error * Get updateQuantity working * More fixes * fix test * fix schema name * Add tests * Add missing file * More tests * Add more tests * fix mt-2 moving down input into overflow * fix handover layout removing HOC * Update PR_TODO.md * fix ts error due to merge conflict --------- Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com> Co-authored-by: Hariom <hariombalhara@gmail.com> Co-authored-by: Omar López <zomars@me.com>
20 lines
657 B
TypeScript
20 lines
657 B
TypeScript
import type { Team } from "@calcom/prisma/client";
|
|
import { teamMetadataSchema } from "@calcom/prisma/zod-utils";
|
|
|
|
export const getParsedTeam = <T extends { metadata: Team["metadata"] }>(team: T) => {
|
|
const metadata = teamMetadataSchema.parse(team.metadata);
|
|
const requestedSlug = metadata?.requestedSlug ?? null;
|
|
const { metadata: _1, ...rest } = team;
|
|
return {
|
|
...rest,
|
|
requestedSlug,
|
|
metadata: {
|
|
...metadata,
|
|
/**
|
|
* @deprecated New orgs that are being created won't have requestedSlug set as the organizations are created after payment and thus slug is always available
|
|
*/
|
|
requestedSlug,
|
|
},
|
|
};
|
|
};
|