2022-03-26 00:39:38 +00:00
require ( "dotenv" ) . config ( { path : "../../.env" } ) ;
2022-08-26 16:31:55 +00:00
const CopyWebpackPlugin = require ( "copy-webpack-plugin" ) ;
2022-11-11 09:47:11 +00:00
const { withSentryConfig } = require ( "@sentry/nextjs" ) ;
2022-11-22 13:33:17 +00:00
const os = require ( "os" ) ;
2022-03-09 22:56:05 +00:00
const withTM = require ( "next-transpile-modules" ) ( [
2022-03-23 22:00:30 +00:00
"@calcom/app-store" ,
"@calcom/core" ,
2022-06-28 20:40:58 +00:00
"@calcom/dayjs" ,
2022-06-06 17:49:56 +00:00
"@calcom/emails" ,
2022-03-31 08:45:47 +00:00
"@calcom/embed-core" ,
2022-07-06 20:34:49 +00:00
"@calcom/embed-react" ,
2022-05-05 14:29:49 +00:00
"@calcom/embed-snippet" ,
2022-07-28 19:58:26 +00:00
"@calcom/features" ,
2022-07-22 17:27:06 +00:00
"@calcom/lib" ,
"@calcom/prisma" ,
"@calcom/trpc" ,
"@calcom/ui" ,
2022-03-09 22:56:05 +00:00
] ) ;
2022-07-27 20:19:59 +00:00
const { withAxiom } = require ( "next-axiom" ) ;
2021-09-23 08:49:17 +00:00
const { i18n } = require ( "./next-i18next.config" ) ;
2021-04-26 12:01:21 +00:00
2022-06-03 16:50:48 +00:00
if ( ! process . env . NEXTAUTH _SECRET ) throw new Error ( "Please set NEXTAUTH_SECRET" ) ;
if ( ! process . env . CALENDSO _ENCRYPTION _KEY ) throw new Error ( "Please set CALENDSO_ENCRYPTION_KEY" ) ;
2021-09-21 20:18:41 +00:00
// So we can test deploy previews preview
2022-03-26 00:39:38 +00:00
if ( process . env . VERCEL _URL && ! process . env . NEXT _PUBLIC _WEBAPP _URL ) {
process . env . NEXT _PUBLIC _WEBAPP _URL = "https://" + process . env . VERCEL _URL ;
2021-09-21 20:18:41 +00:00
}
2022-11-08 15:04:18 +00:00
// Check for configuration of NEXTAUTH_URL before overriding
if ( ! process . env . NEXTAUTH _URL && process . env . NEXT _PUBLIC _WEBAPP _URL ) {
2022-03-26 00:39:38 +00:00
process . env . NEXTAUTH _URL = process . env . NEXT _PUBLIC _WEBAPP _URL + "/api/auth" ;
2021-06-07 16:38:46 +00:00
}
2022-03-26 00:39:38 +00:00
if ( ! process . env . NEXT _PUBLIC _WEBSITE _URL ) {
process . env . NEXT _PUBLIC _WEBSITE _URL = process . env . NEXT _PUBLIC _WEBAPP _URL ;
2021-09-22 18:36:13 +00:00
}
2021-06-07 16:38:46 +00:00
2023-02-06 22:50:08 +00:00
if ( process . env . CSP _POLICY === "strict" && process . env . NODE _ENV === "production" ) {
throw new Error (
"Strict CSP policy(for style-src) is not yet supported in production. You can experiment with it in Dev Mode"
) ;
}
2021-07-20 18:18:26 +00:00
if ( ! process . env . EMAIL _FROM ) {
console . warn (
"\x1b[33mwarn" ,
"\x1b[0m" ,
"EMAIL_FROM environment variable is not set, this may indicate mailing is currently disabled. Please refer to the .env.example file."
) ;
2021-05-27 22:10:20 +00:00
}
2022-06-03 18:48:47 +00:00
if ( ! process . env . NEXTAUTH _URL ) throw new Error ( "Please set NEXTAUTH_URL" ) ;
2021-05-04 20:31:15 +00:00
const validJson = ( jsonString ) => {
2021-07-20 18:18:26 +00:00
try {
const o = JSON . parse ( jsonString ) ;
if ( o && typeof o === "object" ) {
return o ;
2021-05-04 20:31:15 +00:00
}
2021-07-20 18:18:26 +00:00
} catch ( e ) {
console . error ( e ) ;
}
return false ;
} ;
2021-05-04 20:31:15 +00:00
2021-07-20 18:18:26 +00:00
if ( process . env . GOOGLE _API _CREDENTIALS && ! validJson ( process . env . GOOGLE _API _CREDENTIALS ) ) {
console . warn (
"\x1b[33mwarn" ,
"\x1b[0m" ,
'- Disabled \'Google Calendar\' integration. Reason: Invalid value for GOOGLE_API_CREDENTIALS environment variable. When set, this value needs to contain valid JSON like {"web":{"client_id":"<clid>","client_secret":"<secret>","redirect_uris":["<yourhost>/api/integrations/googlecalendar/callback>"]}. You can download this JSON from your OAuth Client @ https://console.cloud.google.com/apis/credentials.'
) ;
2021-05-04 20:31:15 +00:00
}
2021-10-20 09:08:58 +00:00
const plugins = [ ] ;
if ( process . env . ANALYZE === "true" ) {
// only load dependency if env `ANALYZE` was set
const withBundleAnalyzer = require ( "@next/bundle-analyzer" ) ( {
enabled : true ,
} ) ;
plugins . push ( withBundleAnalyzer ) ;
}
plugins . push ( withTM ) ;
2022-07-27 20:19:59 +00:00
plugins . push ( withAxiom ) ;
2022-03-26 00:39:38 +00:00
/** @type {import("next").NextConfig} */
const nextConfig = {
2021-09-23 08:49:17 +00:00
i18n ,
2022-11-18 14:23:14 +00:00
productionBrowserSourceMaps : true ,
2022-08-30 21:24:17 +00:00
/* We already do type check on GH actions */
typescript : {
ignoreBuildErrors : ! ! process . env . CI ,
} ,
/* We already do linting on GH actions */
2022-08-30 11:50:34 +00:00
eslint : {
2022-08-30 21:24:17 +00:00
ignoreDuringBuilds : ! ! process . env . CI ,
2022-08-30 11:50:34 +00:00
} ,
2023-01-06 12:13:56 +00:00
// TODO: We need to have all components in `@calcom/ui/components` in order to use this
// modularizeImports: {
// "@calcom/ui": {
// transform: "@calcom/ui/components/{{member}}",
// },
// },
2022-11-18 14:23:14 +00:00
images : {
unoptimized : true ,
2022-08-26 16:31:55 +00:00
} ,
Generate SSG Page used as cache for user's third-party calendar (#6775)
* Generate SSG Page used as cache for user's third-party calendars
* remove next-build-id dependency
* yarn.lock from main
* add support to get cached data from multiple months
* Update apps/web/pages/[user]/calendar-cache/[month].tsx
Co-authored-by: Omar López <zomars@me.com>
* Update apps/web/pages/[user]/calendar-cache/[month].tsx
Co-authored-by: Omar López <zomars@me.com>
* Update packages/core/CalendarManager.ts
Co-authored-by: Omar López <zomars@me.com>
* Add api endpoint that revalidates the current month and 3 more ahead
* Revalidate calendar cache when user connect new calendar.
* Revalidate calendar cache when user remove a calendar.
* Revalidate calendar cache when user change de selected calendars-
* Change revalidateCalendarCache function to @calcom/lib/server
* Remove the memory cache from getCachedResults
* refetch availability slots in a 3 seconds interval
* Hotfix: Event Name (#6863) (#6864)
* feat: make key unique (#6861)
* version 2.5.9 (#6868)
* Use Calendar component view=day for drop-in replacement troubleshooter (#6869)
* Use Calendar component view=day for drop-in replacement troubleshooter
* Setting the id to undefined makes the busy time selected
* Updated event title to include title+source
* lots of small changes by me and ciaran (#6871)
* Hotfix: For old Plausible installs enabled in an EventType, give a default value (#6860)
* Add default for trackingId for old plausible installs in event-types
* Fix types
* fix: filter booking in upcoming (#6406)
* fix: filter booking in upcoming
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: test
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: wipe-my-cal failing test
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
* fix workflows when duplicating event types (#6873)
* fix: get location url from metadata (#6774)
* fix: get location url from metadata
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: replace location
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: type error
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: use zod
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Updates heroku deployment template (#6879)
* Hide button (#6895)
* Fixed some inconsistencies within single event type page (#6887)
* Fixed some inconsistencies within single event type page
* Fix layout shift on AvailabilityTab
* fix(date-overrides): alignment of edit & delete btns (#6892)
* When unchecking the common schedule, schedule should be nulled (#6898)
* theme for storybook
* nit border change (#6899)
* fix: metadata not saved while creating a booking. (#6866)
* feat: add metadata to booking creation
* fix: bug
* Beginning of Strict CSP Compliance (#6841)
* Add CSP Support and enable it initially for Login page
* Update README
* Make sure that CSP is not enabled if CSP_POLICY isnt set
* Add a new value for x-csp header that tells if instance has opted-in to CSP or not
* Add more src to CSP
* Fix typo in header name
* Remove duplicate headers fn
* Add https://eu.ui-avatars.com/api/
* Add CSP_POLICY to env.example
* v2.5.10
* fix: add req.headers (#6921)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* add-console-vars (#6929)
* Admin Wizard Choose License (#6574)
* Implementation
* i18n
* More i18n
* extracted i18n, needs api to get most recent price, added hint: update later
* Fixing i18n var
* Fix booking filters not working for admin (#6576)
* fix: react-select overflow issue in some modals. (#6587)
* feat: add a disable overflow prop
* feat: use the disable overflow prop
* Tailwind Merge (#6596)
* Tailwind Merge
* Fix merge classNames
* [CAL-808] /availability/single - UI issue on buttons beside time inputs (#6561)
* [CAL-808] /availability/single - UI issue on buttons beside time inputs
* Update apps/web/public/static/locales/en/common.json
* Update packages/features/schedules/components/Schedule.tsx
* create new translation for tooltip
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Bye bye submodules (#6585)
* WIP
* Uses ssh instead
* Update .gitignore
* Update .gitignore
* Update Makefile
* Update git-setup.sh
* Update git-setup.sh
* Replaced Makefile with bash script
* Update package.json
* fix: show button on empty string (#6601)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: add delete in dropdown (#6599)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update README.md
* Update README.md
* Changed a neutral- classes to gray (#6603)
* Changed a neutral- classes to gray
* Changed all border-1 to border
* Update package.json
* Test fixes
* Yarn lock fixes
* Fix string equality check in git-setup.sh
* [CAL-811] Avatar icon not redirecting user back to the main page (#6586)
* Remove cursor-pointer, remove old Avatar* files
* Fixed styling for checkedSelect + some cleanup
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Harsh/add member invite (#6598)
Co-authored-by: Guest <guest@pop-os.localdomain>
Co-authored-by: root <harsh.singh@gocomet.com>
* Regenerated lockfile without upgrade (#6610)
* fix: remove annoying outline when <Button /> clicked (#6537)
* fix: remove annoying outline when <Button /> clicked
* Delete yarn.lock
* remove 1 on 1 icon (#6609)
* removed 1-on-1 badge
* changed user to users for group events
* fix: case-sensitivity in apps path (#6552)
* fix: lowercase slug
* fix: make fallback blocking
* Fix FAB (#6611)
* feat: add LocationSelect component (#6571)
* feat: add LocationSelect component
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: type error
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* chore: type error
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update booking filters design (#6543)
* Update booking filters
* Add filter on YOUR bookings
* Fix pending members showing up in list
* Reduce the avatar size to 'sm' for now
* Bugfix/dropdown menu trigger as child remove class names (#6614)
* Fix UsernameTextfield to take right height
* Remove className side-effect
* Incorrect resolution version fixed
* Converted mobile DropdownMenuTrigger styles into Button
* v2.5.3
* fix: use items-center (#6618)
* fix tooltip and modal stacking issues (#6491)
* fix tooltip and modal stacking issues
* use z-index in larger screens and less
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Temporary fix (#6626)
* Fix Ga4 tracking (#6630)
* generic <UpgradeScreen> component (#6594)
* first attempt of <UpgradeScreen>
* changes to icons
* reverted changes back to initial state, needs fix: teams not showing
* WIP
* Fix weird reactnode error
* Fix loading text
* added upgradeTip to routing forms
* icon colors
* create and use hook to check if user has team plan
* use useTeamPlan for upgradeTeamsBadge
* replace huge svg with compressed jpeg
* responsive fixes
* Update packages/ui/components/badge/UpgradeTeamsBadge.tsx
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Give team plan features to E2E tests
* Allow option to make a user part of team int ests
* Remove flash of paywall for team user
* Add team user for typeform tests as well
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Removing env var to rely on db
* Restoring i18n keys, set loading moved
* Fixing tailwind-preset glob
* Wizard width fix for md+ screens
* Converting licenses options to radix radio
* Applying feedback + other tweaks
* Reverting this, not this PR related
* Unneeded code removal
* Reverting unneeded style change
* Applying feedback
* Removing licenseType
* Upgrades typescript
* Update yarn lock
* Typings
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712)
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712) (#6713)
* Adds deployment settings to DB (#6706)
* WIP
* Adds DeploymentTheme
* Add missing migrations
* Adds client extensions for deployment
* Cleanup
* Delete migration.sql
* Relying on both, env var and new model
* Restoring env example doc for backward compat
* Maximum call stack size exceeded fix?
* Revert upgrade
* Update index.ts
* Delete index.ts
* Not exposing license key, fixed radio behavior
* Covering undefined env var
* Self contained checkLicense
* Feedback
* Moar feedback
* Feedback
* Feedback
* Feedback
* Cleanup
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Nafees Nazik <84864519+G3root@users.noreply.github.com>
Co-authored-by: GitStart-Cal.com <121884634+gitstart-calcom@users.noreply.github.com>
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Harsh Singh <51085015+harshsinghatz@users.noreply.github.com>
Co-authored-by: Guest <guest@pop-os.localdomain>
Co-authored-by: root <harsh.singh@gocomet.com>
Co-authored-by: Luis Cadillo <luiscaf3r@gmail.com>
Co-authored-by: Mohammed Cherfaoui <hi@cherfaoui.dev>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* added two new tips (#6915)
* [CAL-488] Timezone selection has a weird double dropdown (#6851)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* fix: color and line height of icon (#6913)
* fix: use destination calendar email (#6886)
* fix: use destination calendar email
to display correct primary email
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: simplify logic
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: dropdown title in bookings page (#6924)
* fixes the broken max size of members on teams page (#6926)
* fix: display provider name instead of url (#6914)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: add sortByLabel (#6797)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Email Variables Bug (#6943)
* Remove _subject translations for zh-CN, needs retranslation
* minor timezone-select improvements (#6944)
* fixed timezone select positioning and hover
* fixed timezone select positioning and hover
* Give trackingId a default value because if user doesnt interact with trackingId input it is not set (#6945)
* Block /auth/:path, nothing else. (#6949)
* Block /auth/:path, nothing else.
* Also add /signup
* fix start icon in button (#6950)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Fixes localisation of {EVENT_DATE} in workflows (#6907)
* translate {EVENT_DATE} variable to correct language
* fix locale for cron schedule reminder emails/sms
* fix type error
* add missing locale to attendees
* fix type error
* code clean up
* revert last commit
* using Intl for date translations
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Allow account linking for Google and SAML providers (#6874)
* allow account linking for self-hosted instances, both Google and SAML are verified emails
* allow account linking for Google and SSO if emails match with existing username/password account
* Tweaked find user by email since we now have multiple providers (other than credentials provider)
* feat/payment-service-6438-cal-767 (#6677)
* WIP paymentService
* Changes for payment Service
* Fix for stripe payment flow
* Remove logs/comments
* Refactored refund for stripe app
* Move stripe handlePayment to own lib
* Move stripe delete payments to paymentService
* lint fix
* Change handleRefundError as generic function
* remove log
* remove logs
* remove logs
* Return stripe default export to lib/server
* Fixing types
* Fix types
* Upgrades typescript
* Update yarn lock
* Typings
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712)
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712) (#6713)
* Adds deployment settings to DB (#6706)
* WIP
* Adds DeploymentTheme
* Add missing migrations
* Adds client extensions for deployment
* Cleanup
* Revert "lint fix"
This reverts commit e1a2e4a357e58e6673c47399888ae2e00d1351a6.
* Add validation
* Revert changes removed in force push
* Removing abstract class and just leaving interface implementation
* Fix types for handlePayments
* Fix payment test appStore import
* Fix stripe metadata in event type
* Move migration to separate PR
* Revert "Move migration to separate PR"
This reverts commit 48aa64e0724a522d3cc2fefaaaee5792ee9cd9e6.
* Update packages/prisma/migrations/20230125175109_remove_type_from_payment_and_add_app_relationship/migration.sql
Co-authored-by: Omar López <zomars@me.com>
---------
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Small UI fixes for seats & destination calendars (#6859)
* Do not add former time for events on seats
* Default display destination calendar
* Add seats badge to event type item
* Add string
* Actively watch seats enabled option for requires confirmation
* Only show former time when there is a rescheduleUid
* fix: use typedquery hook in duplicate dialog (#6730)
* fix: use typedquery hook in duplicate dialog
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update packages/features/eventtypes/components/DuplicateDialog.tsx
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Omar López <zomars@me.com>
* Fixing admin wizard step done (#6954)
* Feature/maintenance mode (#6930)
* Implement maintenance mode with Vercel Edge Config
* Error log is spam during development/ added \n in .env.example
* Exclude _next, /api for /maintenance page
* Re-instate previous config
* rtl: begone
* Added note to explain why /auth/login covers the maintenance page.
---------
Co-authored-by: Omar López <zomars@me.com>
* Update package.json
* I18N Caching (#6823)
* Caching Logic Changes
Enabled this function to change its cache value based on incoming paths value
* Invalidate I18N Cache
Invalidating the I18N cache when a user saves changes to their General settings
* Removes deprecated useLocale location
* Overriding the default getSchedule cache to have a revalidation time of 1 second
* Update apps/web/pages/api/trpc/[trpc].ts
* Updated cache values to match the comment
---------
Co-authored-by: zomars <zomars@me.com>
* feat: return `x-vercel-ip-timezone` in headers (#6849)
* feat: add trpc to matcher and pass vercel timezone header
* feat: pass request to context
* feat: return timezone in header
* refactor: split context
* fix: remove tsignore comment
* Update [trpc].ts
---------
Co-authored-by: zomars <zomars@me.com>
* log the json url for testing
* use WEBAPP_URL constant instead env.NEXT_PUBLIC_WEBAPP_URL
* remove the commented selectedCalendars var, it is not necessary
* Caching fixes
* Separate selectedDate slots from month slots
* Update [trpc].ts
* Log headers
* Update [trpc].ts
* Update package.json
* Fixes/trpc headers (#7045)
* Cache fixes
* Testing
* SWR breaks embed tests
* Prevent refetching day on month switch
* Skeleton fixes
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Nafees Nazik <84864519+G3root@users.noreply.github.com>
Co-authored-by: Ben Hybert <53020786+Hybes@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Sai Deepesh <saideepesh000@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Leo Giovanetti <hello@leog.me>
Co-authored-by: GitStart-Cal.com <121884634+gitstart-calcom@users.noreply.github.com>
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Harsh Singh <51085015+harshsinghatz@users.noreply.github.com>
Co-authored-by: Guest <guest@pop-os.localdomain>
Co-authored-by: root <harsh.singh@gocomet.com>
Co-authored-by: Luis Cadillo <luiscaf3r@gmail.com>
Co-authored-by: Mohammed Cherfaoui <hi@cherfaoui.dev>
Co-authored-by: Joe Shajan <joeshajan1551@gmail.com>
Co-authored-by: Deepak Prabhakara <deepak@boxyhq.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Aaron Presley <155617+AaronPresley@users.noreply.github.com>
2023-02-13 18:42:53 +00:00
webpack : ( config , { webpack , buildId } ) => {
2022-08-26 16:31:55 +00:00
config . plugins . push (
new CopyWebpackPlugin ( {
patterns : [
{
2022-08-31 09:26:16 +00:00
from : "../../packages/app-store/**/static/**" ,
2022-08-26 16:31:55 +00:00
to ( { context , absoluteFilename } ) {
2022-11-21 14:33:19 +00:00
// Adds compatibility for windows path
2022-11-22 13:33:17 +00:00
if ( os . platform ( ) === "win32" ) {
const absoluteFilenameWin = absoluteFilename . replaceAll ( "\\" , "/" ) ;
const contextWin = context . replaceAll ( "\\" , "/" ) ;
const appName = /app-store\/(.*)\/static/ . exec ( absoluteFilenameWin ) ;
return Promise . resolve ( ` ${ contextWin } /public/app-store/ ${ appName [ 1 ] } /[name][ext] ` ) ;
}
const appName = /app-store\/(.*)\/static/ . exec ( absoluteFilename ) ;
return Promise . resolve ( ` ${ context } /public/app-store/ ${ appName [ 1 ] } /[name][ext] ` ) ;
2022-08-26 16:31:55 +00:00
} ,
} ,
] ,
} )
) ;
Generate SSG Page used as cache for user's third-party calendar (#6775)
* Generate SSG Page used as cache for user's third-party calendars
* remove next-build-id dependency
* yarn.lock from main
* add support to get cached data from multiple months
* Update apps/web/pages/[user]/calendar-cache/[month].tsx
Co-authored-by: Omar López <zomars@me.com>
* Update apps/web/pages/[user]/calendar-cache/[month].tsx
Co-authored-by: Omar López <zomars@me.com>
* Update packages/core/CalendarManager.ts
Co-authored-by: Omar López <zomars@me.com>
* Add api endpoint that revalidates the current month and 3 more ahead
* Revalidate calendar cache when user connect new calendar.
* Revalidate calendar cache when user remove a calendar.
* Revalidate calendar cache when user change de selected calendars-
* Change revalidateCalendarCache function to @calcom/lib/server
* Remove the memory cache from getCachedResults
* refetch availability slots in a 3 seconds interval
* Hotfix: Event Name (#6863) (#6864)
* feat: make key unique (#6861)
* version 2.5.9 (#6868)
* Use Calendar component view=day for drop-in replacement troubleshooter (#6869)
* Use Calendar component view=day for drop-in replacement troubleshooter
* Setting the id to undefined makes the busy time selected
* Updated event title to include title+source
* lots of small changes by me and ciaran (#6871)
* Hotfix: For old Plausible installs enabled in an EventType, give a default value (#6860)
* Add default for trackingId for old plausible installs in event-types
* Fix types
* fix: filter booking in upcoming (#6406)
* fix: filter booking in upcoming
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: test
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: wipe-my-cal failing test
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
* fix workflows when duplicating event types (#6873)
* fix: get location url from metadata (#6774)
* fix: get location url from metadata
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: replace location
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: type error
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: use zod
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Updates heroku deployment template (#6879)
* Hide button (#6895)
* Fixed some inconsistencies within single event type page (#6887)
* Fixed some inconsistencies within single event type page
* Fix layout shift on AvailabilityTab
* fix(date-overrides): alignment of edit & delete btns (#6892)
* When unchecking the common schedule, schedule should be nulled (#6898)
* theme for storybook
* nit border change (#6899)
* fix: metadata not saved while creating a booking. (#6866)
* feat: add metadata to booking creation
* fix: bug
* Beginning of Strict CSP Compliance (#6841)
* Add CSP Support and enable it initially for Login page
* Update README
* Make sure that CSP is not enabled if CSP_POLICY isnt set
* Add a new value for x-csp header that tells if instance has opted-in to CSP or not
* Add more src to CSP
* Fix typo in header name
* Remove duplicate headers fn
* Add https://eu.ui-avatars.com/api/
* Add CSP_POLICY to env.example
* v2.5.10
* fix: add req.headers (#6921)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* add-console-vars (#6929)
* Admin Wizard Choose License (#6574)
* Implementation
* i18n
* More i18n
* extracted i18n, needs api to get most recent price, added hint: update later
* Fixing i18n var
* Fix booking filters not working for admin (#6576)
* fix: react-select overflow issue in some modals. (#6587)
* feat: add a disable overflow prop
* feat: use the disable overflow prop
* Tailwind Merge (#6596)
* Tailwind Merge
* Fix merge classNames
* [CAL-808] /availability/single - UI issue on buttons beside time inputs (#6561)
* [CAL-808] /availability/single - UI issue on buttons beside time inputs
* Update apps/web/public/static/locales/en/common.json
* Update packages/features/schedules/components/Schedule.tsx
* create new translation for tooltip
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Bye bye submodules (#6585)
* WIP
* Uses ssh instead
* Update .gitignore
* Update .gitignore
* Update Makefile
* Update git-setup.sh
* Update git-setup.sh
* Replaced Makefile with bash script
* Update package.json
* fix: show button on empty string (#6601)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: add delete in dropdown (#6599)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update README.md
* Update README.md
* Changed a neutral- classes to gray (#6603)
* Changed a neutral- classes to gray
* Changed all border-1 to border
* Update package.json
* Test fixes
* Yarn lock fixes
* Fix string equality check in git-setup.sh
* [CAL-811] Avatar icon not redirecting user back to the main page (#6586)
* Remove cursor-pointer, remove old Avatar* files
* Fixed styling for checkedSelect + some cleanup
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Harsh/add member invite (#6598)
Co-authored-by: Guest <guest@pop-os.localdomain>
Co-authored-by: root <harsh.singh@gocomet.com>
* Regenerated lockfile without upgrade (#6610)
* fix: remove annoying outline when <Button /> clicked (#6537)
* fix: remove annoying outline when <Button /> clicked
* Delete yarn.lock
* remove 1 on 1 icon (#6609)
* removed 1-on-1 badge
* changed user to users for group events
* fix: case-sensitivity in apps path (#6552)
* fix: lowercase slug
* fix: make fallback blocking
* Fix FAB (#6611)
* feat: add LocationSelect component (#6571)
* feat: add LocationSelect component
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: type error
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* chore: type error
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update booking filters design (#6543)
* Update booking filters
* Add filter on YOUR bookings
* Fix pending members showing up in list
* Reduce the avatar size to 'sm' for now
* Bugfix/dropdown menu trigger as child remove class names (#6614)
* Fix UsernameTextfield to take right height
* Remove className side-effect
* Incorrect resolution version fixed
* Converted mobile DropdownMenuTrigger styles into Button
* v2.5.3
* fix: use items-center (#6618)
* fix tooltip and modal stacking issues (#6491)
* fix tooltip and modal stacking issues
* use z-index in larger screens and less
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Temporary fix (#6626)
* Fix Ga4 tracking (#6630)
* generic <UpgradeScreen> component (#6594)
* first attempt of <UpgradeScreen>
* changes to icons
* reverted changes back to initial state, needs fix: teams not showing
* WIP
* Fix weird reactnode error
* Fix loading text
* added upgradeTip to routing forms
* icon colors
* create and use hook to check if user has team plan
* use useTeamPlan for upgradeTeamsBadge
* replace huge svg with compressed jpeg
* responsive fixes
* Update packages/ui/components/badge/UpgradeTeamsBadge.tsx
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Give team plan features to E2E tests
* Allow option to make a user part of team int ests
* Remove flash of paywall for team user
* Add team user for typeform tests as well
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Removing env var to rely on db
* Restoring i18n keys, set loading moved
* Fixing tailwind-preset glob
* Wizard width fix for md+ screens
* Converting licenses options to radix radio
* Applying feedback + other tweaks
* Reverting this, not this PR related
* Unneeded code removal
* Reverting unneeded style change
* Applying feedback
* Removing licenseType
* Upgrades typescript
* Update yarn lock
* Typings
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712)
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712) (#6713)
* Adds deployment settings to DB (#6706)
* WIP
* Adds DeploymentTheme
* Add missing migrations
* Adds client extensions for deployment
* Cleanup
* Delete migration.sql
* Relying on both, env var and new model
* Restoring env example doc for backward compat
* Maximum call stack size exceeded fix?
* Revert upgrade
* Update index.ts
* Delete index.ts
* Not exposing license key, fixed radio behavior
* Covering undefined env var
* Self contained checkLicense
* Feedback
* Moar feedback
* Feedback
* Feedback
* Feedback
* Cleanup
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Nafees Nazik <84864519+G3root@users.noreply.github.com>
Co-authored-by: GitStart-Cal.com <121884634+gitstart-calcom@users.noreply.github.com>
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Harsh Singh <51085015+harshsinghatz@users.noreply.github.com>
Co-authored-by: Guest <guest@pop-os.localdomain>
Co-authored-by: root <harsh.singh@gocomet.com>
Co-authored-by: Luis Cadillo <luiscaf3r@gmail.com>
Co-authored-by: Mohammed Cherfaoui <hi@cherfaoui.dev>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* added two new tips (#6915)
* [CAL-488] Timezone selection has a weird double dropdown (#6851)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* fix: color and line height of icon (#6913)
* fix: use destination calendar email (#6886)
* fix: use destination calendar email
to display correct primary email
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: simplify logic
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: dropdown title in bookings page (#6924)
* fixes the broken max size of members on teams page (#6926)
* fix: display provider name instead of url (#6914)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: add sortByLabel (#6797)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Email Variables Bug (#6943)
* Remove _subject translations for zh-CN, needs retranslation
* minor timezone-select improvements (#6944)
* fixed timezone select positioning and hover
* fixed timezone select positioning and hover
* Give trackingId a default value because if user doesnt interact with trackingId input it is not set (#6945)
* Block /auth/:path, nothing else. (#6949)
* Block /auth/:path, nothing else.
* Also add /signup
* fix start icon in button (#6950)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Fixes localisation of {EVENT_DATE} in workflows (#6907)
* translate {EVENT_DATE} variable to correct language
* fix locale for cron schedule reminder emails/sms
* fix type error
* add missing locale to attendees
* fix type error
* code clean up
* revert last commit
* using Intl for date translations
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Allow account linking for Google and SAML providers (#6874)
* allow account linking for self-hosted instances, both Google and SAML are verified emails
* allow account linking for Google and SSO if emails match with existing username/password account
* Tweaked find user by email since we now have multiple providers (other than credentials provider)
* feat/payment-service-6438-cal-767 (#6677)
* WIP paymentService
* Changes for payment Service
* Fix for stripe payment flow
* Remove logs/comments
* Refactored refund for stripe app
* Move stripe handlePayment to own lib
* Move stripe delete payments to paymentService
* lint fix
* Change handleRefundError as generic function
* remove log
* remove logs
* remove logs
* Return stripe default export to lib/server
* Fixing types
* Fix types
* Upgrades typescript
* Update yarn lock
* Typings
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712)
* Hotfix: ping,riverside,whereby and around not showing up in list (#6712) (#6713)
* Adds deployment settings to DB (#6706)
* WIP
* Adds DeploymentTheme
* Add missing migrations
* Adds client extensions for deployment
* Cleanup
* Revert "lint fix"
This reverts commit e1a2e4a357e58e6673c47399888ae2e00d1351a6.
* Add validation
* Revert changes removed in force push
* Removing abstract class and just leaving interface implementation
* Fix types for handlePayments
* Fix payment test appStore import
* Fix stripe metadata in event type
* Move migration to separate PR
* Revert "Move migration to separate PR"
This reverts commit 48aa64e0724a522d3cc2fefaaaee5792ee9cd9e6.
* Update packages/prisma/migrations/20230125175109_remove_type_from_payment_and_add_app_relationship/migration.sql
Co-authored-by: Omar López <zomars@me.com>
---------
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Small UI fixes for seats & destination calendars (#6859)
* Do not add former time for events on seats
* Default display destination calendar
* Add seats badge to event type item
* Add string
* Actively watch seats enabled option for requires confirmation
* Only show former time when there is a rescheduleUid
* fix: use typedquery hook in duplicate dialog (#6730)
* fix: use typedquery hook in duplicate dialog
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update packages/features/eventtypes/components/DuplicateDialog.tsx
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Omar López <zomars@me.com>
* Fixing admin wizard step done (#6954)
* Feature/maintenance mode (#6930)
* Implement maintenance mode with Vercel Edge Config
* Error log is spam during development/ added \n in .env.example
* Exclude _next, /api for /maintenance page
* Re-instate previous config
* rtl: begone
* Added note to explain why /auth/login covers the maintenance page.
---------
Co-authored-by: Omar López <zomars@me.com>
* Update package.json
* I18N Caching (#6823)
* Caching Logic Changes
Enabled this function to change its cache value based on incoming paths value
* Invalidate I18N Cache
Invalidating the I18N cache when a user saves changes to their General settings
* Removes deprecated useLocale location
* Overriding the default getSchedule cache to have a revalidation time of 1 second
* Update apps/web/pages/api/trpc/[trpc].ts
* Updated cache values to match the comment
---------
Co-authored-by: zomars <zomars@me.com>
* feat: return `x-vercel-ip-timezone` in headers (#6849)
* feat: add trpc to matcher and pass vercel timezone header
* feat: pass request to context
* feat: return timezone in header
* refactor: split context
* fix: remove tsignore comment
* Update [trpc].ts
---------
Co-authored-by: zomars <zomars@me.com>
* log the json url for testing
* use WEBAPP_URL constant instead env.NEXT_PUBLIC_WEBAPP_URL
* remove the commented selectedCalendars var, it is not necessary
* Caching fixes
* Separate selectedDate slots from month slots
* Update [trpc].ts
* Log headers
* Update [trpc].ts
* Update package.json
* Fixes/trpc headers (#7045)
* Cache fixes
* Testing
* SWR breaks embed tests
* Prevent refetching day on month switch
* Skeleton fixes
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Nafees Nazik <84864519+G3root@users.noreply.github.com>
Co-authored-by: Ben Hybert <53020786+Hybes@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Sai Deepesh <saideepesh000@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Leo Giovanetti <hello@leog.me>
Co-authored-by: GitStart-Cal.com <121884634+gitstart-calcom@users.noreply.github.com>
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Harsh Singh <51085015+harshsinghatz@users.noreply.github.com>
Co-authored-by: Guest <guest@pop-os.localdomain>
Co-authored-by: root <harsh.singh@gocomet.com>
Co-authored-by: Luis Cadillo <luiscaf3r@gmail.com>
Co-authored-by: Mohammed Cherfaoui <hi@cherfaoui.dev>
Co-authored-by: Joe Shajan <joeshajan1551@gmail.com>
Co-authored-by: Deepak Prabhakara <deepak@boxyhq.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Aaron Presley <155617+AaronPresley@users.noreply.github.com>
2023-02-13 18:42:53 +00:00
config . plugins . push ( new webpack . DefinePlugin ( { "process.env.BUILD_ID" : JSON . stringify ( buildId ) } ) ) ;
2021-09-09 13:51:06 +00:00
config . resolve . fallback = {
... config . resolve . fallback , // if you miss it, all the other options in fallback, specified
// by next.js will be dropped. Doesn't make much sense, but how it is
fs : false ,
} ;
2022-08-11 16:36:30 +00:00
/ * *
* TODO : Find more possible barrels for this project .
* @ see https : //github.com/vercel/next.js/issues/12557#issuecomment-1196931845
* * /
config . module . rules . push ( {
test : [ /lib\/.*.tsx?/i ] ,
sideEffects : false ,
} ) ;
2021-09-09 13:51:06 +00:00
return config ;
} ,
2022-01-11 08:54:02 +00:00
async rewrites ( ) {
2022-07-14 20:56:00 +00:00
return [
{
source : "/:user/avatar.png" ,
destination : "/api/user/avatar?username=:user" ,
} ,
{
source : "/team/:teamname/avatar.png" ,
destination : "/api/user/avatar?teamname=:teamname" ,
} ,
2022-07-15 11:46:05 +00:00
{
2022-10-19 21:25:03 +00:00
source : "/forms/:formQuery*" ,
destination : "/apps/routing-forms/routing-link/:formQuery*" ,
2022-07-15 11:46:05 +00:00
} ,
2022-08-13 11:04:57 +00:00
{
source : "/router" ,
2022-09-22 17:23:43 +00:00
destination : "/apps/routing-forms/router" ,
2022-08-13 11:04:57 +00:00
} ,
2022-11-29 20:27:29 +00:00
{
source : "/success/:path*" ,
has : [
{
type : "query" ,
key : "uid" ,
value : "(?<uid>.*)" ,
} ,
] ,
destination : "/booking/:uid/:path*" ,
} ,
{
source : "/cancel/:path*" ,
destination : "/booking/:path*" ,
} ,
2022-07-14 20:56:00 +00:00
/ * T O D O : h a v e t h e s e f i l e s b e i n g s e r v e d f r o m a n o t h e r d e p l o y m e n t o r C D N {
source : "/embed/embed.js" ,
destination : process . env . NEXT _PUBLIC _EMBED _LIB _URL ? ,
} , * /
] ;
2022-01-11 08:54:02 +00:00
} ,
2023-02-01 05:58:47 +00:00
async headers ( ) {
return [
{
2023-02-08 16:27:18 +00:00
source : "/auth/:path*" ,
headers : [
{
key : "X-Frame-Options" ,
value : "DENY" ,
} ,
] ,
} ,
{
source : "/signup" ,
2023-02-01 05:58:47 +00:00
headers : [
{
key : "X-Frame-Options" ,
value : "DENY" ,
} ,
] ,
} ,
2023-02-06 22:50:08 +00:00
{
source : "/:path*" ,
headers : [
{
key : "X-Content-Type-Options" ,
value : "nosniff" ,
} ,
{
key : "Referrer-Policy" ,
value : "strict-origin-when-cross-origin" ,
} ,
] ,
} ,
2023-02-01 05:58:47 +00:00
] ;
} ,
2021-05-07 15:04:56 +00:00
async redirects ( ) {
2022-05-02 20:39:35 +00:00
const redirects = [
2022-08-26 16:31:55 +00:00
{
source : "/api/app-store/:path*" ,
destination : "/app-store/:path*" ,
permanent : true ,
} ,
2022-10-12 12:52:59 +00:00
{
source : "/auth/signup" ,
destination : "/signup" ,
permanent : true ,
} ,
2021-05-07 15:04:56 +00:00
{
2021-07-20 18:18:26 +00:00
source : "/settings" ,
2022-09-15 11:09:06 +00:00
destination : "/settings/my-account/profile" ,
2021-05-07 15:04:56 +00:00
permanent : true ,
2021-07-20 18:18:26 +00:00
} ,
2022-09-19 14:38:21 +00:00
{
source : "/settings/teams" ,
destination : "/teams" ,
permanent : true ,
} ,
2022-08-26 00:11:41 +00:00
/* V2 testers get redirected to the new settings */
{
source : "/settings/profile" ,
destination : "/settings/my-account/profile" ,
permanent : false ,
} ,
2022-08-30 19:46:52 +00:00
{
source : "/settings/security" ,
destination : "/settings/security/password" ,
permanent : false ,
} ,
2021-09-29 21:33:18 +00:00
{
source : "/bookings" ,
destination : "/bookings/upcoming" ,
permanent : true ,
} ,
2022-02-15 15:13:27 +00:00
{
2022-03-26 00:39:38 +00:00
source : "/call/:path*" ,
destination : "/video/:path*" ,
permanent : false ,
} ,
2022-08-16 22:01:38 +00:00
/* Attempt to mitigate DDoS attack */
{
source : "/api/auth/:path*" ,
has : [
{
2022-08-16 23:38:26 +00:00
type : "query" ,
key : "callbackUrl" ,
// prettier-ignore
value : "^(?!https?:\/\/).*$" ,
2022-08-16 22:01:38 +00:00
} ,
] ,
destination : "/404" ,
permanent : false ,
} ,
2022-12-22 00:15:51 +00:00
{
source : "/booking/direct/:action/:email/:bookingUid/:oldToken" ,
destination : "/api/link?action=:action&email=:email&bookingUid=:bookingUid&oldToken=:oldToken" ,
permanent : true ,
} ,
2021-07-20 18:18:26 +00:00
] ;
2022-05-02 20:39:35 +00:00
if ( process . env . NEXT _PUBLIC _WEBAPP _URL === "https://app.cal.com" ) {
redirects . push (
{
source : "/apps/dailyvideo" ,
destination : "/apps/daily-video" ,
permanent : true ,
} ,
{
source : "/apps/huddle01_video" ,
destination : "/apps/huddle01" ,
permanent : true ,
} ,
{
source : "/apps/jitsi_video" ,
destination : "/apps/jitsi" ,
permanent : true ,
}
) ;
}
return redirects ;
2021-07-20 18:18:26 +00:00
} ,
2022-11-11 09:47:11 +00:00
} ;
const sentryWebpackPluginOptions = {
silent : true , // Suppresses all logs
2022-03-26 00:39:38 +00:00
} ;
2022-11-11 09:47:11 +00:00
const moduleExports = ( ) => plugins . reduce ( ( acc , next ) => next ( acc ) , nextConfig ) ;
2022-11-18 14:23:14 +00:00
if ( process . env . NEXT _PUBLIC _SENTRY _DSN ) {
nextConfig . sentry = {
hideSourceMaps : true ,
// Prevents Sentry from running on this Edge function, where Sentry doesn't work yet (build whould crash the api route).
excludeServerRoutes : [ /\/api\/social\/og\/image\/?/ ] ,
} ;
}
2022-11-11 09:47:11 +00:00
// Sentry should be the last thing to export to catch everything right
module . exports = process . env . NEXT _PUBLIC _SENTRY _DSN
? withSentryConfig ( moduleExports , sentryWebpackPluginOptions )
: moduleExports ;