diff --git a/apps/web/playwright/apps/analytics/analyticsApps.e2e.ts b/apps/web/playwright/apps/analytics/analyticsApps.e2e.ts index 306b054bcc7151..1f1ee90b542fe3 100644 --- a/apps/web/playwright/apps/analytics/analyticsApps.e2e.ts +++ b/apps/web/playwright/apps/analytics/analyticsApps.e2e.ts @@ -22,9 +22,9 @@ test.describe("check analytics Apps", () => { await page.goto("/event-types"); await appsPage.goToEventType("30 min"); await appsPage.goToAppsTab(); - await appsPage.verifyAppsInfo(0); + await appsPage.verifyAppsInfo(1, 0); await appsPage.activeApp(app); - await appsPage.verifyAppsInfo(1); + await appsPage.verifyAppsInfo(1, 1); }); }); }); diff --git a/apps/web/playwright/booking-seats.e2e.ts b/apps/web/playwright/booking-seats.e2e.ts index a56355a67cf110..8b74780610bdd2 100644 --- a/apps/web/playwright/booking-seats.e2e.ts +++ b/apps/web/playwright/booking-seats.e2e.ts @@ -1,10 +1,8 @@ -import { expect } from "@playwright/test"; -import { v4 as uuidv4 } from "uuid"; - import { randomString } from "@calcom/lib/random"; import prisma from "@calcom/prisma"; import { BookingStatus } from "@calcom/prisma/enums"; - +import { expect } from "@playwright/test"; +import { v4 as uuidv4 } from "uuid"; import { test } from "./lib/fixtures"; import { confirmReschedule, @@ -43,6 +41,7 @@ test.describe("Booking with Seats", () => { name: true, email: true, }, + orderBy: { email: "asc" }, }); const bookingSeats = bookingAttendees.map((attendee) => ({ @@ -136,6 +135,7 @@ test.describe("Reschedule for booking with seats", () => { name: true, email: true, }, + orderBy: { email: "asc" }, }); const bookingSeats = bookingAttendees.map((attendee) => ({ @@ -203,6 +203,7 @@ test.describe("Reschedule for booking with seats", () => { name: true, email: true, }, + orderBy: { email: "asc" }, }); const bookingSeats = bookingAttendees.map((attendee) => ({ @@ -282,6 +283,7 @@ test.describe("Reschedule for booking with seats", () => { name: true, email: true, }, + orderBy: { email: "asc" }, }); const bookingSeats = bookingAttendees.map((attendee) => ({ @@ -475,6 +477,7 @@ test.describe("Reschedule for booking with seats", () => { name: true, email: true, }, + orderBy: { email: "asc" }, }); const bookingSeats = bookingAttendees.map((attendee) => ({ @@ -522,6 +525,7 @@ test.describe("Reschedule for booking with seats", () => { name: true, email: true, }, + orderBy: { email: "asc" }, }); const bookingSeats = bookingAttendees.map((attendee) => ({ diff --git a/apps/web/playwright/fixtures/apps.ts b/apps/web/playwright/fixtures/apps.ts index 353c228f4671c3..7ff8f5f4d04591 100644 --- a/apps/web/playwright/fixtures/apps.ts +++ b/apps/web/playwright/fixtures/apps.ts @@ -127,8 +127,11 @@ export function createAppsFixture(page: Page) { activeApp: async (app: string) => { await page.locator(`[data-testid='${app}-app-switch']`).click(); }, - verifyAppsInfo: async (activeApps: number) => { - await expect(page.locator(`text=1 apps, ${activeApps} active`)).toBeVisible(); + verifyAppsInfo: async (installedApps: number, activeApps: number) => { + const appsLabel = installedApps === 1 ? "app" : "apps"; + await expect( + page.locator(`text=${installedApps} ${appsLabel}, ${activeApps} active`) + ).toBeVisible(); }, verifyAppsInfoNew: async (app: string, eventTypeId: number) => { await page.goto(`event-types/${eventTypeId}?tabName=apps`); diff --git a/packages/platform/atoms/event-types/hooks/useTabsNavigations.tsx b/packages/platform/atoms/event-types/hooks/useTabsNavigations.tsx index 7abaecd1a0d3e4..7a08cadb9bf372 100644 --- a/packages/platform/atoms/event-types/hooks/useTabsNavigations.tsx +++ b/packages/platform/atoms/event-types/hooks/useTabsNavigations.tsx @@ -216,8 +216,7 @@ function getNavigation({ name: t("apps"), href: `/event-types/${id}?tabName=apps`, icon: "grid-3x3", - //TODO: Handle proper translation with count handling - info: `${installedAppsNumber} apps, ${enabledAppsNumber} ${t("active")}`, + info: `${t("number_apps", { count: installedAppsNumber })}, ${enabledAppsNumber} ${t("active")}`, "data-testid": "apps", }, ]; diff --git a/packages/platform/types/bookings/2024-08-13/inputs/reschedule-booking.input.ts b/packages/platform/types/bookings/2024-08-13/inputs/reschedule-booking.input.ts index 233b8aaa3cfa06..4089104a9cb0af 100644 --- a/packages/platform/types/bookings/2024-08-13/inputs/reschedule-booking.input.ts +++ b/packages/platform/types/bookings/2024-08-13/inputs/reschedule-booking.input.ts @@ -8,8 +8,8 @@ owner will have to confirm the rescheduled booking.`; export class RescheduleBookingInput_2024_08_13 { @IsDateString() @ApiProperty({ - description: "Start time in ISO 8601 format for the new booking", - example: "2024-08-13T10:00:00Z", + description: "The start time of the booking in ISO 8601 format in UTC timezone.", + example: "2024-08-13T09:00:00Z", }) start!: string; @@ -47,8 +47,8 @@ export class RescheduleBookingInput_2024_08_13 { export class RescheduleSeatedBookingInput_2024_08_13 { @IsDateString() @ApiProperty({ - description: "Start time in ISO 8601 format for the new booking", - example: "2024-08-13T10:00:00Z", + description: "The start time of the booking in ISO 8601 format in UTC timezone.", + example: "2024-08-13T09:00:00Z", }) start!: string;