* manual migration to rename verificationtoken, maybe it could be dropped and create a new table instead if we're not using it, will consult @zomars
* feat: rename verificationRequest --> verificationToken in schema.prisma
* fix: rename verificationRequest -> verificationToken in the codebase
* feat: add default cookies for next-auth
* fix: moves @lib/serverConfig to @calcom/lib so it can be called by website too
* fix: make self-certificate work in dev env by not rejecting tls in serverConfig
* fix verificationTokenToken typo
Co-authored-by: Omar López <zomars@me.com>
* Adds domain: .cal.com if not dev env in cookies
* Adds default-cookies to apps/web, and nextauth_domain to turbo website build deps"a
* update NEXTAUTH_DOMAIN to NEXTAUTH_COOKIE_DOMAIN
* Updates website submodule
* Removes deprecated env vars
* Consolidates auth logic in one place
* Updates website module
* Signup fixes
* Build fixes
* Updates example
* Updates example
* Fixes
* Fix Email Verification
* fix: move csrf-token cookiePrefix from __Host -> __Secure
* Removes console log
* Fixes link in email template
* Removed irrelevant coment
* Testing with a 32 bit secret
* Fixes for cookien in E2E
* E2E fixes
* Fixes Stripe tests locally
* Temp fix for E2E
Co-authored-by: Agusti Fernandez Pardo <git@agusti.me>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* patch applied
* patch applied
* We shouldn't pollute global css
* Build fixes
* Updates typings
* WIP extracting zoom to package
* Revert "Upgrades next to 12.1 (#1895)" (#1903)
This reverts commit ede0e98e1f.
* Tweak/gitignore prisma zod (#1905)
* Extracts ignored createEventTypeBaseInput
* Adds postinstall script
* Revert "Tweak/gitignore prisma zod (#1905)" (#1906)
This reverts commit 15bfeb30d7.
* Eslint fixes (#1898)
* Eslint fixes
* Docs build fixes
* Upgrade to next 12.1 (#1904)
* Upgrades next to 12.1
* Fixes build
* Updaters e2e test pipelines
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Fix URL by removing slash and backslash (#1733)
* Fix URl by removing slash and backslash
* Implement slugify
* Add data type
* Fixing folder structure
* Solve zod-utils conflict
* Build fixes (#1929)
* Build fixes
* Fixes type error
* WIP
* Conflict fixes
* Removes unused file
* TODO
* WIP
* Type fixes
* Linting
* WIP
* Moved App definition to types
* WIP
* WIP
* WIP
* WIP WIP
* Renamed zoomvideo app
* Import fix
* Daily.co app (#2022)
* Daily.co app
* Update packages/app-store/dailyvideo/lib/VideoApiAdapter.ts
Co-authored-by: Omar López <zomars@me.com>
* Update packages/app-store/dailyvideo/lib/VideoApiAdapter.ts
Co-authored-by: Omar López <zomars@me.com>
* Missing deps for newly added contants to lib
Co-authored-by: Omar López <zomars@me.com>
* WIP
* WIP
* WIP
* Daily fixes
* Updated type info
* Slack Oauth integration - api route ideas
* Adds getLocationOptions
* Type fixes
* Adds location option for daily video
* Revert "Slack Oauth integration - api route ideas"
This reverts commit 35ffa78e92.
* Slack Oauth + verify sig
* Slack Oauth + verify sig
Implementing connect slack with workspace OAuth
Implemented the ability for slack to send requests on events (commands etc) - This only works if slacks signature matches with our signature
* Revert "Slack Oauth + verify sig"
This reverts commit ee95795e0f.
* WIP - Signature verifiaction failure
* Huddle01 migration to app store (#2038)
* Jitsi Video App migration
* Removing uneeded dependencies
* Missed unused reference
* Missing dependency
`@calcom/lib` is needed in the `locationOption.ts` file
* Huddle01 migration to app store
* WIP: PostData for creating event
* Optimising Query
Vital as we only have 3 seconds max to return the response to slack.
* Jitsi Video App migration (#2027)
* Jitsi Video App migration
* Removing uneeded dependencies
* Missed unused reference
* Missing dependency
`@calcom/lib` is needed in the `locationOption.ts` file
Co-authored-by: Omar López <zomars@me.com>
* Monorepo/app store MS Teams Integration (#2080)
* Create teamsvideo package
* Remove zoom specific refrences
* Add teams video files
* Rename to office365_video
* Add call back to add crednetial type office365_teams
* Rename to office_video to match type
* Add MS Teams as a location option
* Rename files
* Add teams reponse interface and create meeting
* Comment out Daily imports
* Add check for Teams integration
* Add token checking functions
* Change template to create event rather than meeting
* Add comment to test between create link and event
* Add teams URL to booking
* Ask for just onlineMeeting permission
* Add MS Teams logo
* Add message to have an enterprise account
* Remove comments
* Comment back hasDailyIntegration
* Comment back daily credentials
* Update link to MS Graph section of README
* Move API calls to package
Co-authored-by: Omar López <zomars@me.com>
* Re-adds missing module for transpiling
* Adding connect button if there is on user
* Adds email as required field for app store metadata
* WIP: migrates tandem to app store
* Cleanup
* Migrates tandem api routes to app store
* Fixes tandem api handlers
* Big WIP WIP
* Show todays bookings.
* No booking message to json
* Transition into modals
Better UX for submitting forms.
* Create Bookings - Working
* Fixing /today to show today and not all upcoming
* Fixing message
* Build fixes
* WIP
* Fixes annoying circular dependency bug
I've spent a whole day on this....
* Location option cleanup
* Type fixes
* Update EventManager.ts
* Update CalendarManager.ts
* Merge branch 'monorepo/app-store' into sean-monorepo-slack-oauth
* Moves CalendarService back to lib
* Moves apple calendar to App Store
* Cleanup
* Booking Success
* Merge branch 'main' into sean-monorepo-slack-oauth
* Restored moved file
* Delete TeamRole.tsx
* Undoing unrelated changes
* Cleanup
* Cleanup
* Updates website
* Delete .env.example
* Update yarn.lock
* Adds instructions to README
* Build fixes
* Uses generic app store api handler
* Adds install button and cleanup
* Updates .env.example
* Update README.md
* Renames slackapp to slackmessaing
* Update InstallAppButton.tsx
* Delete locationOption.ts
* Type fixes
* Build fixes
* Links + Fixing connection issue
* fixed merge conflict
* fixed merge conflict
* Type fixes
* Update index.ts
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Juan Esteban Nieto Cifuentes <89233604+Jenietoc@users.noreply.github.com>
Co-authored-by: Leo Giovanetti <hello@leog.me>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
* Concluded merge
* Applied stash to newly merged
* Always disconnect + remove redundant success message
* Added named dialog to replace new=1
* Merged with main p2
* Set eventTypeId to @unique
* WIP
* Undo vscode changes
* Availability dropdown works
* Remove console.log + set schedule to null as it is unneeded
* Added schedule to availability endpoint
* Reduce one refresh; hotfix state inconsistency with forced refresh for now
* Add missing translations
* Fixed some type errors I missed
* Ditch outdated remnant from before packages/prisma
* Remove Availability section for teams
* Bringing back the Availability section temporarily to teams to allow configuration
* Migrated getting-started to new availability system + updated translations + updated seed
* Fixed type error coming from main
* Titlecase 'default' by providing translation
* Fixed broken 'radio' buttons.
* schedule deleted translation added
* Added empty state for when no schedules are configured
* Added correct created message + hotfix reload hard on delete to refresh state
* Removed index renames
* Type fixes
* Update NewScheduleButton.tsx
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Bailey Pumfleet <pumfleet@hey.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* MVP zendesk provider
* hide zendesk on mobile
* hide zendesk chat bubble on mobile too
* made mobile selector more robust
* made user menu full width
* removed zendesk react and instead use Nextjs Script
* updated NEXT_PUBLIC_ZENDESK_KEY env in example
* Upgrades prisma
* Extends Stripe paid booking timeout
* Stripe test fixes
* Disables cache for db-reset
* Disabled cache from db-seed
* Avatar fixes
* Fixes paid booking test once and for all
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* updated saml-jackson
* if logged in redirect to getting-started page with username in the query param
* fixed issue with mixed up Google login, profile.id is undefined and this is causing the first record to be retrieved instead of the AND query failing
* updated updated saml-jackson
* document PGSSLMODE for Heroku
* tweaks to PGSSLMODE doc
* for self-hosted instance just allow user to signin with any identity (as long as email matches)
* fixed submitting flag
* added username to onboarding flow (if requested during signup)
* added telemetry for google login, saml login, saml config
* check if firstName and lastName are defined
* convert mutation to an async op
* added e2e test to ensure username query param gets picked up during onboarding
* fixed minor typo and added note about configuring Google integration as an Internal app when self-hosting
* cleaned up unnecessary ssr in sso signup routes
* renamed function
* Revert "cleaned up unnecessary ssr in sso signup routes"
This reverts commit 3607ffef79.
* moved client side code to useEffect hook
* - format
- fixed Save button in SAML config component
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Crypto events (#1390)
* update schemas, functions & ui to allow creating and updating events with a smart contract property
* remove adding sc address in the dialog that first pops-up when creating a new event, since its an advanced option
* add sc to booking ui
* some more ts && error handling
* fetch erc20s and nfts list in event-type page
* some cleanup within time limit
* ts fix 1
* more ts fixes
* added web3 section to integrations
* added web3 wrapper, needs connection to user_settings db
* extract to api
* Update eventType.ts
* Update components/CryptoSection.tsx
Change comment from // to /** as @zomars suggested
Co-authored-by: Omar López <zomars@me.com>
* convert axios to fetch, change scAddress to smartContractAddress, load bloxy from next_public_env
* Fix branch conflict
* add enable/disable btn web3
* fixed away user causing duplicate entries
* Remove web3 validation
* renamed web3 button in integrations
* remove unused variable
* Add metadata column
* added loader and showToast to the web3 btn
* fix: remove smartContractAddress from info sended
* send to user events when the contract is missing
* use window.web3 instead of web3
* use NEXT_PUBLIC_WEB3_AUTH_MSG
* remove web3 auth from .env
* wip
* wip
* Add metamask not installed msg and success redirect
* add redirect when verified
* styled web3 button and added i18n to web3
* fixed redirect after verification
* wip
* wip
* moved crypto section to ee
Co-authored-by: Yuval Drori <53199044+yuvd@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@richelsen.net>
Co-authored-by: Yuval Drori <yuvald29@protonmail.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Edward Fernandez <edward.fernandez@rappi.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Remove emailVerified not null from query
* Improve query to find existing user
* Add test suite to Signup from a Team Invite
* Allow importing modules with aliases
* Delete created data after all tests
* Resolve conflicts
* Use teampro instead of pro user and refactor code
* Add log in with Google
* Fix merge conflicts
* Merge branch 'main' into feature/copy-add-identity-provider
# Conflicts:
# pages/api/auth/[...nextauth].tsx
# pages/api/auth/forgot-password.ts
# pages/settings/security.tsx
# prisma/schema.prisma
# public/static/locales/en/common.json
* WIP: SAML login
* fixed login
* fixed verified_email check for Google
* tweaks to padding
* added BoxyHQ SAML service to local docker-compose
* identityProvider is missing from the select clause
* user may be undefined
* fix for yarn build
* Added SAML configuration to Settings -> Security page
* UI tweaks
* get saml login flag from the server
* UI tweaks
* moved SAMLConfiguration to a component in ee
* updated saml migration date
* fixed merge conflict
* fixed merge conflict
* lint fixes
* check-types fixes
* check-types fixes
* fixed type errors
* updated docker image for SAML Jackson
* added api keys config
* added default values for SAML_TENANT_ID and SAML_PRODUCT_ID
* - move all env vars related to saml into a separate file for easy access
- added SAML_ADMINS comma separated list of emails that will be able to configure the SAML metadata
* cleanup after merging main
* revert mistake during merge
* revert mistake during merge
* set info text to indicate SAML has been configured.
* tweaks to text
* tweaks to text
* i18n text
* i18n text
* tweak
* use a separate db for saml to avoid Prisma schema being out of sync
* use separate docker-compose file for saml
* padding tweak
* Prepare for implementing SAML login for the hosted solution
* WIP: Support for SAML in the hosted solution
* teams view has changed, adjusting saml changes accordingly
* enabled SAML only for PRO plan
* if user was invited and signs in via saml/google then update the user record
* WIP: embed saml lib
* 302 instead of 307
* no separate docker-compose file for saml
* - ogs cleanup
- type fixes
* fixed types for jackson
* cleaned up cors, not needed by the oauth flow
* updated jackson to support encryption at rest
* updated saml-jackson lib
* allow only the required http methods
* fixed issue with latest merge with main
* - Added instructions for deploying SAML support
- Tweaked SAML audience identifier
* fixed check for hosted Cal instance
* Added a new route to initiate Google and SAML login flows
* updated saml-jackson lib (node engine version is now 14.x or above)
* moved SAML instructions from Google Docs to a docs file
* moved randomString to lib
* comment SAML_DATABASE_URL and SAML_ADMINS in .env.example so that default is SAML off.
* fixed path to randomString
* updated @boxyhq/saml-jackson to v0.3.0
* fixed TS errors
* tweaked SAML config UI
* fixed types
* added e2e test for Google login
* setup secrets for Google login test
* test for OAuth login buttons (Google and SAML)
* enabled saml for the test
* added test for SAML config UI
* fixed nextauth import
* use pkce flow
* tweaked NextAuth config for saml
* updated saml-jackson
* added ability to delete SAML configuration
* SAML variables explainers and refactoring
* Prevents constant collision
* Var name changes
* Env explainers
* better validation for email
Co-authored-by: Omar López <zomars@me.com>
* enabled GOOGLE_API_CREDENTIALS in e2e tests (Github Actions secret)
* cleanup (will create an issue to handle forgot password for Google and SAML identities)
Co-authored-by: Chris <76668588+bytesbuffer@users.noreply.github.com>
Co-authored-by: Omar López <zomars@me.com>
* [WIP] checkpoint before pull & merge
- Added teams to sidebar
- Refactored team settings
- Improved team list UI
This code will be partly reverted next commit.
* [WIP]
- Moved team code back to components
- Removed team link from sidebar
- Built new team manager screen based on Event Type designs
- Component-ized frequently reused code (SettingInputContainer, FlatIconButton)
* [WIP]
- Created LinkIconButton as standalone component
- Added functionality to sidebar of team settings
- Fixed type bug on public team page induced by my normalization of members array in team query
- Removed teams-old which was kept as refrence
- Cleaned up loose ends
* [WIP]
- added create team model
- fixed profile missing label due to my removal of default label from component
* [WIP]
- Fixed TeamCreateModal trigger
- removed TeamShell, it didn't make the cut
- added getPlaceHolderAvatar
- renamed TeamCreate to TeamCreateModal
- removed deprecated UsernameInput and replaced uses with suggested TextField
* fix save button
* [WIP]
- Fixed drop down actions on team list
- Cleaned up state updates
* [WIP] converting teams to tRPC
* [WIP] Finished refactor to tRPC
* [WIP] Finishing touches
* [WIP] Team availability beginning
* team availability mvp
* - added validation to change role
- modified layout of team availability
- corrected types
* fix ui issue on team availability screen
* - added virtualization to team availability
- added flexChildrenContainer boolean to Shell to allow for flex on children
* availability style fix
* removed hard coded team type as teams now use inferred type from tRPC
* Removed unneeded vscode settings
* Reverted prisma schema
* Fixed migrations
* Removes unused dayjs plugins
* Reverts type regression
* Type fix
* Type fixes
* Type fixes
* Moves team availability code to ee
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
* wip
* tmp mig
* add cron api key to header
* feels safer
* Revert "wip"
This reverts commit 15a8358661.
* test
* add name
* normalize dates
* maybe works
* test
* fixz
* maybe fix ci
* deprecated
* step 1 -- raw sql
* seems to work
* migration seems to work
* br
* fix comment
* timouet
* disconnect prisma test
* test order
* maybs
* seems to work
* tz
* tweak
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Refactored Schedule component
* Merge branch 'main' into feature/availability-page-revamp
* wip
* Turned value into number, many other TS tweaks
* NodeJS 16x works 100% on my local, but out of scope for this already massive PR
* Fixed TS errors in viewer.tsx and schedule/index.ts
* Reverted next.config.js
* Fixed minor remnant from moving types to @lib/types
* schema comment
* some changes to form handling
* add comments
* Turned ConfigType into number; which seems to be the value preferred by tRPC
* Fixed localized time display during onboarding
* Update components/ui/form/Schedule.tsx
Co-authored-by: Alex Johansson <alexander@n1s.se>
* Added showToast to indicate save success
* Converted number to Date, and also always establish time based on current date
* prevent height flickering of availability
by removing mb-2 of input field
* availabilty: re-added mb-2 but added min-height
* Quite a few bugs discovered, but this seems functional
Co-authored-by: KATT <alexander@n1s.se>
Co-authored-by: Bailey Pumfleet <pumfleet@hey.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>