Files
calendar/packages/lib/recurringStrings.ts
T
Leo GiovanettiGitHubPeer RichelsenBailey Pumfleetkodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
514fca7a53 Recurring event improvements (#2750)
* Loading state and rejected bookings gone

* Listing fixes

* Tweaking upcoming vs recurring bookings tabs

* Tweaking new emails to avoid recurringEvent param

* Tweaks to support recurring events in common flows

* Missed one renderEmail

* Removing uneeded references

* Reverting manual plural fixes

* Refactoring recurring event strings

* Correcting merge issues

* Relying on newly introduced obj

* Fixing mobile

* Final tweaks

* Latest fixes

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Bailey Pumfleet <pumfleet@hey.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-06-10 17:38:06 -03:00

46 lines
1.1 KiB
TypeScript

import { TFunction } from "next-i18next";
import { Frequency } from "@calcom/prisma/zod-utils";
import { RecurringEvent } from "@calcom/types/Calendar";
export const getRecurringFreq = ({
t,
recurringEvent,
}: {
t: TFunction;
recurringEvent: RecurringEvent;
}): string => {
if (recurringEvent.interval && recurringEvent.freq) {
return t("every_for_freq", {
freq: `${recurringEvent.interval > 1 ? recurringEvent.interval : ""} ${t(
Frequency[recurringEvent.freq].toString().toLowerCase(),
{
count: recurringEvent.interval,
}
)}`,
});
}
return "";
};
export const getEveryFreqFor = ({
t,
recurringEvent,
recurringCount,
recurringFreq,
}: {
t: TFunction;
recurringEvent: RecurringEvent;
recurringCount?: number;
recurringFreq?: string;
}): string => {
if (recurringEvent.freq) {
return `${recurringFreq || getRecurringFreq({ t, recurringEvent })} ${
recurringCount || recurringEvent.count
} ${t("occurrences", {
count: recurringCount || recurringEvent.count,
})}`;
}
return "";
};