diff --git a/apps/web/playwright/organization/booking.e2e.ts b/apps/web/playwright/organization/booking.e2e.ts
index 68c3410cc0..4c0cc0d2e3 100644
--- a/apps/web/playwright/organization/booking.e2e.ts
+++ b/apps/web/playwright/organization/booking.e2e.ts
@@ -103,7 +103,7 @@ test.describe("Bookings", () => {
page,
},
async () => {
- await bookTeamEvent({ page, team, event: teamEvent });
+ await bookTeamEvent({ page, team, event: teamEvent, teamMatesObj });
// Since all the users have the same leastRecentlyBooked value
// Anyone of the teammates could be the Host of the booking.
@@ -421,13 +421,15 @@ async function bookTeamEvent({
page,
team,
event,
+ teamMatesObj,
}: {
page: Page;
team: {
slug: string | null;
name: string | null;
};
- event: { slug: string; title: string };
+ event: { slug: string; title: string; schedulingType: SchedulingType | null };
+ teamMatesObj?: { name: string }[];
}) {
// Note that even though the default way to access a team booking in an organization is to not use /team in the URL, but it isn't testable with playwright as the rewrite is taken care of by Next.js config which can't handle on the fly org slug's handling
// So, we are using /team in the URL to access the team booking
@@ -440,8 +442,19 @@ async function bookTeamEvent({
await expect(page.getByTestId("success-page")).toBeVisible();
// The title of the booking
- const BookingTitle = `${event.title} between ${team.name} and ${testName}`;
- await expect(page.getByTestId("booking-title")).toHaveText(BookingTitle);
+ if (event.schedulingType === SchedulingType.ROUND_ROBIN) {
+ const bookingTitle = await page.getByTestId("booking-title").textContent();
+
+ expect(
+ teamMatesObj?.some((teamMate) => {
+ const BookingTitle = `${event.title} between ${teamMate.name} and ${testName}`;
+ return BookingTitle === bookingTitle;
+ })
+ ).toBe(true);
+ } else {
+ const BookingTitle = `${event.title} between ${team.name} and ${testName}`;
+ await expect(page.getByTestId("booking-title")).toHaveText(BookingTitle);
+ }
// The booker should be in the attendee list
await expect(page.getByTestId(`attendee-name-${testName}`)).toHaveText(testName);
}
diff --git a/apps/web/playwright/teams.e2e.ts b/apps/web/playwright/teams.e2e.ts
index ee310d762b..f9b6558c96 100644
--- a/apps/web/playwright/teams.e2e.ts
+++ b/apps/web/playwright/teams.e2e.ts
@@ -147,8 +147,13 @@ testBothFutureAndLegacyRoutes.describe("Teams - NonOrg", (routeVariant) => {
await expect(page.locator(`[data-testid="attendee-name-${testName}"]`)).toHaveText(testName);
// The title of the booking
- const BookingTitle = `${teamEventTitle} between ${team.name} and ${testName}`;
- await expect(page.locator("[data-testid=booking-title]")).toHaveText(BookingTitle);
+ const bookingTitle = await page.getByTestId("booking-title").textContent();
+ expect(
+ teamMatesObj?.some((teamMate) => {
+ const BookingTitle = `${teamEventTitle} between ${teamMate.name} and ${testName}`;
+ return BookingTitle === bookingTitle;
+ })
+ ).toBe(true);
// Since all the users have the same leastRecentlyBooked value
// Anyone of the teammates could be the Host of the booking.
diff --git a/apps/web/public/static/locales/en/common.json b/apps/web/public/static/locales/en/common.json
index 25280e65cd..22d94f0951 100644
--- a/apps/web/public/static/locales/en/common.json
+++ b/apps/web/public/static/locales/en/common.json
@@ -326,8 +326,10 @@
"add_another_calendar": "Add another calendar",
"other": "Other",
"email_sign_in_subject": "Your sign-in link for {{appName}}",
+ "round_robin_emailed_you_and_attendees": "You are meeting with {{user}}. We sent an email with a calendar invitation with the details to everyone.",
"emailed_you_and_attendees": "We sent an email with a calendar invitation with the details to everyone.",
"emailed_you_and_attendees_recurring": "We sent an email with a calendar invitation with the details to everyone for the first of these recurring events.",
+ "round_robin_emailed_you_and_attendees_recurring": "You are meeting with {{user}}.We sent an email with a calendar invitation with the details to everyone for the first of these recurring events.",
"emailed_you_and_any_other_attendees": "We sent an email to everyone with this information.",
"needs_to_be_confirmed_or_rejected": "Your booking still needs to be confirmed or rejected.",
"needs_to_be_confirmed_or_rejected_recurring": "Your recurring meeting still needs to be confirmed or rejected.",
diff --git a/packages/config/tailwind-preset.js b/packages/config/tailwind-preset.js
index c186db13df..b5ca2bbbf6 100644
--- a/packages/config/tailwind-preset.js
+++ b/packages/config/tailwind-preset.js
@@ -67,6 +67,8 @@ module.exports = {
booker: `var(--cal-border-booker, ${subtleColor})`,
error: "var(--cal-border-error, #AA2E26)",
focus: "var(--cal-border-focus, #1A1A1A)",
+ "cal-bg": "var(--cal-bg, white)",
+ "cal-bg-muted": "var(--cal-bg-muted)",
},
textColor: {
emphasis: "var(--cal-text-emphasis, #111827)",
diff --git a/packages/features/auth/SAMLLogin.tsx b/packages/features/auth/SAMLLogin.tsx
index b0d9973d5f..2c74571f4f 100644
--- a/packages/features/auth/SAMLLogin.tsx
+++ b/packages/features/auth/SAMLLogin.tsx
@@ -6,7 +6,7 @@ import z from "zod";
import { HOSTED_CAL_FEATURES } from "@calcom/lib/constants";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { trpc } from "@calcom/trpc/react";
-import { Button, Icon } from "@calcom/ui";
+import { Button } from "@calcom/ui";
interface Props {
samlTenantID: string;
diff --git a/packages/features/bookings/Booker/components/OverlayCalendar/OverlayCalendarSettingsModal.tsx b/packages/features/bookings/Booker/components/OverlayCalendar/OverlayCalendarSettingsModal.tsx
index ab4eeaef6f..642af0dac3 100644
--- a/packages/features/bookings/Booker/components/OverlayCalendar/OverlayCalendarSettingsModal.tsx
+++ b/packages/features/bookings/Booker/components/OverlayCalendar/OverlayCalendarSettingsModal.tsx
@@ -9,7 +9,6 @@ import {
DialogClose,
DialogContent,
EmptyScreen,
- Icon,
ListItem,
ListItemText,
ListItemTitle,
diff --git a/packages/features/bookings/lib/getUserBooking.ts b/packages/features/bookings/lib/getUserBooking.ts
index 7aaab4fc40..0f78882b97 100644
--- a/packages/features/bookings/lib/getUserBooking.ts
+++ b/packages/features/bookings/lib/getUserBooking.ts
@@ -29,6 +29,7 @@ const getUserBooking = async (uid: string) => {
email: true,
username: true,
timeZone: true,
+ avatarUrl: true,
},
},
attendees: {
@@ -44,6 +45,7 @@ const getUserBooking = async (uid: string) => {
eventName: true,
slug: true,
timeZone: true,
+ schedulingType: true,
},
},
seatsReferences: {
diff --git a/packages/features/calendars/weeklyview/components/heading/SchedulerHeading.tsx b/packages/features/calendars/weeklyview/components/heading/SchedulerHeading.tsx
index 4ff86c79fe..17832275cc 100644
--- a/packages/features/calendars/weeklyview/components/heading/SchedulerHeading.tsx
+++ b/packages/features/calendars/weeklyview/components/heading/SchedulerHeading.tsx
@@ -1,5 +1,5 @@
import dayjs from "@calcom/dayjs";
-import { Button, ButtonGroup, Icon } from "@calcom/ui";
+import { Button, ButtonGroup } from "@calcom/ui";
import { useCalendarStore } from "../../state/store";
diff --git a/packages/features/ee/dsync/components/DirectoryInfo.tsx b/packages/features/ee/dsync/components/DirectoryInfo.tsx
index 43f47653a3..005cbc412b 100644
--- a/packages/features/ee/dsync/components/DirectoryInfo.tsx
+++ b/packages/features/ee/dsync/components/DirectoryInfo.tsx
@@ -2,7 +2,6 @@ import type { Directory } from "@boxyhq/saml-jackson";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { Button, showToast, Label, Tooltip } from "@calcom/ui";
-import { Icon } from "@calcom/ui";
const DirectoryInfo = ({ directory }: { directory: Directory }) => {
const { t } = useLocale();
diff --git a/packages/features/ee/organizations/pages/components/MemberListItem.tsx b/packages/features/ee/organizations/pages/components/MemberListItem.tsx
index f48e62fa64..94158465be 100644
--- a/packages/features/ee/organizations/pages/components/MemberListItem.tsx
+++ b/packages/features/ee/organizations/pages/components/MemberListItem.tsx
@@ -11,7 +11,6 @@ import {
DropdownMenuContent,
DropdownMenuItem,
DropdownMenuTrigger,
- Icon,
Tooltip,
UserAvatar,
} from "@calcom/ui";
@@ -82,12 +81,7 @@ export default function MemberListItem(props: Props) {
-
+
diff --git a/packages/features/eventtypes/components/ChildrenEventTypeSelect.tsx b/packages/features/eventtypes/components/ChildrenEventTypeSelect.tsx
index d860c49184..e7939e3456 100644
--- a/packages/features/eventtypes/components/ChildrenEventTypeSelect.tsx
+++ b/packages/features/eventtypes/components/ChildrenEventTypeSelect.tsx
@@ -5,7 +5,7 @@ import { classNames } from "@calcom/lib";
import { WEBSITE_URL } from "@calcom/lib/constants";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { MembershipRole } from "@calcom/prisma/enums";
-import { Avatar, Badge, Button, ButtonGroup, Icon, Select, Switch, Tooltip } from "@calcom/ui";
+import { Avatar, Badge, Button, ButtonGroup, Select, Switch, Tooltip } from "@calcom/ui";
export type ChildrenEventType = {
value: string;
diff --git a/packages/features/insights/filters/Download/index.tsx b/packages/features/insights/filters/Download/index.tsx
index 62c2caf0ac..d6cf4a3bb7 100644
--- a/packages/features/insights/filters/Download/index.tsx
+++ b/packages/features/insights/filters/Download/index.tsx
@@ -2,7 +2,7 @@ import { useFilterContext } from "@calcom/features/insights/context/provider";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import type { RouterOutputs } from "@calcom/trpc";
import { trpc } from "@calcom/trpc";
-import { Button, Dropdown, DropdownItem, DropdownMenuContent, DropdownMenuTrigger, Icon } from "@calcom/ui";
+import { Button, Dropdown, DropdownItem, DropdownMenuContent, DropdownMenuTrigger } from "@calcom/ui";
const Download = () => {
const { filter } = useFilterContext();
diff --git a/packages/features/schedules/components/DateOverrideList.tsx b/packages/features/schedules/components/DateOverrideList.tsx
index de1c569a1b..46e764cadf 100644
--- a/packages/features/schedules/components/DateOverrideList.tsx
+++ b/packages/features/schedules/components/DateOverrideList.tsx
@@ -2,7 +2,7 @@ import dayjs from "@calcom/dayjs";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import type { RouterOutputs } from "@calcom/trpc/react";
import type { TimeRange, WorkingHours } from "@calcom/types/schedule";
-import { Button, DialogTrigger, Icon, Tooltip } from "@calcom/ui";
+import { Button, DialogTrigger, Tooltip } from "@calcom/ui";
import DateOverrideInputDialog from "./DateOverrideInputDialog";
diff --git a/packages/features/timezone-buddy/components/AvailabilityEditSheet.tsx b/packages/features/timezone-buddy/components/AvailabilityEditSheet.tsx
index ef49719813..91ad504136 100644
--- a/packages/features/timezone-buddy/components/AvailabilityEditSheet.tsx
+++ b/packages/features/timezone-buddy/components/AvailabilityEditSheet.tsx
@@ -71,11 +71,7 @@ const DateOverride = ({ workingHours, disabled }: { workingHours: WorkingHours[]
excludedDates={excludedDates}
onChange={(ranges) => ranges.forEach((range) => append({ ranges: [range] }))}
Trigger={
-