From b27f01449ac595adfef474f180165c5c68be69cc Mon Sep 17 00:00:00 2001 From: aar2dee2 <85004512+aar2dee2@users.noreply.github.com> Date: Mon, 4 Sep 2023 20:22:34 +0530 Subject: [PATCH 01/38] feat: make.com/integromat app (#8897) * start make app integration * setup integration * add relevant env vars * update app metadata * import setup route in app setups * fix typo * add app store imports * fix module import error * update make readme * move scheduler to app-store utils * move add subscription to node scheduler * move delete subscription to scheduler * subscribe unsubscribe in zapier using common nodeScheduler * fix lint errors * revert settings.json * update icon * add app screenshots * fix app description * fix type errors * update app code * Delete .gitkeep * delete unused template files * get app invite link from env vars * chore: handle error, cleanup readme, address review comments * fix: update link in readme * revert yarn.lock * fix type errors * Update packages/prisma/seed-app-store.ts * Update .env.appStore.example * Update .env.appStore.example * update app readme * fix param name in deleteSubcription * fix listBookings handler * Update turbo.json * use default installation handler to install app * use logger for console logs * Fix inviteLink reading * fix app setup handler * Fix type issue * always show app invite link * fix type error * add make invite link --------- Co-authored-by: Peer Richelsen Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> Co-authored-by: Hariom Balhara Co-authored-by: CarinaWolli --- apps/web/public/static/locales/en/common.json | 4 + .../_pages/setup/_getStaticProps.tsx | 1 + packages/app-store/_pages/setup/index.tsx | 1 + .../app-store/apps.keys-schemas.generated.ts | 2 + packages/app-store/apps.metadata.generated.ts | 2 + packages/app-store/apps.schemas.generated.ts | 2 + packages/app-store/apps.server.generated.ts | 1 + packages/app-store/index.ts | 1 + packages/app-store/make/DESCRIPTION.md | 10 + packages/app-store/make/README.md | 22 ++ packages/app-store/make/api/add.ts | 20 ++ packages/app-store/make/api/index.ts | 5 + .../make/api/subscriptions/addSubscription.ts | 38 ++++ .../api/subscriptions/deleteSubscription.ts | 40 ++++ .../make/api/subscriptions/listBookings.ts | 35 +++ .../app-store/make/api/subscriptions/me.ts | 35 +++ packages/app-store/make/config.json | 18 ++ packages/app-store/make/index.ts | 1 + packages/app-store/make/package.json | 15 ++ .../make/pages/setup/_getStaticProps.tsx | 20 ++ packages/app-store/make/pages/setup/index.tsx | 178 +++++++++++++++ packages/app-store/make/static/1.jpeg | Bin 0 -> 1160898 bytes packages/app-store/make/static/2.jpeg | Bin 0 -> 1398603 bytes packages/app-store/make/static/3.jpeg | Bin 0 -> 1418868 bytes packages/app-store/make/static/4.jpeg | Bin 0 -> 1414236 bytes packages/app-store/make/static/5.jpeg | Bin 0 -> 1322475 bytes packages/app-store/make/static/icon.svg | 6 + packages/app-store/make/zod.ts | 7 + .../api/subscriptions/addSubscription.ts | 51 +---- .../api/subscriptions/deleteSubscription.ts | 51 +---- .../zapier/api/subscriptions/listBookings.ts | 95 +------- .../features/webhooks/lib/scheduleTrigger.ts | 202 +++++++++++++++++- packages/prisma/seed-app-store.ts | 4 +- 33 files changed, 697 insertions(+), 170 deletions(-) create mode 100644 packages/app-store/make/DESCRIPTION.md create mode 100644 packages/app-store/make/README.md create mode 100644 packages/app-store/make/api/add.ts create mode 100644 packages/app-store/make/api/index.ts create mode 100644 packages/app-store/make/api/subscriptions/addSubscription.ts create mode 100644 packages/app-store/make/api/subscriptions/deleteSubscription.ts create mode 100644 packages/app-store/make/api/subscriptions/listBookings.ts create mode 100644 packages/app-store/make/api/subscriptions/me.ts create mode 100644 packages/app-store/make/config.json create mode 100644 packages/app-store/make/index.ts create mode 100644 packages/app-store/make/package.json create mode 100644 packages/app-store/make/pages/setup/_getStaticProps.tsx create mode 100644 packages/app-store/make/pages/setup/index.tsx create mode 100644 packages/app-store/make/static/1.jpeg create mode 100644 packages/app-store/make/static/2.jpeg create mode 100644 packages/app-store/make/static/3.jpeg create mode 100644 packages/app-store/make/static/4.jpeg create mode 100644 packages/app-store/make/static/5.jpeg create mode 100644 packages/app-store/make/static/icon.svg create mode 100644 packages/app-store/make/zod.ts diff --git a/apps/web/public/static/locales/en/common.json b/apps/web/public/static/locales/en/common.json index f252a96d2f..b539629874 100644 --- a/apps/web/public/static/locales/en/common.json +++ b/apps/web/public/static/locales/en/common.json @@ -1053,12 +1053,15 @@ "how_you_want_add_cal_site": "How do you want to add {{appName}} to your site?", "choose_ways_put_cal_site": "Choose one of the following ways to put {{appName}} on your site.", "setting_up_zapier": "Setting up your Zapier integration", + "setting_up_make": "Setting up your Make integration", "generate_api_key": "Generate API key", "generate_api_key_description": "Generate an API key to use with {{appName}} at", "your_unique_api_key": "Your unique API key", "copy_safe_api_key": "Copy this API key and save it somewhere safe. If you lose this key you have to generate a new one.", "zapier_setup_instructions": "<0>Log into your Zapier account and create a new Zap.<1>Select Cal.com as your Trigger app. Also choose a Trigger event.<2>Choose your account and then enter your Unique API Key.<3>Test your Trigger.<4>You're set!", + "make_setup_instructions": "<0>Log into your Make account and create a new Scenario.<1>Select Cal.com as your Trigger app. Also choose a Trigger event.<2>Choose your account and then enter your Unique API Key.<3>Test your Trigger.<4>You're set!", "install_zapier_app": "Please first install the Zapier App in the app store.", + "install_make_app": "Please first install the Make App in the app store.", "connect_apple_server": "Connect to Apple Server", "calendar_url": "Calendar URL", "apple_server_generate_password": "Generate an app specific password to use with {{appName}} at", @@ -1089,6 +1092,7 @@ "or_lowercase": "or", "nevermind": "Nevermind", "go_to": "Go to: ", + "invite_link_make": "
  • Go toMake Invite Link and install Cal.com appp
  • ", "zapier_invite_link": "Zapier Invite Link", "meeting_url_provided_after_confirmed": "A Meeting URL will be created once the event is confirmed.", "dynamically_display_attendee_or_organizer": "Dynamically display the name of your attendee for you, or your name if it's viewed by your attendee", diff --git a/packages/app-store/_pages/setup/_getStaticProps.tsx b/packages/app-store/_pages/setup/_getStaticProps.tsx index 5e1f963ef6..3a10131c9d 100644 --- a/packages/app-store/_pages/setup/_getStaticProps.tsx +++ b/packages/app-store/_pages/setup/_getStaticProps.tsx @@ -2,6 +2,7 @@ import type { GetStaticPropsContext } from "next"; export const AppSetupPageMap = { zapier: import("../../zapier/pages/setup/_getStaticProps"), + make: import("../../make/pages/setup/_getStaticProps"), }; export const getStaticProps = async (ctx: GetStaticPropsContext) => { diff --git a/packages/app-store/_pages/setup/index.tsx b/packages/app-store/_pages/setup/index.tsx index 22331872a6..6438b04a29 100644 --- a/packages/app-store/_pages/setup/index.tsx +++ b/packages/app-store/_pages/setup/index.tsx @@ -9,6 +9,7 @@ export const AppSetupMap = { "exchange2016-calendar": dynamic(() => import("../../exchange2016calendar/pages/setup")), "caldav-calendar": dynamic(() => import("../../caldavcalendar/pages/setup")), zapier: dynamic(() => import("../../zapier/pages/setup")), + make: dynamic(() => import("../../make/pages/setup")), closecom: dynamic(() => import("../../closecom/pages/setup")), sendgrid: dynamic(() => import("../../sendgrid/pages/setup")), paypal: dynamic(() => import("../../paypal/pages/setup")), diff --git a/packages/app-store/apps.keys-schemas.generated.ts b/packages/app-store/apps.keys-schemas.generated.ts index 019da1d5b9..b3b679d8ed 100644 --- a/packages/app-store/apps.keys-schemas.generated.ts +++ b/packages/app-store/apps.keys-schemas.generated.ts @@ -12,6 +12,7 @@ import { appKeysSchema as gtm_zod_ts } from "./gtm/zod"; import { appKeysSchema as hubspot_zod_ts } from "./hubspot/zod"; import { appKeysSchema as jitsivideo_zod_ts } from "./jitsivideo/zod"; import { appKeysSchema as larkcalendar_zod_ts } from "./larkcalendar/zod"; +import { appKeysSchema as make_zod_ts } from "./make/zod"; import { appKeysSchema as metapixel_zod_ts } from "./metapixel/zod"; import { appKeysSchema as office365calendar_zod_ts } from "./office365calendar/zod"; import { appKeysSchema as office365video_zod_ts } from "./office365video/zod"; @@ -43,6 +44,7 @@ export const appKeysSchemas = { hubspot: hubspot_zod_ts, jitsivideo: jitsivideo_zod_ts, larkcalendar: larkcalendar_zod_ts, + make: make_zod_ts, metapixel: metapixel_zod_ts, office365calendar: office365calendar_zod_ts, office365video: office365video_zod_ts, diff --git a/packages/app-store/apps.metadata.generated.ts b/packages/app-store/apps.metadata.generated.ts index 3b7308219e..c9c05fa170 100644 --- a/packages/app-store/apps.metadata.generated.ts +++ b/packages/app-store/apps.metadata.generated.ts @@ -29,6 +29,7 @@ import { metadata as hubspot__metadata_ts } from "./hubspot/_metadata"; import { metadata as huddle01video__metadata_ts } from "./huddle01video/_metadata"; import { metadata as jitsivideo__metadata_ts } from "./jitsivideo/_metadata"; import { metadata as larkcalendar__metadata_ts } from "./larkcalendar/_metadata"; +import make_config_json from "./make/config.json"; import metapixel_config_json from "./metapixel/config.json"; import mirotalk_config_json from "./mirotalk/config.json"; import n8n_config_json from "./n8n/config.json"; @@ -99,6 +100,7 @@ export const appStoreMetadata = { huddle01video: huddle01video__metadata_ts, jitsivideo: jitsivideo__metadata_ts, larkcalendar: larkcalendar__metadata_ts, + make: make_config_json, metapixel: metapixel_config_json, mirotalk: mirotalk_config_json, n8n: n8n_config_json, diff --git a/packages/app-store/apps.schemas.generated.ts b/packages/app-store/apps.schemas.generated.ts index 49ff7731ec..1801493d85 100644 --- a/packages/app-store/apps.schemas.generated.ts +++ b/packages/app-store/apps.schemas.generated.ts @@ -12,6 +12,7 @@ import { appDataSchema as gtm_zod_ts } from "./gtm/zod"; import { appDataSchema as hubspot_zod_ts } from "./hubspot/zod"; import { appDataSchema as jitsivideo_zod_ts } from "./jitsivideo/zod"; import { appDataSchema as larkcalendar_zod_ts } from "./larkcalendar/zod"; +import { appDataSchema as make_zod_ts } from "./make/zod"; import { appDataSchema as metapixel_zod_ts } from "./metapixel/zod"; import { appDataSchema as office365calendar_zod_ts } from "./office365calendar/zod"; import { appDataSchema as office365video_zod_ts } from "./office365video/zod"; @@ -43,6 +44,7 @@ export const appDataSchemas = { hubspot: hubspot_zod_ts, jitsivideo: jitsivideo_zod_ts, larkcalendar: larkcalendar_zod_ts, + make: make_zod_ts, metapixel: metapixel_zod_ts, office365calendar: office365calendar_zod_ts, office365video: office365video_zod_ts, diff --git a/packages/app-store/apps.server.generated.ts b/packages/app-store/apps.server.generated.ts index 6eb15be4f0..e37b6e7113 100644 --- a/packages/app-store/apps.server.generated.ts +++ b/packages/app-store/apps.server.generated.ts @@ -29,6 +29,7 @@ export const apiHandlers = { huddle01video: import("./huddle01video/api"), jitsivideo: import("./jitsivideo/api"), larkcalendar: import("./larkcalendar/api"), + make: import("./make/api"), metapixel: import("./metapixel/api"), mirotalk: import("./mirotalk/api"), n8n: import("./n8n/api"), diff --git a/packages/app-store/index.ts b/packages/app-store/index.ts index 8982003f00..10046d5393 100644 --- a/packages/app-store/index.ts +++ b/packages/app-store/index.ts @@ -26,6 +26,7 @@ const appStore = { webexvideo: () => import("./webex"), giphy: () => import("./giphy"), zapier: () => import("./zapier"), + make: () => import("./make"), exchange2013calendar: () => import("./exchange2013calendar"), exchange2016calendar: () => import("./exchange2016calendar"), exchangecalendar: () => import("./exchangecalendar"), diff --git a/packages/app-store/make/DESCRIPTION.md b/packages/app-store/make/DESCRIPTION.md new file mode 100644 index 0000000000..ff99243ef5 --- /dev/null +++ b/packages/app-store/make/DESCRIPTION.md @@ -0,0 +1,10 @@ +--- +items: + - 1.jpeg + - 2.jpeg + - 3.jpeg + - 4.jpeg + - 5.jpeg +--- + +Workflow automation for everyone. Use the Cal.com app in Make to automate your workflows when a booking is created, rescheduled, cancelled or when a meeting has ended. You can also get all your booking with the 'List Bookings' module.

    **After Installation:** Have you lost your API key? You can always generate a new key on the **Make Setup Page** \ No newline at end of file diff --git a/packages/app-store/make/README.md b/packages/app-store/make/README.md new file mode 100644 index 0000000000..e3de1d11c7 --- /dev/null +++ b/packages/app-store/make/README.md @@ -0,0 +1,22 @@ +# Setting up Make Integration + + +1. Install the app from the Cal app store and generate an API key. Copy the API key. +2. Go to `/admin/apps/automation` in Cal and set the `invite_link` for Make to `https://www.make.com/en/hq/app-invitation/6cb2772b61966508dd8f414ba3b44510` to use the app. +3. Create a [Make account](https://www.make.com/en/login), if you don't have one. +4. Go to `Scenarios` in the sidebar and click on **Create a new scenario**. +5. Search for `Cal.com` in the apps list and select from the list of triggers - Booking Created, Booking Deleted, Booking Rescheduled, Meeting Ended +6. To create a **connection** you will need your Cal deployment url and the app API Key generated above. You only need to create a **connection** once, all webhooks can use that connection. +7. Setup the webhook for the desired event in Make. +8. To delete a webhook, go to `Webhooks` in the left sidebar in Make, pick the webhook you want to delete and click **delete**. + +## Localhost or Self-hosting + +Localhost urls can not be used as the base URL for api endpoints + +Possible solution: using [https://ngrok.com/](https://ngrok.com/) + +1. Create Account +2. [Download](https://ngrok.com/download) ngrok and start a tunnel to your running localhost + - Use forwarding url as your baseUrl for the URL endpoints +3. Use the ngrok url as your Cal deployment url when creating the **Connection** in Make. \ No newline at end of file diff --git a/packages/app-store/make/api/add.ts b/packages/app-store/make/api/add.ts new file mode 100644 index 0000000000..ac5e8078c3 --- /dev/null +++ b/packages/app-store/make/api/add.ts @@ -0,0 +1,20 @@ +import { createDefaultInstallation } from "@calcom/app-store/_utils/installation"; +import type { AppDeclarativeHandler } from "@calcom/types/AppHandler"; + +import appConfig from "../config.json"; + +const handler: AppDeclarativeHandler = { + appType: appConfig.type, + variant: appConfig.variant, + slug: appConfig.slug, + supportsMultipleInstalls: false, + handlerType: "add", + redirect: { + newTab: true, + url: "/apps/make/setup", + }, + createCredential: ({ appType, user, slug, teamId }) => + createDefaultInstallation({ appType, userId: user.id, slug, key: {}, teamId }), +}; + +export default handler; diff --git a/packages/app-store/make/api/index.ts b/packages/app-store/make/api/index.ts new file mode 100644 index 0000000000..d32a6d07b0 --- /dev/null +++ b/packages/app-store/make/api/index.ts @@ -0,0 +1,5 @@ +export { default as add } from "./add"; +export { default as listBookings } from "./subscriptions/listBookings"; +export { default as deleteSubscription } from "./subscriptions/deleteSubscription"; +export { default as addSubscription } from "./subscriptions/addSubscription"; +export { default as me } from "./subscriptions/me"; diff --git a/packages/app-store/make/api/subscriptions/addSubscription.ts b/packages/app-store/make/api/subscriptions/addSubscription.ts new file mode 100644 index 0000000000..3bfd90da16 --- /dev/null +++ b/packages/app-store/make/api/subscriptions/addSubscription.ts @@ -0,0 +1,38 @@ +import type { NextApiRequest, NextApiResponse } from "next"; + +import findValidApiKey from "@calcom/features/ee/api-keys/lib/findValidApiKey"; +import { addSubscription } from "@calcom/features/webhooks/lib/scheduleTrigger"; +import { defaultHandler, defaultResponder } from "@calcom/lib/server"; + +async function handler(req: NextApiRequest, res: NextApiResponse) { + const apiKey = req.query.apiKey as string; + + if (!apiKey) { + return res.status(401).json({ message: "No API key provided" }); + } + + const validKey = await findValidApiKey(apiKey, "make"); + + if (!validKey) { + return res.status(401).json({ message: "API key not valid" }); + } + + const { subscriberUrl, triggerEvent } = req.body; + + const createAppSubscription = await addSubscription({ + appApiKey: validKey, + triggerEvent: triggerEvent, + subscriberUrl: subscriberUrl, + appId: "make", + }); + + if (!createAppSubscription) { + return res.status(500).json({ message: "Could not create subscription." }); + } + + res.status(200).json(createAppSubscription); +} + +export default defaultHandler({ + POST: Promise.resolve({ default: defaultResponder(handler) }), +}); diff --git a/packages/app-store/make/api/subscriptions/deleteSubscription.ts b/packages/app-store/make/api/subscriptions/deleteSubscription.ts new file mode 100644 index 0000000000..20b55e7714 --- /dev/null +++ b/packages/app-store/make/api/subscriptions/deleteSubscription.ts @@ -0,0 +1,40 @@ +import type { NextApiRequest, NextApiResponse } from "next"; +import z from "zod"; + +import findValidApiKey from "@calcom/features/ee/api-keys/lib/findValidApiKey"; +import { deleteSubscription } from "@calcom/features/webhooks/lib/scheduleTrigger"; +import { defaultHandler, defaultResponder } from "@calcom/lib/server"; + +const querySchema = z.object({ + apiKey: z.string(), + id: z.string(), +}); + +async function handler(req: NextApiRequest, res: NextApiResponse) { + const { apiKey, id } = querySchema.parse(req.query); + + if (!apiKey) { + return res.status(401).json({ message: "No API key provided" }); + } + + const validKey = await findValidApiKey(apiKey, "make"); + + if (!validKey) { + return res.status(401).json({ message: "API key not valid" }); + } + + const deleteEventSubscription = await deleteSubscription({ + appApiKey: validKey, + webhookId: id, + appId: "make", + }); + + if (!deleteEventSubscription) { + return res.status(500).json({ message: "Could not delete subscription." }); + } + res.status(204).json({ message: "Subscription is deleted." }); +} + +export default defaultHandler({ + DELETE: Promise.resolve({ default: defaultResponder(handler) }), +}); diff --git a/packages/app-store/make/api/subscriptions/listBookings.ts b/packages/app-store/make/api/subscriptions/listBookings.ts new file mode 100644 index 0000000000..b4204fbe94 --- /dev/null +++ b/packages/app-store/make/api/subscriptions/listBookings.ts @@ -0,0 +1,35 @@ +import type { NextApiRequest, NextApiResponse } from "next"; + +import findValidApiKey from "@calcom/features/ee/api-keys/lib/findValidApiKey"; +import { listBookings } from "@calcom/features/webhooks/lib/scheduleTrigger"; +import { defaultHandler, defaultResponder } from "@calcom/lib/server"; + +async function handler(req: NextApiRequest, res: NextApiResponse) { + const apiKey = req.query.apiKey as string; + + if (!apiKey) { + return res.status(401).json({ message: "No API key provided" }); + } + + const validKey = await findValidApiKey(apiKey, "make"); + + if (!validKey) { + return res.status(401).json({ message: "API key not valid" }); + } + const bookings = await listBookings(validKey); + + if (!bookings) { + return res.status(500).json({ message: "Unable to get bookings." }); + } + if (bookings.length === 0) { + const requested = validKey.teamId ? "teamId: " + validKey.teamId : "userId: " + validKey.userId; + return res.status(404).json({ + message: `There are no bookings to retrieve, please create a booking first. Requested: \`${requested}\``, + }); + } + res.status(201).json(bookings); +} + +export default defaultHandler({ + GET: Promise.resolve({ default: defaultResponder(handler) }), +}); diff --git a/packages/app-store/make/api/subscriptions/me.ts b/packages/app-store/make/api/subscriptions/me.ts new file mode 100644 index 0000000000..f02a84c9d2 --- /dev/null +++ b/packages/app-store/make/api/subscriptions/me.ts @@ -0,0 +1,35 @@ +import type { NextApiRequest, NextApiResponse } from "next"; + +import findValidApiKey from "@calcom/features/ee/api-keys/lib/findValidApiKey"; +import prisma from "@calcom/prisma"; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + const apiKey = req.query.apiKey as string; + + if (!apiKey) { + return res.status(401).json({ message: "No API key provided" }); + } + + const validKey = await findValidApiKey(apiKey, "make"); + + if (!validKey) { + return res.status(401).json({ message: "API key not valid" }); + } + + if (req.method === "GET") { + try { + const user = await prisma.user.findFirst({ + where: { + id: validKey.userId, + }, + select: { + username: true, + }, + }); + res.status(201).json(user); + } catch (error) { + console.error(error); + return res.status(500).json({ message: "Unable to get User." }); + } + } +} diff --git a/packages/app-store/make/config.json b/packages/app-store/make/config.json new file mode 100644 index 0000000000..b88840f47d --- /dev/null +++ b/packages/app-store/make/config.json @@ -0,0 +1,18 @@ +{ + "/*": "Don't modify slug - If required, do it using cli edit command", + "name": "Make", + "slug": "make", + "type": "make_automation", + "logo": "icon.svg", + "url": "https://cal.com/apps/make", + "variant": "automation", + "categories": ["automation"], + "publisher": "aa2dee2", + "email": "support@cal.com", + "description": "Automate workflows", + "isTemplate": false, + "__createdUsingCli": true, + "__template": "basic", + "imageSrc": "icon.svg", + "dirName": "make" +} diff --git a/packages/app-store/make/index.ts b/packages/app-store/make/index.ts new file mode 100644 index 0000000000..d7f3602204 --- /dev/null +++ b/packages/app-store/make/index.ts @@ -0,0 +1 @@ +export * as api from "./api"; diff --git a/packages/app-store/make/package.json b/packages/app-store/make/package.json new file mode 100644 index 0000000000..ce3fc5fa9b --- /dev/null +++ b/packages/app-store/make/package.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://json.schemastore.org/package.json", + "private": true, + "name": "@calcom/make", + "version": "0.0.0", + "main": "./index.ts", + "description": "Workflow automation for everyone. Use the Cal.com Make app to trigger your workflows when a booking is created, rescheduled, or cancelled, or after a meeting ends.", + "dependencies": { + "@calcom/lib": "*" + }, + "devDependencies": { + "@calcom/types": "*", + "@types/node-schedule": "^2.1.0" + } +} diff --git a/packages/app-store/make/pages/setup/_getStaticProps.tsx b/packages/app-store/make/pages/setup/_getStaticProps.tsx new file mode 100644 index 0000000000..1c6cac0efe --- /dev/null +++ b/packages/app-store/make/pages/setup/_getStaticProps.tsx @@ -0,0 +1,20 @@ +import type { GetStaticPropsContext } from "next"; + +import getAppKeysFromSlug from "../../../_utils/getAppKeysFromSlug"; + +export interface IMakeSetupProps { + inviteLink: string; +} + +export const getStaticProps = async (ctx: GetStaticPropsContext) => { + if (typeof ctx.params?.slug !== "string") return { notFound: true } as const; + let inviteLink = ""; + const appKeys = await getAppKeysFromSlug("make"); + if (typeof appKeys.invite_link === "string") inviteLink = appKeys.invite_link; + + return { + props: { + inviteLink, + }, + }; +}; diff --git a/packages/app-store/make/pages/setup/index.tsx b/packages/app-store/make/pages/setup/index.tsx new file mode 100644 index 0000000000..7f097dd14e --- /dev/null +++ b/packages/app-store/make/pages/setup/index.tsx @@ -0,0 +1,178 @@ +import type { InferGetStaticPropsType } from "next"; +import { Trans } from "next-i18next"; +import Link from "next/link"; +import { useState } from "react"; +import { Toaster } from "react-hot-toast"; + +import { useLocale } from "@calcom/lib/hooks/useLocale"; +import { trpc } from "@calcom/trpc/react"; +import { Button, Tooltip, showToast } from "@calcom/ui"; +import { Clipboard } from "@calcom/ui/components/icon"; + +import type { getStaticProps } from "./_getStaticProps"; + +const MAKE = "make"; + +export default function MakeSetup({ inviteLink }: InferGetStaticPropsType) { + const [newApiKeys, setNewApiKeys] = useState>({}); + + const { t } = useLocale(); + const utils = trpc.useContext(); + const integrations = trpc.viewer.integrations.useQuery({ variant: "automation" }); + const oldApiKey = trpc.viewer.apiKeys.findKeyOfType.useQuery({ appId: MAKE }); + const teamsList = trpc.viewer.teams.listOwnedTeams.useQuery(undefined, { + refetchOnWindowFocus: false, + }); + const teams = teamsList.data?.map((team) => ({ id: team.id, name: team.name })); + const deleteApiKey = trpc.viewer.apiKeys.delete.useMutation({ + onSuccess: () => { + utils.viewer.apiKeys.findKeyOfType.invalidate(); + }, + }); + const makeCredentials: { userCredentialIds: number[] } | undefined = integrations.data?.items.find( + (item: { type: string }) => item.type === "make_automation" + ); + const [credentialId] = makeCredentials?.userCredentialIds || [false]; + const showContent = integrations.data && integrations.isSuccess && credentialId; + + async function createApiKey(teamId?: number) { + const event = { note: "Make", expiresAt: null, appId: MAKE, teamId }; + const apiKey = await utils.client.viewer.apiKeys.create.mutate(event); + + if (oldApiKey.data) { + const oldKey = teamId + ? oldApiKey.data.find((key) => key.teamId === teamId) + : oldApiKey.data.find((key) => !key.teamId); + + if (oldKey) { + deleteApiKey.mutate({ + id: oldKey.id, + }); + } + } + + return apiKey; + } + + async function generateApiKey(teamId?: number) { + const apiKey = await createApiKey(teamId); + setNewApiKeys({ ...newApiKeys, [teamId || ""]: apiKey }); + } + + if (integrations.isLoading) { + return
    ; + } + + return ( +
    + {showContent ? ( +
    +
    +
    + Make Logo +
    +
    +
    {t("setting_up_make")}
    + + <> +
    {t("generate_api_key")}:
    + {!teams ? ( + + ) : ( + <> +
    Your event types:
    + {!newApiKeys[""] ? ( + + ) : ( + + )} + {teams.map((team) => { + return ( +
    +
    {team.name}:
    + {!newApiKeys[team.id] ? ( + + ) : ( + + )} +
    + ); + })} + + )} + + +
      + +
    1. + Go to + + Make Invite Link + + and install the Cal.com app. +
    2. +
      + + +
    3. Log into your Make account and create a new Scenario.
    4. +
    5. Select Cal.com as your Trigger app. Also choose a Trigger event.
    6. +
    7. Choose your account and then enter your Unique API Key.
    8. +
    9. Test your Trigger.
    10. +
    11. You're set!
    12. +
      +
    + + + +
    +
    +
    + ) : ( +
    +
    {t("install_make_app")}
    +
    + + + +
    +
    + )} + +
    + ); +} + +const CopyApiKey = ({ apiKey }: { apiKey: string }) => { + const { t } = useLocale(); + return ( +
    +
    + + {apiKey} + + + + +
    +
    {t("copy_somewhere_safe")}
    +
    + ); +}; diff --git a/packages/app-store/make/static/1.jpeg b/packages/app-store/make/static/1.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..54f811f91887fbe0cddb63ebddf48f7b814899a0 GIT binary patch literal 1160898 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

    B7;P=~IZ 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÷YO@HMD~qb`GV z$UDwevVj8y@@5yrR(`;FmDx3F&fGx);T9$c&Sf8&vUr=hw|u?4n|tizGoULT zS5S>AT;TTyc9EDcm{aIp5$*HwZOCre=Gy@(1KV9QhsDG^pP9|i z0Ije4Df-L|x2ONrdRX|OHxLqYdRt8?ag+R*EtwS`oTay@rN2_PgB5h_bfDe-!DJVh ztv=4&Em&rKt(26)x4&Q>M)0@e#ec)+>q~aw=T!>A52>4Hl#3mMQmPlhAj0Ho=AHE4 z4@k+u(2DjfM9Kr;v!mM)axS)I5Nix+%SPbth&e&tXuVEJ6((C!Rb3ZmleD{xE3~j+ zp56^X0$q1?J(v6Og|(GCz&%2STsb;5O2JMh6M@{wi?`^X0@RDBq;dIyDs;wv9Ype_ zag3N<{3ulu-&wvT8}c+4bW4lqY>f05-$D0&1?`!uf@_z6t`S8b9epyJgTX&gownrJ zVQJ%fg-O74GP{MSX4QLbsmkgtKUlk~z?GBk$M(W^?@ys6*50R)+cT26Z5EQ4!wA)t zHj~axXAAc@$(ilh=E|QxLpogsk<`@G(!a7|KBDtI$T@CvnL}Fh{Xcm(a4i{o5?FF; z_1l%&4oI(+)~OpWH1-7qgb(7DIJ?p8lfO|EJ&JUw`+SkZkn6y&uf}w2fH<oMA=2AF$_X^P-~-{)3?|xqKFO<`1XyK0=PQ8d$QO_Ch8QJo3i)XZ~7( zG4Gnmwj7vQ>P%8TkgiEex(dP$cb`X(Yr4jAhT9DexpdU^m-)mTR1o+gIS|9PM7lgF z-s&dPIuBQtM5IE&B*aKGjBW<7;PpbGoQ$TfN{B-w6jTfh&7`{(SdJ_9BEi_EUW|ks z`D_Fab6JRO^n^F3Sz@e#IT5E*xmX|=5kqaa5Yb%LP|j2_>(&tOo)l6e@rqNd3bIYv zV=jre4Hl@BYstzAYhvZ9qw$`o3}(>`N)ef*c11)NJ!~fWCjY$Davkp!6E|TnOASVR zM&u*I<`dvpHOMfv+zEUkn}M2;kww2J78zDTgIL<6Krm75MlR3994iG&a9=hkHcQ_c zB|7Hd*bw(H#Yxnl>J*U;CcVU>LRF`RXvNgBqpS52eQv|mkX&i!T7EHvdYivdJWZ+v zr6-cdKuqxg#IU(MX`eFYBYJ+Nd->TWin#_k#GQ`PHT&Mr1GD zehKRPn1vibTdKBFc>U!$&b)O!9fV$6SdLRaw^-qA0C;UG6 z+#{Ft(lZ1TJ$6-uNv}oc9JNZx3Ku6DJKP)K0QKuzJ>Kk`>jQRI`eNpxi9U;VT zTUFK3rw#g>vuEcS(UJl(RA+=oqR(?RD)e29)&p-AM8y;G_eS&lJm<)8HUH++z)hI$s{r}Or9>E{|?pXmO(9V zcQOO^AyGwjG4gV@WPb@?8~7#6iW!w2;{gr-lc_!Kch!>~TKgjz?gO!1jEK_S`}00q z8o(NE!y7GmXkr-{@MC7*mX!HtwTCJHd$eb>0x}}9rEEt$=k3Iz~Y(Jig z%JA`|^uD@+sHz+)7xT!XD1|J&kbjn602fY0t95b{55`Bf5)`D7^p&G@IVMzFx5waO zZQMyDXIAm4<*qj%4L_M3fR-p(t;^nEd!1HW2c~TO1VA|Tv_Ek^=9vC& zt$?rXF4|&MO zBc7tHEltvh9)&3p;s);%b`*<~qgPDOLxU$E2elFAaAyme;3*JXV(4X&l&pwjlqN&8 z%uNZvFTAI)(aeL8^)D^SWiUK)mqkWOG7*Ez2GxQQAVAL&WL_Q-9$ltkiMg2h3yp*# zJ*P`Ss4QA6H4n}{j8Ggq1Dn>2#U6w&CR*7wRk!+?TrfZfPXeE(j)lL5R|_eTln

    - {((otherTeam.accepted && otherTeam.userId === session.data?.user.id) || - isOrgAdminOrOwner) && ( - - )} { - const teamsInOrgIamNotPartOf = await prisma.membership.findMany({ + const teamsInOrgIamNotPartOf = await prisma.team.findMany({ where: { - userId: { - not: ctx.user.id, + parent: { + id: ctx.user?.organization?.id, }, - team: { - parent: { - is: { - id: ctx.user?.organization?.id, - }, - }, - members: { - none: { - userId: ctx.user.id, - }, + members: { + none: { + userId: ctx.user.id, }, }, }, - include: { - team: true, - }, - orderBy: { role: "desc" }, - distinct: ["teamId"], }); - return teamsInOrgIamNotPartOf.map(({ team, ...membership }) => ({ - role: membership.role, - accepted: membership.accepted, - userId: membership.userId, - isOrgAdmin: true, - ...team, - })); + return teamsInOrgIamNotPartOf; }; export default listOtherTeamHandler; From 576261bf88fdea599738dd8bb0e5c3d898aca6cc Mon Sep 17 00:00:00 2001 From: Crowdin Bot Date: Mon, 4 Sep 2023 15:50:49 +0000 Subject: [PATCH 04/38] New Crowdin translations by Github Action --- apps/web/public/static/locales/fr/common.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/web/public/static/locales/fr/common.json b/apps/web/public/static/locales/fr/common.json index f67efc9e50..eea83dbd5f 100644 --- a/apps/web/public/static/locales/fr/common.json +++ b/apps/web/public/static/locales/fr/common.json @@ -1053,12 +1053,15 @@ "how_you_want_add_cal_site": "Comment souhaitez-vous ajouter {{appName}} à votre site ?", "choose_ways_put_cal_site": "Choisissez l'une des méthodes suivantes pour mettre {{appName}} sur votre site.", "setting_up_zapier": "Configuration de votre intégration Zapier", + "setting_up_make": "Configuration de votre intégration Make", "generate_api_key": "Générer une clé API", "generate_api_key_description": "Générer une clé API à utiliser avec {{appName}} sur", "your_unique_api_key": "Votre clé API unique", "copy_safe_api_key": "Copiez cette clé API et conservez-la dans un endroit sûr. Si vous perdez cette clé, vous devrez en générer une nouvelle.", - "zapier_setup_instructions": "<0>Connectez-vous à votre compte Zapier et créez un nouveau Zap.<1>Sélectionnez Cal.com comme application Trigger. Choisissez également un événement Trigger.<2>Choisissez votre compte, puis saisissez votre clé API unique.<3>Testez votre Trigger.<4>Vous êtes prêt !", + "zapier_setup_instructions": "<0>Connectez-vous à votre compte Zapier et créez un nouveau Zap.<1>Sélectionnez Cal.com comme application déclencheur. Choisissez également un événement déclencheur.<2>Choisissez votre compte, puis saisissez votre clé API unique.<3>Testez votre déclencheur.<4>Vous êtes prêt !", + "make_setup_instructions": "<0>Connectez-vous à votre compte Make et créez un nouveau Scénario.<1>Sélectionnez Cal.com comme application déclencheur. Choisissez également un événement déclencheur.<2>Choisissez votre compte, puis saisissez votre clé API unique.<3>Testez votre déclencheur.<4>Vous êtes prêt !", "install_zapier_app": "Veuillez d'abord installer l'application Zapier dans l'App Store.", + "install_make_app": "Veuillez d'abord installer l'application Make dans l'App Store.", "connect_apple_server": "Se connecter au serveur d'Apple", "calendar_url": "Lien du calendrier", "apple_server_generate_password": "Générez un mot de passe pour application à utiliser avec {{appName}} sur", @@ -1089,6 +1092,7 @@ "or_lowercase": "ou", "nevermind": "Annuler", "go_to": "Aller à : ", + "invite_link_make": "", "zapier_invite_link": "Lien d'invitation Zapier", "meeting_url_provided_after_confirmed": "Un lien de rendez-vous sera créé une fois l'événement confirmé.", "dynamically_display_attendee_or_organizer": "Affiche dynamiquement le nom du participant pour vous ou votre nom s'il est vu par le participant", @@ -1116,7 +1120,7 @@ "add_new_workflow": "Ajouter un nouveau workflow", "reschedule_event_trigger": "lorsque l'événement est replanifié", "trigger": "Déclencheur", - "triggers": "Déclencher", + "triggers": "Déclencheurs", "action": "Action", "workflows_to_automate_notifications": "Créez des workflows pour automatiser les notifications et les rappels.", "workflow_name": "Nom du workflow", From 1c451a8d51a07bf6dfd7d1208b369f013dd9975a Mon Sep 17 00:00:00 2001 From: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Date: Mon, 4 Sep 2023 21:21:59 +0530 Subject: [PATCH 05/38] fix: installed badge (#11131) --- packages/ui/components/apps/AppCard.tsx | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/ui/components/apps/AppCard.tsx b/packages/ui/components/apps/AppCard.tsx index 593d03f32d..1bbaca9f18 100644 --- a/packages/ui/components/apps/AppCard.tsx +++ b/packages/ui/components/apps/AppCard.tsx @@ -21,6 +21,7 @@ import { DropdownMenuLabel, DropdownItem, Avatar, + Badge, } from "@calcom/ui"; import { Button } from "../button"; @@ -154,15 +155,10 @@ export function AppCard({ app, credentials, searchText, userAdminTeams }: AppCar )}
    - {appInstalled ? ( - - {t("installed", { count: appAdded })} - - ) : null} + {appInstalled ? {t("installed", { count: appAdded })} : null} {app.isTemplate && ( Template )} - {(app.isDefault || (!app.isDefault && app.isGlobal)) && ( {t("default")} From d26bab5880fbe702ae5e9c3c8d984c6549bd656d Mon Sep 17 00:00:00 2001 From: Madhan Kumar <56962681+Madhan13K@users.noreply.github.com> Date: Mon, 4 Sep 2023 21:43:12 +0530 Subject: [PATCH 06/38] fix: Require an 'Email' placeholder in the 'Add guest' field. (#11123) * Adding_Email_PlaceHolder_Text Signed-off-by: Madhan Kumar M * Adding_Email_PlaceHolder_Text Signed-off-by: Madhan Kumar M * Adding_Email_PlaceHolder_Text Signed-off-by: Madhan Kumar M * fixes * fixes --------- Signed-off-by: Madhan Kumar M Co-authored-by: Alan --- packages/features/bookings/lib/getBookingFields.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/features/bookings/lib/getBookingFields.ts b/packages/features/bookings/lib/getBookingFields.ts index cab4a34ecd..b6441d3b77 100644 --- a/packages/features/bookings/lib/getBookingFields.ts +++ b/packages/features/bookings/lib/getBookingFields.ts @@ -251,6 +251,7 @@ export const ensureBookingInputsHaveSystemFields = ({ type: "multiemail", editable: "system-but-optional", name: "guests", + defaultPlaceholder: "email", required: false, hidden: disableGuests, sources: [ From 3c5901edb803a13b8da119140eb0e193145c6631 Mon Sep 17 00:00:00 2001 From: Peer Richelsen Date: Mon, 4 Sep 2023 18:21:37 +0200 Subject: [PATCH 07/38] chore: cal.ai redirect (#11130) --- apps/ai/next.config.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/apps/ai/next.config.js b/apps/ai/next.config.js index 2a1040b258..bdeffec2dc 100644 --- a/apps/ai/next.config.js +++ b/apps/ai/next.config.js @@ -5,6 +5,15 @@ plugins.push(withBundleAnalyzer({ enabled: process.env.ANALYZE === "true" })); /** @type {import("next").NextConfig} */ const nextConfig = { + async redirects() { + return [ + { + source: '/', + destination: 'https://cal.com/ai', + permanent: true, + }, + ] + }, i18n: { defaultLocale: "en", locales: ["en"], @@ -13,3 +22,4 @@ const nextConfig = { }; module.exports = () => plugins.reduce((acc, next) => next(acc), nextConfig); + From 13f9e97015cc8e876fd1304dee0e6425e7797cc0 Mon Sep 17 00:00:00 2001 From: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> Date: Mon, 4 Sep 2023 14:01:12 -0400 Subject: [PATCH 08/38] fix: variables for custom webhook payload (#11135) Co-authored-by: CarinaWolli --- packages/features/webhooks/lib/sendPayload.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/features/webhooks/lib/sendPayload.ts b/packages/features/webhooks/lib/sendPayload.ts index da7d355acb..402f42bb5f 100644 --- a/packages/features/webhooks/lib/sendPayload.ts +++ b/packages/features/webhooks/lib/sendPayload.ts @@ -77,11 +77,7 @@ function getZapierPayload( } function applyTemplate(template: string, data: WebhookDataType, contentType: ContentType) { - const organizer = JSON.stringify(data.organizer); - const attendees = JSON.stringify(data.attendees); - const formattedData = { ...data, metadata: JSON.stringify(data.metadata), organizer, attendees }; - - const compiled = compile(template)(formattedData).replace(/"/g, '"'); + const compiled = compile(template)(data).replace(/"/g, '"'); if (contentType === "application/json") { return JSON.stringify(jsonParse(compiled)); From 01500414963cc705815c7d8d1a31863b118ee683 Mon Sep 17 00:00:00 2001 From: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Date: Tue, 5 Sep 2023 01:13:37 +0530 Subject: [PATCH 09/38] fix: improve UX of team invite by copy link (#11009) --- apps/web/pages/auth/login.tsx | 9 +++++- apps/web/pages/signup.tsx | 30 ++++++++++++++----- apps/web/pages/teams/index.tsx | 17 +++++++++++ apps/web/public/static/locales/en/common.json | 1 + 4 files changed, 48 insertions(+), 9 deletions(-) diff --git a/apps/web/pages/auth/login.tsx b/apps/web/pages/auth/login.tsx index ca4e752e72..032289bfe6 100644 --- a/apps/web/pages/auth/login.tsx +++ b/apps/web/pages/auth/login.tsx @@ -52,6 +52,8 @@ export default function Login({ totpEmail, }: inferSSRProps & WithNonceProps) { const searchParams = useSearchParams(); + const isTeamInvite = searchParams.get("teamInvite"); + const { t } = useLocale(); const router = useRouter(); const formSchema = z @@ -95,7 +97,9 @@ export default function Login({ callbackUrl = safeCallbackUrl || ""; const LoginFooter = ( - + {t("dont_have_an_account")} ); @@ -184,6 +188,9 @@ export default function Login({ ? LoginFooter : null }> + {isTeamInvite && ( + + )}
    diff --git a/apps/web/pages/signup.tsx b/apps/web/pages/signup.tsx index c41025bc99..151186a6d1 100644 --- a/apps/web/pages/signup.tsx +++ b/apps/web/pages/signup.tsx @@ -13,6 +13,7 @@ import { isSAMLLoginEnabled } from "@calcom/features/ee/sso/lib/saml"; import { useFlagMap } from "@calcom/features/flags/context/provider"; import { getFeatureFlagMap } from "@calcom/features/flags/server/utils"; import { IS_SELF_HOSTED, WEBAPP_URL } from "@calcom/lib/constants"; +import { getSafeRedirectUrl } from "@calcom/lib/getSafeRedirectUrl"; import { useLocale } from "@calcom/lib/hooks/useLocale"; import slugify from "@calcom/lib/slugify"; import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@calcom/lib/telemetry"; @@ -34,6 +35,23 @@ type FormValues = z.infer; type SignupProps = inferSSRProps; +const getSafeCallbackUrl = (url: string | null) => { + if (!url) return null; + + let callbackUrl = url; + + if (/"\//.test(callbackUrl)) callbackUrl = callbackUrl.substring(1); + + // If not absolute URL, make it absolute + if (!/^https?:\/\//.test(callbackUrl)) { + callbackUrl = `${WEBAPP_URL}/${callbackUrl}`; + } + + const safeCallbackUrl = getSafeRedirectUrl(callbackUrl); + + return safeCallbackUrl; +}; + export default function Signup({ prepopulateFormValues, token, orgSlug }: SignupProps) { const searchParams = useSearchParams(); const telemetry = useTelemetry(); @@ -55,6 +73,7 @@ export default function Signup({ prepopulateFormValues, token, orgSlug }: Signup throw new Error(err.message); } }; + const callbackUrl = getSafeCallbackUrl(searchParams.get("callbackUrl")); const signUp: SubmitHandler = async (data) => { await fetch("/api/auth/signup", { @@ -72,13 +91,10 @@ export default function Signup({ prepopulateFormValues, token, orgSlug }: Signup .then(async () => { telemetry.event(telemetryEventTypes.signup, collectPageParameters()); const verifyOrGettingStarted = flags["email-verification"] ? "auth/verify-email" : "getting-started"; + await signIn<"credentials">("credentials", { ...data, - callbackUrl: `${ - searchParams?.get("callbackUrl") - ? `${WEBAPP_URL}/${searchParams.get("callbackUrl")}` - : `${WEBAPP_URL}/${verifyOrGettingStarted}` - }?from=signup`, + callbackUrl: `${callbackUrl ? callbackUrl : `${WEBAPP_URL}/${verifyOrGettingStarted}`}?from=signup`, }); }) .catch((err) => { @@ -157,9 +173,7 @@ export default function Signup({ prepopulateFormValues, token, orgSlug }: Signup className="w-full justify-center" onClick={() => signIn("Cal.com", { - callbackUrl: searchParams?.get("callbackUrl") - ? `${WEBAPP_URL}/${searchParams.get("callbackUrl")}` - : `${WEBAPP_URL}/getting-started`, + callbackUrl: callbackUrl ? callbackUrl : `${WEBAPP_URL}/getting-started`, }) }> {t("login_instead")} diff --git a/apps/web/pages/teams/index.tsx b/apps/web/pages/teams/index.tsx index 392c54f59e..892e1bfedb 100644 --- a/apps/web/pages/teams/index.tsx +++ b/apps/web/pages/teams/index.tsx @@ -1,9 +1,11 @@ import type { GetServerSidePropsContext } from "next"; import { getLayout } from "@calcom/features/MainLayout"; +import { getServerSession } from "@calcom/features/auth/lib/getServerSession"; import { TeamsListing } from "@calcom/features/ee/teams/components"; import { ShellMain } from "@calcom/features/shell/Shell"; import { WEBAPP_URL } from "@calcom/lib/constants"; +import { getSafeRedirectUrl } from "@calcom/lib/getSafeRedirectUrl"; import { useLocale } from "@calcom/lib/hooks/useLocale"; import { trpc } from "@calcom/trpc/react"; import { Button } from "@calcom/ui"; @@ -41,6 +43,21 @@ function Teams() { export const getServerSideProps = async (context: GetServerSidePropsContext) => { const ssr = await ssrInit(context); await ssr.viewer.me.prefetch(); + const session = await getServerSession({ req: context.req, res: context.res }); + const token = context.query?.token; + const resolvedUrl = context.resolvedUrl; + + const callbackUrl = token ? getSafeRedirectUrl(`${WEBAPP_URL}${resolvedUrl}`) : null; + + if (!session) { + return { + redirect: { + destination: callbackUrl ? `/auth/login?callbackUrl=${callbackUrl}&teamInvite=true` : "/auth/login", + permanent: false, + }, + props: {}, + }; + } return { props: { trpcState: ssr.dehydrate() } }; }; diff --git a/apps/web/public/static/locales/en/common.json b/apps/web/public/static/locales/en/common.json index 2f2d9c374a..c2979a5ec2 100644 --- a/apps/web/public/static/locales/en/common.json +++ b/apps/web/public/static/locales/en/common.json @@ -45,6 +45,7 @@ "invite_team_individual_segment": "Invite individual", "invite_team_bulk_segment": "Bulk import", "invite_team_notifcation_badge": "Inv.", + "signin_or_signup_to_accept_invite": "You need to Sign in or Sign up to see team invitation.", "your_event_has_been_scheduled": "Your event has been scheduled", "your_event_has_been_scheduled_recurring": "Your recurring event has been scheduled", "accept_our_license": "Accept our license by changing the .env variable <1>NEXT_PUBLIC_LICENSE_CONSENT to '{{agree}}'.", From 889164195358a46e70229b913acb3576bd47fcfc Mon Sep 17 00:00:00 2001 From: alannnc Date: Mon, 4 Sep 2023 13:25:39 -0700 Subject: [PATCH 10/38] hotfix: missing gCal calendarId (#11139) Co-authored-by: zomars --- packages/app-store/googlecalendar/lib/CalendarService.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/app-store/googlecalendar/lib/CalendarService.ts b/packages/app-store/googlecalendar/lib/CalendarService.ts index 755c7bcc40..e0b98b2ca0 100644 --- a/packages/app-store/googlecalendar/lib/CalendarService.ts +++ b/packages/app-store/googlecalendar/lib/CalendarService.ts @@ -144,14 +144,14 @@ export default class GoogleCalendarService implements Calendar { }); // Find in calEventRaw.destinationCalendar the one with the same credentialId - const selectedCalendar = calEventRaw.destinationCalendar?.find( - (cal) => cal.credentialId === credentialId - )?.externalId; + const selectedCalendar = + calEventRaw.destinationCalendar?.find((cal) => cal.credentialId === credentialId)?.externalId || + "primary"; calendar.events.insert( { auth: myGoogleAuth, - calendarId: selectedCalendar || "primary", + calendarId: selectedCalendar, requestBody: payload, conferenceDataVersion: 1, sendUpdates: "none", From 41ef354c7bdcf5cc7577b3a146a1b63d26979d58 Mon Sep 17 00:00:00 2001 From: Hariom Balhara Date: Tue, 5 Sep 2023 02:34:57 +0530 Subject: [PATCH 11/38] fix: `FORM_SUBMITTED` webhook payload change and support for Team Webhooks with it (#10986) --- apps/web/playwright/fixtures/routingForms.ts | 61 ++++++++ apps/web/playwright/lib/fixtures.ts | 5 + apps/web/playwright/webhook.e2e.ts | 146 ++++++++++++++---- .../playwright/tests/basic.e2e.ts | 88 +---------- .../playwright/tests/testUtils.ts | 83 ++++++++++ .../app-store/routing-forms/trpc/utils.ts | 47 ++++-- .../typeform/playwright/tests/basic.e2e.ts | 2 +- packages/features/webhooks/lib/sendPayload.ts | 37 +++-- .../webhooks/pages/webhook-edit-view.tsx | 2 +- .../webhooks/pages/webhook-new-view.tsx | 2 +- 10 files changed, 333 insertions(+), 140 deletions(-) create mode 100644 apps/web/playwright/fixtures/routingForms.ts create mode 100644 packages/app-store/routing-forms/playwright/tests/testUtils.ts diff --git a/apps/web/playwright/fixtures/routingForms.ts b/apps/web/playwright/fixtures/routingForms.ts new file mode 100644 index 0000000000..751503e315 --- /dev/null +++ b/apps/web/playwright/fixtures/routingForms.ts @@ -0,0 +1,61 @@ +import { v4 as uuidv4 } from "uuid"; + +import { prisma } from "@calcom/prisma"; + +type Route = { + id: string; + action: { + type: string; + value: string; + }; + isFallback: boolean; + queryValue: { + id: string; + type: string; + }; +}; + +export const createRoutingFormsFixture = () => { + return { + async create({ + userId, + teamId, + name, + fields, + routes = [], + }: { + name: string; + userId: number; + teamId: number | null; + routes?: Route[]; + fields: { + type: string; + label: string; + identifier?: string; + required: boolean; + }[]; + }) { + return await prisma.app_RoutingForms_Form.create({ + data: { + name, + userId, + teamId, + routes: [ + ...routes, + // Add a fallback route always, this is taken care of tRPC route normally but do it manually while running the query directly. + { + id: "898899aa-4567-489a-bcde-f1823f708646", + action: { type: "customPageMessage", value: "Fallback Message" }, + isFallback: true, + queryValue: { id: "898899aa-4567-489a-bcde-f1823f708646", type: "group" }, + }, + ], + fields: fields.map((f) => ({ + id: uuidv4(), + ...f, + })), + }, + }); + }, + }; +}; diff --git a/apps/web/playwright/lib/fixtures.ts b/apps/web/playwright/lib/fixtures.ts index b8c6dc4e88..3d8fb05490 100644 --- a/apps/web/playwright/lib/fixtures.ts +++ b/apps/web/playwright/lib/fixtures.ts @@ -10,6 +10,7 @@ import type { ExpectedUrlDetails } from "../../../../playwright.config"; import { createBookingsFixture } from "../fixtures/bookings"; import { createEmbedsFixture, createGetActionFiredDetails } from "../fixtures/embeds"; import { createPaymentsFixture } from "../fixtures/payments"; +import { createRoutingFormsFixture } from "../fixtures/routingForms"; import { createServersFixture } from "../fixtures/servers"; import { createUsersFixture } from "../fixtures/users"; @@ -23,6 +24,7 @@ export interface Fixtures { servers: ReturnType; prisma: typeof prisma; emails?: API; + routingForms: ReturnType; } declare global { @@ -71,6 +73,9 @@ export const test = base.extend({ prisma: async ({}, use) => { await use(prisma); }, + routingForms: async ({}, use) => { + await use(createRoutingFormsFixture()); + }, emails: async ({}, use) => { if (IS_MAILHOG_ENABLED) { const mailhogAPI = mailhog(); diff --git a/apps/web/playwright/webhook.e2e.ts b/apps/web/playwright/webhook.e2e.ts index a56f5a425b..af0be0f580 100644 --- a/apps/web/playwright/webhook.e2e.ts +++ b/apps/web/playwright/webhook.e2e.ts @@ -1,3 +1,4 @@ +import type { Page } from "@playwright/test"; import { expect } from "@playwright/test"; import { test } from "./lib/fixtures"; @@ -9,6 +10,9 @@ import { gotoRoutingLink, } from "./lib/testUtils"; +// remove dynamic properties that differs depending on where you run the tests +const dynamic = "[redacted/dynamic]"; + test.afterEach(({ users }) => users.deleteAll()); test.describe("BOOKING_CREATED", async () => { @@ -55,8 +59,6 @@ test.describe("BOOKING_CREATED", async () => { // eslint-disable-next-line @typescript-eslint/no-explicit-any const body: any = request.body; - // remove dynamic properties that differs depending on where you run the tests - const dynamic = "[redacted/dynamic]"; body.createdAt = dynamic; body.payload.startTime = dynamic; body.payload.endTime = dynamic; @@ -187,8 +189,6 @@ test.describe("BOOKING_REJECTED", async () => { // eslint-disable-next-line @typescript-eslint/no-explicit-any const body = request.body as any; - // remove dynamic properties that differs depending on where you run the tests - const dynamic = "[redacted/dynamic]"; body.createdAt = dynamic; body.payload.startTime = dynamic; body.payload.endTime = dynamic; @@ -311,8 +311,6 @@ test.describe("BOOKING_REQUESTED", async () => { // eslint-disable-next-line @typescript-eslint/no-explicit-any const body = request.body as any; - // remove dynamic properties that differs depending on where you run the tests - const dynamic = "[redacted/dynamic]"; body.createdAt = dynamic; body.payload.startTime = dynamic; body.payload.endTime = dynamic; @@ -391,54 +389,136 @@ test.describe("BOOKING_REQUESTED", async () => { }); test.describe("FORM_SUBMITTED", async () => { - test("can submit a form and get a submission event", async ({ page, users }) => { + test("on submitting user form, triggers user webhook", async ({ page, users, routingForms }) => { const webhookReceiver = createHttpServer(); - const user = await users.create(); + const user = await users.create(null, { + hasTeam: true, + }); await user.apiLogin(); - await page.goto("/settings/teams/new"); - await page.waitForLoadState("networkidle"); - const teamName = `${user.username}'s Team`; - // Create a new team - await page.locator('input[name="name"]').fill(teamName); - await page.locator('input[name="slug"]').fill(teamName); - await page.locator('button[type="submit"]').click(); - - await page.locator("text=Publish team").click(); - await page.waitForURL(/\/settings\/teams\/(\d+)\/profile$/i); - - await page.waitForLoadState("networkidle"); - - await page.waitForLoadState("networkidle"); await page.goto(`/settings/developer/webhooks/new`); // Add webhook await page.fill('[name="subscriberUrl"]', webhookReceiver.url); await page.fill('[name="secret"]', "secret"); - await Promise.all([page.click("[type=submit]"), page.goForward()]); + await page.click("[type=submit]"); // Page contains the url expect(page.locator(`text='${webhookReceiver.url}'`)).toBeDefined(); await page.waitForLoadState("networkidle"); - await page.goto("/routing-forms/forms"); - await page.click('[data-testid="new-routing-form"]'); - // Choose to create the Form for the user(which is the first option) and not the team - await page.click('[data-testid="option-0"]'); - await page.fill("input[name]", "TEST FORM"); - await page.click('[data-testid="add-form"]'); - await page.waitForSelector('[data-testid="add-field"]'); - const url = page.url(); - const formId = new URL(url).pathname.split("/").at(-1); + const form = await routingForms.create({ + name: "Test Form", + userId: user.id, + teamId: null, + fields: [ + { + type: "text", + label: "Name", + identifier: "name", + required: true, + }, + ], + }); - await gotoRoutingLink({ page, formId: formId }); + await gotoRoutingLink({ page, formId: form.id }); + const fieldName = "name"; + await page.fill(`[data-testid="form-field-${fieldName}"]`, "John Doe"); page.click('button[type="submit"]'); await waitFor(() => { expect(webhookReceiver.requestList.length).toBe(1); }); + const [request] = webhookReceiver.requestList; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const body = request.body as any; + body.createdAt = dynamic; + expect(body).toEqual({ + triggerEvent: "FORM_SUBMITTED", + createdAt: dynamic, + payload: { + formId: form.id, + formName: form.name, + teamId: null, + responses: { + name: { + value: "John Doe", + }, + }, + }, + name: "John Doe", + }); + + webhookReceiver.close(); + }); + + test("on submitting team form, triggers team webhook", async ({ page, users, routingForms }) => { + const webhookReceiver = createHttpServer(); + const user = await users.create(null, { + hasTeam: true, + }); + await user.apiLogin(); + + await page.goto(`/settings/developer/webhooks`); + const teamId = await clickFirstTeamWebhookCta(page); + + // Add webhook + await page.fill('[name="subscriberUrl"]', webhookReceiver.url); + await page.fill('[name="secret"]', "secret"); + await page.click("[type=submit]"); + + const form = await routingForms.create({ + name: "Test Form", + userId: user.id, + teamId: teamId, + fields: [ + { + type: "text", + label: "Name", + identifier: "name", + required: true, + }, + ], + }); + + await gotoRoutingLink({ page, formId: form.id }); + const fieldName = "name"; + await page.fill(`[data-testid="form-field-${fieldName}"]`, "John Doe"); + page.click('button[type="submit"]'); + await waitFor(() => { + expect(webhookReceiver.requestList.length).toBe(1); + }); + const [request] = webhookReceiver.requestList; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const body = request.body as any; + body.createdAt = dynamic; + expect(body).toEqual({ + triggerEvent: "FORM_SUBMITTED", + createdAt: dynamic, + payload: { + formId: form.id, + formName: form.name, + teamId, + responses: { + name: { + value: "John Doe", + }, + }, + }, + name: "John Doe", + }); + webhookReceiver.close(); }); }); + +async function clickFirstTeamWebhookCta(page: Page) { + await page.click('[data-testid="new_webhook"]'); + await page.click('[data-testid="option-team-1"]'); + await page.waitForURL((u) => u.pathname === "/settings/developer/webhooks/new"); + const url = page.url(); + const teamId = Number(new URL(url).searchParams.get("teamId")) as number; + return teamId; +} diff --git a/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts b/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts index 5878906607..00b32083f6 100644 --- a/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts +++ b/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts @@ -5,6 +5,13 @@ import type { Fixtures } from "@calcom/web/playwright/lib/fixtures"; import { test } from "@calcom/web/playwright/lib/fixtures"; import { gotoRoutingLink } from "@calcom/web/playwright/lib/testUtils"; +import { + addForm, + saveCurrentForm, + verifySelectOptions, + addOneFieldAndDescriptionAndSaveForm, +} from "./testUtils"; + function todo(title: string) { // eslint-disable-next-line playwright/no-skipped-test, @typescript-eslint/no-empty-function test.skip(title, () => {}); @@ -407,22 +414,6 @@ async function fillSeededForm(page: Page, routingFormId: string) { await expect(page.locator("text=Custom Page Result")).toBeVisible(); } -export async function addForm(page: Page, { name = "Test Form Name" } = {}) { - await page.goto("/routing-forms/forms"); - await page.click('[data-testid="new-routing-form"]'); - // Choose to create the Form for the user(which is the first option) and not the team - await page.click('[data-testid="option-0"]'); - await page.fill("input[name]", name); - await page.click('[data-testid="add-form"]'); - await page.waitForSelector('[data-testid="add-field"]'); - const url = page.url(); - const formId = new URL(url).pathname.split("/").at(-1); - if (!formId) { - throw new Error("Form ID couldn't be determined from url"); - } - return formId; -} - async function addAllTypesOfFieldsAndSaveForm( formId: string, page: Page, @@ -480,46 +471,6 @@ async function addAllTypesOfFieldsAndSaveForm( }; } -export async function addOneFieldAndDescriptionAndSaveForm( - formId: string, - page: Page, - form: { description?: string; field?: { typeIndex: number; label: string } } -) { - await page.goto(`apps/routing-forms/form-edit/${formId}`); - await page.click('[data-testid="add-field"]'); - if (form.description) { - await page.fill('[data-testid="description"]', form.description); - } - - // Verify all Options of SelectBox - const { optionsInUi: types } = await verifySelectOptions( - { selector: ".data-testid-field-type", nth: 0 }, - ["Email", "Long Text", "Multiple Selection", "Number", "Phone", "Single Selection", "Short Text"], - page - ); - - const nextFieldIndex = (await page.locator('[data-testid="field"]').count()) - 1; - - if (form.field) { - await page.fill(`[data-testid="fields.${nextFieldIndex}.label"]`, form.field.label); - await page - .locator('[data-testid="field"]') - .nth(nextFieldIndex) - .locator(".data-testid-field-type") - .click(); - await page - .locator('[data-testid="field"]') - .nth(nextFieldIndex) - .locator('[id*="react-select-"][aria-disabled]') - .nth(form.field.typeIndex) - .click(); - } - await saveCurrentForm(page); - return { - types, - }; -} - async function selectOption({ page, selector, @@ -551,26 +502,6 @@ async function verifyFieldOptionsInRule(options: string[], page: Page) { ); } -async function verifySelectOptions( - selector: { selector: string; nth: number }, - expectedOptions: string[], - page: Page -) { - await page.locator(selector.selector).nth(selector.nth).click(); - const selectOptions = await page - .locator(selector.selector) - .nth(selector.nth) - .locator('[id*="react-select-"][aria-disabled]') - .allInnerTexts(); - - const sortedSelectOptions = [...selectOptions].sort(); - const sortedExpectedOptions = [...expectedOptions].sort(); - expect(sortedSelectOptions).toEqual(sortedExpectedOptions); - return { - optionsInUi: selectOptions, - }; -} - async function selectNewRoute(page: Page, { routeSelectNumber = 1 } = {}) { await selectOption({ selector: { @@ -581,8 +512,3 @@ async function selectNewRoute(page: Page, { routeSelectNumber = 1 } = {}) { page, }); } - -async function saveCurrentForm(page: Page) { - await page.click('[data-testid="update-form"]'); - await page.waitForSelector(".data-testid-toast-success"); -} diff --git a/packages/app-store/routing-forms/playwright/tests/testUtils.ts b/packages/app-store/routing-forms/playwright/tests/testUtils.ts new file mode 100644 index 0000000000..03220258d1 --- /dev/null +++ b/packages/app-store/routing-forms/playwright/tests/testUtils.ts @@ -0,0 +1,83 @@ +import type { Page } from "@playwright/test"; +import { expect } from "@playwright/test"; + +export async function addForm(page: Page, { name = "Test Form Name" } = {}) { + await page.goto("/routing-forms/forms"); + await page.click('[data-testid="new-routing-form"]'); + // Choose to create the Form for the user(which is the first option) and not the team + await page.click('[data-testid="option-0"]'); + await page.fill("input[name]", name); + await page.click('[data-testid="add-form"]'); + await page.waitForSelector('[data-testid="add-field"]'); + const url = page.url(); + const formId = new URL(url).pathname.split("/").at(-1); + if (!formId) { + throw new Error("Form ID couldn't be determined from url"); + } + return formId; +} + +export async function addOneFieldAndDescriptionAndSaveForm( + formId: string, + page: Page, + form: { description?: string; field?: { typeIndex: number; label: string } } +) { + await page.goto(`apps/routing-forms/form-edit/${formId}`); + await page.click('[data-testid="add-field"]'); + if (form.description) { + await page.fill('[data-testid="description"]', form.description); + } + + // Verify all Options of SelectBox + const { optionsInUi: types } = await verifySelectOptions( + { selector: ".data-testid-field-type", nth: 0 }, + ["Email", "Long Text", "Multiple Selection", "Number", "Phone", "Single Selection", "Short Text"], + page + ); + + const nextFieldIndex = (await page.locator('[data-testid="field"]').count()) - 1; + + if (form.field) { + await page.fill(`[data-testid="fields.${nextFieldIndex}.label"]`, form.field.label); + await page + .locator('[data-testid="field"]') + .nth(nextFieldIndex) + .locator(".data-testid-field-type") + .click(); + await page + .locator('[data-testid="field"]') + .nth(nextFieldIndex) + .locator('[id*="react-select-"][aria-disabled]') + .nth(form.field.typeIndex) + .click(); + } + await saveCurrentForm(page); + return { + types, + }; +} + +export async function saveCurrentForm(page: Page) { + await page.click('[data-testid="update-form"]'); + await page.waitForSelector(".data-testid-toast-success"); +} + +export async function verifySelectOptions( + selector: { selector: string; nth: number }, + expectedOptions: string[], + page: Page +) { + await page.locator(selector.selector).nth(selector.nth).click(); + const selectOptions = await page + .locator(selector.selector) + .nth(selector.nth) + .locator('[id*="react-select-"][aria-disabled]') + .allInnerTexts(); + + const sortedSelectOptions = [...selectOptions].sort(); + const sortedExpectedOptions = [...expectedOptions].sort(); + expect(sortedSelectOptions).toEqual(sortedExpectedOptions); + return { + optionsInUi: selectOptions, + }; +} diff --git a/packages/app-store/routing-forms/trpc/utils.ts b/packages/app-store/routing-forms/trpc/utils.ts index 16741cb299..4aebde0c7f 100644 --- a/packages/app-store/routing-forms/trpc/utils.ts +++ b/packages/app-store/routing-forms/trpc/utils.ts @@ -12,32 +12,50 @@ export async function onFormSubmission( form: Ensure & { user: User }, "fields">, response: Response ) { - const fieldResponsesByName: Record = {}; + const fieldResponsesByName: Record< + string, + { + value: Response[keyof Response]["value"]; + } + > = {}; for (const [fieldId, fieldResponse] of Object.entries(response)) { // Use the label lowercased as the key to identify a field. const key = form.fields.find((f) => f.id === fieldId)?.identifier || (fieldResponse.label as keyof typeof fieldResponsesByName); - fieldResponsesByName[key] = fieldResponse.value; + fieldResponsesByName[key] = { + value: fieldResponse.value, + }; } const subscriberOptions = { - userId: form.user.id, triggerEvent: WebhookTriggerEvents.FORM_SUBMITTED, - // When team routing forms are implemented, we need to make sure to add the teamId here - teamId: null, + ...getWebhookTargetEntity(form), }; const webhooks = await getWebhooks(subscriberOptions); + const promises = webhooks.map((webhook) => { - sendGenericWebhookPayload( - webhook.secret, - "FORM_SUBMITTED", - new Date().toISOString(), + sendGenericWebhookPayload({ + secretKey: webhook.secret, + triggerEvent: "FORM_SUBMITTED", + createdAt: new Date().toISOString(), webhook, - fieldResponsesByName - ).catch((e) => { + data: { + formId: form.id, + formName: form.name, + teamId: form.teamId, + responses: fieldResponsesByName, + }, + rootData: { + // Send responses unwrapped at root level for backwards compatibility + ...Object.entries(fieldResponsesByName).reduce((acc, [key, value]) => { + acc[key] = value.value; + return acc; + }, {} as Record), + }, + }).catch((e) => { console.error(`Error executing routing form webhook`, webhook, e); }); }); @@ -66,3 +84,10 @@ export const sendResponseEmail = async ( logger.error("Error sending response email", e); } }; + +function getWebhookTargetEntity(form: { teamId?: number | null; user: { id: number } }) { + // If it's a team form, the target must be team webhook + // If it's a user form, the target must be user webhook + const isTeamForm = form.teamId; + return { userId: isTeamForm ? null : form.user.id, teamId: isTeamForm ? form.teamId : null }; +} diff --git a/packages/app-store/typeform/playwright/tests/basic.e2e.ts b/packages/app-store/typeform/playwright/tests/basic.e2e.ts index 406d58e19d..3d04e0df12 100644 --- a/packages/app-store/typeform/playwright/tests/basic.e2e.ts +++ b/packages/app-store/typeform/playwright/tests/basic.e2e.ts @@ -4,7 +4,7 @@ import { expect } from "@playwright/test"; import { addForm as addRoutingForm, addOneFieldAndDescriptionAndSaveForm, -} from "@calcom/app-store/routing-forms/playwright/tests/basic.e2e"; +} from "@calcom/app-store/routing-forms/playwright/tests/testUtils"; import { CAL_URL } from "@calcom/lib/constants"; import type { Fixtures } from "@calcom/web/playwright/lib/fixtures"; import { test } from "@calcom/web/playwright/lib/fixtures"; diff --git a/packages/features/webhooks/lib/sendPayload.ts b/packages/features/webhooks/lib/sendPayload.ts index 402f42bb5f..200f6b0939 100644 --- a/packages/features/webhooks/lib/sendPayload.ts +++ b/packages/features/webhooks/lib/sendPayload.ts @@ -122,24 +122,37 @@ const sendPayload = async ( }); } - return _sendPayload(secretKey, triggerEvent, createdAt, webhook, body, contentType); + return _sendPayload(secretKey, webhook, body, contentType); }; -export const sendGenericWebhookPayload = async ( - secretKey: string | null, - triggerEvent: string, - createdAt: string, - webhook: Pick, - data: Record -) => { - const body = JSON.stringify(data); - return _sendPayload(secretKey, triggerEvent, createdAt, webhook, body, "application/json"); +export const sendGenericWebhookPayload = async ({ + secretKey, + triggerEvent, + createdAt, + webhook, + data, + rootData, +}: { + secretKey: string | null; + triggerEvent: string; + createdAt: string; + webhook: Pick; + data: Record; + rootData?: Record; +}) => { + const body = JSON.stringify({ + // Added rootData props first so that using the known(i.e. triggerEvent, createdAt, payload) properties in rootData doesn't override the known properties + ...rootData, + triggerEvent: triggerEvent, + createdAt: createdAt, + payload: data, + }); + + return _sendPayload(secretKey, webhook, body, "application/json"); }; const _sendPayload = async ( secretKey: string | null, - triggerEvent: string, - createdAt: string, webhook: Pick, body: string, contentType: "application/json" | "application/x-www-form-urlencoded" diff --git a/packages/features/webhooks/pages/webhook-edit-view.tsx b/packages/features/webhooks/pages/webhook-edit-view.tsx index 0bf8b35ba0..9429b5154a 100644 --- a/packages/features/webhooks/pages/webhook-edit-view.tsx +++ b/packages/features/webhooks/pages/webhook-edit-view.tsx @@ -63,8 +63,8 @@ function Component({ webhookId }: { webhookId: string }) { backButton /> { if ( subscriberUrlReserved({ diff --git a/packages/features/webhooks/pages/webhook-new-view.tsx b/packages/features/webhooks/pages/webhook-new-view.tsx index c7da3b97ad..bccddf531e 100644 --- a/packages/features/webhooks/pages/webhook-new-view.tsx +++ b/packages/features/webhooks/pages/webhook-new-view.tsx @@ -81,9 +81,9 @@ const NewWebhookView = () => { backButton /> app.slug)} - noRoutingFormTriggers={!!teamId} /> ); From 4258da1df5a7f48d6a05381d6316a52234ab1b09 Mon Sep 17 00:00:00 2001 From: alannnc Date: Mon, 4 Sep 2023 16:10:19 -0700 Subject: [PATCH 12/38] remove double call on useSchedule() (#11141) --- packages/features/bookings/Booker/Booker.tsx | 6 +++--- packages/features/schedules/lib/use-schedule/useSchedule.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/features/bookings/Booker/Booker.tsx b/packages/features/bookings/Booker/Booker.tsx index d273d11fdf..7459b4d599 100644 --- a/packages/features/bookings/Booker/Booker.tsx +++ b/packages/features/bookings/Booker/Booker.tsx @@ -49,7 +49,7 @@ const BookerComponent = ({ * Prioritize dateSchedule load * Component will render but use data already fetched from here, and no duplicate requests will be made * */ - useScheduleForEvent({ + const schedule = useScheduleForEvent({ prefetchNextMonth: false, username, eventSlug, @@ -93,7 +93,7 @@ const BookerComponent = ({ ); const date = dayjs(selectedDate).format("YYYY-MM-DD"); - const schedule = useScheduleForEvent({ prefetchNextMonth: true }); + const nonEmptyScheduleDays = useNonEmptyScheduleDays(schedule?.data?.slots).filter( (slot) => dayjs(selectedDate).diff(slot, "day") <= 0 ); @@ -109,7 +109,7 @@ const BookerComponent = ({ ? totalWeekDays : 0; - //Taking one more avaliable slot(extraDays + 1) to claculate the no of days in between, that next and prev button need to shift. + // Taking one more available slot(extraDays + 1) to calculate the no of days in between, that next and prev button need to shift. const availableSlots = nonEmptyScheduleDays.slice(0, extraDays + 1); if (nonEmptyScheduleDays.length !== 0) columnViewExtraDays.current = diff --git a/packages/features/schedules/lib/use-schedule/useSchedule.ts b/packages/features/schedules/lib/use-schedule/useSchedule.ts index 4e8aeac4a6..8d6d28327c 100644 --- a/packages/features/schedules/lib/use-schedule/useSchedule.ts +++ b/packages/features/schedules/lib/use-schedule/useSchedule.ts @@ -31,7 +31,7 @@ export const useSchedule = ({ const nextMonthDayjs = monthDayjs.add(monthCount ? monthCount : 1, "month"); // Why the non-null assertions? All of these arguments are checked in the enabled condition, // and the query will not run if they are null. However, the check in `enabled` does - // no satisfy typscript. + // no satisfy typescript. return trpc.viewer.public.slots.getSchedule.useQuery( { isTeamEvent, From 2e12f09f05414bf11a6cc4fc9906368695253b17 Mon Sep 17 00:00:00 2001 From: Crowdin Bot Date: Mon, 4 Sep 2023 23:12:36 +0000 Subject: [PATCH 13/38] New Crowdin translations by Github Action --- apps/web/public/static/locales/fr/common.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/web/public/static/locales/fr/common.json b/apps/web/public/static/locales/fr/common.json index eea83dbd5f..95d962e513 100644 --- a/apps/web/public/static/locales/fr/common.json +++ b/apps/web/public/static/locales/fr/common.json @@ -45,6 +45,7 @@ "invite_team_individual_segment": "Inviter une personne", "invite_team_bulk_segment": "Importation multiple", "invite_team_notifcation_badge": "Inv.", + "signin_or_signup_to_accept_invite": "Vous devez vous connecter ou vous inscrire pour voir l'invitation d'équipe.", "your_event_has_been_scheduled": "Votre événement a été planifié", "your_event_has_been_scheduled_recurring": "Votre événement récurrent a été planifié", "accept_our_license": "Acceptez notre licence en changeant la variable .env <1>NEXT_PUBLIC_LICENSE_CONSENT en « {{agree}} ».", @@ -2042,5 +2043,6 @@ "seat_options_doesnt_multiple_durations": "L'option par place ne prend pas en charge les durées multiples", "include_calendar_event": "Inclure l'événement du calendrier", "recently_added": "Ajouté récemment", + "no_members_found": "Aucun membre trouvé", "ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Ajoutez vos nouvelles chaînes ci-dessus ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑" } From c12abd75a8697689ecb4c19e13b0b88b440328f3 Mon Sep 17 00:00:00 2001 From: Vijay Date: Tue, 5 Sep 2023 15:40:09 +0530 Subject: [PATCH 14/38] fix: #10973 back button not working as expected in embed (#11073) Co-authored-by: Hariom Balhara --- .../BookEventForm/BookEventForm.tsx | 13 +++++++++++-- .../bookings/Booker/useSlotReservationId.ts | 15 +++++++++++++++ .../server/routers/viewer/slots/_router.tsx | 19 +++++++++++-------- .../viewer/slots/removeSelectedSlot.schema.ts | 7 +++++++ .../viewer/slots/reserveSlot.handler.ts | 4 +++- .../trpc/server/routers/viewer/slots/types.ts | 4 ++++ 6 files changed, 51 insertions(+), 11 deletions(-) create mode 100644 packages/features/bookings/Booker/useSlotReservationId.ts create mode 100644 packages/trpc/server/routers/viewer/slots/removeSelectedSlot.schema.ts diff --git a/packages/features/bookings/Booker/components/BookEventForm/BookEventForm.tsx b/packages/features/bookings/Booker/components/BookEventForm/BookEventForm.tsx index e40cf4725f..4b093855cc 100644 --- a/packages/features/bookings/Booker/components/BookEventForm/BookEventForm.tsx +++ b/packages/features/bookings/Booker/components/BookEventForm/BookEventForm.tsx @@ -34,6 +34,7 @@ import { Alert, Button, EmptyScreen, Form, showToast } from "@calcom/ui"; import { Calendar } from "@calcom/ui/components/icon"; import { useBookerStore } from "../../store"; +import { useSlotReservationId } from "../../useSlotReservationId"; import { useEvent } from "../../utils/event"; import { BookingFields } from "./BookingFields"; import { FormSkeleton } from "./Skeleton"; @@ -45,8 +46,16 @@ type BookEventFormProps = { type DefaultValues = Record; export const BookEventForm = ({ onCancel }: BookEventFormProps) => { + const [slotReservationId, setSlotReservationId] = useSlotReservationId(); const reserveSlotMutation = trpc.viewer.public.slots.reserveSlot.useMutation({ - trpc: { context: { skipBatch: true } }, + trpc: { + context: { + skipBatch: true, + }, + }, + onSuccess: (data) => { + setSlotReservationId(data.uid); + }, }); const removeSelectedSlot = trpc.viewer.public.slots.removeSelectedSlotMark.useMutation({ trpc: { context: { skipBatch: true } }, @@ -82,7 +91,7 @@ export const BookEventForm = ({ onCancel }: BookEventFormProps) => { return () => { if (eventType) { - removeSelectedSlot.mutate(); + removeSelectedSlot.mutate({ uid: slotReservationId }); } clearInterval(interval); }; diff --git a/packages/features/bookings/Booker/useSlotReservationId.ts b/packages/features/bookings/Booker/useSlotReservationId.ts new file mode 100644 index 0000000000..3639543dbf --- /dev/null +++ b/packages/features/bookings/Booker/useSlotReservationId.ts @@ -0,0 +1,15 @@ +// TODO: It would be lost on refresh, so we need to persist it. +// Though, we are persisting it in a cookie(`uid` cookie is set through reserveSlot call) +// but that becomes a third party cookie in context of embed and thus isn't accessible inside embed +// So, we need to persist it in top window as first party cookie in that case. +let slotReservationId: null | string = null; + +export const useSlotReservationId = () => { + function set(uid: string) { + slotReservationId = uid; + } + function get() { + return slotReservationId; + } + return [get(), set] as const; +}; diff --git a/packages/trpc/server/routers/viewer/slots/_router.tsx b/packages/trpc/server/routers/viewer/slots/_router.tsx index c38b4e4441..2d37ad3eab 100644 --- a/packages/trpc/server/routers/viewer/slots/_router.tsx +++ b/packages/trpc/server/routers/viewer/slots/_router.tsx @@ -3,6 +3,7 @@ import type { NextApiRequest, NextApiResponse } from "next"; import publicProcedure from "../../../procedures/publicProcedure"; import { router } from "../../../trpc"; import { ZGetScheduleInputSchema } from "./getSchedule.schema"; +import { ZRemoveSelectedSlotInputSchema } from "./removeSelectedSlot.schema"; import { ZReserveSlotInputSchema } from "./reserveSlot.schema"; type SlotsRouterHandlerCache = { @@ -49,12 +50,14 @@ export const slotsRouter = router({ }); }), // This endpoint has no dependencies, it doesn't need its own file - removeSelectedSlotMark: publicProcedure.mutation(async ({ ctx }) => { - const { req, prisma } = ctx; - const uid = req?.cookies?.uid; - if (uid) { - await prisma.selectedSlots.deleteMany({ where: { uid: { equals: uid } } }); - } - return; - }), + removeSelectedSlotMark: publicProcedure + .input(ZRemoveSelectedSlotInputSchema) + .mutation(async ({ input, ctx }) => { + const { req, prisma } = ctx; + const uid = req?.cookies?.uid || input.uid; + if (uid) { + await prisma.selectedSlots.deleteMany({ where: { uid: { equals: uid } } }); + } + return; + }), }); diff --git a/packages/trpc/server/routers/viewer/slots/removeSelectedSlot.schema.ts b/packages/trpc/server/routers/viewer/slots/removeSelectedSlot.schema.ts new file mode 100644 index 0000000000..afdfab987c --- /dev/null +++ b/packages/trpc/server/routers/viewer/slots/removeSelectedSlot.schema.ts @@ -0,0 +1,7 @@ +import type { z } from "zod"; + +import { removeSelectedSlotSchema } from "./types"; + +export const ZRemoveSelectedSlotInputSchema = removeSelectedSlotSchema; + +export type TRemoveSelectedSlotInputSchema = z.infer; diff --git a/packages/trpc/server/routers/viewer/slots/reserveSlot.handler.ts b/packages/trpc/server/routers/viewer/slots/reserveSlot.handler.ts index 330789f975..62e3a263ba 100644 --- a/packages/trpc/server/routers/viewer/slots/reserveSlot.handler.ts +++ b/packages/trpc/server/routers/viewer/slots/reserveSlot.handler.ts @@ -86,5 +86,7 @@ export const reserveSlotHandler = async ({ ctx, input }: ReserveSlotOptions) => } } res?.setHeader("Set-Cookie", serialize("uid", uid, { path: "/", sameSite: "lax" })); - return; + return { + uid: uid, + }; }; diff --git a/packages/trpc/server/routers/viewer/slots/types.ts b/packages/trpc/server/routers/viewer/slots/types.ts index aed8403143..aca1834f62 100644 --- a/packages/trpc/server/routers/viewer/slots/types.ts +++ b/packages/trpc/server/routers/viewer/slots/types.ts @@ -57,3 +57,7 @@ export type Slot = { bookingUid?: string; users?: string[]; }; + +export const removeSelectedSlotSchema = z.object({ + uid: z.string().nullable(), +}); From dfccf4604fd4ec34f59757d4d9c21815e0b9893e Mon Sep 17 00:00:00 2001 From: DexterStorey <36115192+DexterStorey@users.noreply.github.com> Date: Tue, 5 Sep 2023 08:56:26 -0400 Subject: [PATCH 15/38] fix: better timezones and error handling in ai tools (#11085) * current time in user timezone, let ai handle 401 * update agent.ts * simple onboarding for non cal.com users * reverting this line - unecessary * v1.0.1 --- apps/ai/package.json | 2 +- apps/ai/src/app/api/receive/route.ts | 19 +++++++++++-------- apps/ai/src/tools/createBookingIfAvailable.ts | 5 ++--- apps/ai/src/tools/deleteBooking.ts | 3 ++- apps/ai/src/tools/getAvailability.ts | 4 +--- apps/ai/src/tools/updateBooking.ts | 3 ++- apps/ai/src/utils/agent.ts | 2 +- apps/ai/src/utils/now.ts | 6 +++++- 8 files changed, 25 insertions(+), 19 deletions(-) diff --git a/apps/ai/package.json b/apps/ai/package.json index 6a5de24ec4..5c338be474 100644 --- a/apps/ai/package.json +++ b/apps/ai/package.json @@ -1,6 +1,6 @@ { "name": "@calcom/ai", - "version": "0.1.0", + "version": "1.0.1", "private": true, "author": "Cal.com Inc.", "dependencies": { diff --git a/apps/ai/src/app/api/receive/route.ts b/apps/ai/src/app/api/receive/route.ts index e398bd7006..b66b639bb5 100644 --- a/apps/ai/src/app/api/receive/route.ts +++ b/apps/ai/src/app/api/receive/route.ts @@ -45,6 +45,7 @@ export const POST = async (request: NextRequest) => { select: { email: true, id: true, + timeZone: true, credentials: { select: { appId: true, @@ -55,15 +56,17 @@ export const POST = async (request: NextRequest) => { where: { email: envelope.from }, }); - if (!signature || !user?.email || !user?.id) { + // User is not a cal.com user or is using an unverified email. + if (!signature || !user) { await sendEmail({ + html: `Thanks for your interest in Cal AI! To get started, Make sure you have a cal.com account with this email address.`, subject: `Re: ${body.subject}`, - text: "Sorry, you are not authorized to use this service. Please verify your email address and try again.", - to: user?.email || "", + text: `Thanks for your interest in Cal AI! To get started, Make sure you have a cal.com account with this email address. You can sign up for an account at: https://cal.com/signup`, + to: envelope.from, from: aiEmail, }); - return new NextResponse(); + return new NextResponse("ok"); } const credential = user.credentials.find((c) => c.appId === env.APP_ID)?.key; @@ -93,8 +96,8 @@ export const POST = async (request: NextRequest) => { fetchAvailability({ apiKey, userId: user.id, - dateFrom: now, - dateTo: now, + dateFrom: now(user.timeZone), + dateTo: now(user.timeZone), }), ]); @@ -120,7 +123,7 @@ export const POST = async (request: NextRequest) => { return new NextResponse("Error fetching event types. Please try again.", { status: 400 }); } - const { timeZone, workingHours } = availability; + const { workingHours } = availability; const appHost = getHostFromHeaders(request.headers); @@ -135,7 +138,7 @@ export const POST = async (request: NextRequest) => { user: { email: user.email, eventTypes, - timeZone, + timeZone: user.timeZone, workingHours, }, }), diff --git a/apps/ai/src/tools/createBookingIfAvailable.ts b/apps/ai/src/tools/createBookingIfAvailable.ts index 4e95a7f743..976758b0ea 100644 --- a/apps/ai/src/tools/createBookingIfAvailable.ts +++ b/apps/ai/src/tools/createBookingIfAvailable.ts @@ -52,9 +52,8 @@ const createBooking = async ({ method: "POST", }); - if (response.status === 401) { - throw new Error("Unauthorized"); - } + // Let GPT handle this. This will happen when wrong event type id is used. + // if (response.status === 401) throw new Error("Unauthorized"); const data = await response.json(); diff --git a/apps/ai/src/tools/deleteBooking.ts b/apps/ai/src/tools/deleteBooking.ts index 6fbb590e3c..bcaa3f56cf 100644 --- a/apps/ai/src/tools/deleteBooking.ts +++ b/apps/ai/src/tools/deleteBooking.ts @@ -31,7 +31,8 @@ const cancelBooking = async ({ method: "DELETE", }); - if (response.status === 401) throw new Error("Unauthorized"); + // Let GPT handle this. This will happen when wrong booking id is used. + // if (response.status === 401) throw new Error("Unauthorized"); const data = await response.json(); diff --git a/apps/ai/src/tools/getAvailability.ts b/apps/ai/src/tools/getAvailability.ts index fc56c54982..bd0ebf8788 100644 --- a/apps/ai/src/tools/getAvailability.ts +++ b/apps/ai/src/tools/getAvailability.ts @@ -35,9 +35,7 @@ export const fetchAvailability = async ({ const response = await fetch(url); - if (response.status === 401) { - throw new Error("Unauthorized"); - } + if (response.status === 401) throw new Error("Unauthorized"); const data = await response.json(); diff --git a/apps/ai/src/tools/updateBooking.ts b/apps/ai/src/tools/updateBooking.ts index 658760c567..4aa03044b1 100644 --- a/apps/ai/src/tools/updateBooking.ts +++ b/apps/ai/src/tools/updateBooking.ts @@ -41,7 +41,8 @@ const editBooking = async ({ method: "PATCH", }); - if (response.status === 401) throw new Error("Unauthorized"); + // Let GPT handle this. This will happen when wrong booking id is used. + // if (response.status === 401) throw new Error("Unauthorized"); const data = await response.json(); diff --git a/apps/ai/src/utils/agent.ts b/apps/ai/src/utils/agent.ts index c3389ca6ad..c6ec0dd0ba 100644 --- a/apps/ai/src/utils/agent.ts +++ b/apps/ai/src/utils/agent.ts @@ -44,7 +44,7 @@ const agent = async (input: string, user: User, apiKey: string, userId: number) Sometimes, tools return errors. In this case, try to handle the error intelligently or ask the user for more information. Tools will always handle times in UTC, but times sent to the user should be formatted per that user's timezone. - Current UTC time is: ${now} + The current time in the user's timezone is: ${now(user.timeZone)} The user's time zone is: ${user.timeZone} The user's event types are: ${user.eventTypes .map((e: EventType) => `ID: ${e.id}, Title: ${e.title}, Length: ${e.length}`) diff --git a/apps/ai/src/utils/now.ts b/apps/ai/src/utils/now.ts index a1d76cdce6..fc77993ca0 100644 --- a/apps/ai/src/utils/now.ts +++ b/apps/ai/src/utils/now.ts @@ -1 +1,5 @@ -export default new Date().toISOString(); +export default function now(timeZone: string) { + return new Date().toLocaleString("en-US", { + timeZone, + }); +} From 7143923ea451d6e6726d7b5ec6ae75c726dac620 Mon Sep 17 00:00:00 2001 From: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Date: Tue, 5 Sep 2023 23:22:47 +0530 Subject: [PATCH 16/38] fix: rescheduling in require confirmation (#11152) ## What does this PR do? Fixes https://github.com/calcom/cal.com/issues/11075 BEFORE: Meeting has been rescheduled email and calendar event after submitting booking without confirming the meeting (require confirmation event type). Screenshot 2023-09-05 at 7 45 44 PM AFTER:- event scheduled email and calendar event created only after "awaiting approval" meeting has been confirmed. Screenshot 2023-09-05 at 7 47 22 PM ## Type of change - [x] Bug fix (non-breaking change which fixes an issue) ## How should this be tested? 1) Create a requires confirmation event type 2) open incognito tab or another browser and book a meeting (Attendee) 3) Confirm the booking (Organizer) and attendee would get meeting schedule email 4) Get the reschedule link from attendee's email and reschedule the booking Both attendee and organiser shouldn't get booking email or calendar event before organiser has accepted the meeting --- .../features/bookings/lib/handleNewBooking.ts | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/packages/features/bookings/lib/handleNewBooking.ts b/packages/features/bookings/lib/handleNewBooking.ts index 74c92e46ec..0dbd8f4021 100644 --- a/packages/features/bookings/lib/handleNewBooking.ts +++ b/packages/features/bookings/lib/handleNewBooking.ts @@ -1374,7 +1374,7 @@ async function handler( } } - if (noEmail !== true) { + if (noEmail !== true && (!requiresConfirmation || isOrganizerRescheduling)) { const copyEvent = cloneDeep(evt); await sendRescheduledEmails({ ...copyEvent, @@ -1494,12 +1494,14 @@ async function handler( ? calendarResult?.updatedEvent[0]?.iCalUID : calendarResult?.updatedEvent?.iCalUID || undefined; - // TODO send reschedule emails to attendees of the old booking - await sendRescheduledEmails({ - ...copyEvent, - additionalNotes, // Resets back to the additionalNote input and not the override value - cancellationReason: "$RCH$" + (rescheduleReason ? rescheduleReason : ""), // Removable code prefix to differentiate cancellation from rescheduling for email - }); + if (!requiresConfirmation || isOrganizerRescheduling) { + // TODO send reschedule emails to attendees of the old booking + await sendRescheduledEmails({ + ...copyEvent, + additionalNotes, // Resets back to the additionalNote input and not the override value + cancellationReason: "$RCH$" + (rescheduleReason ? rescheduleReason : ""), // Removable code prefix to differentiate cancellation from rescheduling for email + }); + } // Update the old booking with the cancelled status await prisma.booking.update({ @@ -2097,7 +2099,7 @@ async function handler( videoCallUrl = metadata.hangoutLink || videoCallUrl || updatedEvent?.url; } } - if (noEmail !== true) { + if (noEmail !== true && (!requiresConfirmation || isOrganizerRescheduling)) { const copyEvent = cloneDeep(evt); await sendRescheduledEmails({ ...copyEvent, From 3f0380617a5707ebc7d235b20f0989631ee0d67f Mon Sep 17 00:00:00 2001 From: Peer Richelsen Date: Tue, 5 Sep 2023 19:56:02 +0200 Subject: [PATCH 17/38] chore: removed gravatar (#11153) --- .../steps-views/UserProfile.tsx | 9 +-- apps/web/lib/csp.ts | 2 +- apps/web/lib/profile.ts | 11 --- apps/web/pages/api/user/avatar.ts | 11 +-- .../web/pages/settings/my-account/profile.tsx | 2 +- apps/web/public/avatar.svg | 1 + apps/web/public/static/locales/en/common.json | 2 +- .../components/TeamInviteFromOrg.tsx | 1 - .../ee/teams/components/AddNewTeamMembers.tsx | 7 +- .../features/ee/users/components/UserForm.tsx | 2 +- .../ee/users/components/UsersTable.tsx | 1 - .../features/ee/users/server/trpc-router.ts | 4 +- .../features/ee/workflows/pages/index.tsx | 2 - .../components/TotalBookingUsersTable.tsx | 1 - .../components/AvailabilitySliderTable.tsx | 7 +- .../UserTable/EditSheet/EditUserForm.tsx | 7 +- .../UserTable/EditSheet/EditUserSheet.tsx | 1 - .../components/UserTable/UserListTable.tsx | 7 +- packages/lib/constants.ts | 1 + packages/lib/defaultAvatarImage.test.ts | 67 ------------------- packages/lib/defaultAvatarImage.ts | 16 ----- packages/ui/components/avatar/Avatar.tsx | 15 +---- .../ui/components/avatar/avatar.stories.mdx | 10 ++- 23 files changed, 22 insertions(+), 165 deletions(-) delete mode 100644 apps/web/lib/profile.ts create mode 100644 apps/web/public/avatar.svg delete mode 100644 packages/lib/defaultAvatarImage.test.ts diff --git a/apps/web/components/getting-started/steps-views/UserProfile.tsx b/apps/web/components/getting-started/steps-views/UserProfile.tsx index d1b1fa1d65..aae5e10f7d 100644 --- a/apps/web/components/getting-started/steps-views/UserProfile.tsx +++ b/apps/web/components/getting-started/steps-views/UserProfile.tsx @@ -98,14 +98,7 @@ const UserProfile = () => { return (
    - {user && ( - - )} + {user && } ( <> - +
    \ No newline at end of file diff --git a/apps/web/public/static/locales/en/common.json b/apps/web/public/static/locales/en/common.json index c2979a5ec2..58f83d4d21 100644 --- a/apps/web/public/static/locales/en/common.json +++ b/apps/web/public/static/locales/en/common.json @@ -1093,7 +1093,7 @@ "or_lowercase": "or", "nevermind": "Nevermind", "go_to": "Go to: ", - "invite_link_make": "
  • Go toMake Invite Link and install Cal.com appp
  • ", + "invite_link_make": "
  • Go toMake Invite Link and install Cal.com app
  • ", "zapier_invite_link": "Zapier Invite Link", "meeting_url_provided_after_confirmed": "A Meeting URL will be created once the event is confirmed.", "dynamically_display_attendee_or_organizer": "Dynamically display the name of your attendee for you, or your name if it's viewed by your attendee", diff --git a/packages/features/ee/organizations/components/TeamInviteFromOrg.tsx b/packages/features/ee/organizations/components/TeamInviteFromOrg.tsx index a015f38b64..dcdd0e8809 100644 --- a/packages/features/ee/organizations/components/TeamInviteFromOrg.tsx +++ b/packages/features/ee/organizations/components/TeamInviteFromOrg.tsx @@ -80,7 +80,6 @@ function UserToInviteItem({ alt="Users avatar" asChild imageSrc={`${bookerUrl}/${member.user.username}/avatar.png`} - gravatarFallbackMd5="hash" />
  • Accédezau lien d'invitation Make et installez l'application Cal.com