* Refactors related to enabling typescript 5.3.3 in @calcom/trpc
* Also skip respective tests (obviously logic is broken)
* This causes problems for some reason, revert
* Bring back QueryCell as it's used by atoms
* Add `hideCalendarEventDetails` to DB
Co-authored-by: Alex van Andel <emrysal@users.noreply.github.com>
* Add option to hide calendar event details
* Pass `hideCalendarEventDetails` to event object
* Add to API
* Add to CalendarEvent class
* Pass `hideCalendarEventDetails` to calendar services
* Adjust test
* fix: move `hideCalendarEventDetails` to `api/v2/event-types_2024_06_14` and remove from older versions
- Added `hideCalendarEventDetails` to `api/v2/event-types_2024_06_14`
- Removed `hideCalendarEventDetails` from `api/v1` and `api/v2/event-types_2024_04_15`
* fix: calEventRaw is undefined (use event instead)
* chore: Remove debug artifact
* fix: description id + update to copy
* fix: Attempt at fixing type error
* Add hideCalendarEventDetails to test builder
---------
Co-authored-by: Alex van Andel <emrysal@users.noreply.github.com>
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Set the organizer in the organizer field
* Create generateIcsFile
* Add role enum and only disable for organizers
* Move emails to generateIcsFile
* Add new ics func to new emails
* Fix tests
* Type fix
---------
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* refactor: have system and user booking fields schemas and united schema
* fix: event-types output service filter out system booking fields for response
* chore: v2 update platform-libraries to 0.0.25
* chore: platform-libraries export types and update changelog
* chore: add updated lock file
* feat(appStore): add isOAuth config
* refactor(appStore): EventTypeAppSettngsInterface
* refactor(qr_code): split EventTypeAppCardInterface and EventTypeAppSettingsInterface
* feat(appStore): redirect to onboarding for stripe and basecam
* fix(ui/ScrollableArea): overflow indicator not working
* feat(apps): new install app flow
* fix(configureStep): get disabled props for settings
* fix: getAppInstallsBySlug now use teamIds
* chore: Alby to AppSettingsInterface
* chore: Giphy to appsettings interface
* chore: GTM migration
* chore: GT4 - migration
* chore: fathom migration
* chore: paypal
* feat: basecamp migration
* feat: metapixel migration
* feat:plausable
* feat:stripe
* fix merge issues
* fix merge issues in new app install flow steps
* wip: callback to onboarding
* fix: imports
* fix: more imports
* feat: use redirect to onboarding on install flow
* fix: redirect to event-type after oauth flow
* When clicking on install new app button, only redirect to the new app install flow if it is an oAuth app or an app that extends the EventType feature in it's config
* code refactor, skip event-type step
* removed extra consoles
* so that no one can change the eventTypeId in url
* theme support enabled
* only pass eventTypeId instead of whole evetType obj to OmniInstallAppButton
* fix: clicking on event-type gives error and redirects to /apps
* saved appOnboardingRedirectUrl to OAuth State
* fix: a user having no team breaks the onboarding flow
* add optional chaining to appMetadata.extendsFeature and appMetadata.isOAuth;
* encode appOnboardingRedirectUrl
* fix: dark theme ui issues
* skip configure step if no-event types
if user/team does not have event-type then skip configure step and goto apps/installed/[category]
* exclude calendars from apps- onboarding flow
* Update getAppOnboardingRedirectUrl.ts
* fix: On configure step, inputs aren't showing errors
* change route from `apps/onboarding` to `apps/installation`
* fix: flow not correctly working for teams
* should only allow team ADMIN or OWER to install an app to team
* Prevent two payment apps to be enabled
* removed loading state
* Fix type error
* undo new-app-flow from OmniInstallAppButton
* remove OAuth Step, handle step numbering
* fix: redirect url
* getAppOnboardingRedirectUrl refactor
* for debugging
* Revert "for debugging"
This reverts commit b9362c1a8f47f2280e684c213d7ec08d04a8ac4c.
* fix: added toaster
* feat: added support to select multiple events (almost)
* hide button
* Move inner form outside outer form using portal
Due to limitations with nested forms in React Hook Form, moved the inner form outside the outer form using a portal to ensure proper form handling.
* submit buttons refs madness
* removed configure step
we had to use query params to manage selected event-types, between routes which was causing 2 issues:
* each time we selected or unselected an event the whole page was reloaded including getserversideprops being called again and again
* the form was reloaded causing more issues
* removed extra unwanted code
* small fix
* fix: type error
* fix: types
* implemented suggested changes
* removed step footer
* fixed error.message
* removed commented styles
* removed step footer
* fix: Display team event types instead of user's on event types step when team selected
* fix: typo
* removed shouldLockDisableProps
* refactor setUpdatedEventTypesStatus, fix type
* removed extra code
* can't delete while saving
* added translations
* fix: loading in select account step, fix handle onSelect params type
* Fix typo
* feat: add skip button to event-types step
* use set-up-later button in tests
* added skip button to configure step as well
* feat: add test for analytics apps using the new app install flow
* feat: add test for stripe 1
* feat: add test for stripe 2
* Fix: Redirect only those apps that extend 'EventType' to the new app install flow (#14527)
* fix: type errors
* fix: failing tests
* fix: tests
* fix test flakiness
* better naming and code refactor for analytics apps tests
* run tests parallelly
* removed network idle, giving error
* another shot at test flakiness
* Fix: can't install apps without team selector dropdown on main app store page.
* fix: test flakiness
* fix: account select loading issue
* removed getPaymentCredential (unused)
* fix: only redirect after the app has been added to all the event-types
* remove overflowIndicatorStyles
* fixed failing test
* fix: exclude org team events
* undo some random merge changes
---------
Co-authored-by: Morgan Vernay <morgan@cal.com>
Co-authored-by: sean-brydon <sean@cal.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Omar López <zomars@me.com>
* feat(appStore): add isOAuth config
* refactor(appStore): EventTypeAppSettngsInterface
* refactor(qr_code): split EventTypeAppCardInterface and EventTypeAppSettingsInterface
* feat(appStore): redirect to onboarding for stripe and basecam
* fix(ui/ScrollableArea): overflow indicator not working
* feat(apps): new install app flow
* fix(configureStep): get disabled props for settings
* fix: getAppInstallsBySlug now use teamIds
* chore: Alby to AppSettingsInterface
* chore: Giphy to appsettings interface
* chore: GTM migration
* chore: GT4 - migration
* chore: fathom migration
* chore: paypal
* feat: basecamp migration
* feat: metapixel migration
* feat:plausable
* feat:stripe
* fix merge issues
* fix merge issues in new app install flow steps
* wip: callback to onboarding
* fix: imports
* fix: more imports
* feat: use redirect to onboarding on install flow
* feat: New app install flow 2 (#14077)
* fix: redirect to event-type after oauth flow
* When clicking on install new app button, only redirect to the new app install flow if it is an oAuth app or an app that extends the EventType feature in it's config
* code refactor, skip event-type step
* removed extra consoles
* so that no one can change the eventTypeId in url
* theme support enabled
* only pass eventTypeId instead of whole evetType obj to OmniInstallAppButton
* fix: clicking on event-type gives error and redirects to /apps
* saved appOnboardingRedirectUrl to OAuth State
* fix: a user having no team breaks the onboarding flow
* add optional chaining to appMetadata.extendsFeature and appMetadata.isOAuth;
* encode appOnboardingRedirectUrl
* fix: dark theme ui issues
* skip configure step if no-event types
if user/team does not have event-type then skip configure step and goto apps/installed/[category]
* exclude calendars from apps- onboarding flow
* Update getAppOnboardingRedirectUrl.ts
* fix: On configure step, inputs aren't showing errors
* change route from `apps/onboarding` to `apps/installation`
* fix: flow not correctly working for teams
* should only allow team ADMIN or OWER to install an app to team
* Prevent two payment apps to be enabled
* removed loading state
* Fix type error
* undo new-app-flow from OmniInstallAppButton
* remove OAuth Step, handle step numbering
* fix: redirect url
* getAppOnboardingRedirectUrl refactor
* for debugging
* Revert "for debugging"
This reverts commit b9362c1a8f47f2280e684c213d7ec08d04a8ac4c.
* fix: added toaster
* feat: added support to select multiple events (almost)
* hide button
* Move inner form outside outer form using portal
Due to limitations with nested forms in React Hook Form, moved the inner form outside the outer form using a portal to ensure proper form handling.
* submit buttons refs madness
* removed configure step
we had to use query params to manage selected event-types, between routes which was causing 2 issues:
* each time we selected or unselected an event the whole page was reloaded including getserversideprops being called again and again
* the form was reloaded causing more issues
* removed extra unwanted code
* small fix
* fix: type error
* fix: types
* implemented suggested changes
* removed step footer
* fixed error.message
* removed commented styles
* removed step footer
* fix: Display team event types instead of user's on event types step when team selected
* fix: typo
* removed shouldLockDisableProps
* refactor setUpdatedEventTypesStatus, fix type
* removed extra code
* can't delete while saving
* added translations
* fix: loading in select account step, fix handle onSelect params type
* Fix typo
---------
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
* fix: type errors
* fix: failing tests
---------
Co-authored-by: sean-brydon <sean@cal.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
* fix: prevent signing up multiple times from same account
* revert: lark calendar changes
* credential clean up if duplicate
* fix code duplication and check before credential creation
* feat: useRouterQuery allow unset queryParam
* feat: showToast on account duplication attempt
* Small tweak to copy
* Updated other calendars not to use checkDuplicateCalendar
* Add account already linked to apps/installed/calendar
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
* Get `onErrorReturnTo` URL
* If no code return to previous page
* On invalid permissions, return to previous page
* When not enough permissions given, invalidate the credential created
* Type fix
* Stripe go back to previous page on cancel
* Clean up console.logs
* Add early returns when redirecting
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
* GCal set primary calendar on install
* Outlook set default calendar as selected cal
* Zoho create selected calendar on install
* Lark create selected cal on install
* [CAL-1517] fix all Typescript warnings
* solve conflicts
* Update stripeCheckoutSession.handler.ts
Parse is a guard, so even though the variable is unused the parse itself is needed.
* Update ToolbarPlugin.tsx
Don't change dependency tree
---------
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@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
* 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 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>
* 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
* 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>
* 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
* Added migration to keep current apps enabled
* Update apps.tsx
* Fix bug
* Add keys schema to Plausible app
* Add appKeysSchema to zod.ts template
* Update AdminAppsList.tsx
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>
* Fixing types from handleErrorJson usage and Credential
* Replace credential prisma type for a better suitable
* Improvements on zoom video adapter
* Renamed extendedCredentialType and put it in a best suited file
* Frontend display invalid credential
* Fix styles and text
* Fix type required for fake daily credentials
* Standardize destination calendar selector
* Move DestinationCalendarSelector to feature package
* Render integration name
* Add custom components to label and selected
* Render destinationCalendar on page load
* Change name to just Outlook
* Small fixes
* Merge branch 'main' into hotfix/install-calendar-overflow
* Merge branch 'main' into hotfix/install-calendar-overflow
* Fix type errors
* Fix type errors
* Update apps/web/pages/settings/my-account/calendars.tsx
* More type fixes
Co-authored-by: Omar López <zomars@me.com>