Files
Benny JooGitHubDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
d3e7554835 refactor: move WebWrapper files from packages/platform to apps/web/modules (#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: [email protected] <[email protected]>

* fix: move web-specific hooks to apps/web and update imports

Co-Authored-By: [email protected] <[email protected]>

* 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: [email protected] <[email protected]>

* 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>
2026-01-10 12:55:39 +00:00

39 lines
1.2 KiB
TypeScript

import { createRouterCaller } from "app/_trpc/context";
import { _generateMetadata } from "app/_utils";
import { ConferencingAppsViewWebWrapper } from "@calcom/web/modules/apps/components/ConferencingAppsViewWebWrapper";
import { appsRouter } from "@calcom/trpc/server/routers/viewer/apps/_router";
import { eventTypesRouter } from "@calcom/trpc/server/routers/viewer/eventTypes/_router";
export const generateMetadata = async () =>
await _generateMetadata(
(t) => t("conferencing"),
(t) => t("conferencing_description"),
undefined,
undefined,
"/settings/my-account/conferencing"
);
const Page = async () => {
const [appsCaller, eventTypesCaller] = await Promise.all([
createRouterCaller(appsRouter),
createRouterCaller(eventTypesRouter),
]);
const [integrations, defaultConferencingApp, eventTypesQueryData] = await Promise.all([
appsCaller.integrations({ variant: "conferencing", onlyInstalled: true }),
appsCaller.getUsersDefaultConferencingApp(),
eventTypesCaller.bulkEventFetch(),
]);
return (
<ConferencingAppsViewWebWrapper
integrations={integrations}
defaultConferencingApp={defaultConferencingApp}
eventTypes={eventTypesQueryData?.eventTypes ?? []}
/>
);
};
export default Page;