* [CAL-115] /getting-started/connected-calendar Toggle the first calendar on
* Fix lint error
* Fix error shown after completion of onboarding by connecting to calendars and playing around with toggle
* Fix type errors
* Fix first calendar selected even in all the screens wherever connectedCalendars is used
* add canonical to the document via `PageWrapper`
* use WEBSITE_URL constant to create the canonical url value
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Fix 2 Factor Auth
* Add a sandbox to verify types of embed-react
* Add fault types location
* Fix type location again
* Break types
* Ensure that builds are done again when doing pbublish
* Debug failure in CI
* Make sure unit test files arent used by playwright
* Fix embed-react test description
* Update .github/workflows/e2e-embed-react.yml
Co-authored-by: Omar López <zomars@me.com>
* Remove unnecessary log
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Omar López <zomars@me.com>
* Changed background from muted to default
* Improved skelleton color for loading states. Also prevented scrollbar in available timeslots loading state by showing less skeletons.
* Moved description to top, above other event meta, since this block doesnt have an icon and looks better this way.
* Use team logos for various meta icons
* Automatically resize team icons for different uses
* Fix api/logo error when unable to find a team
* Avoid loading image-optimizer in api/logo when not needed
---------
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
* [CAL-1383] Cleanup full raw avatar responses from tRPC endpoints
* Cleanup additional handlers where base64 images were sent through the response
* Add 'image' correctly to the profiles array
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Rounding, frames and radio buttons of the booking forms not consistent
* Updates
---------
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Adjust height of sidebar to fit on screen when top banner is visible
* Remove empty space on the bottom of the sidebar
* Remove gap at bottom left of sidebar
* fix: use layout effect and resize observer
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: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* CAL-1653: Show 404 page for new booker when event is not found.
* Fixed slack icon color on 404 page
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* override jsonLogic operators on string operands to allow for case insensitive comparisons.
Affected Operators: "==", "===", "!=", "!==", "in"
* disable no-explicit-any on jsonLogicOverrides file since most of the code there will be from jsonLogic and may not meet our coding style.
Majority of overrides require us to copy over functions and their signatures from jsonLogic and then modify their implementation.
The signature of functions implementing most operators take the operands typed as "any", which is intended, but doesn't adhere to our coding style. Hence the need to override the eslint rule
* run linter to fix issues
* Fix bug in in operator when second arg is an array
* remove redundant indexOf check on overriden jsonLogic "in" operator.
Note: this deviates from the original implementation in the jsonLogic library because our current useage ensures that the second operand is always a string or string[] and will therefore always have .index function. Whenever our invariants change in the future, make sure to modify this implementation to prevent any unexpected
---------
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Moving to vitest
* Rearranging test
* Fixing prettier linting
* Reverting launch.json
* Adjustments
* Merged with main and regenerated lockfile
* Fixing tests for API
* Yarn updated, docs is gone
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* fix: user full name not wrapping on navbar
* fix: change height of tab title container in settings page
* feat: truncate user full name instead of wrapping
* feat: truncate every section title on settings sidebar
---------
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Changed 1 Seat Available
* Update on changing 1 seat available
* fix: lint errors and remove yarn.lock
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Update on changing 1 seat available
* Updated count of keys to perfectly match the number of available seats
* Updated count of keys to perfectly match the number of available seats
* Update AvailableTimes.tsx
* Update apps/web/components/booking/AvailableTimes.tsx
* Update packages/features/bookings/components/AvailableTimes.tsx
* Formatting fixes
* Update AvailableTimes.tsx
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Base UI work
* Bulk invite users
* WIP workspace oauth implementation
* Seperate components - add existing gcal check
* Move callback session to getServerSession
* Implementation of state redirect back to teams on login
* Add callback to populate text field
* Change error message
* Redirect from callback and open modal
* Fix bulk translations
* Fix translations for google button
* Delete Query
* Feature flag this
* Update packages/trpc/server/routers/viewer/teams/inviteMember.handler.ts
* Check if Gcal in installed globally
* Add new router
* Add missing [trpc] route
* Feedback
* Update packages/trpc/server/routers/viewer/googleWorkspace/googleWorkspace.handler.ts
* Typefixes
* More typefixes
---------
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* fix Former time in wrong time zone (Rescheduling)
* eslint fixed
* yarn.lock push
* little bit of code formatting
* [eslint: fix] missing semi-colon
* linting errors fixed
* Update packages/lib/parse-dates.ts
* returning yarn lock to main
* Refactor constant and functions
* Consider time format in new function
* Fix 24 time format with am/pm
---------
Co-authored-by: alannnc <alannnc@gmail.com>
* imageSrc field is commented for solving this issue and can be removed
* Update core.ts - remove the imageSrc field
* Update packages/app-store-cli/src/core.ts
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* fix subsriber url already defined error when editing webhook
* don't show form submitted for team and event type webhooks
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* allow event type specific webhooks for all event types
* first version of team webhooks
* add empty view
* design fixes when no teams + invalidate query on delete/update
* linke to new webhooks page with teamId in query
* make one button with dropdown instead of a button for every team
* add subtitle to dropdown
* add avatar fallback
* authorization when editing webhook
* fix event type webhooks
* fix authorization for delete handler
* code clean up
* fix disabled switch
* add migration
* fix subscriberUrlReservered function and fix authorization
* fix type error
* fix type error
* fix switch not updating
* make sure webhooks are triggered for the correct even types
* code clean up
* only show teams were user has write access
* make webhooks read-only for members
* fix comment
* fix type error
* fix webhook tests for team event types
* implement feedback
* code clean up from feedback
* code clean up (feedback)
* throw error if param missing in subscriberUrlReservered
* handle null/undefined values in getWebhooks itself
* better variable naming
* better check if webhook is readonly
* create assertPartOfTeamWithRequiredAccessLevel to remove duplicate code
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* profile update refresh fixes
* updated avatar based on logged in user
* lint & types check fixes
* fixed settings layout to fetch udpated session
* pushing the 8448 changes to separate PR
* removing hook not required
* Removed extra code
---------
Co-authored-by: Keyur Patel <keyur.patel@difx.io>
Co-authored-by: Alan <alannnc@gmail.com>
* [CAL-1008] Fix 'All Bookings' filter not getting selected after coming from 'Your Bookings'
* Remove optional param from removeAllQueryParams function
* Remove setQuery from the extraction
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* Support prefilling routing form and prefilling Booking form through routing form
* Use Option Value as is instead of lowercasing
* Fix prefill validation issue
* Add prefill tests
* Fix Routing Form tests
* Small fix
* Enabling workflows for managed events
* Disabling fields for workflow when readonly
* Disabling event type workflows if readonly
* Installing auth app
* Reverting yarn.lock
* Again reverting yarn
* Showing user workflows in managed event type
* Reusing existing code to show all workflows
* Further extending workflow support
* Added unit test
* Fixing workflow assignment
* Fixing locked workflows for children MET
* Update packages/features/ee/workflows/components/EventWorkflowsTab.tsx
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* Personal workflows fix, matching count numbers
* Fixing menu items for managed event types
* Fixing type checks
* Fixing empty activeOn select
* Fixing unit test
* handling active workflows for MET
* Fixing MET slug nit
* Embed option in action restored for non-MET
* Correcting mobile view when hidden
* More adjustments
* fix sms reminder field for children
* remove console.log
---------
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Fixed dark mode bugs in the availability section
* Reverted the tooltip change for delete button
* Updated tooltip of delete button conditionally based on isLastSchedule flag
* fix: disabled button state
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: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* feat: add select all
* fix: fix deleted days
* chore: add i18n select all
* chore: check all days when select all
* chore: use calcom checkbox
---------
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* Add dep versions
* Release new version for embeds
* Add prepublish
* Use prepare script which works with both npm and yarn
* Add changesets correctly
* Add embed publishing command
---------
Co-authored-by: zomars <zomars@me.com>
* Fix: #8528 Moved the data checks to superRefine
* Resolved lint isseu
* Updated to parse from safeParse
* added new line
---------
Co-authored-by: Omar López <zomars@me.com>
* add switches to advanced even type settings
* only show switches when workflow is enabled
* check in event type update handler if user is allowed to disable standard emails
* don't send emails if disabled
* remove reminders when workflow is deactivated on event type
* make sure emails can't be disabled if no workflow exist
* send workflow emails to all attendees
* code clean up
* add translations
* always send to all attendees when scheduling reminders
* schedule reminders if event type gets activated on workflow
* schedule reminders (commented code)
* change text
* schedule reminders for all attendees not just first one
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
* feat: add hidden to select
* feat: add hide branding to store
* fix: remove branding from store
* feat: prefetch data
* feat: use meta tags
* fix: remove branding from store
* fix: prefetching
* refactor: useEvent hook
* fix: type
* fix :booker seo
* fix: type error
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
* UI work - WIP scrollable area
* Add translations - refactor some components
* Add installed text
* Disable if there is no currently installed
* Extract loader
* Fix conditional
* Fix E2E
* fix typo
* adds timezone pull from user profile in DB
* minor fixes
* fixes promise return type
* comments and minor fixes
* minor improvement
* fix return type
* changes for help in debugging
* trpc procedures an middleware refactor
* allow use sessionMiddleware without a req object
* sync with the new tRPC structure
* tRPC refactor on routing form app
* import Prisma from @prisma/client
* Lazy load apps from appstore
* remove unrelated changes
* Add types for PaymentService
* type fixes
* Merge branch 'main' into roae85/cal-1514-set-the-user-session-only-on-the
* fix typo
* remove console.log
* remove explicit types from apstore object
* linter fixes
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* add switches to advanced even type settings
* only show switches when workflow is enabled
* check in event type update handler if user is allowed to disable standard emails
* don't send emails if disabled
* make sure emails can't be disabled if no workflow exist
* send workflow emails to all attendees
* code clean up
* add translations
* always send to all attendees when scheduling reminders
* change text
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Disable reserve slot on seated events
* Move seats and reserve logic to backend
* Pass booking attendees
* Type fix
* Create booking when two users choose a slot before booking is created
* Update packages/trpc/server/routers/viewer/slots/reserveSlot.handler.ts
---------
Co-authored-by: alannnc <alannnc@gmail.com>
* added gradients to dark dashboard and dark booking page
* removed bg of timezone dropdown for dak
* added gradient to confirmation screen
* only gradient in dashboard
* fix: prettier
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: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* feat: added mailhog to catch emails sent locally
* fix: added new line at the end of packages/emails/docker-compose.yml
* chore: removed EMAIL_SERVER_USER and EMAIL_SERVER_PASSWORD for local usage with Mailhog
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* split up routers to separate lambdas
* fix responsemeta
* move
* add typeguards to make sure all endpoints are covered in the approuter
* prettier
* move slotsrouter
* split ssg/ssr
* make sure correct headers are sent on viewer.public
* make sure correct headers are sent + use ctx.prisma
* Fixed new prefetch broken by merge
* Fixes after merge
* Created separate API route for all tRPC routers
* More fixes from refactor
* Fixed tRPC query for slots
* Put back extra line
* Fixed type checks
* Removed Endpoint type check since it loads from client
* Reverted change in getSchedule test
* Fix trpc routes in expectations
* Fix one more route test
---------
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* add reset to default color option
* Do not show reset button in DOM if resetDefaultValue is undefined
* handle edge case: if invalid hexcode is set for resetDefaultValue
* Do not show the reset button if the color is already set to the default value
* Remove data-testid from Button
---------
Co-authored-by: Praneeth Bhogaraju <praneeth.bhogaraju@ni.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Prevent duplicate avatars in new booker by also checking on profile url.
* Don't filter out profile without profile url
* Use webapp_url for avatars since that's what is used in the rest of the platform, that way the unique filter on avatar works
* use named imports instead to avoid polluting the global namespace. in nodemailer
* Update packages/emails/templates/_base-email.ts
Lint fix.
* Revert yarn.lock changes
---------
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Remove depreated imageSrc and make the paths relative in logo
* Do logo replacement at a single place
* Make logo relative at other places
* Fix campfire page not working in dev environment
CAL-1578: No layout shift when switching months (because of timeslots disappearing again)
CAL-1576: Font weight tweaks
Bigger sidebar on fullscreen booker layouts
CAL-1573: Slightly smaller padding around booker sections
CAL-1563: Prevent timezone select from resizing when typing in it
CAL-1561: Spacing improvements timeslots + button height
CAL-1560: Improve resize animation when changing from time slot picker to form
CAL-1549: Added overflow scroll to event description, removed icon from event description so we have more space, and added sexy scrollbars
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Wip on booker atom
* Wip on booker atom
* Added correct icon imports
* Fixed build
* Responsive improvements
* Removed package lock
* Responsive tweaks
* Animation improvements and cleanup
* Animation improvements and event meta layout improvements.
* Tweaked margins.
* Added more event meta blocks
* Layout tweaks
* Converted booker layout to css grid and implemented multiple layout options
* cleanup
* Fixed build
* Fixed build
* Added temporary api route to enable/disable new booker
* Added sticky behavior
* Reverted yarn.lock and reinstalled new packages to see if this fixes build on vercel.
* Ensure divider lines always have 100% height.
* Improved animation config + initial load
* Ensure to pass eventid to getschedule, otherwise custom availability schedule wont work and wont return any availability
* Fixed divider line heights in booker
* Fixed timezone select positioning
* Added ability to view multiple days of timeslots
* Added icons to booker toggle
* Always show timeslots in timeslots view, also if no date is selected yet. In that case we show upcoming 5 days.
* Fixed timeslots in small calendar view
* Show selected day in calendar
* Fixed booker timeslots view
* Wip in making booking form work
* Moved most of the booker atom stuff to features, since it belongs there. Atom should be a rather small wrapper.
* Added create event functionality to booker form.
* Added guests toggle to booker form and styled input addons in dark mode.
* Added dynamic weekstart to booker
* Added seats limit feature to timeslots.
* Removed todo
* Added correct event avatars
* Added correct event name and icons
* Added correct translation for minutes text in multi duration
* Add rescheduling functionality to new booker.
* Added selected booking time to booking meta in sidebar.
* Abstracted away timeformat to custom hook
* Added correct key props to all components in booker.
* Fix build
* Create some new custom hooks to have a lot less repitition in code.
* Moved bookerform component inside booker directory since it is tied to it.
* Added error messages to booker form, plus fixed bug in recurring events.
* Added some comments <3
* Fixed todos in booker form.
* Added loading state for timeslot selector, and added prefetching of next month, in case of multi day view showing 2 months at the same time.
* Fixed import paths
* Added away view
* Validate uniqueness of event attendees.
* Tweaked comment
* #5798 added correct date format and style for selected date in booker.
* UI improvements
* Enable possibility to add booking values via query params.
* Added functionality to update query params when user selects date/duration etc in booker
* First steps in adding e2e test.
* Fixes after merge with main, and added new form builder.
* Implemented new form types and validation to booker, confirming new form builder. Validation still throwing wrong error keys though.
* Added search to timezone dropdown
* Added e2e test for booker (copy of current booker tests, only enabling cookie), plus fixed reschedule view.
* Updated yarn.lock
* Added new booker for team pages.
* Fixed input addon (hover) styles.
* Added dynamic booking.
* Hide timeformat select for multi day view for now.
* Cleanup and ui tweaks
* removed log
* Mobile improvements
* Cleanup
* Small design tweaks after talking to ciaran.
* Text color and weight tweaks in booker
* Added rainbow gates to new booker.
* Added in default values which fixes form vallidation (???).
* Added empty defaults for name and email
* Added metadata
* Reset yarn.lock
* Fixed booker zod validation after change in main.
* Icon tweak
* Fixed timezone select styles after new classnames have been merged.
* Updated seat availability styles.
* Update yarn.lock
* Added explanation for alchemy key to .env.example
* Added tooltip to booker month/week/multiday toggle
* Fixed timezoneselect styles in booker after select updates.
* Updates bookingfields component by taking changes from current booker component
* Removed remaining booker todos
* Fix bookeventform
* Fix for recurring event meta
* Type fixes
* Typefixes
* Team event fixes
* Avoid hydration errors by only rendering date picker client side. Remove web3 gates since we dont offer them anymore. Prevent timeslot select from staying open when switching to a different month.
* Don't show calendar on mobile booker during booking.
* Always align booker buttons to bottom
* Don't show backend messages in error, rather show a helpful text like the current booker does as well.
* Do invisible next rewrite based on cookie from next.config.js (#7949)
* Do invisible next rewrite based on cookie from next.config.js
* Name embed link instead of bookerPath
* Rewrites only dynamic user pages
---------
Co-authored-by: zomars <zomars@me.com>
* Don't allow change of timezone when bookerform is visible
* Don't add duration to query param if the event is not a multi duration event.
* Update next.config.js
* Added correct timezone formatting to event meta when timeslot is selected.
* removed .env variable that isn't needed anymore.
* Update Gates.tsx
* Type fixes
* Allows to run all tests with the new booker
* Fixed timezone select styles after merge.
* Don't throw error when event doesn't have hosts, rather return no users, which will result in no availability in UI.
* Make booker errors of severity info instead of warning.
* Ensure team avatars are shown, as well as filter on uniqueness of avatars.
* Added all booked today message to timeslots.
* Added cal.com logo to booker.
* Fixed fragment classname error, minor mobile animation tweaks plus make all booked today text smaller for multi day layout.
* Improved timezone select styles, and updated arguments of getbooking function after updates in main.
* Prevent infinite loop in rewriting new booker.
* Prevent infinite loop in rewriting new booker.
* Moved new-booker pages to their own directory to prevent regexes confusing next and thus nut running getserversideprops after rewrite. Also adding clearing of old date in booker store, that could stick around when user immediately navigates back to the same page after booking.
* Fixed cal logo color in darkmode for new booker.
* Implemented new color tokens and theme variables. Also small design tweaks after merge with main.
* Minor style tweaks
* Show multiple locations in tooltip on booker #8222
* Radio button style tweaks
* Fixed build
* Updated calendar imports to new lucide names
* Removed resetting of selected times logic, because otherwise url params wouldnt be taken into account which is actually what we want. So old values sticking around when navigating back is actually the desired behavior.
* Updated tests to instead of always run the new booker in tests, have a utility to run both the new and old booker for specified tests.
* Added comment and eslint disable for if statement in booker test.
* Update packages/features/bookings/components/event-meta/Details.tsx
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Fix badge types
* Lazy loaded timezone select to save 85kb in bundle size.
* Upgraded framer to latest. Als moved framer and react sticky deps to features instead of atoms.
* Added new pagewrapper logic
* Simplified rescheduling ssr fetches, this now also supports multi seat rescheduling.
* Unset selected time when user is rescheduling directly after a new booking, otherwise it would show the form instead of new time selection.
* Updated form builder logic as per form builder in current booker.
* Updated form builder prefill logic as per logic in current booker.
* Updated getbooking function to fetch correct details when a reschedule uid is used
* Fixed booking questions test by NOT waiting for /book page because the new booker doesnt have this.
* Added former meeting time to reschedule view.
* Fixed types
* Undo playwright config update by mistake.
* Fixed event types test by only waiting for /book page in old booker
* Set new booker cookie to one year in the future instead of 2050
* added reset mockdate to test
* Temporary disabled test to see if this solves the out of memory error.
* Deleted test to see if that fixes the memory error
* Large View Header
* BookFormModal
* Modal
* Fix modal
* Select first day when switching months in booker
* SetSelected Date on large layouts
* Fix re-renders
* Fix yarn.lock
* Set selected date when switching layout
* Add empty state
* Lint
* sticky button on modal
* paramater layout & empty state
* fix: 7040 fix - team profile description (#8469)
* New Crowdin translations by Github Action
* Not center
* Fix positionion
* Removed unused dependnecy in effect
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Fix padding overflow
---------
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: hallidayo <22655069+Hallidayo@users.noreply.github.com>
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
* Wip on booker atom
* Wip on booker atom
* Added correct icon imports
* Fixed build
* Responsive improvements
* Removed package lock
* Responsive tweaks
* Animation improvements and cleanup
* Animation improvements and event meta layout improvements.
* Tweaked margins.
* Added more event meta blocks
* Layout tweaks
* Converted booker layout to css grid and implemented multiple layout options
* cleanup
* Fixed build
* Fixed build
* Added temporary api route to enable/disable new booker
* Added sticky behavior
* Reverted yarn.lock and reinstalled new packages to see if this fixes build on vercel.
* Ensure divider lines always have 100% height.
* Improved animation config + initial load
* Ensure to pass eventid to getschedule, otherwise custom availability schedule wont work and wont return any availability
* Fixed divider line heights in booker
* Fixed timezone select positioning
* Added ability to view multiple days of timeslots
* Added icons to booker toggle
* Always show timeslots in timeslots view, also if no date is selected yet. In that case we show upcoming 5 days.
* Fixed timeslots in small calendar view
* Show selected day in calendar
* Fixed booker timeslots view
* Wip in making booking form work
* Moved most of the booker atom stuff to features, since it belongs there. Atom should be a rather small wrapper.
* Added create event functionality to booker form.
* Added guests toggle to booker form and styled input addons in dark mode.
* Added dynamic weekstart to booker
* Added seats limit feature to timeslots.
* Removed todo
* Added correct event avatars
* Added correct event name and icons
* Added correct translation for minutes text in multi duration
* Add rescheduling functionality to new booker.
* Added selected booking time to booking meta in sidebar.
* Abstracted away timeformat to custom hook
* Added correct key props to all components in booker.
* Fix build
* Create some new custom hooks to have a lot less repitition in code.
* Moved bookerform component inside booker directory since it is tied to it.
* Added error messages to booker form, plus fixed bug in recurring events.
* Added some comments <3
* Fixed todos in booker form.
* Added loading state for timeslot selector, and added prefetching of next month, in case of multi day view showing 2 months at the same time.
* Fixed import paths
* Added away view
* Validate uniqueness of event attendees.
* Tweaked comment
* #5798 added correct date format and style for selected date in booker.
* UI improvements
* Enable possibility to add booking values via query params.
* Added functionality to update query params when user selects date/duration etc in booker
* First steps in adding e2e test.
* Fixes after merge with main, and added new form builder.
* Implemented new form types and validation to booker, confirming new form builder. Validation still throwing wrong error keys though.
* Added search to timezone dropdown
* Added e2e test for booker (copy of current booker tests, only enabling cookie), plus fixed reschedule view.
* Updated yarn.lock
* Added new booker for team pages.
* Fixed input addon (hover) styles.
* Added dynamic booking.
* Hide timeformat select for multi day view for now.
* Cleanup and ui tweaks
* removed log
* Mobile improvements
* Cleanup
* Small design tweaks after talking to ciaran.
* Text color and weight tweaks in booker
* Added rainbow gates to new booker.
* Added in default values which fixes form vallidation (???).
* Added empty defaults for name and email
* Added metadata
* Reset yarn.lock
* Fixed booker zod validation after change in main.
* Icon tweak
* Fixed timezone select styles after new classnames have been merged.
* Updated seat availability styles.
* Update yarn.lock
* Added explanation for alchemy key to .env.example
* Added tooltip to booker month/week/multiday toggle
* Fixed timezoneselect styles in booker after select updates.
* Updates bookingfields component by taking changes from current booker component
* Removed remaining booker todos
* Fix bookeventform
* Fix for recurring event meta
* Type fixes
* Typefixes
* Team event fixes
* Avoid hydration errors by only rendering date picker client side. Remove web3 gates since we dont offer them anymore. Prevent timeslot select from staying open when switching to a different month.
* Don't show calendar on mobile booker during booking.
* Always align booker buttons to bottom
* Don't show backend messages in error, rather show a helpful text like the current booker does as well.
* Do invisible next rewrite based on cookie from next.config.js (#7949)
* Do invisible next rewrite based on cookie from next.config.js
* Name embed link instead of bookerPath
* Rewrites only dynamic user pages
---------
Co-authored-by: zomars <zomars@me.com>
* Don't allow change of timezone when bookerform is visible
* Don't add duration to query param if the event is not a multi duration event.
* Update next.config.js
* Added correct timezone formatting to event meta when timeslot is selected.
* removed .env variable that isn't needed anymore.
* Update Gates.tsx
* Type fixes
* Allows to run all tests with the new booker
* Fixed timezone select styles after merge.
* Don't throw error when event doesn't have hosts, rather return no users, which will result in no availability in UI.
* Make booker errors of severity info instead of warning.
* Ensure team avatars are shown, as well as filter on uniqueness of avatars.
* Added all booked today message to timeslots.
* Added cal.com logo to booker.
* Fixed fragment classname error, minor mobile animation tweaks plus make all booked today text smaller for multi day layout.
* Improved timezone select styles, and updated arguments of getbooking function after updates in main.
* Prevent infinite loop in rewriting new booker.
* Prevent infinite loop in rewriting new booker.
* Moved new-booker pages to their own directory to prevent regexes confusing next and thus nut running getserversideprops after rewrite. Also adding clearing of old date in booker store, that could stick around when user immediately navigates back to the same page after booking.
* Fixed cal logo color in darkmode for new booker.
* Implemented new color tokens and theme variables. Also small design tweaks after merge with main.
* Minor style tweaks
* Show multiple locations in tooltip on booker #8222
* Radio button style tweaks
* Fixed build
* Updated calendar imports to new lucide names
* Removed resetting of selected times logic, because otherwise url params wouldnt be taken into account which is actually what we want. So old values sticking around when navigating back is actually the desired behavior.
* Updated tests to instead of always run the new booker in tests, have a utility to run both the new and old booker for specified tests.
* Added comment and eslint disable for if statement in booker test.
* Update packages/features/bookings/components/event-meta/Details.tsx
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Fix badge types
* Lazy loaded timezone select to save 85kb in bundle size.
* Upgraded framer to latest. Als moved framer and react sticky deps to features instead of atoms.
* Added new pagewrapper logic
* Simplified rescheduling ssr fetches, this now also supports multi seat rescheduling.
* Unset selected time when user is rescheduling directly after a new booking, otherwise it would show the form instead of new time selection.
* Updated form builder logic as per form builder in current booker.
* Updated form builder prefill logic as per logic in current booker.
* Updated getbooking function to fetch correct details when a reschedule uid is used
* Fixed booking questions test by NOT waiting for /book page because the new booker doesnt have this.
* Added former meeting time to reschedule view.
* Fixed types
* Undo playwright config update by mistake.
* Fixed event types test by only waiting for /book page in old booker
* Set new booker cookie to one year in the future instead of 2050
* added reset mockdate to test
* Temporary disabled test to see if this solves the out of memory error.
* Deleted test to see if that fixes the memory error
* Select first day when switching months in booker
---------
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Sean Brydon <sean@cal.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Wraps timezone addition in try catch
* Suggestion accepted
Co-authored-by: Alex van Andel <me@alexvanandel.com>
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* moved poweredBy into ee/ to make it possible to change it when a whitelabel is applied
* added text-emphasis for custom powered by text in PoweredBy
---------
Co-authored-by: René Müller <rene.mueller@clicksports.de>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Use getPaymentAppData on booking list item
* Use paymentAppdata for event type description
* Remove console.log
* Type fix
* Type fixes
* Remove updating event type price
* Fix cancel links
* Use searchParams API to build cancelLink
* Fix cancel showSeats
* Added test for owner cancel attendee list
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Handle appKeys save and read correctly
* Add missing zod file for zohocrm which needs keys
* Show team invites regardless of user plan
* Linting
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Set bookingLocaiton to URL if there is a default location
* Update packages/features/bookings/lib/handleNewBooking.ts
* Suggestions implmented
* Remove old implemntation
* Cleanup
* Add payment option to schema
* Add payment option to Stripe zod
* Set payment option on event type
* Create manual payment intent in Stripe
* Set payment option from Stripe app
* Add payment option to DB
* Pass React.ReactNode to checkbox
* Create uncaptured payment intent
* WIP
* Capture card in setup intent
* Show charge card option
* Charge card from booking page
* Bug fixes
* Clean up
* Clean up app card
* Add no-show fee messaging on booking page
* Send payment email on payment & add price
* Fix messaging
* Create no show fee charged email
* Send charge fee collected email
* Disable submit on card failure
* Clean up
* Serverside prevent charging card again if already charged
* Only confirm booking if paid for
* Type fixes
* More type fixes
* More type fixes
* Type fix
* Type fixes
* UI changes
* Payment component rework
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/components/dialog/ChargeCardDialog.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update packages/trpc/server/routers/viewer/payments.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Revert GTM config
* Adjust payment option dropdown
* Show alert when seats are set
* Small bug fixes
* Create collect card method
* clean up
* Prevent seats & charge no-show fee to be enabled together
* Do not charge no-show fee on unconfirmed bookings
* Add check to collect card method
* Webhook send request emails
* Fix some dark mode colours
* Change awaiting payment language
* Type fixes
* Set height of Select and TextField both to 38px to fix alignment
* Fix message seats & payment error message
* Type fix
* Remove Intl.Provider
* Add percentFeePercentage
* WIP
* Use i18n language
* Type fix
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Omar López <zomars@me.com>
* logo map
* Archimed logo
* usememo
* Subdomain logo logic
* or our logo
* Update packages/features/orgs/SubdomainProvider.tsx
* Provider comments
* Move DB logic to db
* Fix a11y on alt tag
* Added example for dynamic endpoint
* Move to API approach
* Implement Icon logo on subdomain level
---------
Co-authored-by: zomars <zomars@me.com>
* Event Type: Title not displayed in the mobile view
* Fix toggle not updating in UI
---------
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* fix date override for fixed round robin + time zone in date override
* check if slot is within working hours of fixed hosts
* add test for date override in different time zone
* fix date overrides for not fixed hosts (round robin)
* code clean up
* fix added test
* use the correct timezone of user for date overrides
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* add event end time as variable
* add timezone as new variable
* add first version of template prefill
* set template body when template is updated
* set reminder template body and subject when creating workflow
* set email subject when changes templates
* save emailBody and emailsubject for all templates + fix duplicate template text
* add more flexibility for templates
* remove console.log
* fix {ORAGANIZER} and {ATTENDEE} variable
* make sure to always send reminder body and not default template
* fix import
* remove email body text and match variables in templates
* handle translations of formatted variables
* fix email reminder template
* add cancel and reschedule link as variable
* add cancel and reschedule link for scheduled emails/sms
* make sure empty empty body and subject are set for reminder template
* add info message for testing workflow
* fix typo
* add sms template
* add migration to remove reminderBody and emailSubject
* add branding
* code clean up
* add hide branding everywhere
* fix sms reminder template
* set sms reminder template if sms body is empty
* fix custom inputs variables everywhere
* fix variable translations + other small fixes
* fix some type errors
* fix more type errors
* fix everything missing around cron job scheduling
* make sure to always use custom template for sms messages
* fix type error
* code clean up
* rename link to url
* Add debug logs
* Update handleNewBooking.ts
* Add debug logs
* removed unneded responses
* fix booking questions + UI improvements
* remove html email body when changing to sms action
* code clean up + comments
* code clean up
* code clean up
* remove comment
* more clear info message for timezone variable
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* perf: use getSlimServerSession for session retrieval
Creates a new `getSlimServerSession` method and replaces all calls to `getServerSession`.
The new method is much faster than `getServerSession` with it not requiring the NextAuth options object which includes a number of additional packages.
Additionally introduces a primitive in-memory cache for slim sessions.
* fix: account for seconds in token.exp
* Reverts diffs
* Replaces getServerSession with slimmer version
* Update disable.ts
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Reserving slot picked up on cache
* change memory-cache to database table to block slots while reservation completes
* remove memory-cache
* update realeaseAt field when same user change te selected Slot
* Change default time to book
Co-authored-by: alannnc <alannnc@gmail.com>
* remove ip field and renews the session when the user remains in the booking form
* Remove duplicate router
* types fixes
* nit picks
* Update turbo.json
* Revert unrelated change
* Uses constant
* Constant already has a fallback
* Update slots.ts
* Unit test fixes
* slot reservation on user level and support seats
* types fixes and reserve slots on click
* Fix nit var name
---------
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Fix workflows on seated events
* Fix new args required in handleConfirmation
* Update function import to new name
* added email to override for workflows
* code cleanup and fixes for unsupported objects and fetch requests
* improves sanitizer function
* adds comment to the utility function sanitizeCalendarObjects
* adds ICAL.parse in try catch-- fixes code breaking for all objects due to one bad ICAL body
* adds a function that ensures expand=false fallback for unsupporting calendars
* --WIP
* improves code to now support multi-event calendar ics parsing
* Handle failed calls to not break all selected calendars
* removes debug remnants
* removes further unnecessary comments
* migrate from react-icons to lucide-react
* replace react-icon with lucide-dev: Webhook Icon
* add lucide transformer
* Fix LinkIcon import
* Update yarn.lock to include monorepo deps
* Migrated icons in ChargeCardDialog
* Port Storybook to new icons as well
* Adjust Info & Globe icons size to match react-icons size
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* If omni install do not show app successfully installed toast
* Clean up. Up to hubspot
* Fix double click to enable apps
* Clean up rest of apps
* Create cli app add dirName
* Type fix
* Only enable apps if keys are valid
* Save dirName as slug
* Remove dirname from metadata
---------
Co-authored-by: zomars <zomars@me.com>
* Add payment option to schema
* Add payment option to Stripe zod
* Set payment option on event type
* Create manual payment intent in Stripe
* Set payment option from Stripe app
* Add payment option to DB
* Pass React.ReactNode to checkbox
* Create uncaptured payment intent
* WIP
* Capture card in setup intent
* Show charge card option
* Charge card from booking page
* Bug fixes
* Clean up
* Clean up app card
* Add no-show fee messaging on booking page
* Send payment email on payment & add price
* Fix messaging
* Create no show fee charged email
* Send charge fee collected email
* Disable submit on card failure
* Clean up
* Serverside prevent charging card again if already charged
* Only confirm booking if paid for
* Type fixes
* More type fixes
* More type fixes
* Type fix
* Type fixes
* UI changes
* Payment component rework
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/components/dialog/ChargeCardDialog.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update packages/trpc/server/routers/viewer/payments.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Revert GTM config
* Adjust payment option dropdown
* Show alert when seats are set
* Small bug fixes
* Create collect card method
* clean up
* Prevent seats & charge no-show fee to be enabled together
* Do not charge no-show fee on unconfirmed bookings
* Add check to collect card method
* Webhook send request emails
* Fix some dark mode colours
* Change awaiting payment language
* Type fixes
* Set height of Select and TextField both to 38px to fix alignment
* Fix message seats & payment error message
* Type fix
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Fi missing sylaps icon in admin/apps and remove usage of imageSrc
* Remove imageSrc from googleCalendar and verify that logo is still shown
* Use logo in video apps location select:
* Remove imageSrc from templates
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* init page
* init insights frontend
* nit
* nit
* nit
* merge
* fixed icons
* i18n, needs features
* Init insights trpc
* Using trpc on client
* Added events timeline
* Seed analytics script
* connect ui with trpc
* Added and fixed event time lines
* WIP popular days and avg time duration event type
* added new metric graphs
* improved upgrade tip
* always show upgrade screen
* upgrade tremor.so and select inputs for page
* Remove log
* Move everything to components and add context
* Fix select types using calcom ui one
* Adding translations
* Add missing translations
* Add more translations
* min fix
* Fixes for date select
* Prefer early return and mobile design fixes
* Fix style for mobile
* Fix data with userId filter from popular events
* add user id to average time duration
* fix types for select-react
* Removed submodules
* Delete website
* Update yarn.lock
* Code organization and type fixes
* trpc fixes
* Builds are now passing
* Relocates server code
* Add url state in insights
* Update FiltersProvider.tsx
* Cleanup
* Update embed-iframe.ts
* Update FilterType.tsx
* Update seed-app-store.config.json
* Update index.tsx
* Renamed seeder
* Update FiltersProvider.tsx
* Fix for query params
* no wrap on lg screen
* Fix shadow borders from tremor components, fix title font
* Add ring-gray to match filters
* add cursor pointer
* copy improvements
* blue to black
* fixed date select focus
* text right for table
* Adds missing translation strings
* Fix url state for filter type
* more layout improvements
* more padding improvements
* more UI fixes (padding, sizes) requested by ciaran
* Apply suggestions from code review
* WIP user without team metrics
* yarn
* Adds loading state for graphs and tables
* fix average render when no data
* Multiple fixes in insights
* Fix most and least booked members querys
* More fix for clear filters
---------
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Add calendar UID to calendar event
* Add iCalUID to booking event
* On reschedule write to evt the iCalUID
* Add uid to ics file
* Remove console logs
* Pass iCalUID if available
* Remove generated app store files
* Rename product id to calcom
* Add UID to ics on reschedule
* Type fixes
* Type fixes
* Type fixes
* Remove comment
* Remove console.log
* Removed serverConfig block from this branch
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Updated Vercel OG to latest so we can add a fallback image — and added this fallback image to the screenshot og image.
* Updated vercel/og in web package as well.
* Updated yarn.lock with auth dependencies
* Upgraded next to latest to fix next image throwing weird bad response errors.
* Revert "Upgraded next to latest to fix next image throwing weird bad response errors."
This reverts commit 4e9d97dbe5.
* Added content type headers to og image api response.
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* show already verified numbers as verified
* delete old batch_ids from scheduled sends
* only delete cancelled ones
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* fix: export type
* feat: extract into a utility
* feat: use the new utility
* fix: comment out authedRateLimitedProcedure
* fix: type error
* fix: remove spread
* init page
* init insights frontend
* nit
* nit
* nit
* merge
* fixed icons
* i18n, needs features
* Init insights trpc
* Using trpc on client
* Added events timeline
* Seed analytics script
* connect ui with trpc
* Added and fixed event time lines
* WIP popular days and avg time duration event type
* added new metric graphs
* improved upgrade tip
* always show upgrade screen
* upgrade tremor.so and select inputs for page
* Remove log
* Move everything to components and add context
* Fix select types using calcom ui one
* Adding translations
* Add missing translations
* Add more translations
* min fix
* Fixes for date select
* Prefer early return and mobile design fixes
* Fix style for mobile
* Fix data with userId filter from popular events
* add user id to average time duration
* fix types for select-react
* Removed submodules
* Delete website
* Update yarn.lock
* Code organization and type fixes
* trpc fixes
* Builds are now passing
* Relocates server code
* Add url state in insights
* Update FiltersProvider.tsx
* Cleanup
* Update embed-iframe.ts
* Update FilterType.tsx
* Update seed-app-store.config.json
* Update index.tsx
* Renamed seeder
* Update FiltersProvider.tsx
* Fix for query params
* no wrap on lg screen
* Fix shadow borders from tremor components, fix title font
* Add ring-gray to match filters
* add cursor pointer
* copy improvements
* blue to black
* fixed date select focus
* Adds missing translation strings
* Fix url state for filter type
* Apply suggestions from code review
* Updated yarn lock
* Adds feature flag
* Type fix
---------
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Fix missing edge case where team is paid but needs to be updated
* Reuses cron endpoint to update team subscriptions
* Update cron-downgradeUsers.yml
* Update payments.ts
* Update cron-downgradeUsers.yml
* update to 90 writes per second
Stripe allow up to 100 per second
* Add strict types
* Make it array
* Make api consistent and support calOrigin in floatingPopup and modal
* Support calOrigin everywhere and fix branding config issue
* Fix styles not being uniformly applied across components
* Fix unused code
* use sanitize-html instead
* add list formatting
* add lost changes from merging main
* fixes caused by merge
* remove dompurify
* Revert "remove dompurify"
This reverts commit 583bb623c7.
* sanitize already done in editor
* Update yarn.lock
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Set default schedule if there is not one
* Removing last schedule sets user.defaultScheduleId to null
* Create new schedule from event type
* First schedule created is the default
* Go back if new schedule was created
* Moved update logic out of getter
* Remove flashing of empty screen
* Add border prop to EmptyScreen
* User requires a schedule
* Change back schema
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* added better regex for whereby allowing subdomains
* Update packages/app-store/whereby/config.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* deleted orignal booking and fix open seats number on booking page
* fix type error
* Adjust tests
* fix type error
* include fix in e2e test
* fix e2e test
* fixes e2e test
* fix type error in e2e test
* increase timeout time
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
* init page
* init insights frontend
* nit
* nit
* nit
* merge
* fixed icons
* i18n, needs features
* Init insights trpc
* Using trpc on client
* Added events timeline
* Seed analytics script
* connect ui with trpc
* Added and fixed event time lines
* WIP popular days and avg time duration event type
* added new metric graphs
* improved upgrade tip
* always show upgrade screen
* upgrade tremor.so and select inputs for page
* Remove log
* Move everything to components and add context
* Fix select types using calcom ui one
* Adding translations
* Add missing translations
* Add more translations
* min fix
* Fixes for date select
* Prefer early return and mobile design fixes
* Fix style for mobile
* Fix data with userId filter from popular events
* add user id to average time duration
* Removed submodules
* Delete website
* Update yarn.lock
* Code organization and type fixes
* trpc fixes
* Builds are now passing
* Relocates server code
* Cleanup
* Medium size screen fixes
* Added TODO
---------
Co-authored-by: Alan <alannnc@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Use pending status
* Use requiresConfirmation variable instead of eventType.requiresConfirmation as the earlier handles requiresConfirmation threshold as well
* Checking package size effects when we remove zod from middleware
* Remove 'crypto' from client code
* Revert "Checking package size effects when we remove zod from middleware"
This reverts commit ecc2038411.
* Adding lodash to dynamicImports + consistent imports
* Remove the locales from the global Dayjs object
* fix description in email
* add styling for lists
* sanitize editor input before saving
* sanitize eventTypeDescription
* santize html when used dangerouslySetInnerHTML
* fix server side sanitation
* add missing formatting and sanitation
* move @ts-expect-error to correct line
* fix type error and add yarn.lock
* fix build error
* sanitize description for booking page and availability page
* rename to markdownAndSanitize
* always add list formatting
* handle empty description in markdownAndSanitize for cleaner code
* create function for clientside markdown rendering and sanitizing
* fix type error
* code clean up
* Now that eventType.descriptionAsSafeHTML is added at all the missing places, we can do away with ts-ignore and get type safety
* Remove unused variable
* Remove one more ts-expect-error
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Outlook add team members
* iCal & Apple add team members
* Exchange add team members
* iCal & App cal update include attendees
* Exchange reschedule
* GCal add team members on reschedule
* Lark cal loop through team members
* amend logic to calculate DST time on buildSlots
* send start and end date in UTC
* port the logic to calc DST from buildSlots to inWithinAvailableHours
* Fix passThrough console error (passHref is not valid)
* Fix 'use-identity-login' error when logging in with idP
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* Make sure that moving up and down doesnt go beyond boundary
* Update packages/features/form-builder/FormBuilder.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* feat: update badge component
* fix: use the camel cased startIcon prop
* fix: reschedule request badge
* fix: use the camel cased startIcon prop
* fix: remove bold prop
* Removed extra whitespace in HTML
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* WIP-already-reschedule-success-emails-missing
* WIP now saving bookingSeatsReferences and identifyin on reschedule/book page
* Remove logs and created test
* WIP saving progress
* Select second slot to pass test
* Delete attendee from event
* Clean up
* Update with main changes
* Fix emails not being sent
* Changed test end url from success to booking
* Remove unused pkg
* Fix new booking reschedule
* remove log
* Renable test
* remove unused pkg
* rename table name
* review changes
* Fix and and other test to reschedule with seats
* Fix api for cancel booking
* Typings
* Update [uid].tsx
* Abstracted common pattern
into maybeGetBookingUidFromSeat
* Reverts
* Nitpicks
* Update handleCancelBooking.ts
* Adds missing cascades
* Improve booking seats changes (#6858)
* Create sendCancelledSeatEmails
* Draft attendee cancelled seat email
* Send no longer attendee email to attendee
* Send email to organizer when attendee cancels
* Pass cloned event data to emails
* Send booked email for first seat
* Add seat reference uid from email link
* Query for seatReferenceUId and add to cancel & reschedule links
* WIP
* Display proper attendee when rescheduling seats
* Remove console.logs
* Only check for already invited when not rescheduling
* WIP sending reschedule email to just single attendee and owner
* Merge branch 'main' into send-email-on-seats-attendee-changes
* Remove console.logs
* Add cloned event to seat emails
* Do not show manage link for calendar event
* First seat, have both attendees on calendar
* WIP refactor booking seats reschedule logic
* WIP Refactor handleSeats
* Change relation of attendee & seat reference to a one-to-one
* Migration with relationship change
* Booking page handling unique seat references
* Abstract to handleSeats
* Remove console.logs and clean up
* New migration file, delete on cascade
* Check if attendee is already a part of the booking
* Move deleting booking logic to `handleSeats`
* When owner reschedule, move whole booking
* Prevent owner from rescheduling if not enough seats
* Add owner reschedule
* Send reschedule email when moving to new timeslot
* Add event data to reschedule email for seats
* Remove DB changes from event manager
* When a booking has no attendees then delete
* Update calendar when merging bookings
* Move both attendees and seat references when merging
* Remove guest list from seats booking page
* Update original booking when moving an attendee
* Delete calendar and video events if no more attendees
* Update or delete integrations when attendees cancel
* Show no longer attendee if a single attendee cancels
* Change booking to accepted if an attendee books on an empty booking
* If booking in same slot then just return the booking
* Clean up
* Clean up
* Remove booking select
* Typos
---------
Co-authored-by: zomars <zomars@me.com>
* Fix migration table name
* Add missing trpc import
* Rename bookingSeatReferences to bookingSeat
* Change relationship between Attendee & BookingSeat to one to one
* Fix some merge conflicts
* Minor merge artifact fixup
* Add the right 'Person' type
* Check on email, less (although still) editable than name
* Removed calEvent.attendeeUniqueId
* rename referenceUId -> referenceUid
* Squashes migrations
* Run cached installs
Should still be faster. Ensures prisma client is up to date.
* Solve attendee form on booking page
* Remove unused code
* Some type fixes
* Squash migrations
* Type fixes
* Fix for reschedule/[uid] redirect
* Fix e2e test
* Solve double declaration of host
* Solve lint errors
* Drop constraint only if exists
* Renamed UId to Uid
* Explicit vs. implicit
* Attempt to work around text flakiness by adding a little break between animations
* Various bugfixes
* Persistently apply seatReferenceUid (#7545)
* Persistently apply seatReferenceUid
* Small ts fix
* Setup guards correctly
* Type fixes
* Fix render 0 in conditional
* Test refactoring
* Fix type on handleSeats
* Fix handle seats conditional
* Fix type inference
* Update packages/features/bookings/lib/handleNewBooking.ts
* Update apps/web/components/booking/pages/BookingPage.tsx
* Fix type and missing logic for reschedule
* Fix delete of calendar event and booking
* Add handleSeats return type
* Fix seats booking creation
* Fall through normal booking for initial booking, handleSeats for secondary/reschedule
* Simplification of fetching booking
* Enable seats for round-robin events
* A lot harder than I expected
* ignore-owner-if-seat-reference-given
* Return seatReferenceUid when second seat
* negate userIsOwner
* Fix booking seats with a link without bookingUid
* Needed a time check otherwise the attendee will be in the older booking
* Can't open dialog twice in test..
* Allow passing the booking ID from the server
* Fixed isCancelled check, fixed test
* Delete through cascade instead of multiple deletes
---------
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* Localized booking date
* re add space
* Add locale per format call due to lambda dayjs instance share between users
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* feat(web): improve session retrieval performance
Switch to using `getServerSession` which avoids a HTTP round trip to retrieve session details.
Additionally, migrate deprecated `app/lib/auth` calls to to `@calcom/lib` package.
* fix: update failing test and lint
* Consolidates auth code in features
* Update yarn.lock
* Update packages/trpc/server/createContext.ts
* Oopsie
---------
Co-authored-by: zomars <zomars@me.com>
* feat(lib): add more tests to lib package
Add more tests to the lib package to make it more robust overall. Additionally, tidy any methods that can be modified without changing behaviour and tighten types where possible.
* fix(lib): update missed imports
* fix: revert stylistic changes
* Update getSchedule.test.ts
---------
Co-authored-by: Omar López <zomars@me.com>
* 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)
* fix(calendar): recurring event fix
the loop was running way too often on every recurring object
mostly due to the fact that the iterator was not checked for finalization,
and in fact the iterator is not implemented correctly so it does not have done.
instead it checks for undefined or not
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
* fix(calendar): recurring started in stoneage
add a start date to the iterator creation
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
* fix(calendar): no reason for do here
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
* fix(calendar): hour must contain same values as date calendar object...
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
* Update yarn.lock
* Adds deployment settings to DB (#6706)
* WIP: SIU: Maximum call stack size exceeded fix? (#6740)
* Maximum call stack size exceeded fix?
# Conflicts:
# packages/prisma/index.ts
* Prisma client extensions is too much for our TS
* Removed unused Icons
* Type fixes
* replaced edit location dialog subtitle with link to app store (#6746)
* Upgrades typescript to 4.9.4 (#6747)
* Upgrades typescript to 4.9.4
* Type fixes
* Adds booking data to SDK success event (#6737)
* On duplicating an event type, spacing between arrows and label is wide (Length field) (#6717)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* Update README.md
* Update README.md
* added blue color for links in bio (#6760)
* removed credits from auth container (#6766)
* On seats, hide attendees if option is selected (#6767)
* On seats, hide attendees if option is selected
* Remove unused line
* Fix shift-enter in bio editor (#6769)
* fix wrong enabled update button at first load
* fix shift-enter error
* small fixes + code clean up
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* fix: back button and heading size (#6768)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Disable autocomplete on password field (#6705)
* fix padding of lenght input on add event modal (#6771)
* Fix: EventType Duplication (#6778)
* fix: location select menu overflowing the container (#6719)
* Update README.md
* adding ukrainian (#6791)
* fix(web): set canonical as `https://cal.com` in the `<HeadSeo/>` (#6693)
* fix(web): set canonical as https://cal.com in the <HeadSeo/>
* use `window.document.location?.href` if self hosted
* clean up
* use `isCalcom` from library
* handle trailing slash on homepage again
* added impersonation tip (#6794)
* Standardize response codes in Login (#6787)
* standardizing login response codes
* playwright fix
* added translation
* fix: booking limits saved as undefined (#6720)
* fix: booking limits saved as undefined
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: add event limit
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Correct invalid ukraine language code ua -> uk
* fix(web): remove `noindex` & `nofollow` tags from the `App` and `Shell` components (#6816)
Fixes https://github.com/calcom/cal.com/issues/6815
* fix: border color in dark teams page (#6817)
* Add additional guests (#6419)
* Add additional guests
* WIP
* WIP
* Type fix
* WIP
* Add validation for already invited attendees
* Revert type to email
* remove controlled fields
* disables signups via env variable (#6212)
* disables signups via env variable
* Apply suggestions from code review
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
* Reusable Upgrade component for teams only features (#6473)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* i18n udpate
* fix: darkmode in booking/[id] page (#6458)
* fix: text-area style
* fix: border styles
* fix: german translation for reschedule booking email subject (#6483)
* fix: german translation for reschedule subject
* fix: add a full stop
* fix: app store spacing issues (#6481)
* feat: add equal spacing with gap
* fix: title style
* fix: title style
* fix: remove margin
* fix: remove margin
* fix: sub header spacing and slider button
* fix: category card text
* fix: app store spacing issues
* fix: tab in tablet
* fix: shell
* fix: styling of dropdown component (#6440)
* fix: styling of dropdown component
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Apply suggestions from code review
* fix: use dropdown item in all pages
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* chore: undo
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>
* readding sidebar tips for everyone, added 3 more features to teams empty screen (#6475)
* readding sidebar tips for everyone
* added 3 more features to teams plan
* responsive fixes
* responsive fixes
* small responsive fix
* CTA alignment fixed
* Minor alignment fixes to Shell for event-types/[type]
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* fix: wrong i18n placeholder in many locales (#6496)
* fix: czech translation
* fix: spanish translation
* fix: italian translation
* fix: japanese translation
* fix: korean translation
* fix: dutch translation
* fix: norwegian translation
* fix: polish translation
* fix: portuguese translation
* fix: portuguese translation
* fix: romanian translation
* fix: russian translation
* fix: serbian translation
* fix: swedish translation
* fix: turkish translation
* fix: ukrainian translation
* fix: vietnamese translation
* fix: chinese simplified translation
* fix: chinese traditional translation
* Disable redirect for cancellation page (#6498)
* [CAL-677] /event-type : Event Setup sidebar item doesn't reflect multiple durations (#6390)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* Added fallback to hostsFixed too which is used in COLLECTIVE (#6500)
* Don't update the field when changing the select (#6486)
* Don't update the field when changing the select
* Fixing missing label
* Applied the correct y-8 vertical margin
* Changed the description vertical offset from title a bit more
* Add Trash icon on Availability list dropdown
* fix: tablet sidebar profile being too wide and not centered (#6490)
* feat: updated app list items styling issues inside settings/conferencing
* feat: fixed tablet sidebar width and not centered issue
* fix: removed un-related changes from this pr
* deleted .env
* fix: added the accidentaly deleted .env file
* fix: removed unwanted .env file from the pr
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Bring back PublicShell (#6505)
* Add red text to error message
* WIP
* Rearrange guest input
* Fix validate unique guests logic
* Allow guests on reschedule
* Lint fix
* More lint fixes
* Lint fixes
* More lint fixes
* Fix remove guest button margin
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Jeff Loiselle <jeff@loiselles.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Nafees Nazik <84864519+G3root@users.noreply.github.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: Hariom Balhara <hariombalhara@gmail.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: Ronit Panda <72537293+rtpa25@users.noreply.github.com>
Co-authored-by: Alan <alannnc@gmail.com>
* fix: flash of i18n in teams page (#6818)
* Change lint action to run on BuildJet (#6819)
* Feat - invite user to team flow improvements (#6725)
* Fix Dutch custom event names (#6806)
Continued from #6375
* [CAL-727] [500] on /api/trpc/[trpc] (#6795)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* update isCalcom for canonicals to handle https://cal.com (#6802)
* update isCalcom for canonicals to handle https://cal.com
* avoid env var
* prettier
* handle window undefined
* handle window undefined during pre-render
* add some logs
* add some logs
* Revert "add some logs"
This reverts commit 9d27de0290.
* change useHasTeamPlan hook to useHasPaidPlan (#6699)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* fix: use guest email in create booking link banner (#6694)
* feat: tabs for teams in mobile (#6685)
* fix: padding
* feat: add teams tab component
* fix: add image to type
* fix: current path check
* fix: add avatar prop
* feat: add teams tab for mobile
* fix: padding
* fix: background and padding x
* fix: empty logic
* fix: conditions
* fix: bg
---------
Co-authored-by: Alan <alannnc@gmail.com>
* [CAL-807] /event-types/single - Fix the header (#6738)
* [CAL-807] /event-types/single - Fix the header
* [CAL-807] /event-types/single - Fix the header
* [CAL-807] /event-types/single - Fix the header
---------
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* Session Timeout (#6439)
* Implementation
* Unifying UI to password screen
* Tweaks for session in password section
* Update apps/web/pages/settings/security/password.tsx
Co-authored-by: Omar López <zomars@me.com>
* Update packages/features/kbar/Kbar.tsx
Co-authored-by: Omar López <zomars@me.com>
* Update packages/features/settings/layouts/SettingsLayout.tsx
Co-authored-by: Omar López <zomars@me.com>
* Relying on extra db query
* 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
* Using same version as other deps
* Reverting prisma changes and fixing things
* Uneeded tx-expect-error
* Fixing default value
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
---------
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* Fix embed modal leading inputs (#6822)
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Hide attendees from calendar description (#6800)
* Show the organizer timezone when booking on seats
* Only show organizer in event description
* Type fixes
* Update snapshot with new response
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Alan <alannnc@gmail.com>
* fix: installed apps and admin apps layout spacing issues. (#6753)
* feat: add highlight props
* feat: add isTemplate prop
* feat: add invalid credintial prop
* feat: add children prop
* feat: render app list card
* fix: add horizontal gap
* fix: installed app layout style
* fix: admin layout
* feat: add isGlobal to returned data
* feat: fix admin tab.
* use common components list and AppListCard
* show isDefault Badge
* hide switch for global apps
* fix: show switch
* fix: remove isglobal
* fix: layout
* refactor: remove unused component and import
* feat: use app list card component
* fix: query param
* fix: prevent unnecessary props passed to the component
* feat: add disabled style
* feat: add disconnect integration modal
* feat: new changes.
* render disconnect integration model only once.
* add dropdown for actions
* feat: changes in admin apps.
* use dropdown for selecting action buttons.
* use modal for editing keys.
* Remove boolean comparison
---------
Co-authored-by: Alan <alannnc@gmail.com>
* user management moved to console.cal.com (#6799)
* Removed unused variables (#6704) (#6750)
* re-adding subtitle to Shell
* lint
* fixed event-type description
* fix: input component style in routing forms (#6731)
* fix: remove custom className
* removed extra type text
removed extra type text from input
---------
Co-authored-by: alannnc <alannnc@gmail.com>
* Add X-Frame-Options to page headers (#6784)
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Removes pay_later_instructions (#6824)
* [CAL-845] Improve the custom event name modal UI/UX (#6660)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* webhook from ui design change (#6803)
* webhook from ui change
* fix: webhook test border & test webhook font style
* Fixed broken path to fix SB build failure
* feat: add theming options to teams (#6807)
* /teams improvements (#6831)
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Invalidate hasTeamPlan when the last team is removed (#6837)
* Not allowing random duration (#6743)
* v2.5.7
* fix: padding in shell for mobile (#6825)
* fix: padding
* fix: breakpoints in fab
* fix: padding
* Move e2e to buildjet (#6840)
* i18n fix
* i18n fix
* [CAL-713] /availability single - layout issues. Check spacing, margin, alignment with spec'd design (#6724)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* fix: make cal video default value (#6716)
* [CAL-90] Event Types Single / Allow multiple physical locations (#6692)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
* Don't override but decorate the built-in encode function (#6850)
* Don't override but decorate the built-in encode function
* Removed jose + synced lockfile
* Give highest possible value to z-index (#6853)
* Use trackingId only for trackingDomain as thats the only variable supported (#6856)
* v2.5.8
* fixed availabilty layout
* Left / Right buttons now bottom-aligned and slightly shorter (#6857)
Fixes https://github.com/calcom/cal.com/issues/6589
* 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 e1a2e4a357.
* 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 48aa64e072.
* 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
* Update RadioAreaGroup.tsx
* Update CalendarService.ts
* Update CalendarService.ts
---------
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Tobias Gurtzick <magic@wizardtales.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.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: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Sai Deepesh <saideepesh000@gmail.com>
Co-authored-by: Nafees Nazik <84864519+G3root@users.noreply.github.com>
Co-authored-by: Richard Poelderl <richard.poelderl@gmail.com>
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Jeff Loiselle <jeff@loiselles.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Ronit Panda <72537293+rtpa25@users.noreply.github.com>
Co-authored-by: Alan <alannnc@gmail.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Bram Verstraten <bramverstraten@outlook.com>
Co-authored-by: Leo Giovanetti <hello@leog.me>
Co-authored-by: Ben Lam <37053985+blam404@users.noreply.github.com>
Co-authored-by: Josh Avant <joshavant@gmail.com>
Co-authored-by: Joe Shajan <joeshajan1551@gmail.com>
Co-authored-by: Aaron Presley <155617+AaronPresley@users.noreply.github.com>
Co-authored-by: Ben Hybert <53020786+Hybes@users.noreply.github.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: Deepak Prabhakara <deepak@boxyhq.com>
* feat: add custom validate name util
* refactor: separate custom event type modal into a
different component
* feat: add validation to zod
* chore: add i18n key
* feat: add dynamic imports
* fix: padding
* Omit cache-hit exit 1, assuming it'll fail regardless
* allow custom inputs as variables in event name
* fix ui for adding custom inputs
* show edited event name in modal
* code clean up
* merge fixes
* includes new booking fields logic
* fix event name with custom booking fields
* code clean up
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* fix type error
* remove old reqbody variable
---------
Co-authored-by: nafees nazik <nafeesnazik21@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* chore: add fresh chat configs to env.example
* feat: add fresh chat menu item and render
* refactor: remove some event listeners
* chore: make popover closed after the click
* refactor the code and fix some bugs
* feat: auto open chat
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Generate getSchedule response using the invitee timeZone
* Prevents too much diffing
* Adds follow up to TODO to issue
---------
Co-authored-by: zomars <zomars@me.com>
* fix: event location not translated
* fix: translate
* chore: lowercase trans keys
* fix: label
* feat: snake case labels
* fix: show the link if the user has one
* fix: add translatable keys
* fix:
* chore: fix type error
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* wip idp enabled login
* add route to handle callback from IdP
* update the new provider
* cleanup
* fix the type
* add suggested changes
* make the suggested changes
* use client secret verifier
* Make [...nextauth] a little easier to read
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
* Show label in email and calendar invite and send label as well as name in webhook
* Make common code reusable
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>