diff --git a/apps/web/modules/bookings/views/bookings-single-view.tsx b/apps/web/modules/bookings/views/bookings-single-view.tsx index d1d8a9dc6d1f86..9e9a972e00bc2b 100644 --- a/apps/web/modules/bookings/views/bookings-single-view.tsx +++ b/apps/web/modules/bookings/views/bookings-single-view.tsx @@ -26,12 +26,12 @@ import { SystemField, TITLE_FIELD, } from "@calcom/features/bookings/lib/SystemField"; +import { getCalendarLinks, CalendarLinkType } from "@calcom/features/bookings/lib/getCalendarLinks"; import { RATING_OPTIONS, validateRating } from "@calcom/features/bookings/lib/rating"; -import { getCalendarLinks, CalendarLinkType } from "@calcom/lib/bookings/getCalendarLinks"; +import type { nameObjectSchema } from "@calcom/features/eventtypes/lib/eventNaming"; +import { getEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import { APP_NAME } from "@calcom/lib/constants"; import { formatToLocalizedDate, formatToLocalizedTime, formatToLocalizedTimezone } from "@calcom/lib/dayjs"; -import type { nameObjectSchema } from "@calcom/lib/event"; -import { getEventName } from "@calcom/lib/event"; import useGetBrandingColours from "@calcom/lib/getBrandColours"; import { useCompatSearchParams } from "@calcom/lib/hooks/useCompatSearchParams"; import { useLocale } from "@calcom/lib/hooks/useLocale"; diff --git a/apps/web/modules/test-setup.ts b/apps/web/modules/test-setup.ts index 71c2d2a812ece0..d1f07153481bdc 100644 --- a/apps/web/modules/test-setup.ts +++ b/apps/web/modules/test-setup.ts @@ -35,7 +35,7 @@ vi.mock("@calcom/app-store/utils", () => ({ getEventTypeAppData: vi.fn(), })); -vi.mock("@calcom/lib/event", () => ({ +vi.mock("@calcom/features/eventtypes/lib/eventNaming", () => ({ getEventName: vi.fn(), })); diff --git a/packages/app-store/dailyvideo/lib/VideoApiAdapter.ts b/packages/app-store/dailyvideo/lib/VideoApiAdapter.ts index 94ad618234844b..d3e2719084e9c6 100644 --- a/packages/app-store/dailyvideo/lib/VideoApiAdapter.ts +++ b/packages/app-store/dailyvideo/lib/VideoApiAdapter.ts @@ -1,7 +1,6 @@ import { z } from "zod"; import { getDailyAppKeys } from "@calcom/app-store/dailyvideo/lib/getDailyAppKeys"; -import { fetcher } from "@calcom/lib/dailyApiFetcher"; import { prisma } from "@calcom/prisma"; import type { GetRecordingsResponseSchema, GetAccessLinkResponseSchema } from "@calcom/prisma/zod-utils"; import { @@ -16,6 +15,7 @@ import type { VideoApiAdapter, VideoCallData } from "@calcom/types/VideoApiAdapt import { ZSubmitBatchProcessorJobRes, ZGetTranscriptAccessLink } from "../zod"; import type { TSubmitBatchProcessorJobRes, TGetTranscriptAccessLink, batchProcessorBody } from "../zod"; +import { fetcher } from "./dailyApiFetcher"; import { dailyReturnTypeSchema, getTranscripts, diff --git a/packages/lib/dailyApiFetcher.ts b/packages/app-store/dailyvideo/lib/dailyApiFetcher.ts similarity index 83% rename from packages/lib/dailyApiFetcher.ts rename to packages/app-store/dailyvideo/lib/dailyApiFetcher.ts index 5e50538ea7b037..c34e8d27ceb6ca 100644 --- a/packages/lib/dailyApiFetcher.ts +++ b/packages/app-store/dailyvideo/lib/dailyApiFetcher.ts @@ -1,6 +1,7 @@ -import { getDailyAppKeys } from "@calcom/app-store/dailyvideo/lib/getDailyAppKeys"; import { handleErrorsJson } from "@calcom/lib/errors"; +import { getDailyAppKeys } from "./getDailyAppKeys"; + export const fetcher = async (endpoint: string, init?: RequestInit | undefined) => { const { api_key } = await getDailyAppKeys(); return fetch(`https://api.daily.co/v1${endpoint}`, { diff --git a/packages/app-store/routing-forms/api/responses/[formId].ts b/packages/app-store/routing-forms/api/responses/[formId].ts index e1f6316fee0887..6f9a0c201fbcee 100644 --- a/packages/app-store/routing-forms/api/responses/[formId].ts +++ b/packages/app-store/routing-forms/api/responses/[formId].ts @@ -4,10 +4,10 @@ import { getSession } from "next-auth/react"; import { sanitizeValue } from "@calcom/lib/csvUtils"; import { entityPrismaWhereClause, canEditEntity } from "@calcom/lib/entityPermissionUtils.server"; -import { getHumanReadableFieldResponseValue } from "@calcom/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue"; import prisma from "@calcom/prisma"; import { getSerializableForm } from "../../lib/getSerializableForm"; +import { getHumanReadableFieldResponseValue } from "../../lib/responseData/getHumanReadableFieldResponseValue"; import type { FormResponse, SerializableForm } from "../../types/types"; type Fields = NonNullable["fields"]>; diff --git a/packages/app-store/routing-forms/cron/queuedFormResponseCleanup.ts b/packages/app-store/routing-forms/cron/queuedFormResponseCleanup.ts index 69c92bbb070744..f756d9de3a27c9 100644 --- a/packages/app-store/routing-forms/cron/queuedFormResponseCleanup.ts +++ b/packages/app-store/routing-forms/cron/queuedFormResponseCleanup.ts @@ -2,10 +2,11 @@ import type { NextRequest } from "next/server"; import { NextResponse } from "next/server"; import logger from "@calcom/lib/logger"; -import { PrismaQueuedFormResponseRepository } from "@calcom/lib/server/repository/routingForm/queuedFormResponse/PrismaQueuedFormResponseRepository"; -import { QueuedFormResponseService } from "@calcom/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService"; import prisma from "@calcom/prisma"; +import { PrismaQueuedFormResponseRepository } from "../lib/queuedFormResponse/PrismaQueuedFormResponseRepository"; +import { QueuedFormResponseService } from "../lib/queuedFormResponse/QueuedFormResponseService"; + function validateRequest(request: NextRequest) { const apiKey = request.headers.get("authorization") || request.nextUrl.searchParams.get("apiKey"); diff --git a/packages/lib/server/service/routingForm/RoutingFormResponseDataFactory.test.ts b/packages/app-store/routing-forms/lib/RoutingFormResponseDataFactory.test.ts similarity index 96% rename from packages/lib/server/service/routingForm/RoutingFormResponseDataFactory.test.ts rename to packages/app-store/routing-forms/lib/RoutingFormResponseDataFactory.test.ts index 179d31a59c7a1e..60fa2c8c93bef8 100644 --- a/packages/lib/server/service/routingForm/RoutingFormResponseDataFactory.test.ts +++ b/packages/app-store/routing-forms/lib/RoutingFormResponseDataFactory.test.ts @@ -1,6 +1,7 @@ import { describe, it, expect, beforeEach, vi } from "vitest"; -import type { RoutingFormResponseRepositoryInterface } from "../../repository/RoutingFormResponseRepository.interface"; +import type { RoutingFormResponseRepositoryInterface } from "@calcom/lib/server/repository/RoutingFormResponseRepository.interface"; + import { RoutingFormResponseDataFactory } from "./RoutingFormResponseDataFactory"; import { parseRoutingFormResponse } from "./responseData/parseRoutingFormResponse"; diff --git a/packages/lib/server/service/routingForm/RoutingFormResponseDataFactory.ts b/packages/app-store/routing-forms/lib/RoutingFormResponseDataFactory.ts similarity index 90% rename from packages/lib/server/service/routingForm/RoutingFormResponseDataFactory.ts rename to packages/app-store/routing-forms/lib/RoutingFormResponseDataFactory.ts index fa0dee97e34700..8c5d1922801ca4 100644 --- a/packages/lib/server/service/routingForm/RoutingFormResponseDataFactory.ts +++ b/packages/app-store/routing-forms/lib/RoutingFormResponseDataFactory.ts @@ -1,6 +1,6 @@ import type logger from "@calcom/lib/logger"; +import type { RoutingFormResponseRepositoryInterface } from "@calcom/lib/server/repository/RoutingFormResponseRepository.interface"; -import type { RoutingFormResponseRepositoryInterface } from "../../repository/RoutingFormResponseRepository.interface"; import { parseRoutingFormResponse } from "./responseData/parseRoutingFormResponse"; interface Dependencies { diff --git a/packages/lib/server/service/routingForm/responseData/findFieldValueByIdentifier.test.ts b/packages/app-store/routing-forms/lib/findFieldValueByIdentifier.test.ts similarity index 94% rename from packages/lib/server/service/routingForm/responseData/findFieldValueByIdentifier.test.ts rename to packages/app-store/routing-forms/lib/findFieldValueByIdentifier.test.ts index 8494d01222b219..d4c848dced7a93 100644 --- a/packages/lib/server/service/routingForm/responseData/findFieldValueByIdentifier.test.ts +++ b/packages/app-store/routing-forms/lib/findFieldValueByIdentifier.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect } from "vitest"; import { findFieldValueByIdentifier } from "./findFieldValueByIdentifier"; -import type { RoutingFormResponseData } from "./types"; +import type { RoutingFormResponseData } from "./responseData/types"; describe("findFieldValueByIdentifier", () => { const responseData: RoutingFormResponseData = { diff --git a/packages/lib/server/service/routingForm/responseData/findFieldValueByIdentifier.ts b/packages/app-store/routing-forms/lib/findFieldValueByIdentifier.ts similarity index 80% rename from packages/lib/server/service/routingForm/responseData/findFieldValueByIdentifier.ts rename to packages/app-store/routing-forms/lib/findFieldValueByIdentifier.ts index 2ed36065fc5656..dc57a341bfa1c5 100644 --- a/packages/lib/server/service/routingForm/responseData/findFieldValueByIdentifier.ts +++ b/packages/app-store/routing-forms/lib/findFieldValueByIdentifier.ts @@ -1,6 +1,5 @@ -import getFieldIdentifier from "@calcom/app-store/routing-forms/lib/getFieldIdentifier"; - -import type { RoutingFormResponseData } from "./types"; +import getFieldIdentifier from "./getFieldIdentifier"; +import type { RoutingFormResponseData } from "./responseData/types"; type FindFieldValueByIdentifierResult = | { success: true; data: string | string[] | number | null } diff --git a/packages/lib/server/repository/routingForm/queuedFormResponse/PrismaQueuedFormResponseRepository.integration-test.ts b/packages/app-store/routing-forms/lib/queuedFormResponse/PrismaQueuedFormResponseRepository.integration-test.ts similarity index 97% rename from packages/lib/server/repository/routingForm/queuedFormResponse/PrismaQueuedFormResponseRepository.integration-test.ts rename to packages/app-store/routing-forms/lib/queuedFormResponse/PrismaQueuedFormResponseRepository.integration-test.ts index 795e9b1ac965dc..715dc232ed09e1 100644 --- a/packages/lib/server/repository/routingForm/queuedFormResponse/PrismaQueuedFormResponseRepository.integration-test.ts +++ b/packages/app-store/routing-forms/lib/queuedFormResponse/PrismaQueuedFormResponseRepository.integration-test.ts @@ -1,3 +1,4 @@ +import type { Prisma } from "@prisma/client"; import { describe, expect, beforeAll, afterAll, beforeEach, it } from "vitest"; import prisma from "@calcom/prisma"; @@ -32,7 +33,7 @@ const createTestForm = async (userId: number, overrides?: { name?: string }) => const createFormResponse = async ( formId: string, overrides?: { - response?: Record; + response?: Prisma.InputJsonValue; chosenRouteId?: string; } ) => { @@ -48,7 +49,7 @@ const createFormResponse = async ( const createQueuedResponse = async ( formId: string, overrides?: { - response?: Record; + response?: Prisma.InputJsonValue; chosenRouteId?: string; actualResponseId?: number | null; createdAt?: Date; @@ -384,9 +385,15 @@ describe("PrismaQueuedFormResponseRepository Integration Tests", () => { describe("deleteByIds", () => { it("should delete queued responses by their ids", async () => { // Create test queued responses - const response1 = await createQueuedResponse(testForm.id, { response: { field1: "value1" } }); - const response2 = await createQueuedResponse(testForm.id, { response: { field1: "value2" } }); - const response3 = await createQueuedResponse(testForm.id, { response: { field1: "value3" } }); + const response1 = await createQueuedResponse(testForm.id, { + response: { field1: "value1" }, + }); + const response2 = await createQueuedResponse(testForm.id, { + response: { field1: "value2" }, + }); + const response3 = await createQueuedResponse(testForm.id, { + response: { field1: "value3" }, + }); // Delete response1 and response2 const result = await repository.deleteByIds([response1.id, response2.id]); @@ -411,7 +418,9 @@ describe("PrismaQueuedFormResponseRepository Integration Tests", () => { }); it("should handle single id deletion", async () => { - const response = await createQueuedResponse(testForm.id, { response: { field1: "single-delete" } }); + const response = await createQueuedResponse(testForm.id, { + response: { field1: "single-delete" }, + }); const result = await repository.deleteByIds([response.id]); @@ -422,7 +431,9 @@ describe("PrismaQueuedFormResponseRepository Integration Tests", () => { }); it("should handle mix of existing and non-existing ids", async () => { - const response = await createQueuedResponse(testForm.id, { response: { field1: "mixed-delete" } }); + const response = await createQueuedResponse(testForm.id, { + response: { field1: "mixed-delete" }, + }); const result = await repository.deleteByIds([response.id, "non-existent-id"]); diff --git a/packages/lib/server/repository/routingForm/queuedFormResponse/PrismaQueuedFormResponseRepository.ts b/packages/app-store/routing-forms/lib/queuedFormResponse/PrismaQueuedFormResponseRepository.ts similarity index 100% rename from packages/lib/server/repository/routingForm/queuedFormResponse/PrismaQueuedFormResponseRepository.ts rename to packages/app-store/routing-forms/lib/queuedFormResponse/PrismaQueuedFormResponseRepository.ts diff --git a/packages/lib/server/repository/routingForm/queuedFormResponse/QueuedFormResponseRepository.interface.ts b/packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseRepository.interface.ts similarity index 100% rename from packages/lib/server/repository/routingForm/queuedFormResponse/QueuedFormResponseRepository.interface.ts rename to packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseRepository.interface.ts diff --git a/packages/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService.test.ts b/packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseService.test.ts similarity index 96% rename from packages/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService.test.ts rename to packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseService.test.ts index 188cd93ccd53a7..0394a3588745bd 100644 --- a/packages/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService.test.ts +++ b/packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseService.test.ts @@ -2,7 +2,7 @@ import { describe, it, expect, vi, beforeEach, afterEach } from "vitest"; import type logger from "@calcom/lib/logger"; -import type { QueuedFormResponseRepositoryInterface } from "../../repository/routingForm/queuedFormResponse/QueuedFormResponseRepository.interface"; +import type { QueuedFormResponseRepositoryInterface } from "./QueuedFormResponseRepository.interface"; import { QueuedFormResponseService } from "./QueuedFormResponseService"; describe("QueuedFormResponseService", () => { @@ -130,7 +130,7 @@ describe("QueuedFormResponseService", () => { it("should stop when batch is not full", async () => { // Return partial batch - mockRepo.findMany.mockResolvedValueOnce([{ id: "1" }, { id: "2" }, { id: "3" }]); + mockRepo.findMany.mockResolvedValueOnce([{ id: "1" }, { id: "2" }, { id: "3" }] as any); mockRepo.deleteByIds.mockResolvedValueOnce({ count: 3 }); const result = await service.cleanupExpiredResponses({ batchSize: 5 }); diff --git a/packages/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService.ts b/packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseService.ts similarity index 94% rename from packages/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService.ts rename to packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseService.ts index 69ca09cfa0a4a8..8d534d4a6da8ca 100644 --- a/packages/lib/server/service/routingForm/queuedFormResponse/QueuedFormResponseService.ts +++ b/packages/app-store/routing-forms/lib/queuedFormResponse/QueuedFormResponseService.ts @@ -1,6 +1,6 @@ import type logger from "@calcom/lib/logger"; -import type { QueuedFormResponseRepositoryInterface } from "../../../repository/routingForm/queuedFormResponse/QueuedFormResponseRepository.interface"; +import type { QueuedFormResponseRepositoryInterface } from "./QueuedFormResponseRepository.interface"; interface Dependencies { logger: typeof logger; diff --git a/packages/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue.test.ts b/packages/app-store/routing-forms/lib/responseData/getHumanReadableFieldResponseValue.test.ts similarity index 98% rename from packages/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue.test.ts rename to packages/app-store/routing-forms/lib/responseData/getHumanReadableFieldResponseValue.test.ts index 542b40a3dfd16c..35c723930780f4 100644 --- a/packages/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue.test.ts +++ b/packages/app-store/routing-forms/lib/responseData/getHumanReadableFieldResponseValue.test.ts @@ -1,7 +1,6 @@ import { describe, it, expect } from "vitest"; -import type { Field, FormResponse } from "@calcom/app-store/routing-forms/types/types"; - +import type { Field, FormResponse } from "../../types/types"; import { getHumanReadableFieldResponseValue } from "./getHumanReadableFieldResponseValue"; describe("getHumanReadableFieldResponseValue", () => { diff --git a/packages/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue.ts b/packages/app-store/routing-forms/lib/responseData/getHumanReadableFieldResponseValue.ts similarity index 100% rename from packages/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue.ts rename to packages/app-store/routing-forms/lib/responseData/getHumanReadableFieldResponseValue.ts diff --git a/packages/lib/server/service/routingForm/responseData/parseRoutingFormResponse.test.ts b/packages/app-store/routing-forms/lib/responseData/parseRoutingFormResponse.test.ts similarity index 100% rename from packages/lib/server/service/routingForm/responseData/parseRoutingFormResponse.test.ts rename to packages/app-store/routing-forms/lib/responseData/parseRoutingFormResponse.test.ts diff --git a/packages/lib/server/service/routingForm/responseData/parseRoutingFormResponse.ts b/packages/app-store/routing-forms/lib/responseData/parseRoutingFormResponse.ts similarity index 100% rename from packages/lib/server/service/routingForm/responseData/parseRoutingFormResponse.ts rename to packages/app-store/routing-forms/lib/responseData/parseRoutingFormResponse.ts diff --git a/packages/lib/server/service/routingForm/responseData/types.ts b/packages/app-store/routing-forms/lib/responseData/types.ts similarity index 100% rename from packages/lib/server/service/routingForm/responseData/types.ts rename to packages/app-store/routing-forms/lib/responseData/types.ts diff --git a/packages/app-store/routing-forms/lib/substituteVariables.ts b/packages/app-store/routing-forms/lib/substituteVariables.ts index 19ef124f0e9edc..580755b851b60e 100644 --- a/packages/app-store/routing-forms/lib/substituteVariables.ts +++ b/packages/app-store/routing-forms/lib/substituteVariables.ts @@ -1,8 +1,8 @@ -import { getHumanReadableFieldResponseValue } from "@calcom/lib/server/service/routingForm/responseData/getHumanReadableFieldResponseValue"; import slugify from "@calcom/lib/slugify"; import type { FormResponse, NonRouterRoute, Field } from "../types/types"; import getFieldIdentifier from "./getFieldIdentifier"; +import { getHumanReadableFieldResponseValue } from "./responseData/getHumanReadableFieldResponseValue"; /** * Substitues variables in the target URL identified by routeValue with values from response diff --git a/packages/app-store/salesforce/lib/CrmService.ts b/packages/app-store/salesforce/lib/CrmService.ts index 68c334464512a0..1c95bcc916d7af 100644 --- a/packages/app-store/salesforce/lib/CrmService.ts +++ b/packages/app-store/salesforce/lib/CrmService.ts @@ -3,6 +3,7 @@ import jsforce from "@jsforce/jsforce-node"; import { RRule } from "rrule"; import { z } from "zod"; +import { RoutingFormResponseDataFactory } from "@calcom/app-store/routing-forms/lib/RoutingFormResponseDataFactory"; import { getLocation } from "@calcom/lib/CalEventParser"; import { WEBAPP_URL } from "@calcom/lib/constants"; import { RetryableError } from "@calcom/lib/crmManager/errors"; @@ -11,8 +12,6 @@ import logger from "@calcom/lib/logger"; import { safeStringify } from "@calcom/lib/safeStringify"; import { PrismaAssignmentReasonRepository } from "@calcom/lib/server/repository/PrismaAssignmentReasonRepository"; import { PrismaRoutingFormResponseRepository as RoutingFormResponseRepository } from "@calcom/lib/server/repository/PrismaRoutingFormResponseRepository"; -import { RoutingFormResponseDataFactory } from "@calcom/lib/server/service/routingForm/RoutingFormResponseDataFactory"; -import { findFieldValueByIdentifier } from "@calcom/lib/server/service/routingForm/responseData/findFieldValueByIdentifier"; import { prisma } from "@calcom/prisma"; import type { CalendarEvent, CalEventResponses } from "@calcom/types/Calendar"; import type { CredentialPayload } from "@calcom/types/Credential"; @@ -20,6 +19,7 @@ import type { CRM, Contact, CrmEvent } from "@calcom/types/CrmService"; import type { ParseRefreshTokenResponse } from "../../_utils/oauth/parseRefreshTokenResponse"; import parseRefreshTokenResponse from "../../_utils/oauth/parseRefreshTokenResponse"; +import { findFieldValueByIdentifier } from "../../routing-forms/lib/findFieldValueByIdentifier"; import { default as appMeta } from "../config.json"; import type { writeToRecordDataSchema, appDataSchema, writeToBookingEntry } from "../zod"; import { diff --git a/packages/emails/email-manager.ts b/packages/emails/email-manager.ts index ff1ab0698adf56..74463692c4efac 100644 --- a/packages/emails/email-manager.ts +++ b/packages/emails/email-manager.ts @@ -4,8 +4,8 @@ import type { z } from "zod"; import dayjs from "@calcom/dayjs"; import type BaseEmail from "@calcom/emails/templates/_base-email"; -import type { EventNameObjectType } from "@calcom/lib/event"; -import { getEventName } from "@calcom/lib/event"; +import type { EventNameObjectType } from "@calcom/features/eventtypes/lib/eventNaming"; +import { getEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import { formatCalEvent } from "@calcom/lib/formatCalendarEvent"; import logger from "@calcom/lib/logger"; import { safeStringify } from "@calcom/lib/safeStringify"; diff --git a/packages/features/bookings/lib/BookingEmailSmsHandler.ts b/packages/features/bookings/lib/BookingEmailSmsHandler.ts index 6184b71daf7f6b..0aaa973b95d872 100644 --- a/packages/features/bookings/lib/BookingEmailSmsHandler.ts +++ b/packages/features/bookings/lib/BookingEmailSmsHandler.ts @@ -17,7 +17,7 @@ import { sendAttendeeRequestEmailAndSMS, } from "@calcom/emails"; import type { BookingType } from "@calcom/features/bookings/lib/handleNewBooking/originalRescheduledBookingUtils"; -import type { EventNameObjectType } from "@calcom/lib/event"; +import type { EventNameObjectType } from "@calcom/features/eventtypes/lib/eventNaming"; import { getPiiFreeCalendarEvent } from "@calcom/lib/piiFreeData"; import { safeStringify } from "@calcom/lib/safeStringify"; import { getTranslation } from "@calcom/lib/server/i18n"; diff --git a/packages/lib/bookings/getCalendarLinks.test.ts b/packages/features/bookings/lib/getCalendarLinks.test.ts similarity index 100% rename from packages/lib/bookings/getCalendarLinks.test.ts rename to packages/features/bookings/lib/getCalendarLinks.test.ts diff --git a/packages/lib/bookings/getCalendarLinks.ts b/packages/features/bookings/lib/getCalendarLinks.ts similarity index 97% rename from packages/lib/bookings/getCalendarLinks.ts rename to packages/features/bookings/lib/getCalendarLinks.ts index ef63dd7e941957..80a2c5198fa2df 100644 --- a/packages/lib/bookings/getCalendarLinks.ts +++ b/packages/features/bookings/lib/getCalendarLinks.ts @@ -6,12 +6,11 @@ import type { z } from "zod"; import type { Dayjs } from "@calcom/dayjs"; import dayjs from "@calcom/dayjs"; -import type { nameObjectSchema } from "@calcom/lib/event"; +import type { nameObjectSchema } from "@calcom/features/eventtypes/lib/eventNaming"; +import { getEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import { bookingMetadataSchema } from "@calcom/prisma/zod-utils"; import type { RecurringEvent } from "@calcom/types/Calendar"; -import { getEventName } from "../event"; - type RecurringEventOrPrismaJsonObject = RecurringEvent | Prisma.JsonObject | null | undefined; export const enum CalendarLinkType { GOOGLE_CALENDAR = "googleCalendar", diff --git a/packages/features/bookings/lib/handleNewBooking.ts b/packages/features/bookings/lib/handleNewBooking.ts index d7889daa77f4e6..e693e62137c47c 100644 --- a/packages/features/bookings/lib/handleNewBooking.ts +++ b/packages/features/bookings/lib/handleNewBooking.ts @@ -23,6 +23,7 @@ import { handleWebhookTrigger } from "@calcom/features/bookings/lib/handleWebhoo import { isEventTypeLoggingEnabled } from "@calcom/features/bookings/lib/isEventTypeLoggingEnabled"; import type { CacheService } from "@calcom/features/calendar-cache/lib/getShouldServeCache"; import AssignmentReasonRecorder from "@calcom/features/ee/round-robin/assignmentReason/AssignmentReasonRecorder"; +import { getEventName, updateHostInEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import type { FeaturesRepository } from "@calcom/features/flags/features.repository"; import { getFullName } from "@calcom/features/form-builder/utils"; import { UsersRepository } from "@calcom/features/users/users.repository"; @@ -49,7 +50,6 @@ import { getCacheService } from "@calcom/lib/di/containers/Cache"; import { getLuckyUserService } from "@calcom/lib/di/containers/LuckyUser"; import { ErrorCode } from "@calcom/lib/errorCodes"; import { getErrorFromUnknown } from "@calcom/lib/errors"; -import { getEventName, updateHostInEventName } from "@calcom/lib/event"; import { extractBaseEmail } from "@calcom/lib/extract-base-email"; import { getBookerBaseUrl } from "@calcom/lib/getBookerUrl/server"; import getOrgIdFromMemberOrTeamId from "@calcom/lib/getOrgIdFromMemberOrTeamId"; diff --git a/packages/lib/server/service/bookingLocationService.test.ts b/packages/features/ee/round-robin/lib/bookingLocationService.test.ts similarity index 100% rename from packages/lib/server/service/bookingLocationService.test.ts rename to packages/features/ee/round-robin/lib/bookingLocationService.test.ts diff --git a/packages/lib/server/service/bookingLocationService.ts b/packages/features/ee/round-robin/lib/bookingLocationService.ts similarity index 100% rename from packages/lib/server/service/bookingLocationService.ts rename to packages/features/ee/round-robin/lib/bookingLocationService.ts diff --git a/packages/features/ee/round-robin/roundRobinManualReassignment.ts b/packages/features/ee/round-robin/roundRobinManualReassignment.ts index a1fee3d96069c9..0a687d8b1da5f9 100644 --- a/packages/features/ee/round-robin/roundRobinManualReassignment.ts +++ b/packages/features/ee/round-robin/roundRobinManualReassignment.ts @@ -13,21 +13,21 @@ import { getEventTypesFromDB } from "@calcom/features/bookings/lib/handleNewBook import AssignmentReasonRecorder, { RRReassignmentType, } from "@calcom/features/ee/round-robin/assignmentReason/AssignmentReasonRecorder"; +import { BookingLocationService } from "@calcom/features/ee/round-robin/lib/bookingLocationService"; import { scheduleEmailReminder, deleteScheduledEmailReminder, } from "@calcom/features/ee/workflows/lib/reminders/emailReminderManager"; import { scheduleWorkflowReminders } from "@calcom/features/ee/workflows/lib/reminders/reminderScheduler"; +import { getEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import { getVideoCallUrlFromCalEvent } from "@calcom/lib/CalEventParser"; import { SENDER_NAME } from "@calcom/lib/constants"; import { enrichUserWithDelegationCredentialsIncludeServiceAccountKey } from "@calcom/lib/delegationCredential/server"; -import { getEventName } from "@calcom/lib/event"; import { getBookerBaseUrl } from "@calcom/lib/getBookerUrl/server"; import { IdempotencyKeyService } from "@calcom/lib/idempotencyKey/idempotencyKeyService"; import { isPrismaObjOrUndefined } from "@calcom/lib/isPrismaObj"; import logger from "@calcom/lib/logger"; import { getTranslation } from "@calcom/lib/server/i18n"; -import { BookingLocationService } from "@calcom/lib/server/service/bookingLocationService"; import { getTimeFormatStringFromUserTimeFormat } from "@calcom/lib/timeFormat"; import { prisma } from "@calcom/prisma"; import { WorkflowActions, WorkflowMethods, WorkflowTriggerEvents } from "@calcom/prisma/enums"; diff --git a/packages/features/ee/round-robin/roundRobinReassignment.ts b/packages/features/ee/round-robin/roundRobinReassignment.ts index 265ad5be1da605..aa8a6767aa2ea2 100644 --- a/packages/features/ee/round-robin/roundRobinReassignment.ts +++ b/packages/features/ee/round-robin/roundRobinReassignment.ts @@ -16,13 +16,13 @@ import type { IsFixedAwareUser } from "@calcom/features/bookings/lib/handleNewBo import AssignmentReasonRecorder, { RRReassignmentType, } from "@calcom/features/ee/round-robin/assignmentReason/AssignmentReasonRecorder"; +import { getEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import { enrichHostsWithDelegationCredentials, enrichUserWithDelegationCredentialsIncludeServiceAccountKey, } from "@calcom/lib/delegationCredential/server"; import { getLuckyUserService } from "@calcom/lib/di/containers/LuckyUser"; import { ErrorCode } from "@calcom/lib/errorCodes"; -import { getEventName } from "@calcom/lib/event"; import { IdempotencyKeyService } from "@calcom/lib/idempotencyKey/idempotencyKeyService"; import { isPrismaObjOrUndefined } from "@calcom/lib/isPrismaObj"; import logger from "@calcom/lib/logger"; diff --git a/packages/features/eventtypes/components/tabs/advanced/CustomEventTypeModal.tsx b/packages/features/eventtypes/components/tabs/advanced/CustomEventTypeModal.tsx index bcc382e045d5ce..84d7334bde68ec 100644 --- a/packages/features/eventtypes/components/tabs/advanced/CustomEventTypeModal.tsx +++ b/packages/features/eventtypes/components/tabs/advanced/CustomEventTypeModal.tsx @@ -4,9 +4,9 @@ import { FormProvider } from "react-hook-form"; import { useForm, useFormContext } from "react-hook-form"; import { Dialog } from "@calcom/features/components/controlled-dialog"; +import type { EventNameObjectType } from "@calcom/features/eventtypes/lib/eventNaming"; +import { getEventName, validateCustomEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import type { InputClassNames } from "@calcom/features/eventtypes/lib/types"; -import type { EventNameObjectType } from "@calcom/lib/event"; -import { getEventName, validateCustomEventName } from "@calcom/lib/event"; import { useLocale } from "@calcom/lib/hooks/useLocale"; import classNames from "@calcom/ui/classNames"; import { Button } from "@calcom/ui/components/button"; diff --git a/packages/features/eventtypes/components/tabs/advanced/EventAdvancedTab.tsx b/packages/features/eventtypes/components/tabs/advanced/EventAdvancedTab.tsx index 85930f7cfbe39a..96df549f05c514 100644 --- a/packages/features/eventtypes/components/tabs/advanced/EventAdvancedTab.tsx +++ b/packages/features/eventtypes/components/tabs/advanced/EventAdvancedTab.tsx @@ -20,6 +20,8 @@ import { allowDisablingHostConfirmationEmails, } from "@calcom/features/ee/workflows/lib/allowDisablingStandardEmails"; import { MultiplePrivateLinksController } from "@calcom/features/eventtypes/components"; +import type { EventNameObjectType } from "@calcom/features/eventtypes/lib/eventNaming"; +import { getEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import type { FormValues, EventTypeSetupProps, @@ -38,8 +40,6 @@ import { APP_NAME, MAX_SEATS_PER_TIME_SLOT, } from "@calcom/lib/constants"; -import type { EventNameObjectType } from "@calcom/lib/event"; -import { getEventName } from "@calcom/lib/event"; import { generateHashedLink } from "@calcom/lib/generateHashedLink"; import { checkWCAGContrastColor } from "@calcom/lib/getBrandColours"; import { extractHostTimezone } from "@calcom/lib/hashedLinksUtils"; diff --git a/packages/lib/event.test.ts b/packages/features/eventtypes/lib/eventNaming.test.ts similarity index 99% rename from packages/lib/event.test.ts rename to packages/features/eventtypes/lib/eventNaming.test.ts index d44a6eccb1bfad..60289c8be9366a 100644 --- a/packages/lib/event.test.ts +++ b/packages/features/eventtypes/lib/eventNaming.test.ts @@ -1,8 +1,8 @@ import type { TFunction } from "i18next"; import { describe, expect, it, vi } from "vitest"; -import * as event from "./event"; -import { updateHostInEventName } from "./event"; +import * as event from "./eventNaming"; +import { updateHostInEventName } from "./eventNaming"; describe("event tests", () => { describe("fn: getEventName", () => { diff --git a/packages/lib/event.ts b/packages/features/eventtypes/lib/eventNaming.ts similarity index 100% rename from packages/lib/event.ts rename to packages/features/eventtypes/lib/eventNaming.ts diff --git a/packages/features/tasker/tasks/triggerNoShow/getMeetingSessionsFromRoomName.ts b/packages/features/tasker/tasks/triggerNoShow/getMeetingSessionsFromRoomName.ts index 7f6cebf6197e44..d8f29f789806ad 100644 --- a/packages/features/tasker/tasks/triggerNoShow/getMeetingSessionsFromRoomName.ts +++ b/packages/features/tasker/tasks/triggerNoShow/getMeetingSessionsFromRoomName.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@calcom/lib/dailyApiFetcher"; +import { fetcher } from "@calcom/app-store/dailyvideo/lib/dailyApiFetcher"; import { triggerNoShowPayloadSchema } from "./schema"; diff --git a/packages/platform/atoms/event-types/hooks/useEventTypeForm.ts b/packages/platform/atoms/event-types/hooks/useEventTypeForm.ts index 6669cada2ab8bd..03b64c6b490b18 100644 --- a/packages/platform/atoms/event-types/hooks/useEventTypeForm.ts +++ b/packages/platform/atoms/event-types/hooks/useEventTypeForm.ts @@ -4,18 +4,15 @@ import { useForm } from "react-hook-form"; import { z } from "zod"; import checkForMultiplePaymentApps from "@calcom/app-store/_utils/payments/checkForMultiplePaymentApps"; -import { - DEFAULT_PROMPT_VALUE, - DEFAULT_BEGIN_MESSAGE, -} from "@calcom/features/calAIPhone/promptTemplates"; +import { DEFAULT_PROMPT_VALUE, DEFAULT_BEGIN_MESSAGE } from "@calcom/features/calAIPhone/promptTemplates"; import type { TemplateType } from "@calcom/features/calAIPhone/zod-utils"; import { sortHosts } from "@calcom/features/eventtypes/components/HostEditDialogs"; +import { validateCustomEventName } from "@calcom/features/eventtypes/lib/eventNaming"; import type { FormValues, EventTypeSetupProps, EventTypeUpdateInput, } from "@calcom/features/eventtypes/lib/types"; -import { validateCustomEventName } from "@calcom/lib/event"; import { locationsResolver } from "@calcom/lib/event-types/utils/locationsResolver"; import { useLocale } from "@calcom/lib/hooks/useLocale"; import { validateIntervalLimitOrder } from "@calcom/lib/intervalLimits/validateIntervalLimitOrder"; diff --git a/packages/platform/libraries/event-types.ts b/packages/platform/libraries/event-types.ts index ba3f068993f7e6..1fd3fc34f50e8f 100644 --- a/packages/platform/libraries/event-types.ts +++ b/packages/platform/libraries/event-types.ts @@ -18,7 +18,7 @@ export { eventTypeLocations, } from "@calcom/prisma/zod-utils"; -export { validateCustomEventName } from "@calcom/lib/event"; +export { validateCustomEventName } from "@calcom/features/eventtypes/lib/eventNaming"; export { EventManager }; export { getEventTypeById } from "@calcom/lib/event-types/getEventTypeById"; export { getEventTypesByViewer } from "@calcom/lib/event-types/getEventTypesByViewer"; diff --git a/packages/platform/libraries/index.ts b/packages/platform/libraries/index.ts index 0aed354b261a6d..7a78482bc5075f 100644 --- a/packages/platform/libraries/index.ts +++ b/packages/platform/libraries/index.ts @@ -86,7 +86,7 @@ export { roundRobinManualReassignment } from "@calcom/features/ee/round-robin/ro export { ErrorCode } from "@calcom/lib/errorCodes"; -export { validateCustomEventName } from "@calcom/lib/event"; +export { validateCustomEventName } from "@calcom/features/eventtypes/lib/eventNaming"; export type TeamQuery = Prisma.TeamGetPayload<{ select: { @@ -120,7 +120,7 @@ export { getTeamMemberEmailForResponseOrContactUsingUrlQuery }; export { SelectedCalendarRepository } from "@calcom/lib/server/repository/selectedCalendar"; export { encryptServiceAccountKey } from "@calcom/lib/server/serviceAccountKey"; export { createHandler as createApiKeyHandler } from "@calcom/trpc/server/routers/viewer/apiKeys/create.handler"; -export { getCalendarLinks } from "@calcom/lib/bookings/getCalendarLinks"; +export { getCalendarLinks } from "@calcom/features/bookings/lib/getCalendarLinks"; export { findTeamMembersMatchingAttributeLogic } from "@calcom/lib/raqb/findTeamMembersMatchingAttributeLogic"; export type { TFindTeamMembersMatchingAttributeLogicInputSchema } from "@calcom/trpc/server/routers/viewer/attributes/findTeamMembersMatchingAttributeLogic.schema";