* Initial commit * Adding feature flag * feat: Orgs Schema Changing `scopedMembers` to `orgUsers` (#9209) * Change scopedMembers to orgMembers * Change to orgUsers * Letting duplicate slugs for teams to support orgs * Covering null on unique clauses * Supporting having the orgId in the session cookie * feat: organization event type filter (#9253) Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in> * Missing changes to support orgs schema changes * feat: Onboarding process to create an organization (#9184) * Desktop first banner, mobile pending * Removing dead code and img * WIP * Adds Email verification template+translations for organizations (#9202) * First step done * Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding * Step 2 done, avatar not working * Covering null on unique clauses * Onboarding admins step * Last step to create teams * Moving change password handler, improving verifying code flow * Clearing error before submitting * Reverting email testing api changes * Reverting having the banner for now * Consistent exported components * Remove unneeded files from banner * Removing uneeded code * Fixing avatar selector * Using meta component for head/descr * Missing i18n strings * Feedback * Making an org avatar (temp) * Check for subteams slug clashes with usernames * Fixing create teams onsuccess * feedback * Making sure we check requestedSlug now --------- Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> * feat: [CAL-1816] Organization subdomain support (#9345) * Desktop first banner, mobile pending * Removing dead code and img * WIP * Adds Email verification template+translations for organizations (#9202) * First step done * Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding * Step 2 done, avatar not working * Covering null on unique clauses * Onboarding admins step * Last step to create teams * Moving change password handler, improving verifying code flow * Clearing error before submitting * Reverting email testing api changes * Reverting having the banner for now * Consistent exported components * Remove unneeded files from banner * Removing uneeded code * Fixing avatar selector * Using meta component for head/descr * Missing i18n strings * Feedback * Making an org avatar (temp) * Check for subteams slug clashes with usernames * Fixing create teams onsuccess * Covering users and subteams, excluding non-org users * Unpublished teams shows correctly * Create subdomain in Vercel * feedback * Renaming Vercel env vars * Vercel domain check before creation * Supporting cal-staging.com * Change to have vercel detect it * vercel domain check data message error * Remove check domain * Making sure we check requestedSlug now * Feedback and unneeded code * Reverting unneeded changes * Unneeded changes --------- Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> * Vercel subdomain creation in PROD only * Making sure we let localhost still work * Feedback * Type check fixes * feat: Organization branding in side menu (#9279) * Desktop first banner, mobile pending * Removing dead code and img * WIP * Adds Email verification template+translations for organizations (#9202) * First step done * Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding * Step 2 done, avatar not working * Covering null on unique clauses * Onboarding admins step * Last step to create teams * Moving change password handler, improving verifying code flow * Clearing error before submitting * Reverting email testing api changes * Reverting having the banner for now * Consistent exported components * Remove unneeded files from banner * Removing uneeded code * Fixing avatar selector * Org branding provider used in shell sidebar * Using meta component for head/descr * Missing i18n strings * Feedback * Making an org avatar (temp) * Using org avatar (temp) * Not showing org logo if not set * User onboarding with org branding (slug) * Check for subteams slug clashes with usernames * Fixing create teams onsuccess * feedback * Feedback * Org public profile * Public profiles for team event types * Added setup profile alert * Using org avatar on subteams avatar * Making sure we show the set up profile on org only * Profile username availability rely on org hook * Update apps/web/pages/team/[slug].tsx Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> * Update apps/web/pages/team/[slug].tsx Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> --------- Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> * feat: Organization support for event types page (#9449) * Desktop first banner, mobile pending * Removing dead code and img * WIP * Adds Email verification template+translations for organizations (#9202) * First step done * Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding * Step 2 done, avatar not working * Covering null on unique clauses * Onboarding admins step * Last step to create teams * Moving change password handler, improving verifying code flow * Clearing error before submitting * Reverting email testing api changes * Reverting having the banner for now * Consistent exported components * Remove unneeded files from banner * Removing uneeded code * Fixing avatar selector * Org branding provider used in shell sidebar * Using meta component for head/descr * Missing i18n strings * Feedback * Making an org avatar (temp) * Using org avatar (temp) * Not showing org logo if not set * User onboarding with org branding (slug) * Check for subteams slug clashes with usernames * Fixing create teams onsuccess * feedback * Feedback * Org public profile * Public profiles for team event types * Added setup profile alert * Using org avatar on subteams avatar * Processing orgs and children as profile options * Reverting change not belonging to this PR * Making sure we show the set up profile on org only * Removing console.log * Comparing memberships to choose the highest one --------- Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> * Type errors * Refactor and type fixes * Update orgDomains.ts * Feedback * Reverting * NIT * fix issue getting org slug from domain * Improving orgDomains util * Host comes with port * Update useRouterQuery.ts * Feedback * Feedback * Feedback * Feedback: SSR for user event-types to have org context * chore: Cache node_modules (#9492) * Adding check for cache hit * Adding a separate install step first * Put the restore cache steps back * Revert the uses type for restoring cache * Added step to restore nm cache * Removed the cache-hit check * Comments and naming * Removed extra install command * Updated the name of the linting step to be more clear * Removes the need for useEffect here * Feedback * Feedback * Cookie domain needs a dot * Type fix * Update apps/web/public/static/locales/en/common.json Co-authored-by: Omar López <zomars@me.com> * Update packages/emails/src/templates/OrganizationAccountVerifyEmail.tsx * Feedback --------- Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in> Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> Co-authored-by: zomars <zomars@me.com> Co-authored-by: Efraín Rochín <roae.85@gmail.com> Co-authored-by: Keith Williams <keithwillcode@gmail.com>
203 lines
7.4 KiB
Bash
203 lines
7.4 KiB
Bash
# ********** INDEX **********
|
|
#
|
|
# - LICENSE (DEPRECATED)
|
|
# - DATABASE
|
|
# - SHARED
|
|
# - NEXTAUTH
|
|
# - E-MAIL SETTINGS
|
|
# - ORGANIZATIONS
|
|
|
|
# - LICENSE (DEPRECATED) ************************************************************************************
|
|
# https://github.com/calcom/cal.com/blob/main/LICENSE
|
|
#
|
|
# Summary of terms:
|
|
# - The codebase has to stay open source, whether it was modified or not
|
|
# - You can not repackage or sell the codebase
|
|
# - Acquire a commercial license to remove these terms by visiting: cal.com/sales
|
|
#
|
|
# To enable enterprise-only features, as an admin, go to /auth/setup to select your license and follow
|
|
# instructions. This environment variable is deprecated although still supported for backward compatibility.
|
|
# @see https://console.cal.com
|
|
CALCOM_LICENSE_KEY=
|
|
# ***********************************************************************************************************
|
|
|
|
# - DATABASE ************************************************************************************************
|
|
DATABASE_URL="postgresql://postgres:@localhost:5450/calendso"
|
|
|
|
# Uncomment to enable a dedicated connection pool for Prisma using Prisma Data Proxy
|
|
# Cold boots will be faster and you'll be able to scale your DB independently of your app.
|
|
# @see https://www.prisma.io/docs/data-platform/data-proxy/use-data-proxy
|
|
# PRISMA_GENERATE_DATAPROXY=true
|
|
PRISMA_GENERATE_DATAPROXY=
|
|
|
|
# ***********************************************************************************************************
|
|
|
|
# - SHARED **************************************************************************************************
|
|
# Set this to http://app.cal.local:3000 if you want to enable organizations, and
|
|
# check variable ORGANIZATIONS_ENABLED at the bottom of this file
|
|
NEXT_PUBLIC_WEBAPP_URL='http://localhost:3000'
|
|
# Change to 'http://localhost:3001' if running the website simultaneously
|
|
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'
|
|
|
|
# To enable SAML login, set both these variables
|
|
# @see https://github.com/calcom/cal.com/tree/main/packages/features/ee#setting-up-saml-login
|
|
# SAML_DATABASE_URL="postgresql://postgres:@localhost:5450/cal-saml"
|
|
SAML_DATABASE_URL=
|
|
# SAML_ADMINS='pro@example.com'
|
|
SAML_ADMINS=
|
|
# NEXT_PUBLIC_HOSTED_CAL_FEATURES=1
|
|
NEXT_PUBLIC_HOSTED_CAL_FEATURES=
|
|
# For additional security set to a random secret and use that value as the client_secret during the OAuth 2.0 flow.
|
|
SAML_CLIENT_SECRET_VERIFIER=
|
|
|
|
# If you use Heroku to deploy Postgres (or use self-signed certs for Postgres) then uncomment the follow line.
|
|
# @see https://devcenter.heroku.com/articles/connecting-heroku-postgres#connecting-in-node-js
|
|
# PGSSLMODE='no-verify'
|
|
PGSSLMODE=
|
|
|
|
# - NEXTAUTH
|
|
# @see: https://github.com/calendso/calendso/issues/263
|
|
# @see: https://next-auth.js.org/configuration/options#nextauth_url
|
|
# Required for Vercel hosting - set NEXTAUTH_URL to equal your NEXT_PUBLIC_WEBAPP_URL
|
|
NEXTAUTH_URL='http://localhost:3000'
|
|
# @see: https://next-auth.js.org/configuration/options#nextauth_secret
|
|
# You can use: `openssl rand -base64 32` to generate one
|
|
NEXTAUTH_SECRET=
|
|
# Used for cross-domain cookie authentication
|
|
NEXTAUTH_COOKIE_DOMAIN=
|
|
|
|
# Set this to '1' if you don't want Cal to collect anonymous usage
|
|
CALCOM_TELEMETRY_DISABLED=
|
|
|
|
# ApiKey for cronjobs
|
|
CRON_API_KEY='0cc0e6c35519bba620c9360cfe3e68d0'
|
|
|
|
# Application Key for symmetric encryption and decryption
|
|
# must be 32 bytes for AES256 encryption algorithm
|
|
# You can use: `openssl rand -base64 24` to generate one
|
|
CALENDSO_ENCRYPTION_KEY=
|
|
|
|
# Intercom Config
|
|
NEXT_PUBLIC_INTERCOM_APP_ID=
|
|
|
|
# Secret to enable Intercom Identity Verification
|
|
INTERCOM_SECRET=
|
|
|
|
# Zendesk Config
|
|
NEXT_PUBLIC_ZENDESK_KEY=
|
|
|
|
# Help Scout Config
|
|
NEXT_PUBLIC_HELPSCOUT_KEY=
|
|
|
|
# Fresh Chat Config
|
|
NEXT_PUBLIC_FRESHCHAT_TOKEN=
|
|
NEXT_PUBLIC_FRESHCHAT_HOST=
|
|
|
|
# Inbox to send user feedback
|
|
SEND_FEEDBACK_EMAIL=
|
|
|
|
# Sengrid
|
|
# Used for email reminders in workflows and internal sync services
|
|
SENDGRID_API_KEY=
|
|
SENDGRID_EMAIL=
|
|
NEXT_PUBLIC_SENDGRID_SENDER_NAME=
|
|
|
|
# Twilio
|
|
# Used to send SMS reminders in workflows
|
|
TWILIO_SID=
|
|
TWILIO_TOKEN=
|
|
TWILIO_MESSAGING_SID=
|
|
TWILIO_PHONE_NUMBER=
|
|
# For NEXT_PUBLIC_SENDER_ID only letters, numbers and spaces are allowed (max. 11 characters)
|
|
NEXT_PUBLIC_SENDER_ID=
|
|
TWILIO_VERIFY_SID=
|
|
|
|
# This is used so we can bypass emails in auth flows for E2E testing
|
|
# Set it to "1" if you need to run E2E tests locally
|
|
NEXT_PUBLIC_IS_E2E=
|
|
|
|
# Used for internal billing system
|
|
NEXT_PUBLIC_STRIPE_PRO_PLAN_PRICE=
|
|
NEXT_PUBLIC_STRIPE_PREMIUM_PLAN_PRICE=
|
|
NEXT_PUBLIC_IS_PREMIUM_NEW_PLAN=0
|
|
NEXT_PUBLIC_STRIPE_PREMIUM_NEW_PLAN_PRICE=
|
|
STRIPE_TEAM_MONTHLY_PRICE_ID=
|
|
STRIPE_WEBHOOK_SECRET=
|
|
STRIPE_PRIVATE_KEY=
|
|
STRIPE_CLIENT_ID=
|
|
PAYMENT_FEE_FIXED=
|
|
PAYMENT_FEE_PERCENTAGE=
|
|
|
|
# Use for internal Public API Keys and optional
|
|
API_KEY_PREFIX=cal_
|
|
# ***********************************************************************************************************
|
|
|
|
# - E-MAIL SETTINGS *****************************************************************************************
|
|
# Cal uses nodemailer (@see https://nodemailer.com/about/) to provide email sending. As such we are trying to
|
|
# allow access to the nodemailer transports from the .env file. E-mail templates are accessible within lib/emails/
|
|
# Configures the global From: header whilst sending emails.
|
|
EMAIL_FROM='notifications@yourselfhostedcal.com'
|
|
|
|
# Configure SMTP settings (@see https://nodemailer.com/smtp/).
|
|
# Configuration to receive emails locally (mailhog)
|
|
EMAIL_SERVER_HOST='localhost'
|
|
EMAIL_SERVER_PORT=1025
|
|
|
|
# Note: The below configuration for Office 365 has been verified to work.
|
|
# EMAIL_SERVER_HOST='smtp.office365.com'
|
|
# EMAIL_SERVER_PORT=587
|
|
# EMAIL_SERVER_USER='<office365_emailAddress>'
|
|
# Keep in mind that if you have 2FA enabled, you will need to provision an App Password.
|
|
# EMAIL_SERVER_PASSWORD='<office365_password>'
|
|
|
|
# The following configuration for Gmail has been verified to work.
|
|
# EMAIL_SERVER_HOST='smtp.gmail.com'
|
|
# EMAIL_SERVER_PORT=465
|
|
# EMAIL_SERVER_USER='<gmail_emailAddress>'
|
|
## You will need to provision an App Password.
|
|
## @see https://support.google.com/accounts/answer/185833
|
|
# EMAIL_SERVER_PASSWORD='<gmail_app_password>'
|
|
# **********************************************************************************************************
|
|
|
|
# Set the following value to true if you wish to enable Team Impersonation
|
|
NEXT_PUBLIC_TEAM_IMPERSONATION=false
|
|
|
|
# Close.com internal CRM
|
|
CLOSECOM_API_KEY=
|
|
|
|
# Sendgrid internal sync service
|
|
SENDGRID_SYNC_API_KEY=
|
|
|
|
|
|
# Change your Brand
|
|
NEXT_PUBLIC_APP_NAME="Cal.com"
|
|
NEXT_PUBLIC_SUPPORT_MAIL_ADDRESS="help@cal.com"
|
|
NEXT_PUBLIC_COMPANY_NAME="Cal.com, Inc."
|
|
# Set this to true in to disable new signups
|
|
# NEXT_PUBLIC_DISABLE_SIGNUP=true
|
|
NEXT_PUBLIC_DISABLE_SIGNUP=
|
|
|
|
# Content Security Policy
|
|
CSP_POLICY=
|
|
|
|
# Vercel Edge Config
|
|
EDGE_CONFIG=
|
|
|
|
NEXT_PUBLIC_MINUTES_TO_BOOK=5 # Minutes
|
|
|
|
# - ORGANIZATIONS *******************************************************************************************
|
|
# Enable Organizations non-prod domain setup, works in combination with organizations feature flag
|
|
# This is mainly needed locally, because for orgs to work a full domain name needs to point
|
|
# to the app, i.e. app.cal.local instead of using localhost, which is very disruptive
|
|
#
|
|
# This variable should only be set to 1 or true if you are in a non-prod environment and you want to
|
|
# use organizations
|
|
ORGANIZATIONS_ENABLED=
|
|
|
|
# Vercel Config to create subdomains for organizations
|
|
PROJECT_ID_VERCEL=
|
|
TEAM_ID_VERCEL=
|
|
AUTH_BEARER_TOKEN_VERCEL=
|