* add first version of text editor
* add new editor to email body
* fix line height
* remove not needed styles
* allow adding html tags + small refactoring
* fix error when input is empty
* styling of add variable dropdown
* fix bg on focus
* small design fixes
* improve design
* show error message for no input
* text editor only for email body
* remove test button
* code clean up
* code clean up
* code clean up
* fix that added variables weren't saved
* fix import
* first version of editor
* connect reminder body of form with new editor
* add pencile for link-editor
* remove TreeViewPlugin
* clean up css file
* code clean up
* add text indent for list
* improve editor design
* fix style
* slow resizing of editor
* fix that new data was removed when leaving tab
* dont allow italic and bold at same time
* code clean up
* fix type error
* code clean up
* code clean up
* remove text if changed from SMS to email or other way around
* add add variable dropdown
* show error message if email body is empty
* add white-space pre-wrap
* fix import
* prettier
* fix add variable dropdown for mobile
* move dependencies to correct package.json file
* remove html-to-text
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* only show smsReminder number if event type has SMS_ATTENDEE action
* fix rescheduling bug
* Change array iteration to only run for best scenario
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alan <alannnc@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Upgrade deps + allow node 18.x
* Upgraded next-auth to v4.17
* Latest known to work version of next-auth
* Make next-auth.d.ts compatible with next-auth@v4.17.0
* Type fixes
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Removed emptyscreen component v1 version, migrated pages that still used it to v2, and removed v1 of workflow pages and components.
* updated workflow pages imports to remove v2 from path.
* Deleted v1 switch component, deleted v1 api-keys components, deleted old web integrations components that were unused.
* Removed v1 list component.
* Fixed event workflows tab path.
* Fixed import path for button in sandbox page.
* Cleanup and type fixes
* Making explicit indexes
* UI import migrations
* More import fixes
* More import fixes
* Submodule sync
* Type fixes
* Build fixes
Co-authored-by: zomars <zomars@me.com>
* Added proper dark mode support for buttons, and converted buttons to use CVA for better maintainable variant styling.
* Added animations to buttons.
* Added cva types to buttonbase type since thats imported in different places
* Fixed issue with styled buttons when false was pas for disabled instead of undefined. Added a small util function that now accepts arrays of variants, and creates all the possible combinations. This way we have less duplicate compoundvariants defined. This fixes the styles in the eventsinglelayout component.
* Undo disabling of api jest tests.
* Fixed remaining buttons using combined prop, which is replace by button group.
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Fix error message
* Only apply buffer limits to That event type
* Correctly get eventtypeId in source
* Add comment
* Move to i188n strings
* Wrap string to be translated
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Booking succes query refactor
The query is now using the uid as its main identifier for the success page
* Minor changes to the succes.tsx and tests
* Convert eventtype dates to string, and only select eventtype slug from db to have a smaller query (we don't need more data, and this way we don't need to convert the dates in here to smaller strings either.)
* In the payment component get the bookingUid from props instead of the query
* design fixes
* fix UI for recurring bookings
* fix success page for recurring events
* fix cancelling recurring events
* fix design of successful cancellation page
* fix email redirect + design fixes
* remove old cancel page
* fix v2 design for text area
* Changed the recurringMutation to use the uid for the success booking page
* redirect form old to new cancel page
* fix success page for recurring events
* rename to allRemainingbookings
* fix old cancel redirect
* fix recurring cancel link in email
* fix redirect when cancelling one recurring booking
* remove reschedule for recurring events in email
* create queryschema for cancel success page
* scroll down to bottom if cancel
* add cancellation reason
* fix tests
* fix old /cancel component
* code clean up
* Uses URL query as cancellation state
Also fixes string to boolean inference
Co-authored-by: Mischa Rouleaux <mischa-rouleaux@live.nl>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* First steps in updating console ui components.
* Replaced remaining v1 components.
* Removed todo.
* Removed createelement from form component since we were not using it at all (we wrapped all our inputs in divs), and any input that was not wrapped, was actually broken...
* Undo update submodule.
* Reverted website submodule update.
* Booking succes query refactor
The query is now using the uid as its main identifier for the success page
* Minor changes to the succes.tsx and tests
* Convert eventtype dates to string, and only select eventtype slug from db to have a smaller query (we don't need more data, and this way we don't need to convert the dates in here to smaller strings either.)
* In the payment component get the bookingUid from props instead of the query
* Changed the recurringMutation to use the uid for the success booking page
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Made full row of event type clickable, and fixed event type loader dimensions.
* Fixed skeletons for teams and workflows.
* Fixed skeleton for workflow detail page.
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Removed unused ui components and updated skeleton components throughout the app to use new version.
* Deleted unused app component and changed destructive button variants to secondary as per design.
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* add sender id
* add sender to twilio from
* added missing sender
* add migration
* fix design of add action dialog
* add cal as sender when creating new workflow
* fix type errors
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* WIP teams billing page
* WIP
* Create settings page
* Remove unused imports
* Create stripe customer on team creation
* Add Stripe ids to team record
* Add Stripe price ids for team to .env
* Create & delete Stripe customers
* Add string
* Merge branch 'main' into v2/teams-billing
* Create checkout session when creating team
* Create webhook to update team with Stripe ids
* Add Stripe migration files
* Move deleting team from Stripe under ee
* Some cleanup
* Merge branch 'v2/teams-billing' of https://github.com/calcom/cal.com into v2/teams-billing
* Small clean up
* Link to team's portal page
* Fix types
* Fix type errors
* Fix type errors
* Fix type error
* Delete old files & type fixes
* Address feedback
* Fix type errors
* Removes team creation modal
* WIP
* Removed billing frequency from team creation
* Add Stripe check for delete team customer
* Merge branch 'v2/teams-billing' of https://github.com/calcom/cal.com into v2/teams-billing
* Add high level form to create new team
* WIP
* Add new team to form
* Validate for invited members
* Add translations
* WIP
* Add validation for team name
* Add validation to team slug
* Clean up
* Fix type error
* Fix type errors
* WIP
* Abstract invite members function
* Add subscription status column
* Hide pending teams from settings
* Send email on paid subscription
* WIP
* Sync packages
* Add team subscription cols to schema
* WIP
* Matches locks vite version to <3
* Removed subscriptionStatus
* WIP
* Fix warning
* Query optimizations
* WIP
* Cleanup
* Wip
* WIP
* Runtime error fixes
* Cancellation fixes
* Delete team fixes
* Cleanup
* Type fixes
* Allows to check memebership in getTeamWithMembers
* Adds team creation tests
* Cleanup
* Cleanup
* Restored change
* Updated copy
* Moved component
* Cleanup
* Fix team members view
* Cleanup
* Adds failsafe for skipping publishing on update
* Cleanup
* Feedback
* More feedback
* Cleanup
* Cleanup
* Feedback
* Feedback
* Feedback
* Adds edge-case for slug conflicts
* Feedback
* e2e fixes
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* add first version of testing routing forms
* small design changes
* use new shared component
* readd deleted code for showing result route
* add form validation for required fields
* design fixes
* add scroll
* fix design of select
* use old dialog with correct overflow behaviour
* code clean up
* remove unused import
* fix mobile view
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* fix: update form methods when username is updated
* Using RHF to decrease state logic in profile.tsx for UsernameAvailability (#5405)
* Type fixes & fixed onboarding
* Removed undefined allowed value + removed invalidation
* No longer need usernameRef.current.value
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Sendgrid app and code simplification
* Applying app-store-cli + impl
* Fixing types
* Adding features to readme
* Fixing unit tests
* A few last tweaks regarding UX and env vars
* Applying feedback
* Using calcom icons
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Guests will be able to add their own location or in person meetings
* fix type error
* fixed issue with attendees location not showing on success page
* google meet booking will now go through, removed unnecessary change
* filter out attendee address when editing location
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Add validations for server side loading of bookingInfo for seats event types
* Fix prop used for validating if booking has seats enabled
* Fix types
* Removed frontend filter for seatsShowAttendees as not needed anymore
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Improving recurring info in bookings
* Adding fixes to success page, it was invalid on custom tz
* Remove dead code
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* storybook v2 init
* Merge config into storybook vite build
* Remove path
* Storybook config tweaks
* Added styles and settings for storybook v2, and started working on button documentation and examples.
* Badges + flex wrap on mobile
* Breadcrumbs+button+avatar
* Checkbox
* Input + moving files around
* WIP table
* WIP table grid
* Replaced imports for new components.
* Added first steps for varianttable.
* Small alignment fix.
* Custom Args Table - With scrollbar
* Adding table to components that need it + darkmode
* Add intro
* Fix types
* Remove V1 storybook and replace with V2
* Fix badge type error
* Fixed storybook dependencies
* Added cover image to storybook
* Remove vita from ts config, we dont use vite.
* Fixed button import.
* Explained postcss pseudo plugin.
* Fixed badge import.
* Add Avatar Stories
* ButtonGroup Stories
* Fixed imports
* Add checkbox stories
* Add exports for differnt types of inputs
* Fix form and text area input
* Fix mass import errors
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Fixes the localisation issue with recurring events
* Implement DST as Dayjs doesn't
* Fixed generated booking URL when different TZ is set
* manually apply DST offset to times
* Fix type error
* feat: return data fromsetupDefaultSchedule
* feat: update returned data of "schedule.update" resolver as same as "schedule" query resolver.
* feat: set query data from updated results and invalidate prev default availability if it's changed.
* chore: add comments
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Add Choose common schedule togglee
* Fix types
* Add translations
* Improve variable name
* Move setting to config so that all such lightweight boolean settings can exist here
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Added generic image variant for og images.
* Made og and meta descriptions longer, removed difference between longer and shorter descriptions now we only have one variant.
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* If due to some reason avatar URL is same as route, avoid infinite redirection by serving default
* Fix avatar reverting issue
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Fixing types from handleErrorJson usage and Credential
* Replace credential prisma type for a better suitable
* Improvements on zoom video adapter
* Renamed extendedCredentialType and put it in a best suited file
* Frontend display invalid credential
* Fix styles and text
* Fix type required for fake daily credentials
* fix: modal close on click outside
* fix: for sm viewport
* add: main class
Co-authored-by: root <root@pop-os.localdomain>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* add sms notification phone number to success page
* remove duplicate translation
* add non breaking space between sms and notifications
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Bailey Pumfleet <pumfleet@hey.com>
* Aded new togglegroup component.
* Make 12/24h time format toggle functional and store value in localstorage.
* Responsive tweaks
* Added translations
* Added 12/24h timeformat hint on profile page.
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Omar López <zomars@me.com>
* Structural fix to recurring times
* Remove conversion regression
* Revert current time -> startTime based utcOffset
* Fixing remaining events count
* Using user's preference for recurring tooltip
* Missing refactor
* Showing better datetime in booking page
Added an extra seeded example for recurring
Co-authored-by: Leo Giovanetti <hello@leog.me>
* fix: layout shift in ss apps page
* Fix for mobile style justify-center
Co-authored-by: root <root@pop-os.localdomain>
Co-authored-by: Alan <alannnc@gmail.com>
* Abstracting booking cancellation
* Tweaking to use id and not uid
* Standardizing http errors
* Moving schema to prisma zod-utils
* Update apps/web/pages/api/cancel.ts
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Cancel only for delete and post verbs
* Make cancellation work with uid, and id
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Embed SSG and consistently pass embedType query param across pages
* Embed fixes
* Code cleanup
* Add main class which tells embed which helps in identifying which area is outside the main content
* remove any special optimization handling for routing forms
* Add comments
* Small fixes
* Fix broken team booking page in embed
* Fix Fallback message dark theme
* TS Fixes
* Fixes
* Fix tests
* Remove not required code
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* wip reintroduce SAML SSO
* Fix the imports
* wip
* Some tweaks
* Fix the type
* Reduce the textarea height
* Cleanup
* Fix the access issues
* Make the SAML SSO active on the sidebar
* Add SP's instructions
* Remove the console.log
* Add the condition to check SAML SSO is enabled
* Replace SAML SSO with Single Sign-On
* Update to SAML feature
* Upgrade the @boxyhq/saml-jackson
* Fix the SAML part and other cleanup
* Tweaks to SAML SSO setup
* Fix the type
* Fix the import path
* Remove samlLoginUrl
* Import fixes
* Simplifies endpoints
Co-authored-by: zomars <zomars@me.com>
* Add seatsHideAttendees to schema
* Add migration
* Add frontend option to hide attendees
* Pass hide attendees to email
* Hide attendee names on success email
* Add types for existing attendees
* Hide other attendees if hidden
* Pass seatsHideAttendees to Google Cal
* Add translation
* Reduce redundancy
* Fix type error
* Change toggle to show attendee information
* Minor text change
* Fix type errors
* Update snapshots
* Merge branch 'main' into seats-hide-attendees
* Add back email
* Add close.com specific types
* Add eslint ignore comments
* Merge branch 'seats-hide-attendees' of https://github.com/calcom/cal.com into seats-hide-attendees
* Simplify tests
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* fix: remove loading state
* feat: use optimistic update for deleting
* feat: use optimistic update for hiding
* Moved PR changes
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Standardize destination calendar selector
* Move DestinationCalendarSelector to feature package
* Render integration name
* Add custom components to label and selected
* Render destinationCalendar on page load
* Change name to just Outlook
* Small fixes
* Merge branch 'main' into hotfix/install-calendar-overflow
* Merge branch 'main' into hotfix/install-calendar-overflow
* Fix type errors
* Fix type errors
* Update apps/web/pages/settings/my-account/calendars.tsx
* More type fixes
Co-authored-by: Omar López <zomars@me.com>
* #4252 Use vercel og to generate og images for meetings and apps.
* Removed duplication.
* Added new design for og images (wip).
* Implemented og image design for meeting image, including support for all variants.
* Implemented design for app og images.
* clenaup
* Fixed types
* Added the option to not render headseo in main shell in order to render your own.
* Added comments.
* fix
* Small tweaks.
* Fixed lock file.
* Fixed types
* Optimized svg's so vercel og supports them.
* Fixed og image on user page.
* Added truncate utils.
* Small style tweaks
* App og image alignment.
* Added og image to team/slug pages.
* Added correct variable to og image path constant.
* add phone number required checkbox
* make input required only if numberRequired is true
* fix error that smsReminderNumber is null
* code clean up
* fix typo
* save no input as null
* fix code change
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* add: auto complete for slug
* Remove useStates not required for feature
* remove: states logic
* Using touched validation from react-hook-form
* Fix size of width for steps indicador
* Apply same changes for react-hook-form touched from createNewTeam
Co-authored-by: root <root@pop-os.localdomain>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Alan <alannnc@gmail.com>