diff --git a/apps/api/v1/pages/api/slots/_get.test.ts b/apps/api/v1/pages/api/slots/_get.test.ts
index 29d531f133d80c..ce971ea562f7f2 100644
--- a/apps/api/v1/pages/api/slots/_get.test.ts
+++ b/apps/api/v1/pages/api/slots/_get.test.ts
@@ -65,7 +65,7 @@ describe("GET /api/slots", () => {
});
buildMockData();
await handler(req, res);
- console.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
+ logger.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
const response = JSON.parse(res._getData());
expect(response.slots).toEqual(expect.objectContaining({}));
});
@@ -83,7 +83,7 @@ describe("GET /api/slots", () => {
});
buildMockData();
await handler(req, res);
- console.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
+ logger.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
const response = JSON.parse(res._getData());
expect(response.slots).toEqual(expect.objectContaining({}));
});
diff --git a/apps/api/v1/test/lib/bookings/_get.integration-test.ts b/apps/api/v1/test/lib/bookings/_get.integration-test.ts
index a3a0a6c9e7aa91..378cb4e0e69def 100644
--- a/apps/api/v1/test/lib/bookings/_get.integration-test.ts
+++ b/apps/api/v1/test/lib/bookings/_get.integration-test.ts
@@ -355,7 +355,7 @@ describe("GET /api/bookings", async () => {
.filter(([_, count]) => count > 1)
.map(([id]) => id);
- console.log(`Found duplicate booking IDs: ${duplicates.join(", ")}`);
+ logger.log(`Found duplicate booking IDs: ${duplicates.join(", ")}`);
}
});
});
diff --git a/apps/api/v1/test/lib/bookings/_post.test.ts b/apps/api/v1/test/lib/bookings/_post.test.ts
index 9aa9b516d73ef2..b1e7fe046c4adb 100644
--- a/apps/api/v1/test/lib/bookings/_post.test.ts
+++ b/apps/api/v1/test/lib/bookings/_post.test.ts
@@ -146,7 +146,7 @@ describe.skipIf(true)("POST /api/bookings", () => {
prismaMock.eventType.findUniqueOrThrow.mockResolvedValue(buildEventType());
await handler(req, res);
- console.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
+ logger.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
expect(res._getStatusCode()).toBe(500);
expect(JSON.parse(res._getData())).toEqual(
@@ -183,7 +183,7 @@ describe.skipIf(true)("POST /api/bookings", () => {
prismaMock.booking.findMany.mockResolvedValue([]);
await handler(req, res);
- console.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
+ logger.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
createdBooking = JSON.parse(res._getData());
expect(prismaMock.booking.create).toHaveBeenCalledTimes(1);
});
@@ -212,7 +212,7 @@ describe.skipIf(true)("POST /api/bookings", () => {
prismaMock.booking.findMany.mockResolvedValue([]);
await handler(req, res);
- console.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
+ logger.log({ statusCode: res._getStatusCode(), data: JSON.parse(res._getData()) });
const rescheduledBooking = JSON.parse(res._getData()) as Booking;
expect(prismaMock.booking.create).toHaveBeenCalledTimes(1);
expect(rescheduledBooking.fromReschedule).toEqual(createdBooking.uid);
diff --git a/apps/api/v2/scripts/docker-start.ts b/apps/api/v2/scripts/docker-start.ts
index c71470dfc16744..e9d9c8af0bc8bf 100644
--- a/apps/api/v2/scripts/docker-start.ts
+++ b/apps/api/v2/scripts/docker-start.ts
@@ -18,12 +18,12 @@ try {
// Try docker compose first (new syntax)
try {
execSync("docker compose version", { stdio: "ignore" });
- console.log("Starting containers with docker compose...");
+ logger.log("Starting containers with docker compose...");
execSync("docker compose up -d", { stdio: "inherit" });
} catch (e) {
// Fall back to docker-compose if the above fails
if (checkCommandExists("docker-compose")) {
- console.log("Starting containers with docker-compose...");
+ logger.log("Starting containers with docker-compose...");
execSync("docker-compose up -d", { stdio: "inherit" });
} else {
throw new Error("Neither 'docker compose' nor 'docker-compose' command is available");
diff --git a/apps/ui-playground/content/design/components/pagination.tsx b/apps/ui-playground/content/design/components/pagination.tsx
index f81e8988c18833..1cf41d831a7da5 100644
--- a/apps/ui-playground/content/design/components/pagination.tsx
+++ b/apps/ui-playground/content/design/components/pagination.tsx
@@ -52,11 +52,11 @@ export const WithCallbacksExample = () => {
const totalItems = 100;
const handleNext = () => {
- console.log("Next page clicked");
+ logger.log("Next page clicked");
};
const handlePrevious = () => {
- console.log("Previous page clicked");
+ logger.log("Previous page clicked");
};
return (
diff --git a/apps/web/components/notification-sound-handler.tsx b/apps/web/components/notification-sound-handler.tsx
index 47304396873543..a0f09115206420 100644
--- a/apps/web/components/notification-sound-handler.tsx
+++ b/apps/web/components/notification-sound-handler.tsx
@@ -22,7 +22,7 @@ export function NotificationSoundHandler() {
const response = await fetch("/ring.mp3");
const arrayBuffer = await response.arrayBuffer();
audioBufferRef.current = await audioContextRef.current.decodeAudioData(arrayBuffer);
- console.log("Audio file loaded and decoded");
+ logger.log("Audio file loaded and decoded");
}
return true;
@@ -62,7 +62,7 @@ export function NotificationSoundHandler() {
source.loop = true;
source.start(0);
- console.log("Sound started playing");
+ logger.log("Sound started playing");
setTimeout(() => {
if (sourceRef.current === source) {
@@ -101,7 +101,7 @@ export function NotificationSoundHandler() {
useEffect(() => {
if (!("serviceWorker" in navigator)) {
- console.log("ServiceWorker not available");
+ logger.log("ServiceWorker not available");
return;
}
diff --git a/apps/web/cron-tester.ts b/apps/web/cron-tester.ts
index 693ac7aafa099d..e7882650bdefa7 100644
--- a/apps/web/cron-tester.ts
+++ b/apps/web/cron-tester.ts
@@ -17,7 +17,7 @@ async function fetchCron(endpoint: string) {
}
try {
- console.log("⏳ Running cron endpoints");
+ logger.log("⏳ Running cron endpoints");
new CronJob(
// Each 5 seconds
"*/5 * * * * *",
diff --git a/apps/web/lib/apps/[slug]/getStaticProps.tsx b/apps/web/lib/apps/[slug]/getStaticProps.tsx
index 61079a283492e3..5a4d15dd575da5 100644
--- a/apps/web/lib/apps/[slug]/getStaticProps.tsx
+++ b/apps/web/lib/apps/[slug]/getStaticProps.tsx
@@ -61,7 +61,7 @@ export const getStaticProps = async (slug: string) => {
source = source.replace(/{DESCRIPTION}/g, appMeta.description);
} catch (error) {
/* If the app doesn't have a README we fallback to the package description */
- console.log(`No DESCRIPTION.md provided for: ${appDirname}`);
+ logger.log(`No DESCRIPTION.md provided for: ${appDirname}`);
source = appMeta.description;
}
diff --git a/apps/web/modules/signup-view.tsx b/apps/web/modules/signup-view.tsx
index d5f297d56330c9..ad99fd7293e080 100644
--- a/apps/web/modules/signup-view.tsx
+++ b/apps/web/modules/signup-view.tsx
@@ -216,7 +216,7 @@ export default function Signup({
if (err.checkoutSessionId) {
const stripe = await getStripe();
if (stripe) {
- console.log("Redirecting to stripe checkout");
+ logger.log("Redirecting to stripe checkout");
const { error } = await stripe.redirectToCheckout({
sessionId: err.checkoutSessionId,
});
diff --git a/apps/web/playwright/embed-code-generator.e2e.ts b/apps/web/playwright/embed-code-generator.e2e.ts
index 2bc0c6490ab7a7..9df7b39bfb1cbe 100644
--- a/apps/web/playwright/embed-code-generator.e2e.ts
+++ b/apps/web/playwright/embed-code-generator.e2e.ts
@@ -452,12 +452,10 @@ function assertThatCodeIsValidVanillaJsCode(code: string) {
rules: eslintRules,
});
if (lintResult.length) {
- console.log(
- JSON.stringify({
+ logger.log(JSON.stringify({
lintResult,
code,
- })
- );
+ }));
}
expect(lintResult.length).toBe(0);
}
@@ -477,12 +475,10 @@ function assertThatCodeIsValidReactCode(code: string) {
rules: eslintRules,
});
if (lintResult.length) {
- console.log(
- JSON.stringify({
+ logger.log(JSON.stringify({
lintResult,
code,
- })
- );
+ }));
}
expect(lintResult.length).toBe(0);
}
diff --git a/apps/web/playwright/fixtures/embeds.ts b/apps/web/playwright/fixtures/embeds.ts
index f480b42879c097..53d5eefb87941b 100644
--- a/apps/web/playwright/fixtures/embeds.ts
+++ b/apps/web/playwright/fixtures/embeds.ts
@@ -51,7 +51,7 @@ export const createEmbedsFixture = (page: Page) => {
console.log("Using api from namespace-", { calNamespace, api });
}
if (!api) {
- console.log(`namespace "${calNamespace}" not found yet - Trying again`);
+ logger.log(`namespace "${calNamespace}" not found yet - Trying again`);
setTimeout(tryAddingListener, 500);
return;
}
@@ -78,11 +78,11 @@ export const createEmbedsFixture = (page: Page) => {
);
page.on("console", (msg) => {
- console.log(`Browser Console: ${msg.type()}: ${msg.text()}`);
+ logger.log(`Browser Console: ${msg.type()}: ${msg.text()}`);
});
page.on("framenavigated", async (frame) => {
- console.log(`Navigation occurred in frame: ${frame.url()}`);
+ logger.log(`Navigation occurred in frame: ${frame.url()}`);
});
page.on("pageerror", (error) => {
diff --git a/apps/web/playwright/integrations.e2e.ts b/apps/web/playwright/integrations.e2e.ts
index 23622a1ed58859..8c8d89eaa585b1 100644
--- a/apps/web/playwright/integrations.e2e.ts
+++ b/apps/web/playwright/integrations.e2e.ts
@@ -16,7 +16,7 @@ declare let global: {
const requestInterceptor = setupServer(
rest.post("https://api.hubapi.com/oauth/v1/token", (req, res, ctx) => {
- console.log(req.body);
+ logger.log(req.body);
return res(ctx.status(200));
})
);
diff --git a/apps/web/playwright/login.2fa.e2e.ts b/apps/web/playwright/login.2fa.e2e.ts
index e9fa1214341c32..02cd80bbd8a5cf 100644
--- a/apps/web/playwright/login.2fa.e2e.ts
+++ b/apps/web/playwright/login.2fa.e2e.ts
@@ -169,7 +169,7 @@ async function removeOtpInput(page: Page) {
async function fillOtp({ page, secret, noRetry }: { page: Page; secret: string; noRetry?: boolean }) {
let token = authenticator.generate(secret);
if (!noRetry && !totpAuthenticatorCheck(token, secret)) {
- console.log("Token expired, Renerating.");
+ logger.log("Token expired, Renerating.");
// Maybe token was just about to expire, try again just once more
token = authenticator.generate(secret);
}
diff --git a/apps/web/playwright/organization/lib/gotoPathAndExpectRedirectToOrgDomain.ts b/apps/web/playwright/organization/lib/gotoPathAndExpectRedirectToOrgDomain.ts
index bc50d795d78fef..1194f1abc6c697 100644
--- a/apps/web/playwright/organization/lib/gotoPathAndExpectRedirectToOrgDomain.ts
+++ b/apps/web/playwright/organization/lib/gotoPathAndExpectRedirectToOrgDomain.ts
@@ -18,7 +18,7 @@ export async function gotoPathAndExpectRedirectToOrgDomain({
throw new Error("Org slug is not defined");
}
page.goto(path).catch((e) => {
- console.log("Expected navigation error to happen");
+ logger.log("Expected navigation error to happen");
});
const orgSlug = org.slug;
diff --git a/apps/web/scripts/check-missing-translations.ts b/apps/web/scripts/check-missing-translations.ts
index d032b48085b964..f362e638fdf754 100644
--- a/apps/web/scripts/check-missing-translations.ts
+++ b/apps/web/scripts/check-missing-translations.ts
@@ -16,7 +16,7 @@ const missingTranslationLocales: string[] = [];
if (locale === TEMPLATE_LANGUAGE) return;
if (!ALL_LOCALES.includes(locale)) {
missingTranslationLocales.push(locale);
- console.log(`
+ logger.log(`
❌ ${locale} is not found in ${LOCALES_PATH}!
If you want to create a new locale, Please create common.json under ${join(LOCALES_PATH, locale)}.
`);
@@ -44,8 +44,8 @@ const missingTranslationLocales: string[] = [];
});
if (missingTranslationLocales.length) {
- console.log("🌍 The following locales need to be translated: ");
- console.log(` ${missingTranslationLocales.join(", ")}`);
+ logger.log("🌍 The following locales need to be translated: ");
+ logger.log(` ${missingTranslationLocales.join(", ")}`);
} else {
- console.log("💯 All the locales are completely translated!");
+ logger.log("💯 All the locales are completely translated!");
}
diff --git a/apps/web/scripts/ts-check-changed-files.ts b/apps/web/scripts/ts-check-changed-files.ts
index 5cbbef9cf003da..89faced0e5be33 100644
--- a/apps/web/scripts/ts-check-changed-files.ts
+++ b/apps/web/scripts/ts-check-changed-files.ts
@@ -13,14 +13,14 @@ const files = diff
.filter(Boolean)
.filter((file) => file.endsWith(".ts") || file.endsWith(".tsx"));
-console.log("ℹ️ Changed files:");
-console.log(files.map((str) => ` - ${str}`).join("\n"));
+logger.log("ℹ️ Changed files:");
+logger.log(files.map((str) => ` - ${str}`).join("\n"));
try {
- console.log("⏳ Checking type errors..");
+ logger.log("⏳ Checking type errors..");
execSync("yarn tsc --noEmit", {});
- console.log("😻 No errors!");
+ logger.log("😻 No errors!");
} catch (_err) {
const err = _err as Err;
@@ -29,12 +29,12 @@ try {
const filesWithTypeErrors = files.filter((file) => output.includes(file));
if (!filesWithTypeErrors.length) {
- console.log(`🎉 You haven't introduced any new type errors!`);
+ logger.log(`🎉 You haven't introduced any new type errors!`);
process.exit(0);
}
- console.log("❌ ❌ ❌ You seem to have touched files that have type errors ❌ ❌ ❌");
- console.log("🙏 Please inspect the following files:");
- console.log(filesWithTypeErrors.map((str) => ` - ${str}`).join("\n"));
+ logger.log("❌ ❌ ❌ You seem to have touched files that have type errors ❌ ❌ ❌");
+ logger.log("🙏 Please inspect the following files:");
+ logger.log(filesWithTypeErrors.map((str) => ` - ${str}`).join("\n"));
process.exit(1);
}
diff --git a/apps/web/test/lib/getSchedule/futureLimit.timezone.test.ts b/apps/web/test/lib/getSchedule/futureLimit.timezone.test.ts
index 28d5785e8e5061..ac2c836476bc69 100644
--- a/apps/web/test/lib/getSchedule/futureLimit.timezone.test.ts
+++ b/apps/web/test/lib/getSchedule/futureLimit.timezone.test.ts
@@ -497,7 +497,7 @@ describe("getSchedule", () => {
},
});
- console.log({ scheduleForEvent });
+ logger.log({ scheduleForEvent });
expect(scheduleForEvent).toHaveTimeSlots(
// All slots on current day are available
diff --git a/apps/web/test/lib/getSchedule/utils.ts b/apps/web/test/lib/getSchedule/utils.ts
index ccf2505561811f..09add0a5a7f049 100644
--- a/apps/web/test/lib/getSchedule/utils.ts
+++ b/apps/web/test/lib/getSchedule/utils.ts
@@ -11,6 +11,6 @@ export function timeTravelToTheBeginningOfToday({ utcOffsetInHours = 0 }: { utcO
const minutesString = minutes < 10 ? `0${minutes}` : `${minutes}`;
const { dateString: yesterdayDateString } = getDate({ dateIncrement: -1 });
- console.log({ yesterdayDateString, hours, minutes });
+ logger.log({ yesterdayDateString, hours, minutes });
vi.setSystemTime(`${yesterdayDateString}T${hoursString}:${minutesString}:00.000Z`);
}
diff --git a/apps/web/test/lib/next-config.test.ts b/apps/web/test/lib/next-config.test.ts
index 4c02869afd7c90..51103f66625ef3 100644
--- a/apps/web/test/lib/next-config.test.ts
+++ b/apps/web/test/lib/next-config.test.ts
@@ -21,7 +21,7 @@ beforeAll(async () => {
orgUserTypeRouteMatch = match(orgUserTypeRoutePath);
orgUserRouteMatch = match(orgUserRoutePath);
- console.log({
+ logger.log({
regExps: {
orgUserTypeRouteMatch: pathToRegexp(orgUserTypeRoutePath),
orgUserRouteMatch: pathToRegexp(orgUserRoutePath),
diff --git a/apps/web/test/lib/plainTiers.test.ts b/apps/web/test/lib/plainTiers.test.ts
index 21b73f5f4fdf9c..f41a2c92760846 100644
--- a/apps/web/test/lib/plainTiers.test.ts
+++ b/apps/web/test/lib/plainTiers.test.ts
@@ -62,7 +62,7 @@ describe("Plain Integration API", () => {
// Skip all tests if the feature is disabled
if (!IS_PLAIN_CHAT_ENABLED) {
it("skips tests when Plain Chat is disabled", () => {
- console.log("Plain Chat is disabled, skipping tests");
+ logger.log("Plain Chat is disabled, skipping tests");
});
return;
}
diff --git a/example-apps/credential-sync/pages/api/getToken.ts b/example-apps/credential-sync/pages/api/getToken.ts
index 3956a2ecdbed40..529e083f3a756f 100644
--- a/example-apps/credential-sync/pages/api/getToken.ts
+++ b/example-apps/credential-sync/pages/api/getToken.ts
@@ -5,7 +5,7 @@ import { generateGoogleCalendarAccessToken, generateZoomAccessToken } from "../.
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
const secret = req.headers[CALCOM_CREDENTIAL_SYNC_HEADER_NAME];
- console.log("getToken hit");
+ logger.log("getToken hit");
try {
if (!secret) {
return res.status(403).json({ message: "secret header not set" });
diff --git a/packages/app-store-cli/src/build.ts b/packages/app-store-cli/src/build.ts
index 1d9c5d208cc38d..0f6cd23c813d77 100644
--- a/packages/app-store-cli/src/build.ts
+++ b/packages/app-store-cli/src/build.ts
@@ -362,7 +362,7 @@ function generateFiles() {
filesToGenerate.forEach(([fileName, output]) => {
fs.writeFileSync(`${APP_STORE_PATH}/${fileName}`, formatOutput(`${banner}${output.join("\n")}`));
});
- console.log(`Generated ${filesToGenerate.map(([fileName]) => fileName).join(", ")}`);
+ logger.log(`Generated ${filesToGenerate.map(([fileName]) => fileName).join(", ")}`);
}
const debouncedGenerateFiles = debounce(generateFiles);
@@ -373,20 +373,20 @@ if (isInWatchMode) {
.on("addDir", (dirPath) => {
const appName = getAppName(dirPath);
if (appName) {
- console.log(`Added ${appName}`);
+ logger.log(`Added ${appName}`);
debouncedGenerateFiles();
}
})
.on("change", (filePath) => {
if (filePath.endsWith("config.json")) {
- console.log("Config file changed");
+ logger.log("Config file changed");
debouncedGenerateFiles();
}
})
.on("unlinkDir", (dirPath) => {
const appName = getAppName(dirPath);
if (appName) {
- console.log(`Removed ${appName}`);
+ logger.log(`Removed ${appName}`);
debouncedGenerateFiles();
}
});
diff --git a/packages/app-store-cli/src/cli.tsx b/packages/app-store-cli/src/cli.tsx
index 33001ffa1ffec4..9350ce93340624 100644
--- a/packages/app-store-cli/src/cli.tsx
+++ b/packages/app-store-cli/src/cli.tsx
@@ -65,7 +65,7 @@ if (
) {
slug = cli.flags.slug;
if (!slug) {
- console.log("--slug is required");
+ logger.log("--slug is required");
cli.showHelp(0);
}
}
diff --git a/packages/app-store-cli/src/utils/execSync.ts b/packages/app-store-cli/src/utils/execSync.ts
index dce49a2ef6b87d..75fe20d0344c2a 100644
--- a/packages/app-store-cli/src/utils/execSync.ts
+++ b/packages/app-store-cli/src/utils/execSync.ts
@@ -3,23 +3,23 @@ import child_process from "child_process";
const execSync = async (cmd: string) => {
const silent = process.env.DEBUG === "1" ? false : true;
if (!silent) {
- console.log(`${process.cwd()}$: ${cmd}`);
+ logger.log(`${process.cwd()}$: ${cmd}`);
}
const result: string = await new Promise((resolve, reject) => {
child_process.exec(cmd, (err, stdout, stderr) => {
if (err) {
reject(err);
- console.log(err);
+ logger.log(err);
}
if (stderr && !silent) {
- console.log(stderr);
+ logger.log(stderr);
}
resolve(stdout);
});
});
if (!silent) {
- console.log(result.toString());
+ logger.log(result.toString());
}
return cmd;
};
diff --git a/packages/app-store/closecom/lib/CrmService.ts b/packages/app-store/closecom/lib/CrmService.ts
index e2cecde581a907..38005e1fa1341a 100644
--- a/packages/app-store/closecom/lib/CrmService.ts
+++ b/packages/app-store/closecom/lib/CrmService.ts
@@ -203,10 +203,10 @@ export default class CloseComCRMService implements CRM {
}
getAppOptions() {
- console.log("No options implemented");
+ logger.log("No options implemented");
}
async handleAttendeeNoShow() {
- console.log("Not implemented");
+ logger.log("Not implemented");
}
}
diff --git a/packages/app-store/googlecalendar/lib/__tests__/CalendarService.auth.test.ts b/packages/app-store/googlecalendar/lib/__tests__/CalendarService.auth.test.ts
index 31af2e8eed246e..bdeb8f79da1f55 100644
--- a/packages/app-store/googlecalendar/lib/__tests__/CalendarService.auth.test.ts
+++ b/packages/app-store/googlecalendar/lib/__tests__/CalendarService.auth.test.ts
@@ -139,7 +139,7 @@ describe("GoogleCalendarService credential handling", () => {
mockSuccessfulCalendarListFetch();
await expectNoCredentialsInDb();
- console.log("TESTS: First instance of CalendarService");
+ logger.log("TESTS: First instance of CalendarService");
const calendarService1 = new CalendarService({
...credentialWithDelegation,
});
@@ -159,7 +159,7 @@ describe("GoogleCalendarService credential handling", () => {
},
});
expect(existingCredential).toBeDefined();
- console.log("TESTS: Second instance of CalendarService");
+ logger.log("TESTS: Second instance of CalendarService");
createMockJWTInstance({
authorizeError: {
response: {
diff --git a/packages/app-store/googlecalendar/lib/__tests__/CalendarService.test.ts b/packages/app-store/googlecalendar/lib/__tests__/CalendarService.test.ts
index e49bdcb72f5ea3..76afa6da40d024 100644
--- a/packages/app-store/googlecalendar/lib/__tests__/CalendarService.test.ts
+++ b/packages/app-store/googlecalendar/lib/__tests__/CalendarService.test.ts
@@ -427,7 +427,7 @@ describe("Calendar Cache", () => {
expect(calendarCachesBefore).toHaveLength(0);
await calendarService.fetchAvailabilityAndSetCache(selectedCalendars);
const calendarCachesAfter = await prismock.calendarCache.findMany();
- console.log({ calendarCachesAfter });
+ logger.log({ calendarCachesAfter });
expect(calendarCachesAfter).toHaveLength(1);
const datesForWhichCachedAvailabilityIsUsed = [
{
@@ -446,7 +446,7 @@ describe("Calendar Cache", () => {
expect(result).toEqual(mockedBusyTimes);
}
} catch (error) {
- console.log({ error });
+ logger.log({ error });
throw "Looks like cache was not used";
}
diff --git a/packages/app-store/hubspot/lib/CrmService.ts b/packages/app-store/hubspot/lib/CrmService.ts
index 33d7713f4df892..b41f80e133aaf2 100644
--- a/packages/app-store/hubspot/lib/CrmService.ts
+++ b/packages/app-store/hubspot/lib/CrmService.ts
@@ -290,10 +290,10 @@ export default class HubspotCalendarService implements CRM {
}
getAppOptions() {
- console.log("No options implemented");
+ logger.log("No options implemented");
}
async handleAttendeeNoShow() {
- console.log("Not implemented");
+ logger.log("Not implemented");
}
}
diff --git a/packages/app-store/intercom/api/configure.ts b/packages/app-store/intercom/api/configure.ts
index f964e254c3955e..830b6a0724ee1f 100644
--- a/packages/app-store/intercom/api/configure.ts
+++ b/packages/app-store/intercom/api/configure.ts
@@ -15,7 +15,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
return res.status(200).json(linkStepResult);
}
const buttonAndInvitationStepResult = await handleButtonAndInvitationStep(req);
- console.log(buttonAndInvitationStepResult);
+ logger.log(buttonAndInvitationStepResult);
if (buttonAndInvitationStepResult) {
return res.status(200).json(buttonAndInvitationStepResult);
}
diff --git a/packages/app-store/mock-payment-app/lib/PaymentService.ts b/packages/app-store/mock-payment-app/lib/PaymentService.ts
index 3d7aa4fec4029c..c2558591447849 100644
--- a/packages/app-store/mock-payment-app/lib/PaymentService.ts
+++ b/packages/app-store/mock-payment-app/lib/PaymentService.ts
@@ -26,7 +26,7 @@ export class PaymentService implements IAbstractPaymentService {
const uid = uuidv4();
- console.log("CREATE payment");
+ logger.log("CREATE payment");
const paymentData = await prisma.payment.create({
data: {
diff --git a/packages/app-store/office365video/lib/VideoApiAdapter.ts b/packages/app-store/office365video/lib/VideoApiAdapter.ts
index 33eded8338b7ee..8f87eb31903336 100644
--- a/packages/app-store/office365video/lib/VideoApiAdapter.ts
+++ b/packages/app-store/office365video/lib/VideoApiAdapter.ts
@@ -216,7 +216,7 @@ const TeamsVideoApiAdapter = (credential: CredentialForCalendarServiceWithTenant
return Promise.resolve([]);
},
createMeeting: async (event: CalendarEvent): Promise => {
- console.log("=======>createMeeting: ");
+ logger.log("=======>createMeeting: ");
const url = `${await getUserEndpoint()}/onlineMeetings`;
console.log("urllllllllllll: ", url);
diff --git a/packages/app-store/pipedrive-crm/lib/CrmService.ts b/packages/app-store/pipedrive-crm/lib/CrmService.ts
index b9203756f1e10d..3f350aebd1d16c 100644
--- a/packages/app-store/pipedrive-crm/lib/CrmService.ts
+++ b/packages/app-store/pipedrive-crm/lib/CrmService.ts
@@ -232,10 +232,10 @@ export default class PipedriveCrmService implements CRM {
}
getAppOptions() {
- console.log("No options implemented");
+ logger.log("No options implemented");
}
async handleAttendeeNoShow() {
- console.log("Not implemented");
+ logger.log("Not implemented");
}
}
diff --git a/packages/app-store/salesforce/lib/__tests__/salesforceMock.ts b/packages/app-store/salesforce/lib/__tests__/salesforceMock.ts
index 766c861b022493..ed4a2872cf79ab 100644
--- a/packages/app-store/salesforce/lib/__tests__/salesforceMock.ts
+++ b/packages/app-store/salesforce/lib/__tests__/salesforceMock.ts
@@ -50,7 +50,7 @@ export const createSalesforceMock = () => {
const query = composeQuery(parsedQuery);
// Simple SOQL parser
- console.log({ query });
+ logger.log({ query });
const fromMatch = query.match(/FROM\s+(\w+)/i);
const whereMatch = query.match(/WHERE\s+(.+?)(?:\s+LIMIT|\s+ORDER|\s*$)/i);
const limitMatch = query.match(/LIMIT\s+(\d+)/i);
@@ -83,7 +83,7 @@ export const createSalesforceMock = () => {
return { records: [] };
}
- console.log({ whereClause });
+ logger.log({ whereClause });
// Apply where clause filtering (basic implementation)
if (whereClause) {
if (whereClause.includes("Email =")) {
diff --git a/packages/app-store/tests/__mocks__/OAuthManager.ts b/packages/app-store/tests/__mocks__/OAuthManager.ts
index b7c536324f5941..4c3ea58671cb48 100644
--- a/packages/app-store/tests/__mocks__/OAuthManager.ts
+++ b/packages/app-store/tests/__mocks__/OAuthManager.ts
@@ -39,10 +39,10 @@ const defaultMockOAuthManager = vi.fn().mockImplementation(() => {
}),
request: vi.fn().mockImplementation((fn) => {
if (useFullMockOAuthManagerRequest) {
- console.log("OAuthManager.request full mock being used");
+ logger.log("OAuthManager.request full mock being used");
return oAuthManagerRequestFullMock(fn);
}
- console.log("OAuthManager.request default mock being used");
+ logger.log("OAuthManager.request default mock being used");
return {
json: {
calendars: [],
diff --git a/packages/app-store/zoho-bigin/lib/CrmService.ts b/packages/app-store/zoho-bigin/lib/CrmService.ts
index 9bb099c8c5eab8..873fcf2969fd67 100644
--- a/packages/app-store/zoho-bigin/lib/CrmService.ts
+++ b/packages/app-store/zoho-bigin/lib/CrmService.ts
@@ -291,11 +291,11 @@ export default class BiginCrmService implements CRM {
}
getAppOptions() {
- console.log("No options implemented");
+ logger.log("No options implemented");
}
async handleAttendeeNoShow() {
- console.log("Not implemented");
+ logger.log("Not implemented");
}
}
diff --git a/packages/app-store/zohocrm/lib/CrmService.ts b/packages/app-store/zohocrm/lib/CrmService.ts
index eef208addd88c6..021ca7bbb8a142 100644
--- a/packages/app-store/zohocrm/lib/CrmService.ts
+++ b/packages/app-store/zohocrm/lib/CrmService.ts
@@ -291,10 +291,10 @@ export default class ZohoCrmCrmService implements CRM {
}
getAppOptions() {
- console.log("No options implemented");
+ logger.log("No options implemented");
}
async handleAttendeeNoShow() {
- console.log("Not implemented");
+ logger.log("Not implemented");
}
}
diff --git a/packages/config/theme/generateColor.ts b/packages/config/theme/generateColor.ts
index 59c1b8ecbc610a..f28ebecd8fb7fd 100644
--- a/packages/config/theme/generateColor.ts
+++ b/packages/config/theme/generateColor.ts
@@ -38,7 +38,7 @@ const hexToHSL = (hex: string): HSL => {
HSL.l = Math.round(l * 100);
return HSL;
} catch (error) {
- console.log(hex);
+ logger.log(hex);
return { h: 0, s: 0, l: 0 };
}
};
diff --git a/packages/emails/templates/_base-email.ts b/packages/emails/templates/_base-email.ts
index 4a7c10d0ba932d..f478cc321b9d74 100644
--- a/packages/emails/templates/_base-email.ts
+++ b/packages/emails/templates/_base-email.ts
@@ -41,9 +41,7 @@ export default class BaseEmail {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
//@ts-expect-error
setTestEmail(await this.getNodeMailerPayload());
- console.log(
- "Skipped Sending Email as process.env.NEXT_PUBLIC_UNIT_TESTS is set. Emails are available in globalThis.testEmails"
- );
+ logger.log("Skipped Sending Email as process.env.NEXT_PUBLIC_UNIT_TESTS is set. Emails are available in globalThis.testEmails");
return new Promise((r) => r("Skipped sendEmail for Unit Tests"));
}
@@ -53,7 +51,7 @@ export default class BaseEmail {
const to = "to" in payload ? (payload.to as string) : "";
if (isSmsCalEmail(to)) {
- console.log(`Skipped Sending Email to faux email: ${to}`);
+ logger.log(`Skipped Sending Email to faux email: ${to}`);
return new Promise((r) => r(`Skipped Sending Email to faux email: ${to}`));
}
diff --git a/packages/embeds/embed-core/playwright/tests/preview.e2e.ts b/packages/embeds/embed-core/playwright/tests/preview.e2e.ts
index 585e5f26ae11a2..6d1a2728e60ec0 100644
--- a/packages/embeds/embed-core/playwright/tests/preview.e2e.ts
+++ b/packages/embeds/embed-core/playwright/tests/preview.e2e.ts
@@ -35,7 +35,7 @@ test.describe("Preview", () => {
const failedRequestUrl = await new Promise((resolve) =>
page.on("requestfailed", (request) => {
- console.log("request failed");
+ logger.log("request failed");
resolve(request.url());
})
);
diff --git a/packages/embeds/embed-core/src/__tests__/embed-iframe.test.ts b/packages/embeds/embed-core/src/__tests__/embed-iframe.test.ts
index 87dc657b60db93..62b20c587e6a56 100644
--- a/packages/embeds/embed-core/src/__tests__/embed-iframe.test.ts
+++ b/packages/embeds/embed-core/src/__tests__/embed-iframe.test.ts
@@ -47,7 +47,7 @@ describe("embedStore.router.ensureQueryParamsInUrl", () => {
vi.useFakeTimers();
// Mock requestAnimationFrame and cancelAnimationFrame
window.requestAnimationFrame = vi.fn((callback: FrameRequestCallback) => {
- console.log("mockRequestAnimationFrame called");
+ logger.log("mockRequestAnimationFrame called");
const timeoutId = setTimeout(() => {
callback(performance.now());
}, 100) as unknown as number;
diff --git a/packages/embeds/embed-core/src/embed.test.ts b/packages/embeds/embed-core/src/embed.test.ts
index 0df46862845d0a..43580b129443a7 100644
--- a/packages/embeds/embed-core/src/embed.test.ts
+++ b/packages/embeds/embed-core/src/embed.test.ts
@@ -78,7 +78,7 @@ function compareUrlSearchParams(actual: URLSearchParams, expected: URLSearchPara
const expectedObj = Object.fromEntries(expected.entries());
if (JSON.stringify(actualObj) !== JSON.stringify(expectedObj)) {
- console.log({
+ logger.log({
actual: actualObj,
expected: expectedObj,
});
diff --git a/packages/embeds/embed-react/inline.tsx b/packages/embeds/embed-react/inline.tsx
index c3780fbd7ec585..33f85e081a5bfb 100644
--- a/packages/embeds/embed-react/inline.tsx
+++ b/packages/embeds/embed-react/inline.tsx
@@ -21,7 +21,7 @@ function App() {
setTimeout(setLoaded.bind(true), 1000);
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const callback = (event: any) => {
- console.log(event.detail);
+ logger.log(event.detail);
};
api.then((api) => {
api("on", {
diff --git a/packages/features/Segment.tsx b/packages/features/Segment.tsx
index f8260e694efcfe..a1001a201f50f4 100644
--- a/packages/features/Segment.tsx
+++ b/packages/features/Segment.tsx
@@ -193,7 +193,7 @@ export function Segment({
const { t } = useLocale();
if (isPending) return Loading...;
if (!attributes) {
- console.log("Error fetching attributes");
+ logger.log("Error fetching attributes");
return {t("something_went_wrong")};
}
diff --git a/packages/features/auth/signup/utils/prefillAvatar.ts b/packages/features/auth/signup/utils/prefillAvatar.ts
index 628c53a788fe4a..52093065ce3482 100644
--- a/packages/features/auth/signup/utils/prefillAvatar.ts
+++ b/packages/features/auth/signup/utils/prefillAvatar.ts
@@ -23,7 +23,7 @@ async function downloadImageDataFromUrl(url: string) {
return base64Image;
} catch (error) {
- console.log(error);
+ logger.log(error);
return null;
}
}
diff --git a/packages/features/bookings/lib/getAllCredentialsForUsersOnEvent/getAllCredentials.test.ts b/packages/features/bookings/lib/getAllCredentialsForUsersOnEvent/getAllCredentials.test.ts
index eae3f0c4e1562a..8276a14af12201 100644
--- a/packages/features/bookings/lib/getAllCredentialsForUsersOnEvent/getAllCredentials.test.ts
+++ b/packages/features/bookings/lib/getAllCredentialsForUsersOnEvent/getAllCredentials.test.ts
@@ -263,7 +263,7 @@ describe("getAllCredentialsIncludeServiceAccountKey", () => {
},
]);
- console.log(testEventType);
+ logger.log(testEventType);
const credentials = await getAllCredentialsIncludeServiceAccountKey(
{
@@ -580,7 +580,7 @@ describe("getAllCredentialsIncludeServiceAccountKey", () => {
},
]);
- console.log(testEventType);
+ logger.log(testEventType);
const credentials = await getAllCredentialsIncludeServiceAccountKey(
{
diff --git a/packages/features/ee/api-keys/components/ApiKeyDialogForm.tsx b/packages/features/ee/api-keys/components/ApiKeyDialogForm.tsx
index 1cc97cdcd55b9b..78322fd5d3cc86 100644
--- a/packages/features/ee/api-keys/components/ApiKeyDialogForm.tsx
+++ b/packages/features/ee/api-keys/components/ApiKeyDialogForm.tsx
@@ -126,7 +126,7 @@ export default function ApiKeyDialogForm({
form={form}
handleSubmit={async (event) => {
if (defaultValues) {
- console.log("Name changed");
+ logger.log("Name changed");
await updateApiKeyMutation.mutate({ id: defaultValues.id, note: event.note });
} else {
const apiKey = await utils.client.viewer.apiKeys.create.mutate(event);
diff --git a/packages/features/ee/api-keys/components/ApiKeyListItem.tsx b/packages/features/ee/api-keys/components/ApiKeyListItem.tsx
index 3f7d27f329c9b5..371910f5dcb379 100644
--- a/packages/features/ee/api-keys/components/ApiKeyListItem.tsx
+++ b/packages/features/ee/api-keys/components/ApiKeyListItem.tsx
@@ -39,7 +39,7 @@ const ApiKeyListItem = ({
showToast(t("api_key_deleted"), "success");
},
onError(err) {
- console.log(err);
+ logger.log(err);
showToast(t("something_went_wrong"), "error");
},
});
diff --git a/packages/features/ee/workflows/api/scheduleSMSReminders.ts b/packages/features/ee/workflows/api/scheduleSMSReminders.ts
index 21e4de3e00cf7a..d23d3c76605ac9 100644
--- a/packages/features/ee/workflows/api/scheduleSMSReminders.ts
+++ b/packages/features/ee/workflows/api/scheduleSMSReminders.ts
@@ -239,7 +239,7 @@ export async function handler(req: NextRequest) {
retryCount: reminder.retryCount + 1,
},
});
- console.log(`Error scheduling SMS with error ${error}`);
+ logger.log(`Error scheduling SMS with error ${error}`);
}
}
diff --git a/packages/features/ee/workflows/api/scheduleWhatsappReminders.ts b/packages/features/ee/workflows/api/scheduleWhatsappReminders.ts
index 7ff20e842b9f7f..c7178ec0d7c4f6 100644
--- a/packages/features/ee/workflows/api/scheduleWhatsappReminders.ts
+++ b/packages/features/ee/workflows/api/scheduleWhatsappReminders.ts
@@ -159,7 +159,7 @@ export async function handler(req: NextRequest) {
}
}
} catch (error) {
- console.log(`Error scheduling WHATSAPP with error ${error}`);
+ logger.log(`Error scheduling WHATSAPP with error ${error}`);
}
}
diff --git a/packages/features/ee/workflows/lib/reminders/providers/sendgridProvider.ts b/packages/features/ee/workflows/lib/reminders/providers/sendgridProvider.ts
index b56b738b7e78e2..d8f68c62f7738a 100644
--- a/packages/features/ee/workflows/lib/reminders/providers/sendgridProvider.ts
+++ b/packages/features/ee/workflows/lib/reminders/providers/sendgridProvider.ts
@@ -55,9 +55,7 @@ export function sendSendgridMail(
html: mailData.html || "",
});
}
- console.log(
- "Skipped Sending Email as process.env.NEXT_PUBLIC_IS_E2E or process.env.INTEGRATION_TEST_MODE is set. Emails are available in globalThis.testEmails"
- );
+ logger.log("Skipped Sending Email as process.env.NEXT_PUBLIC_IS_E2E or process.env.INTEGRATION_TEST_MODE is set. Emails are available in globalThis.testEmails");
return new Promise((r) => r("Skipped sendEmail for Unit Tests"));
}
diff --git a/packages/features/ee/workflows/lib/reminders/providers/twilioProvider.ts b/packages/features/ee/workflows/lib/reminders/providers/twilioProvider.ts
index e82fe74eba44b8..d207513d0f2674 100644
--- a/packages/features/ee/workflows/lib/reminders/providers/twilioProvider.ts
+++ b/packages/features/ee/workflows/lib/reminders/providers/twilioProvider.ts
@@ -68,9 +68,7 @@ export const sendSMS = async ({
from: isWhatsapp ? getDefaultSender(isWhatsapp) : sender || getDefaultSender(),
message: body,
});
- console.log(
- "Skipped sending SMS because process.env.NEXT_PUBLIC_IS_E2E or process.env.INTEGRATION_TEST_MODE is set. SMS are available in globalThis.testSMS"
- );
+ logger.log("Skipped sending SMS because process.env.NEXT_PUBLIC_IS_E2E or process.env.INTEGRATION_TEST_MODE is set. SMS are available in globalThis.testSMS");
return;
}
@@ -156,9 +154,7 @@ export const scheduleSMS = async ({
from: isWhatsapp ? getDefaultSender(isWhatsapp) : sender || getDefaultSender(),
message: body,
});
- console.log(
- "Skipped sending SMS because process.env.NEXT_PUBLIC_IS_E2E or process.env.INTEGRATION_TEST_MODE is set. SMS are available in globalThis.testSMS"
- );
+ logger.log("Skipped sending SMS because process.env.NEXT_PUBLIC_IS_E2E or process.env.INTEGRATION_TEST_MODE is set. SMS are available in globalThis.testSMS");
return { sid: uuidv4() };
}
diff --git a/packages/features/ee/workflows/lib/reminders/whatsappReminderManager.ts b/packages/features/ee/workflows/lib/reminders/whatsappReminderManager.ts
index 9ce9d4203e230f..548917acc90c06 100644
--- a/packages/features/ee/workflows/lib/reminders/whatsappReminderManager.ts
+++ b/packages/features/ee/workflows/lib/reminders/whatsappReminderManager.ts
@@ -200,7 +200,7 @@ export const scheduleWhatsappReminder = async (args: ScheduleTextReminderArgs) =
: undefined,
});
} catch (error) {
- console.log(`Error sending WHATSAPP with error ${error}`);
+ logger.log(`Error sending WHATSAPP with error ${error}`);
}
} else if (
(triggerEvent === WorkflowTriggerEvents.BEFORE_EVENT ||
@@ -250,7 +250,7 @@ export const scheduleWhatsappReminder = async (args: ScheduleTextReminderArgs) =
});
}
} catch (error) {
- console.log(`Error scheduling WHATSAPP with error ${error}`);
+ logger.log(`Error scheduling WHATSAPP with error ${error}`);
}
} else if (scheduledDate.isAfter(currentDate.add(2, "hour"))) {
// Write to DB and send to CRON if scheduled reminder date is past 2 hours from now
diff --git a/packages/features/eventtypes/components/__tests__/AddMembersWithSwitch.test.tsx b/packages/features/eventtypes/components/__tests__/AddMembersWithSwitch.test.tsx
index 80dcb19032c87a..9480a742979c1d 100644
--- a/packages/features/eventtypes/components/__tests__/AddMembersWithSwitch.test.tsx
+++ b/packages/features/eventtypes/components/__tests__/AddMembersWithSwitch.test.tsx
@@ -69,7 +69,7 @@ const renderComponent = ({
defaultValues: formDefaultValues,
});
const [assignAllTeamMembers, setAssignAllTeamMembers] = React.useState(false);
- console.log(methods.getValues());
+ logger.log(methods.getValues());
return (
{React.cloneElement(children as React.ReactElement, {
diff --git a/packages/features/tasker/tasks/sendEmail.ts b/packages/features/tasker/tasks/sendEmail.ts
index 1634411d47030b..091040c8bc7569 100644
--- a/packages/features/tasker/tasks/sendEmail.ts
+++ b/packages/features/tasker/tasks/sendEmail.ts
@@ -11,7 +11,7 @@ const sendEmailPayloadSchema = z.object({
export async function sendEmail(payload: string): Promise {
try {
const parsedPayload = sendEmailPayloadSchema.parse(JSON.parse(payload));
- console.log(parsedPayload);
+ logger.log(parsedPayload);
const emails = await import("@calcom/emails");
const email = emails[parsedPayload.template as keyof typeof emails];
if (!email) throw new Error("Invalid email template");
diff --git a/packages/lib/crmManager/crmManager.test.ts b/packages/lib/crmManager/crmManager.test.ts
index 7e143fafffb3b7..c4ee0b2c4754ed 100644
--- a/packages/lib/crmManager/crmManager.test.ts
+++ b/packages/lib/crmManager/crmManager.test.ts
@@ -92,7 +92,7 @@ describe.skip("crmManager tests", () => {
],
});
- console.log(mockedCrmApp);
+ logger.log(mockedCrmApp);
});
});
});
diff --git a/packages/lib/crmManager/crmManager.ts b/packages/lib/crmManager/crmManager.ts
index 9bb6bcfbbf3042..df0abe3dd42a8c 100644
--- a/packages/lib/crmManager/crmManager.ts
+++ b/packages/lib/crmManager/crmManager.ts
@@ -20,7 +20,7 @@ export default class CrmManager {
this.crmService = crmService;
if (!this.crmService) {
- console.log("💀 Error initializing CRM service");
+ logger.log("💀 Error initializing CRM service");
log.error("CRM service initialization failed");
}
diff --git a/packages/lib/getConnectedDestinationCalendars.ts b/packages/lib/getConnectedDestinationCalendars.ts
index 28755b599ab559..2cb76de25c2e09 100644
--- a/packages/lib/getConnectedDestinationCalendars.ts
+++ b/packages/lib/getConnectedDestinationCalendars.ts
@@ -228,11 +228,9 @@ async function ensureSelectedCalendarIsInDb({
};
eventTypeId: number | null;
}) {
- console.log(
- `Upsert the selectedCalendar record to the DB for user ${user.id} with details ${JSON.stringify(
+ logger.log(`Upsert the selectedCalendar record to the DB for user ${user.id} with details ${JSON.stringify(
selectedCalendar
- )}`
- );
+ )}`);
await SelectedCalendarRepository.createIfNotExists({
userId: user.id,
diff --git a/packages/lib/getIP.ts b/packages/lib/getIP.ts
index 6b26c971ee1e7d..0aa7b2da40eb53 100644
--- a/packages/lib/getIP.ts
+++ b/packages/lib/getIP.ts
@@ -29,7 +29,7 @@ export function isIpInBanlist(request: Request | NextApiRequest) {
const rawBanListJson = process.env.IP_BANLIST || "[]";
const banList = banlistSchema.parse(JSON.parse(rawBanListJson));
if (banList.includes(IP)) {
- console.log(`Found banned IP: ${IP} in IP_BANLIST`);
+ logger.log(`Found banned IP: ${IP} in IP_BANLIST`);
return true;
}
return false;
@@ -39,7 +39,7 @@ export function isIpInBanListString(identifer: string) {
const rawBanListJson = process.env.IP_BANLIST || "[]";
const banList = banlistSchema.parse(JSON.parse(rawBanListJson));
if (banList.includes(identifer)) {
- console.log(`Found banned IP: ${identifer} in IP_BANLIST`);
+ logger.log(`Found banned IP: ${identifer} in IP_BANLIST`);
return true;
}
return false;
diff --git a/packages/lib/perf.ts b/packages/lib/perf.ts
index 905d83ffa39c83..b3b26eb41d70bc 100644
--- a/packages/lib/perf.ts
+++ b/packages/lib/perf.ts
@@ -3,6 +3,6 @@ export const logP = (message: string) => {
return () => {
const end = performance.now();
- console.log(`[PERF]: ${message} took ${end - start}ms`);
+ logger.log(`[PERF]: ${message} took ${end - start}ms`);
};
};
diff --git a/packages/lib/server/repository/__tests__/delegationCredential.test.ts b/packages/lib/server/repository/__tests__/delegationCredential.test.ts
index 3c63a077be18b7..2173e511dca0b7 100644
--- a/packages/lib/server/repository/__tests__/delegationCredential.test.ts
+++ b/packages/lib/server/repository/__tests__/delegationCredential.test.ts
@@ -21,7 +21,7 @@ vi.mock("@calcom/lib/crypto", async (importOriginal) => {
return {
...actual,
symmetricEncrypt: vi.fn((serviceAccountKey) => {
- console.log({ mockEncrypted: serviceAccountKey });
+ logger.log({ mockEncrypted: serviceAccountKey });
return `encrypted(${serviceAccountKey})`;
}),
symmetricDecrypt: vi.fn((serviceAccountKey) => {
diff --git a/packages/lib/slots.test.ts b/packages/lib/slots.test.ts
index 885fdc4eeea412..0f3e878fc14f04 100644
--- a/packages/lib/slots.test.ts
+++ b/packages/lib/slots.test.ts
@@ -394,8 +394,6 @@ describe("Tests the slots function performance", () => {
expect(executionTimeInMs).toBeLessThan(3000); // less than 3 seconds for 2000 date ranges
- console.log(
- `Performance test completed in ${executionTimeInMs}ms with ${result.length} slots generated from ${dateRanges.length} date ranges`
- );
+ logger.log(`Performance test completed in ${executionTimeInMs}ms with ${result.length} slots generated from ${dateRanges.length} date ranges`);
});
});
diff --git a/packages/platform/examples/base/src/pages/_app.tsx b/packages/platform/examples/base/src/pages/_app.tsx
index f28e99ef04993d..5f16a8076b1b77 100644
--- a/packages/platform/examples/base/src/pages/_app.tsx
+++ b/packages/platform/examples/base/src/pages/_app.tsx
@@ -133,7 +133,7 @@ export default function App({ Component, pageProps }: AppProps) {
formId="a63e6fce-899a-404e-8c38-e069710589c5"
formResponsesURLParams={new URLSearchParams({ isBookingDryRun: "true", Territory: "Europe" })}
onDisplayBookerEmbed={() => {
- console.log("render booker embed");
+ logger.log("render booker embed");
}}
bannerUrl="https://i0.wp.com/mahala.co.uk/wp-content/uploads/2014/12/img_banner-thin_mountains.jpg?fit=800%2C258&ssl=1"
bookerCustomClassNames={{
diff --git a/packages/platform/examples/base/src/pages/availability.tsx b/packages/platform/examples/base/src/pages/availability.tsx
index 068e499de971d8..6c72902e9f23b2 100644
--- a/packages/platform/examples/base/src/pages/availability.tsx
+++ b/packages/platform/examples/base/src/pages/availability.tsx
@@ -19,16 +19,16 @@ export default function Availability(props: { calUsername: string; calEmail: str
hiddenSwitchClassname: { thumb: "bg-red-500" },
}}
onUpdateSuccess={() => {
- console.log("Updated successfully");
+ logger.log("Updated successfully");
}}
onUpdateError={() => {
- console.log("update error");
+ logger.log("update error");
}}
onDeleteError={() => {
- console.log("delete error");
+ logger.log("delete error");
}}
onDeleteSuccess={() => {
- console.log("Deleted successfully");
+ logger.log("Deleted successfully");
}}
/>
diff --git a/packages/platform/examples/base/src/pages/event-types.tsx b/packages/platform/examples/base/src/pages/event-types.tsx
index 894364fb6fbf4b..9bf6ec82622926 100644
--- a/packages/platform/examples/base/src/pages/event-types.tsx
+++ b/packages/platform/examples/base/src/pages/event-types.tsx
@@ -730,7 +730,7 @@ export default function Bookings(props: { calUsername: string; calEmail: string
refetch();
}}
onError={(eventType, error) => {
- console.log(eventType);
+ logger.log(eventType);
console.error(error);
}}
onDeleteSuccess={() => {
@@ -772,7 +772,7 @@ export default function Bookings(props: { calUsername: string; calEmail: string
}}
teamId={teams?.[0]?.id}
onCancel={() => {
- console.log("cancel team event type creation");
+ logger.log("cancel team event type creation");
}}
onSuccess={() => {
refetchTeamEvents();
diff --git a/packages/platform/examples/base/src/pages/index.tsx b/packages/platform/examples/base/src/pages/index.tsx
index c30f972654e505..393393ccba0751 100644
--- a/packages/platform/examples/base/src/pages/index.tsx
+++ b/packages/platform/examples/base/src/pages/index.tsx
@@ -37,7 +37,7 @@ export default function Home(props: { calUsername: string; calEmail: string }) {
className="h-[40px] bg-gradient-to-r from-[#E94057] via-[#E94057] to-[#E94057] text-center text-base font-semibold text-transparent text-white hover:bg-orange-700"
errorRedir="http://localhost:4321/availability"
onCheckSuccess={() => {
- console.log("stripe account connected successfully".toLocaleUpperCase());
+ logger.log("stripe account connected successfully".toLocaleUpperCase());
}}
/>
diff --git a/packages/prisma/auto-migrations.ts b/packages/prisma/auto-migrations.ts
index 2286f5d8013fef..0c07f37eda5db1 100644
--- a/packages/prisma/auto-migrations.ts
+++ b/packages/prisma/auto-migrations.ts
@@ -36,7 +36,7 @@ async function main(): Promise {
...process.env,
},
});
- console.log(stdout);
+ logger.log(stdout);
console.error(stderr);
}
diff --git a/packages/prisma/delete-app.ts b/packages/prisma/delete-app.ts
index b510a37c775628..ea46a5a9a33b17 100644
--- a/packages/prisma/delete-app.ts
+++ b/packages/prisma/delete-app.ts
@@ -15,10 +15,10 @@ async function main() {
appId: appId,
},
});
- console.log(`Deleted app from DB: '${appId}'`);
+ logger.log(`Deleted app from DB: '${appId}'`);
} catch (e) {
if (e.code === "P2025") {
- console.log(`App '${appId}' already deleted from DB`);
+ logger.log(`App '${appId}' already deleted from DB`);
return;
}
throw e;
diff --git a/packages/prisma/extensions/usage-tracking.ts b/packages/prisma/extensions/usage-tracking.ts
index e21ee60fae6ab6..6f88316c7b088c 100644
--- a/packages/prisma/extensions/usage-tracking.ts
+++ b/packages/prisma/extensions/usage-tracking.ts
@@ -11,7 +11,7 @@ async function incrementUsage(prismaClient: PrismaClientWithoutExtensions, event
const licenseKeyService = await LicenseKeySingleton.getInstance(deploymentRepo);
await licenseKeyService.incrementUsage(event);
} catch (e) {
- console.log(e);
+ logger.log(e);
}
}
diff --git a/packages/prisma/seed-app-store.ts b/packages/prisma/seed-app-store.ts
index db4db4256ea973..c6792e6be9d3c9 100644
--- a/packages/prisma/seed-app-store.ts
+++ b/packages/prisma/seed-app-store.ts
@@ -24,7 +24,7 @@ async function seedAppData() {
},
});
if (form) {
- console.log(`Skipping Routing Form - Form Seed, "Seeded Form - Pro" already exists`);
+ logger.log(`Skipping Routing Form - Form Seed, "Seeded Form - Pro" already exists`);
return;
}
@@ -35,7 +35,7 @@ async function seedAppData() {
});
if (!proUser) {
- console.log(`Skipping Routing Form - Seeding - Pro User not found`);
+ logger.log(`Skipping Routing Form - Seeding - Pro User not found`);
return;
}
@@ -214,7 +214,7 @@ async function createApp(
await prisma.app.create({
data,
});
- console.log(`📲 Created ${isTemplate ? "template" : "app"}: '${slug}'`);
+ logger.log(`📲 Created ${isTemplate ? "template" : "app"}: '${slug}'`);
} else {
// We know that the app exists, so either it would have the same slug or dirName
// Because update query can't have both slug and dirName, try to find the app to update by slug and dirName one by one
@@ -227,7 +227,7 @@ async function createApp(
where: { dirName: foundApp.dirName },
data,
});
- console.log(`📲 Updated ${isTemplate ? "template" : "app"}: '${slug}'`);
+ logger.log(`📲 Updated ${isTemplate ? "template" : "app"}: '${slug}'`);
}
await prisma.credential.updateMany({
diff --git a/packages/prisma/seed-insights.ts b/packages/prisma/seed-insights.ts
index a81088736d1657..ee0fb7c18571ef 100644
--- a/packages/prisma/seed-insights.ts
+++ b/packages/prisma/seed-insights.ts
@@ -75,8 +75,8 @@ const shuffle = (
}
if (booking.userId === undefined || booking.userId === null) {
- console.log({ randomEvent, usersIdsToPick });
- console.log("This should not happen");
+ logger.log({ randomEvent, usersIdsToPick });
+ logger.log("This should not happen");
}
booking.rating = Math.floor(Math.random() * 5) + 1; // Generates a random rating from 1 to 5
@@ -439,7 +439,7 @@ async function createPerformanceData() {
if (createExtraMembers) {
if (insightsTeam === null) {
- console.log("This should not happen");
+ logger.log("This should not happen");
throw new Error("Insights team id is undefined or null");
}
diff --git a/packages/prisma/seed-utils.ts b/packages/prisma/seed-utils.ts
index d04f99696e2935..13279a2f26bc30 100644
--- a/packages/prisma/seed-utils.ts
+++ b/packages/prisma/seed-utils.ts
@@ -82,9 +82,7 @@ export async function createUserAndEventType({
},
});
- console.log(
- `👤 Upserted '${user.username}' with email "${user.email}" & password "${user.password}". Booking page 👉 ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}`
- );
+ logger.log(`👤 Upserted '${user.username}' with email "${user.email}" & password "${user.password}". Booking page 👉 ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}`);
for (const eventTypeInput of eventTypes) {
const { _bookings, _numBookings, ...eventTypeData } = eventTypeInput;
@@ -125,18 +123,14 @@ export async function createUserAndEventType({
});
if (eventType) {
- console.log(
- `\t📆 Event type ${eventTypeData.slug} already seems seeded - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}/${eventTypeData.slug}`
- );
+ logger.log(`\t📆 Event type ${eventTypeData.slug} already seems seeded - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}/${eventTypeData.slug}`);
continue;
}
const { id } = await prisma.eventType.create({
data: eventTypeData,
});
- console.log(
- `\t📆 Event type ${eventTypeData.slug} with id ${id}, length ${eventTypeData.length}min - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}/${eventTypeData.slug}`
- );
+ logger.log(`\t📆 Event type ${eventTypeData.slug} with id ${id}, length ${eventTypeData.length}min - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}/${eventTypeData.slug}`);
for (const bookingInput of bookingFields) {
await prisma.booking.create({
@@ -163,11 +157,9 @@ export async function createUserAndEventType({
iCalUID: "",
},
});
- console.log(
- `\t\t☎️ Created booking ${bookingInput.title} at ${new Date(
+ logger.log(`\t\t☎️ Created booking ${bookingInput.title} at ${new Date(
bookingInput.startTime
- ).toLocaleDateString()}`
- );
+ ).toLocaleDateString()}`);
}
}
console.log("👤 User with it's event-types and bookings created", theUser.email);
@@ -182,7 +174,7 @@ export async function createUserAndEventType({
},
});
- console.log(`🔑 ${credential.type} credentials created for ${theUser.email}`);
+ logger.log(`🔑 ${credential.type} credentials created for ${theUser.email}`);
}
}
}
@@ -222,7 +214,7 @@ export async function createTeamAndAddUsers(
});
} catch (_err) {
if (_err instanceof Error && _err.message.indexOf("Unique constraint failed on the fields") !== -1) {
- console.log(`Team '${team.name}' already exists, skipping.`);
+ logger.log(`Team '${team.name}' already exists, skipping.`);
return;
}
throw _err;
@@ -234,9 +226,7 @@ export async function createTeamAndAddUsers(
return;
}
- console.log(
- `🏢 Created team '${teamInput.name}' - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/team/${team.slug}`
- );
+ logger.log(`🏢 Created team '${teamInput.name}' - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/team/${team.slug}`);
for (const eventType of team.eventTypes) {
await prisma.eventType.update({
@@ -262,7 +252,7 @@ export async function createTeamAndAddUsers(
accepted: true,
},
});
- console.log(`\t👤 Added '${teamInput.name}' membership for '${username}' with role '${role}'`);
+ logger.log(`\t👤 Added '${teamInput.name}' membership for '${username}' with role '${role}'`);
}
return team;
@@ -305,7 +295,7 @@ export async function seedAttributes(teamId: number) {
});
if (existingAttributes.length > 0) {
- console.log(`Skipping attributes seed, attributes already exist`);
+ logger.log(`Skipping attributes seed, attributes already exist`);
return;
}
@@ -320,7 +310,7 @@ export async function seedAttributes(teamId: number) {
},
});
- console.log(`🎯 Creating attributes for team ${teamId}`);
+ logger.log(`🎯 Creating attributes for team ${teamId}`);
const attributeRaw: { id: string; options: { id: string; value: string }[] }[] = [];
@@ -354,7 +344,7 @@ export async function seedAttributes(teamId: number) {
})),
});
- console.log(`\t📝 Created attribute: ${attr.name}`);
+ logger.log(`\t📝 Created attribute: ${attr.name}`);
// Assign random values/options to members
for (const member of memberships) {
@@ -419,7 +409,7 @@ export async function seedAttributes(teamId: number) {
}
}
- console.log(`\t✅ Assigned ${attr.name} values to ${memberships.length} members`);
+ logger.log(`\t✅ Assigned ${attr.name} values to ${memberships.length} members`);
}
return attributeRaw;
}
@@ -469,7 +459,7 @@ export async function seedRoutingForms(
},
});
if (form) {
- console.log(`Skipping Routing Form - Form Seed, ${seededForm.name} already exists`);
+ logger.log(`Skipping Routing Form - Form Seed, ${seededForm.name} already exists`);
return;
}
@@ -689,7 +679,7 @@ export async function seedRoutingFormResponses(
});
if (bookings.length === 0) {
- console.log("No bookings found for team - skipping routing form responses");
+ logger.log("No bookings found for team - skipping routing form responses");
return;
}
@@ -784,5 +774,5 @@ export async function seedRoutingFormResponses(
});
}
- console.log(`Created ${bookings.length} routing form responses`);
+ logger.log(`Created ${bookings.length} routing form responses`);
}
diff --git a/packages/prisma/seed.ts b/packages/prisma/seed.ts
index db6c038b80bdc9..466b8b5e2e6524 100644
--- a/packages/prisma/seed.ts
+++ b/packages/prisma/seed.ts
@@ -112,7 +112,7 @@ const createTeam = async (team: Prisma.TeamCreateInput) => {
});
} catch (_err) {
if (_err instanceof Error && _err.message.indexOf("Unique constraint failed on the fields") !== -1) {
- console.log(`Team '${team.name}' already exists, skipping.`);
+ logger.log(`Team '${team.name}' already exists, skipping.`);
return;
}
throw _err;
@@ -160,9 +160,7 @@ async function createPlatformAndSetupUser({
const platformUser = await setupPlatformUser(user);
- console.log(
- `👤 Upserted '${user.username}' with email "${user.email}" & password "${user.password}". Booking page 👉 ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}`
- );
+ logger.log(`👤 Upserted '${user.username}' with email "${user.email}" & password "${user.password}". Booking page 👉 ${process.env.NEXT_PUBLIC_WEBAPP_URL}/${user.username}`);
const { username } = platformUser;
@@ -197,7 +195,7 @@ async function createPlatformAndSetupUser({
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiQWNtZSAiLCJwZXJtaXNzaW9ucyI6MTAyMywicmVkaXJlY3RVcmlzIjpbImh0dHA6Ly9sb2NhbGhvc3Q6NDMyMSJdLCJib29raW5nUmVkaXJlY3RVcmkiOiIiLCJib29raW5nQ2FuY2VsUmVkaXJlY3RVcmkiOiIiLCJib29raW5nUmVzY2hlZHVsZVJlZGlyZWN0VXJpIjoiIiwiYXJlRW1haWxzRW5hYmxlZCI6dHJ1ZSwiaWF0IjoxNzE5NTk1ODA4fQ.L5_jSS14fcKLCD_9_DAOgtGd6lUSZlU5CEpCPaPt41I",
},
});
- console.log(`\t👤 Added '${teamInput.name}' membership for '${username}' with role '${membershipRole}'`);
+ logger.log(`\t👤 Added '${teamInput.name}' membership for '${username}' with role '${membershipRole}'`);
}
}
@@ -231,7 +229,7 @@ async function createTeamAndAddUsers(
});
} catch (_err) {
if (_err instanceof Error && _err.message.indexOf("Unique constraint failed on the fields") !== -1) {
- console.log(`Team '${team.name}' already exists, skipping.`);
+ logger.log(`Team '${team.name}' already exists, skipping.`);
return;
}
throw _err;
@@ -243,9 +241,7 @@ async function createTeamAndAddUsers(
return;
}
- console.log(
- `🏢 Created team '${teamInput.name}' - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/team/${team.slug}`
- );
+ logger.log(`🏢 Created team '${teamInput.name}' - ${process.env.NEXT_PUBLIC_WEBAPP_URL}/team/${team.slug}`);
for (const user of users) {
const { role = MembershipRole.OWNER, id, username } = user;
@@ -258,7 +254,7 @@ async function createTeamAndAddUsers(
accepted: true,
},
});
- console.log(`\t👤 Added '${teamInput.name}' membership for '${username}' with role '${role}'`);
+ logger.log(`\t👤 Added '${teamInput.name}' membership for '${username}' with role '${role}'`);
}
return team;
@@ -292,7 +288,7 @@ async function createOrganizationAndAddMembersAndTeams({
email: string;
}[];
}) {
- console.log(`\n🏢 Creating organization "${orgData.name}"`);
+ logger.log(`\n🏢 Creating organization "${orgData.name}"`);
const orgMembersInDb: (User & {
inTeams: { slug: string; role: MembershipRole }[];
orgMembership: Partial;
@@ -356,7 +352,7 @@ async function createOrganizationAndAddMembersAndTeams({
} catch (e) {
if (e instanceof Prisma.PrismaClientKnownRequestError) {
if (e.code === "P2002") {
- console.log(`One of the organization members already exists, skipping the entire seeding`);
+ logger.log(`One of the organization members already exists, skipping the entire seeding`);
return;
}
}
diff --git a/packages/trpc/server/routers/viewer/availability/schedule/getScheduleByEventTypeSlug.handler.ts b/packages/trpc/server/routers/viewer/availability/schedule/getScheduleByEventTypeSlug.handler.ts
index a5c6e43a147b02..73f95769189179 100644
--- a/packages/trpc/server/routers/viewer/availability/schedule/getScheduleByEventTypeSlug.handler.ts
+++ b/packages/trpc/server/routers/viewer/availability/schedule/getScheduleByEventTypeSlug.handler.ts
@@ -55,7 +55,7 @@ export const getScheduleByEventSlugHandler = async ({ ctx, input }: GetOptions)
},
});
} catch (e) {
- console.log(e);
+ logger.log(e);
return {
id: -1,
name: "No schedules found",
diff --git a/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts b/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts
index 28dcb080daa0bd..e842299decdd40 100644
--- a/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts
+++ b/packages/trpc/server/routers/viewer/bookings/addGuests.handler.ts
@@ -169,7 +169,7 @@ export const addGuestsHandler = async ({ ctx, input }: AddGuestsOptions) => {
try {
await sendAddGuestsEmails(evt, guests);
} catch (err) {
- console.log("Error sending AddGuestsEmails");
+ logger.log("Error sending AddGuestsEmails");
}
return { message: "Guests added" };
diff --git a/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts b/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts
index 0e4a6b67b5876c..942d1f4c4c364c 100644
--- a/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts
+++ b/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts
@@ -75,7 +75,7 @@ export const acceptOrLeaveHandler = async ({ ctx, input }: AcceptOrLeaveOptions)
});
}
} catch (e) {
- console.log(e);
+ logger.log(e);
}
}
};
diff --git a/packages/ui/components/form/step/FormStep.tsx b/packages/ui/components/form/step/FormStep.tsx
index 9866880b9e2d71..6f1935ceb3e775 100644
--- a/packages/ui/components/form/step/FormStep.tsx
+++ b/packages/ui/components/form/step/FormStep.tsx
@@ -16,7 +16,7 @@ function FormStep({ currentStep, steps }: Props) {
{[...Array(steps)].map((_, j) => {
- console.log({ j, currentStep });
+ logger.log({ j, currentStep });
return (
scrollableElement.clientHeight;
- console.log({ isElementOverflowing });
+ logger.log({ isElementOverflowing });
setIsOverflowingY(isElementOverflowing);
}
}, []);
diff --git a/playwright.config.ts b/playwright.config.ts
index 86ba209daf7765..164b27eeb88a13 100644
--- a/playwright.config.ts
+++ b/playwright.config.ts
@@ -327,5 +327,5 @@ function ensureAppServerIsReadyToServeEmbed(webServer: { port?: number; url?: st
// Only one of port or url can be specified, so remove port.
delete webServer.port;
webServer.url = `${process.env.NEXT_PUBLIC_WEBAPP_URL}/embed/embed.js`;
- console.log("Ensuring that /embed/embed.js is 200 before starting tests");
+ logger.log("Ensuring that /embed/embed.js is 200 before starting tests");
}