diff --git a/.env.example b/.env.example index 774e96a4b5ab2d..4673ae3889a559 100644 --- a/.env.example +++ b/.env.example @@ -30,8 +30,6 @@ NEXT_PUBLIC_WEBAPP_URL='http://localhost:3000' NEXT_PUBLIC_WEBSITE_URL='http://localhost:3000' NEXT_PUBLIC_CONSOLE_URL='http://localhost:3004' NEXT_PUBLIC_EMBED_LIB_URL='http://localhost:3000/embed/embed.js' -# Make sure you don't have .example.com as a value -NEXTAUTH_DOMAIN='localhost:3000' # To enable SAML login, set both these variables # @see https://github.com/calcom/cal.com/tree/main/packages/ee#setting-up-saml-login @@ -54,7 +52,7 @@ NEXTAUTH_URL= # You can use: `openssl rand -base64 32` to generate one NEXTAUTH_SECRET= # Used for cross-domain cookie authentication -NEXTAUTH_COOKIE_DOMAIN=.example.com +NEXTAUTH_COOKIE_DOMAIN= # Set this to '1' if you don't want Cal to collect anonymous usage CALCOM_TELEMETRY_DISABLED= diff --git a/README.md b/README.md index 322a9ef951d052..903074aba614c8 100644 --- a/README.md +++ b/README.md @@ -64,9 +64,6 @@ That's where Cal.com comes in. Self-hosted or hosted by us. White-label by desig Cal.com - The open source Calendly alternative | Product Hunt Cal.com - The open source Calendly alternative | Product Hunt Cal.com - The open source Calendly alternative | Product Hunt - - - ### Built With - [Next.js](https://nextjs.org/) @@ -266,13 +263,13 @@ yarn workspace @calcom/web playwright-report ### Docker -The Docker configuration for Cal is an effort powered by people within the community. +The Docker configuration for Cal is an effort powered by people within the community. If you want to contribute to the Docker repository, [reply here](https://github.com/calcom/docker/discussions/32). The Docker configuration can be found [in our docker repository](https://github.com/calcom/docker). -Issues with Docker? Find your answer or open a new discussion [here](https://github.com/calcom/docker/discussions) to ask the community. +Issues with Docker? Find your answer or open a new discussion [here](https://github.com/calcom/docker/discussions) to ask the community. Cal.com, Inc. does not provide official support for Docker, but we will accept fixes and documentation. Use at your own risk. @@ -284,7 +281,7 @@ Cal.com, Inc. does not provide official support for Docker, but we will accept f ### Railway -[![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/new/template?template=https%3A%2F%2Fgithub.amrom.workers.dev%2Fcalendso%2Fcalendso&plugins=postgresql&envs=GOOGLE_API_CREDENTIALS%2CBASE_URL%2CNEXTAUTH_URL%2CPORT&BASE_URLDefault=http%3A%2F%2Flocalhost%3A3000&NEXTAUTH_URLDefault=http%3A%2F%2Flocalhost%3A3000&PORTDefault=3000) +[![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/new/template/cal) You can deploy Cal on [Railway](https://railway.app/) using the button above. The team at Railway also have a [detailed blog post](https://blog.railway.app/p/calendso) on deploying Cal on their platform. @@ -328,7 +325,7 @@ We have a list of [help wanted](https://github.com/orgs/calcom/projects/1/views/ 10. The key will be created and you will be redirected back to the Credentials page. Select the newly generated client ID under OAuth 2.0 Client IDs. 11. Select Download JSON. Copy the contents of this file and paste the entire JSON string in the .env file as the value for GOOGLE_API_CREDENTIALS key. -#### *Adding google calendar to Cal.com App Store* +#### _Adding google calendar to Cal.com App Store_ After adding Google credentials, you can now Google Calendar App to the app store. You can repopulate the App store by running @@ -344,6 +341,7 @@ following 1. Add extra redirect URL `/api/auth/callback/google` 1. Under 'OAuth concent screen', click "PUBLISH APP" + ### Obtaining Microsoft Graph Client ID and Secret 1. Open [Azure App Registration](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps) and select New registration diff --git a/apps/api b/apps/api index 7560fdbfc576f7..181921f9c73c60 160000 --- a/apps/api +++ b/apps/api @@ -1 +1 @@ -Subproject commit 7560fdbfc576f7a72ac840f9bef2b9fb92cbe3a3 +Subproject commit 181921f9c73c60de20c4a3f1cde9466e075e1201 diff --git a/apps/console b/apps/console index 544ded3da4649b..3e84e0bac7a541 160000 --- a/apps/console +++ b/apps/console @@ -1 +1 @@ -Subproject commit 544ded3da4649b01ea90b21cddf9830ce62adcb8 +Subproject commit 3e84e0bac7a5419270e5c26249326c43c39e3dce diff --git a/apps/docs/package.json b/apps/docs/package.json index 1d92c74ee2c4e6..6e5dd7c364b1c8 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -17,14 +17,14 @@ "license": "MIT", "dependencies": { "iframe-resizer-react": "^1.1.0", - "next": "^12.2.0", + "next": "^12.2.5", "nextra": "^1.1.0", "nextra-theme-docs": "^1.2.2", - "react": "^18.1.0", - "react-dom": "^18.1.0" + "react": "^18.2.0", + "react-dom": "^18.2.0" }, "devDependencies": { "@calcom/config": "*", - "eslint": "^8.15.0" + "eslint": "^8.20.0" } } diff --git a/apps/storybook/package.json b/apps/storybook/package.json index e95ad2231e02c8..f38c2f130ed1dc 100644 --- a/apps/storybook/package.json +++ b/apps/storybook/package.json @@ -23,16 +23,16 @@ "@radix-ui/react-radio-group": "^0.1.1", "@radix-ui/react-slider": "^0.1.1", "@radix-ui/react-switch": "^0.1.1", - "@radix-ui/react-tooltip": "^0.1.0", - "next": "^12.2.0", + "@radix-ui/react-tooltip": "^1.0.0", + "next": "^12.2.5", "next-transpile-modules": "^9.0.0", - "react": "18.1.0", - "react-dom": "18.1.0", - "react-feather": "^2.0.9", - "react-hot-toast": "^2.2.0" + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-feather": "^2.0.10", + "react-hot-toast": "^2.3.0" }, "devDependencies": { - "@babel/core": "^7.18.6", + "@babel/core": "^7.18.9", "@calcom/config": "*", "@storybook/addon-a11y": "^6.5.9", "@storybook/addon-actions": "^6.5.9", @@ -44,19 +44,19 @@ "@storybook/manager-webpack5": "^6.5.9", "@storybook/react": "^6.5.9", "@types/node": "16.9.1", - "@types/react": "18.0.9", + "@types/react": "^18.0.9", "@types/react-dom": "18.0.4", "autoprefixer": "^10.4.7", "babel-loader": "^8.2.5", - "chromatic": "^6.6.4", - "eslint": "^8.15.0", + "chromatic": "^6.7.1", + "eslint": "^8.20.0", "postcss": "^8.4.13", "postcss-loader": "^7.0.0", "storybook-addon-designs": "^6.3.1", "storybook-addon-next": "^1.6.7", - "tailwindcss": "^3.1.3", + "tailwindcss": "^3.1.6", "tsconfig-paths-webpack-plugin": "^3.5.2", - "typescript": "^4.6.4" + "typescript": "^4.7.4" }, "readme": "ERROR: No README data found!", "_id": "@calcom/storybook@0.1.0" diff --git a/apps/swagger/package.json b/apps/swagger/package.json index 8378d2e0e3c134..0ba03fe335e232 100644 --- a/apps/swagger/package.json +++ b/apps/swagger/package.json @@ -12,18 +12,18 @@ "start": "PORT=4200 next start" }, "dependencies": { - "highlight.js": "^11.5.1", + "highlight.js": "^11.6.0", "isarray": "2.0.5", - "next": "12.2.0", + "next": "^12.2.5", "openapi-snippet": "^0.13.0", - "react": "18.1.0", - "react-dom": "18.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", "swagger-ui-react": "4.11.1" }, "devDependencies": { "@types/node": "16.9.1", - "@types/react": "18.0.9", + "@types/react": "^18.0.9", "@types/react-dom": "18.0.4", - "typescript": "4.6.4" + "typescript": "^4.7.4" } } diff --git a/apps/web/components/DestinationCalendarSelector.tsx b/apps/web/components/DestinationCalendarSelector.tsx index 8f3cb539acd263..3b917cf023c479 100644 --- a/apps/web/components/DestinationCalendarSelector.tsx +++ b/apps/web/components/DestinationCalendarSelector.tsx @@ -3,6 +3,7 @@ import React, { useEffect, useState } from "react"; import Select from "react-select"; import { useLocale } from "@calcom/lib/hooks/useLocale"; +import { DestinationCalendar } from "@calcom/prisma/client"; import { trpc } from "@calcom/trpc/react"; interface Props { @@ -11,6 +12,7 @@ interface Props { hidePlaceholder?: boolean; /** The external Id of the connected calendar */ value: string | undefined; + destinationCalendar?: DestinationCalendar | null; } const DestinationCalendarSelector = ({ @@ -18,6 +20,7 @@ const DestinationCalendarSelector = ({ isLoading, value, hidePlaceholder, + destinationCalendar, }: Props): JSX.Element | null => { const { t } = useLocale(); const query = trpc.useQuery(["viewer.connectedCalendars"]); @@ -67,11 +70,20 @@ const DestinationCalendarSelector = ({ value: `${cal.integration}:${cal.externalId}`, })), })) ?? []; + return (