diff --git a/apps/web/modules/bookings/views/bookings-listing-view.tsx b/apps/web/modules/bookings/views/bookings-listing-view.tsx index 625aef1cb1..7333bda725 100644 --- a/apps/web/modules/bookings/views/bookings-listing-view.tsx +++ b/apps/web/modules/bookings/views/bookings-listing-view.tsx @@ -1,8 +1,9 @@ "use client"; import { useAutoAnimate } from "@formkit/auto-animate/react"; -import { Fragment, ReactElement, useState } from "react"; -import { z } from "zod"; +import type { ReactElement } from "react"; +import { Fragment, useState } from "react"; +import type { z } from "zod"; import { WipeMyCalActionButton } from "@calcom/app-store/wipemycalother/components"; import dayjs from "@calcom/dayjs"; @@ -23,7 +24,7 @@ import useMeQuery from "@lib/hooks/useMeQuery"; import BookingListItem from "@components/booking/BookingListItem"; import SkeletonLoader from "@components/booking/SkeletonLoader"; -import { validStatuses } from "~/bookings/lib/validStatuses"; +import type { validStatuses } from "~/bookings/lib/validStatuses"; type BookingListingStatus = z.infer>["status"]; type BookingOutput = RouterOutputs["viewer"]["bookings"]["get"]["bookings"][0]; diff --git a/apps/web/server/lib/[user]/getServerSideProps.ts b/apps/web/server/lib/[user]/getServerSideProps.ts index 895b9b9ad6..0bacd5fec0 100644 --- a/apps/web/server/lib/[user]/getServerSideProps.ts +++ b/apps/web/server/lib/[user]/getServerSideProps.ts @@ -1,4 +1,5 @@ import type { DehydratedState } from "@tanstack/react-query"; +import type { EmbedProps } from "app/WithEmbedSSR"; import type { GetServerSideProps } from "next"; import { encode } from "querystring"; import type { z } from "zod"; @@ -18,7 +19,6 @@ import type { EventTypeMetaDataSchema } from "@calcom/prisma/zod-utils"; import type { UserProfile } from "@calcom/types/UserProfile"; import { getTemporaryOrgRedirect } from "@lib/getTemporaryOrgRedirect"; -import type { EmbedProps } from "app/WithEmbedSSR"; import { ssrInit } from "@server/lib/ssr"; diff --git a/example-apps/credential-sync/package.json b/example-apps/credential-sync/package.json index 80fe44d47e..8dddcadf48 100644 --- a/example-apps/credential-sync/package.json +++ b/example-apps/credential-sync/package.json @@ -22,7 +22,7 @@ "@types/react-dom": "^18", "autoprefixer": "^10.0.1", "dotenv": "^16.3.1", - "eslint": "^8", + "eslint": "^8.34.0", "eslint-config-next": "14.0.4", "postcss": "^8", "tailwindcss": "^3.3.0", diff --git a/packages/app-store/alby/components/AlbyPaymentComponent.tsx b/packages/app-store/alby/components/AlbyPaymentComponent.tsx index 535e7d2b45..b7da73ad31 100644 --- a/packages/app-store/alby/components/AlbyPaymentComponent.tsx +++ b/packages/app-store/alby/components/AlbyPaymentComponent.tsx @@ -87,8 +87,7 @@ export const AlbyPaymentComponent = (props: IAlbyPaymentComponentProps) => {

Click or scan the invoice below to pay

+ className="inline-flex items-center justify-center rounded-2xl rounded-md border border-transparent bg-white p-2 font-medium text-black shadow-sm hover:brightness-95 focus:outline-none focus:ring-offset-2"> diff --git a/packages/config/eslint-preset.js b/packages/config/eslint-preset.js index 4b43dccebe..4f0716baa1 100644 --- a/packages/config/eslint-preset.js +++ b/packages/config/eslint-preset.js @@ -87,6 +87,13 @@ module.exports = { "@calcom/eslint/deprecated-imports-next-router": "off", }, }, + { + files: ["packages/trpc/**/*.{tsx,ts}"], + rules: { + "@typescript-eslint/ban-types": "warn", + "@typescript-eslint/no-explicit-any": "warn", + }, + }, ], }, { diff --git a/packages/eslint-plugin/src/index.js b/packages/eslint-plugin/src/index.js index 312b019ed0..b88415a9bd 100644 --- a/packages/eslint-plugin/src/index.js +++ b/packages/eslint-plugin/src/index.js @@ -1,6 +1,10 @@ // This registers Typescript compiler instance onto node.js. // Now it is possible to just require typescript files without any compilation steps in the environment run by node -require("ts-node").register(); +require("ts-node").register({ + compilerOptions: { + module: "commonjs", + }, +}); // re-export our rules so that eslint run by node can understand them module.exports = { diff --git a/packages/lib/payment/processPaymentRefund.test.ts b/packages/lib/payment/processPaymentRefund.test.ts index 1af040cc82..e0800bcac3 100644 --- a/packages/lib/payment/processPaymentRefund.test.ts +++ b/packages/lib/payment/processPaymentRefund.test.ts @@ -1,14 +1,15 @@ +import prismaMock from "../../../tests/libs/__mocks__/prismaMock"; + import { describe, it, expect, vi, beforeEach } from "vitest"; import dayjs from "@calcom/dayjs"; -import prismaMock from "../../../tests/libs/__mocks__/prismaMock"; import { getPaymentAppData } from "../getPaymentAppData"; import { handlePaymentRefund } from "./handlePaymentRefund"; import { processPaymentRefund } from "./processPaymentRefund"; import { RefundPolicy } from "./types"; -vi.mock('@calcom/lib/getPaymentAppData', () => ({ +vi.mock("@calcom/lib/getPaymentAppData", () => ({ getPaymentAppData: vi.fn(), })); @@ -23,7 +24,7 @@ describe("processPaymentRefund", () => { { id: 1, uid: "unique-id-1", - appId: "123", + appId: "123", bookingId: 456, amount: 1000, fee: 50, diff --git a/packages/platform/examples/base/package.json b/packages/platform/examples/base/package.json index 415480d036..15a11929ce 100644 --- a/packages/platform/examples/base/package.json +++ b/packages/platform/examples/base/package.json @@ -22,7 +22,7 @@ "@types/react": "^18", "@types/react-dom": "^18", "autoprefixer": "^10.0.1", - "eslint": "^8", + "eslint": "^8.34.0", "eslint-config-next": "14.0.4", "postcss": "^8", "tailwindcss": "^3.3.0", diff --git a/packages/platform/examples/base/src/pages/payment/[paymentUid].tsx b/packages/platform/examples/base/src/pages/payment/[paymentUid].tsx index 3a3fb22d19..db45359f93 100644 --- a/packages/platform/examples/base/src/pages/payment/[paymentUid].tsx +++ b/packages/platform/examples/base/src/pages/payment/[paymentUid].tsx @@ -18,10 +18,10 @@ export default function Payment(props: { calUsername: string; calEmail: string } { + onPaymentSuccess={() => { router.push("/bookings"); }} - onPaymentCancellation={(data) => { + onPaymentCancellation={() => { router.back(); }} /> diff --git a/packages/trpc/server/routers/viewer/bookings/find.schema.ts b/packages/trpc/server/routers/viewer/bookings/find.schema.ts index eb4afb1eed..2cb830d4f0 100644 --- a/packages/trpc/server/routers/viewer/bookings/find.schema.ts +++ b/packages/trpc/server/routers/viewer/bookings/find.schema.ts @@ -1,9 +1,7 @@ import { z } from "zod"; -const ZFindInputSchema = z.object({ +export const ZFindInputSchema = z.object({ bookingUid: z.string().optional(), }); export type TFindInputSchema = z.infer; - -export { ZFindInputSchema }; diff --git a/packages/trpc/server/routers/viewer/bookings/getInstantBookingLocation.schema.ts b/packages/trpc/server/routers/viewer/bookings/getInstantBookingLocation.schema.ts index fd338c7663..1b2de2b336 100644 --- a/packages/trpc/server/routers/viewer/bookings/getInstantBookingLocation.schema.ts +++ b/packages/trpc/server/routers/viewer/bookings/getInstantBookingLocation.schema.ts @@ -1,9 +1,7 @@ import { z } from "zod"; -const ZInstantBookingInputSchema = z.object({ +export const ZInstantBookingInputSchema = z.object({ bookingId: z.number(), }); export type TInstantBookingInputSchema = z.infer; - -export { ZInstantBookingInputSchema }; diff --git a/packages/trpc/server/routers/viewer/eventTypes/types.ts b/packages/trpc/server/routers/viewer/eventTypes/types.ts index 7f778825a2..47448de810 100644 --- a/packages/trpc/server/routers/viewer/eventTypes/types.ts +++ b/packages/trpc/server/routers/viewer/eventTypes/types.ts @@ -75,7 +75,7 @@ const BaseEventTypeUpdateInput = _EventTypeModel .partial() .extend(_EventTypeModel.pick({ id: true }).shape); -const ZUpdateInputSchema = BaseEventTypeUpdateInput.extend({ +export const ZUpdateInputSchema = BaseEventTypeUpdateInput.extend({ aiPhoneCallConfig: aiPhoneCallConfig.refine( (data) => { if (!data) return true; @@ -92,6 +92,4 @@ const ZUpdateInputSchema = BaseEventTypeUpdateInput.extend({ ), }).strict(); // only run infer over the simple type, excluding refines/transforms. -type TUpdateInputSchema = z.infer; - -export { ZUpdateInputSchema, type TUpdateInputSchema }; +export type TUpdateInputSchema = z.infer; diff --git a/packages/trpc/server/routers/viewer/eventTypes/update.handler.ts b/packages/trpc/server/routers/viewer/eventTypes/update.handler.ts index ab978caac1..9c8896ee4b 100644 --- a/packages/trpc/server/routers/viewer/eventTypes/update.handler.ts +++ b/packages/trpc/server/routers/viewer/eventTypes/update.handler.ts @@ -15,6 +15,7 @@ import { validateBookerLayouts } from "@calcom/lib/validateBookerLayouts"; import type { PrismaClient } from "@calcom/prisma"; import { WorkflowTriggerEvents } from "@calcom/prisma/client"; import { SchedulingType, EventTypeAutoTranslatedField } from "@calcom/prisma/enums"; +import { eventTypeAppMetadataOptionalSchema } from "@calcom/prisma/zod-utils"; import { TRPCError } from "@trpc/server"; @@ -27,7 +28,6 @@ import { handleCustomInputs, handlePeriodType, } from "./util"; -import { eventTypeAppMetadataOptionalSchema } from "@calcom/prisma/zod-utils"; type SessionUser = NonNullable; type User = { diff --git a/turbo.json b/turbo.json index dffae48594..a53184b89c 100644 --- a/turbo.json +++ b/turbo.json @@ -454,6 +454,12 @@ "HUDDLE01_API_TOKEN", "REPLEXICA_API_KEY", "DIRECTORY_IDS_TO_LOG", - "NEXT_PUBLIC_SINGLE_ORG_SLUG" + "NEXT_PUBLIC_SINGLE_ORG_SLUG", + "GOOGLE_REFRESH_TOKEN", + "GOOGLE_CLIENT_ID", + "GOOGLE_CLIENT_SECRET", + "ZOOM_REFRESH_TOKEN", + "CALCOM_ADMIN_API_KEY", + "NEXT_PUBLIC_SINGLE_ORG_MODE_ENABLED" ] } diff --git a/yarn.lock b/yarn.lock index 5778342848..39c0966264 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4059,7 +4059,7 @@ __metadata: "@types/react-dom": ^18 autoprefixer: ^10.0.1 dotenv: ^16.3.1 - eslint: ^8 + eslint: ^8.34.0 eslint-config-next: 14.0.4 next: 14.0.4 postcss: ^8