refactor: move WebWrapper files from packages/platform to apps/web/modules#26629
Merged
refactor: move WebWrapper files from packages/platform to apps/web/modules#26629
Conversation
…dules Move the following WebWrapper files to their appropriate locations in apps/web/modules: - EventTypeWebWrapper and related tab wrappers to apps/web/modules/event-types/components/wrappers/ - BookerWebWrapper to apps/web/modules/bookings/components/ - ConferencingAppsViewWebWrapper to apps/web/modules/apps/components/ - SelectedCalendarsSettingsWebWrapper to apps/web/modules/calendars/components/ - AddMembersWithSwitchWebWrapper to apps/web/modules/event-types/components/ This reduces the number of files in packages/platform that import from @calcom/web, improving the separation between platform and web-specific code. Co-Authored-By: benny@cal.com <sldisek783@gmail.com>
Contributor
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
Co-Authored-By: benny@cal.com <sldisek783@gmail.com>
Contributor
E2E results are ready! |
Co-Authored-By: benny@cal.com <sldisek783@gmail.com>
…-webwrappers-to-apps-web
Contributor
There was a problem hiding this comment.
1 issue found across 24 files
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="apps/web/modules/event-types/components/EventTypeWebWrapper.tsx">
<violation number="1" location="apps/web/modules/event-types/components/EventTypeWebWrapper.tsx:29">
P2: These deeply nested relative paths (`../../../../../packages/...`) are fragile and bypass proper package resolution. Since this file is in `apps/web/modules` but imports from `packages/platform/atoms`, consider either:
1. Using the package alias (e.g., `@calcom/atoms/event-types/hooks/useEventTypeForm`) and adding an export if needed
2. Moving these hooks to the web app as part of this refactor
The current approach contradicts the PR goal of reducing cross-package coupling and will break if directory structure changes.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
apps/web/modules/event-types/components/EventTypeWebWrapper.tsx
Outdated
Show resolved
Hide resolved
Contributor
Devin AI is addressing Cubic AI's review feedbackA Devin session has been created to address the issues identified by Cubic AI. |
…relative paths - Move sortHosts function to @calcom/lib/bookings/hostGroupUtils.ts for shared access - Add exports for useEventTypeForm, useHandleRouteChange, useTabsNavigations to @calcom/atoms package.json - Update EventTypeWebWrapper.tsx to use @calcom/atoms package alias instead of ../../../../../packages/... paths - Update useEventTypeForm.ts to import sortHosts from @calcom/lib instead of @calcom/web - Re-export sortHosts from HostEditDialogs.tsx for backward compatibility This addresses the Cubic AI review feedback about fragile deeply nested relative paths that bypass proper package resolution. Co-Authored-By: unknown <>
Contributor
There was a problem hiding this comment.
1 issue found across 1 file (changes from recent commits).
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<file name="apps/web/modules/event-types/components/EventTypeWebWrapper.tsx">
<violation number="1" location="apps/web/modules/event-types/components/EventTypeWebWrapper.tsx:29">
P1: Deep relative imports traversing outside `apps/web` into `packages/` violate monorepo conventions. Use the package alias `@calcom/atoms/event-types/hooks/useEventTypeForm` instead of relative paths. This pattern is fragile and not used elsewhere in the codebase.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
Contributor
Devin AI is addressing Cubic AI's review feedbackNew feedback has been sent to the existing Devin session. |
Addresses Cubic AI review feedback about deep relative imports traversing outside apps/web into packages/ violating monorepo conventions. - Update EventTypeWebWrapper.tsx to use @calcom/atoms alias - Add hook exports to @calcom/atoms package.json Co-Authored-By: benny@cal.com <sldisek783@gmail.com>
apps/web/modules/calendars/components/SelectedCalendarsSettingsWebWrapper.tsx
Outdated
Show resolved
Hide resolved
keithwillcode
approved these changes
Jan 10, 2026
Anshumancanrock
pushed a commit
to Anshumancanrock/cal.com
that referenced
this pull request
Jan 12, 2026
…dules (calcom#26629) * refactor: move WebWrapper files from packages/platform to apps/web/modules Move the following WebWrapper files to their appropriate locations in apps/web/modules: - EventTypeWebWrapper and related tab wrappers to apps/web/modules/event-types/components/wrappers/ - BookerWebWrapper to apps/web/modules/bookings/components/ - ConferencingAppsViewWebWrapper to apps/web/modules/apps/components/ - SelectedCalendarsSettingsWebWrapper to apps/web/modules/calendars/components/ - AddMembersWithSwitchWebWrapper to apps/web/modules/event-types/components/ This reduces the number of files in packages/platform that import from @calcom/web, improving the separation between platform and web-specific code. Co-Authored-By: benny@cal.com <sldisek783@gmail.com> * fix: move web-specific hooks to apps/web and update imports Co-Authored-By: benny@cal.com <sldisek783@gmail.com> * fix * fix * fix * fix * fix * fix * fix * fix * add back comments * fix * fix * fix * fix * fix: correct relative import paths in moved WebWrapper files Co-Authored-By: benny@cal.com <sldisek783@gmail.com> * final * fix: use package alias for event-type hooks instead of deeply nested relative paths - Move sortHosts function to @calcom/lib/bookings/hostGroupUtils.ts for shared access - Add exports for useEventTypeForm, useHandleRouteChange, useTabsNavigations to @calcom/atoms package.json - Update EventTypeWebWrapper.tsx to use @calcom/atoms package alias instead of ../../../../../packages/... paths - Update useEventTypeForm.ts to import sortHosts from @calcom/lib instead of @calcom/web - Re-export sortHosts from HostEditDialogs.tsx for backward compatibility This addresses the Cubic AI review feedback about fragile deeply nested relative paths that bypass proper package resolution. Co-Authored-By: unknown <> --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This was referenced Jan 14, 2026
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Moves WebWrapper files from
packages/platform/atomstoapps/web/modules.Why?
As part of moving components/hooks from
packages/featurestoapps/web, the WebWrapper components inpackages/platform/atomswere importing those moved files via@calcom/web. Moving the WebWrapper files toapps/weballows them to import from sibling locations instead of cross-package, unblocking the larger refactoring effort.Files moved:
EventTypeWebWrapperand tab wrappers →apps/web/modules/event-types/components/BookerWebWrapper→apps/web/modules/bookings/components/ConferencingAppsViewWebWrapper→apps/web/modules/apps/components/SelectedCalendarsSettingsWebWrapper→apps/web/modules/calendars/components/AddMembersWithSwitchWebWrapper→apps/web/modules/event-types/components/DestinationCalendarSettingsWebWrapper→apps/web/components/apps/Additional changes:
sortHostsutility to@calcom/lib/bookings/hostGroupUtils.tsfor shared access@calcom/atomspackage.json (useEventTypeForm,useHandleRouteChange,useTabsNavigations)@calcom/atomspackage.jsonUpdates since last revision:
EventTypeWebWrapper.tsxto use@calcom/atomspackage alias instead of traversing outsideapps/web(addresses Cubic AI review feedback)Mandatory Tasks (DO NOT REMOVE)
How should this be tested?
Run
yarn type-check:ci --forceand verify event types, booking pages, and settings pages load correctly.Human Review Checklist
sortHostsfunction move to@calcom/lib/bookings/hostGroupUtils.tsdoesn't break existing functionality@calcom/atoms/bookerexport@calcom/atomshook exports resolve correctlyLink to Devin run: https://app.devin.ai/sessions/ffdc374f531f46a399a052a715abe50b
Requested by: @hbjORbj