* 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>
* Fix UsernameTextfield to take right height
* Remove className side-effect
* Incorrect resolution version fixed
* Converted mobile DropdownMenuTrigger styles into Button
* 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>
* Start by moving what we have to _templates
* WIP
* WIP
* Add create/edit/delete template commands
* Type fixes cli
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Fix spacing and height
* Testing if its timing out or something else
* So, timep=out is the problem. Increase the timeout to 1s for now
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* 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
* 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: rename HOSTED_CAL_FEATURES into NEXT_PUBLIC_HOSTED_CAL_FEATURES
* chore: add the new env to example
* fix: docs link
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* use IS_SELF_HOSTED for CalComVersion instead of an additional check for hosted and self-hosted versions
* use IS_SELF_HOSTED for HOSTED_CAL_FEATURES constant to prevent an additional check
Co-authored-by: René Müller <rene.mueller@clicksports.de>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Check for session in addition for isPublic prop
* Cleaner, more readable version
* Less code same result, no rerender
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* Save design updates for fixed round robin support
* wip - added Host relation
* DRY hostsFixed select
* Changes to allow isFixed in the Availability page
* Allow booking with fixed hosts
* Replace users with hosts if hosts is set
* Also prefer hosts over users here
* Prevent duplicates when hosts is saved
* Accidental slot duplication
* Attempt at making isFixed optional
* Sydney and Shiraz can live in harmony again
* No fixed hosts causes every to be true..
* Make hosts undefinable
* Small handleNewBooking fixes
* Similar fix to the hosts to check for empty-ness
* Default to isFixed false instead of true
* Fix event type list avatars
* Filter availableTimeSlots, collective ts's wont magically re-enable.
* (Further) Fixes to getAggregateWorkingHours
* Weird userId artifact that preceeds this branch, investigate later
* On user delete, remove host, on event type delete, also remove host
* Dynamic event types were incorrectly marked as isFixed=false
* Fixed notFound error when there are no users (but hosts)
* Fixes userIsOwner
* Oops, fixed isFixed users being included correctly
* Fixed Button styling on secondary darkmode
* Create exclusivity in selectable options
* fix: Location dropdown is overflowing #6376 (#6415)
* add `menuPlacement` react-select's props to `getReactSelectProps` to avoid dropdown overflow on small screen.
By default, set to "auto".
* CALCOM-6362 - [CAL-728] App Sidebar. Child items aren't sized/spaced properly (#6424)
* [CAL-728] App Sidebar. Child items aren't sized/spaced properly
* fix: undo logo size
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: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Fixing colors (#6429)
* Update website
* Update console
* Update yarn.lock
* Uses disable instead of filtering to be more clear
* Update EventTeamTab.tsx
* Merge conflict cleanup
* During test cases the dayjs() utcOffset is local time, this fixes that
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: Thomas Brodusch <3238312+thomasbrodusch@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: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
* adds upgrade badge to dropdown
* add space between batch and check
* add upgrade tool tip
* fix import
* code clean up
* fix type error
* fix type error
* fix type errors
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Refactored buildSlots
* Added typing for computedAvailableSlots
* Adds very simple boundary logic to make sure slots start at the right times
* Logic was cutting off too early
* Woops, should be eventLength, not frequency
* Expect 12:15 slots as availability is till 12:30 for booking
* Deliberately skip test for testing purposes
* slotInterval overrides intervals, but not duration
* Fix calendar mocking
* Another 45m length
* Unskip :(
* Fix test
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
* Fix What for normal bookings
* Fix subject on bookings with seats
* WIP
* Change more strings
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* make text editor reusable
* use dropdown component for block type
* remove ring when clicking on block type
* allow excluding items in toolbar
* refactor code
* make AddVariableDropdown reusable
* fixed missed translations
* fixes variable translation issue
* change missed translation variables
* make AddVariablesDropdown reusable
* reorder block types in dropdown
* remove not needed prop
* code clean up
* center add variable dropwdown icon
* remove rounded borders in dropwdown on hover and active
* center icons
* fix tool bar items dropdown
* add constant for dynamic text variables
* remove not needed variables (added from merge)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* Abstract app category navigation
* Send key schema to frontend
Co-authored-by: Omar López <zomars@users.noreply.github.com>
* Render keys for apps on admin
* Add enabled col for apps
* Save app keys to DB
* Add checks for admin role
* Abstract setup components
* Add AdminAppsList to setup wizard
* Migrate to v10 tRPC
* Default hide keys
* Display enabled apps
* Merge branch 'main' into admin-apps-ui
* Toggle calendars
* WIP
* Add params and include AppCategoryNavigation
* Refactor getEnabledApps
* Add warning for disabling apps
* Fallback to cal video when a video app is disabled
* WIP send disabled email
* Send email to all users of event types with payment app
* Disable Stripe when app is disabled
* Disable apps in event types
* Send email to users on disabled apps
* Send email based on what app was disabled
* WIP type fix
* Disable navigation to apps list if already setup
* UI import fixes
* Waits for session data before redirecting
* Updates admin seeded password
To comply with admin password requirements
* Update yarn.lock
* Flex fixes
* Adds admin middleware
* Clean up
* WIP
* WIP
* NTS
* Add dirName to app metadata
* Upsert app if not in db
* Upsert app if not in db
* Add dirName to app metadata
* Add keys to app packages w/ keys
* Merge with main
* Toggle show keys & on enable
* Fix empty keys
* Fix lark calendar metadata
* Fix some type errors
* Fix Lark metadata & check for category when upserting
* More type fixes
* Fix types & add keys to google cal
* WIP
* WIP
* WIP
* More type fixes
* Fix type errors
* Fix type errors
* More type fixes
* More type fixes
* More type fixes
* Feedback
* Fixes default value
* Feedback
* Migrate credential invalid col default value "false"
* Upsert app on saving keys
* Clean up
* Validate app keys on frontend
* Add nonempty to app keys schemas
* Add web3
* Listlocale filter on categories / category
* Grab app metadata via category or categories
* Show empty screen if no apps are enabled
* Fix type checks
* Fix type checks
* Fix type checks
* Fix type checks
* Fix type checks
* Fix type checks
* Replace .nonempty() w/ .min(1)
* Fix type error
* Address feedback
* Draft Google Meet install button
* Add install button and warning dialog
* WIP
* WIP
* Display warning when Meet is selected
* Display Google Meet warning on email to organizer
* Fix email
* Fix type errors
* Fix type error
* Add connected account component
* Add warning message
* Address comments
* Address feedback
* Clean up & add MeetLocationType
* Use useApp hook
* Translate to new API approach
* Remove console.log
* Refactor
* Fix missing backup Cal video link
* WIP
* Address feedback
* Update submodules
* Feedback
* Submodule sync
Co-authored-by: Omar López <zomars@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
* make text editor reusable
* use dropdown component for block type
* remove ring when clicking on block type
* allow excluding items in toolbar
* refactor code
* make AddVariableDropdown reusable
* fixed missed translations
* fixes variable translation issue
* change missed translation variables
* make AddVariablesDropdown reusable
* reorder block types in dropdown
* remove not needed prop
* code clean up
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Replaces mdx-remote with react-markdown
* Replaces react-markdown with already available markdown-it
* Renames readme to description
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* set useQueryParam to false for app categories
* New param 'useQueryParam' for AppCategoryNavigation/AdminAppsList
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Refactor of the RadioAreaGroup component
* Move RadioAreaGroup outside of v2/core
* Use useTypedQuery
* Removed unused (broken) imports
* Fix type for Select
* fix: flash of untranslated content
* feat: extract loading into a variable
* fix: use optional chaining because typescript complaining
* feat: render Meta component even if not loading for seo purpose
* fix: received an array with more than 1 element as
children warning
* fix: changes
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Removed old root UI components.
* Fixed import path
* Moved first v2 components to new components dir.
* Changed icon to not import from root, since it somehow creates a recursive import
* Removed irrelevant todo
* Added docs for new components
* Fixed type errors
* Update packages/ui/components/index.ts
Removing as per comment
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* applied whitelabel to additional parts of the app
* format .md files
* updated metadata of all apps
* applied whitelabel to PoweredByCal.tsx
* fixed `team_upgrade_banner_action` with better german
* fixed import of APP_NAME in email templates
* revert "applied whitelabel" in CalEventParser.test.ts
* Revert "updated metadata of all apps"
This reverts commit 9c1621788d.
* revert app-store whitelabel changes
* Revert "applied whitelabel to PoweredByCal.tsx"
This reverts commit f2b2d79aa5.
* Update website
* Sync
* Update constants.ts
* Prevent unit test error
Co-authored-by: René Müller <rene.mueller@clicksports.de>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* WIP
* Fix all TS errors
* Move to using isRouter everywhere
* wip
* Add Router Picker and fix TS issues
* Fix tests and add option to connect during duplication
* Misc changes
* Fixes
* Fixes
* Fix TS errors
* Disable certain options in Router
* Fix connected Form fields not updating
* Some fixes
* reert shell.tsx
* Disable already used router instead of removing it
* Import prisma from correct place
* Simplify loop using Object.entries
* SimpliAdd playwright test and fix issues found
* Removed old root UI components.
* Fixed import path
* Changed icon to not import from root, since it somehow creates a recursive import
* Removed irrelevant todo
* Fixed merge issues.
* Fixed shell export
* fix: use hasMounted to render calcom versionm
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* added Credits component but struggling with import
* only made it work with v2 folder. sorry jerone
* added link to releases
* added link to cal.com
* removing script calcomversion for now until we need it
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>
* Make cal.com version available on all pages, even on login page.
* Extract out calcom version as a utility
* added version to login screen
* added ee and ce to version
* fixed lint
* Fix import
* removed version info component
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* fixed sidebar position
* fixed sidebar position
* fixed sidebar position
* removed gradient overlay from user dropdown
* added toHide prop to license check to hide a component if a license is available
* show children if toHide is true
* return latest bookings for example bookings for zapier
* remove mt on skeleton loader
* Revert "return latest bookings for example bookings for zapier"
This reverts commit b69f393a73.
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* EventTypeFilter UI working
* Tidy + fix avatar + fix overflow
* Component store
* WIP - switchin to query filtering instead of state
* Push working
* Checkbox approach - weird conditional toggle for all bookings
* WIP
* the master query hook :O
* useTypedQuery
* Working typed query
* Typed query hook
* Add optional keys
* safeParse query params
* Add use callback
* Fix re-renders
* Remove local version of local query and use util branch
* Working team filters!
* working people filter!
* Tidy up
* NIT
Co-authored-by: zomars <zomars@me.com>
* Identify owner for a timeslot and check busyness against his schedule only
* Fix TS errors
* Fix flatmap
* Fix xisting unit tests
* Prevent duplicate slots by merging, userId -> userIds (multi)
* Small fix to potential undefined
* Moved duplicate prevention to buildSlots function
* Apply date override on a per user basis
* Prevent -1 being added to computedLocalAvailability
* Removed console.log
* Apply override properly on COLLECTIVE
* Default timeZone to UTC when undefined
* isSame doesn't work when the day shifts, isBetween instead
* Iterate over all slot.userIds schedules to identify the first user schedule that matches
* add round-robin test
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Added screenshot variant of og image (used in website).
* Added option to rotate background image in og image.
* Converted wrapper props to interface instead of inline type declaration.
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* add webhooks tab for team event types
* show nr of active event types
* type fixes + show team webhooks only in event type single view
* adding and deleting webhook
* fix disabling and enabling team webhooks
* add editing webhook
* code clean up
* add installed apps
* code clean up
* fix reserved subscriber url when creating event
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
* fix: change external id to owner address
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* feat: add email prop in calendar
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: only display for outlook
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: add email for apple calendar
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: type error and use description
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: try using email from /me endpoint
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: fallback to principal name when mail is not there
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* chore: use empty string for fallback
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: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
* Fixing multiple duration default issues
* Ensure that when calculation time slots we use 1 as a minimum interval, since 0 min meetings would result in an infinite loop.
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* fix: remove optional from schema.
* schema success state is always true because of the optional property.
so we are getting undefined if returnTo query Param doesn't exist
* fix: add a return to query param
* nit: turn querySchema into an object
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
* Use the same locale for event description.
Currently all headers of the event description use organizer's language except description part. This is not suitable to see different languages withing the same text block.
Change description header to use the same locale as others.
* Translate app_status in organizer language too
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* small design fix for time unit select
* save video cal url to booking in metaData
* save video url when bookings are confirmed
* fix e2e tests
* remove not needed waitForNavigation
* add metadata to booking created webhook payload
* add migration
* fix type error
* add meeting url variable to dropdown
* add meeting url to custom template
* add BookingMetaDataSchema
* add meeting url to email reminder
* add meeting url to sms notifcation
* adjust e2e tests
* add bookingMetadataSchema
* add missing change from merge
* fix spelling
* fix type error
* code clean up
* fix e2e snapshot
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Fixes to dialog for date override & dialog overflow fix
* Fixed datepicker border on mobile
* removed max-height from dialog, needs testing
Co-authored-by: Peer Richelsen <peer@cal.com>
* first implementation of verifying phone number
* add UI + logic for verifying phone number flow
* check if all phone numbers are verified before submit
* add numberVerification pending
* only send SMS to verified numbers
* fix design for mobile view
* check if phone number is verified before testing action
* add back message service id check
* add TWILIO_VERIFY_SID to .env.example
* code clean up
* add TWILIO_VERIFY_SID to README.md instructions
* save new verified numbers
* fix wrongly thrown error for new verified numbers
* use false as default value for isVerificationPending paramater
* add translations
* add migration file
* code clean up
* don't throw error if phone number is not needed
* Feedback
* Shows error when Twillio isn't properly setup
* Type fixes
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* small design fix for time unit select
* save video cal url to booking in metaData
* save video url when bookings are confirmed
* fix e2e tests
* remove not needed waitForNavigation
* add metadata to booking created webhook payload
* add migration
* fix type error
* adjust e2e tests
* add bookingMetadataSchema
* add missing change from merge
* add new line to expected test result
* update snapshot
* fix e2e tests
* Update confirm.ts
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* additional checks for testing workflow action
* fix old variable in testAction mutaiton
* remove workflowId
* only allow team plan to test action
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
* wip vimcal app
* added vimcal blog link
* todo: filter out external calendar apps
* Make it a non calendar type app with category and variant as calendar
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* disable sms actions for users without team
* add isTeamsPlan query
* disable SMS action if user is not in a team
* remove console log
* disable SMS actions also in AddActionDialog
* throw error is users wants to add sms or edit to sms action
* code clean up
* Get actions options from backend. cleanup
* Typefix
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>