+
+ {date.format("dddd DD MMMM YYYY")}
{slots.length > 0 &&
slots.map((slot) => (
@@ -42,7 +39,7 @@ const AvailableTimes = ({
`/${user.username}/book?date=${slot.utc().format()}&type=${eventTypeId}` +
(rescheduleUid ? "&rescheduleUid=" + rescheduleUid : "")
}>
-
+
{slot.format(timeFormat)}
diff --git a/components/booking/DatePicker.tsx b/components/booking/DatePicker.tsx
index e977ea04..28c1fa56 100644
--- a/components/booking/DatePicker.tsx
+++ b/components/booking/DatePicker.tsx
@@ -1,4 +1,4 @@
-import { ChevronLeftIcon, ChevronRightIcon } from "@heroicons/react/outline";
+import { ChevronLeftIcon, ChevronRightIcon } from "@heroicons/react/solid";
import { useEffect, useState } from "react";
import dayjs, { Dayjs } from "dayjs";
import utc from "dayjs/plugin/utc";
@@ -24,7 +24,6 @@ const DatePicker = ({
periodDays,
periodCountCalendarDays,
minimumBookingNotice,
- setHeight,
}) => {
const [calendar, setCalendar] = useState([]);
const [selectedMonth, setSelectedMonth] = useState
();
@@ -148,14 +147,14 @@ const DatePicker = ({
onClick={() => setSelectedDate(inviteeDate.date(day))}
disabled={isDisabled(day)}
className={
- "w-36 mx-auto h-28 mx-auto p-3 text-left flex self-start" +
+ "text-center w-10 h-10 mx-auto" +
(isDisabled(day)
- ? " text-neutral-400 font-light"
- : " text-neutral-900 dark:text-neutral-200 font-medium") +
+ ? " text-gray-400 font-light"
+ : " dark:text-white text-primary-500 font-medium") +
(selectedDate && selectedDate.isSame(inviteeDate.date(day), "day")
- ? " bg-neutral-100 dark:bg-neutral-700 border border-neutral-900 dark:border-neutral-600 dark:text-white"
+ ? " bg-black text-white-important"
: !isDisabled(day)
- ? " bg-neutral-100 dark:bg-neutral-700 dark:bg-opacity-30"
+ ? " bg-gray-100 dark:bg-black dark:bg-opacity-30"
: "")
}>
{day}
@@ -165,44 +164,35 @@ const DatePicker = ({
}, [selectedMonth, inviteeTimeZone, selectedDate]);
return selectedMonth ? (
-
-
-
-
- {dayjs().month(selectedMonth).format("MMMM")}
-
-
- {dayjs().month(selectedMonth).format("YYYY")}
-
+
+
+
+ {dayjs().month(selectedMonth).format("MMMM YYYY")}
+
-
-
{
- if (!el) return;
- setHeight(el.getBoundingClientRect().height);
- }}>
+
{["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
.sort((a, b) => (weekStart.startsWith(a) ? -1 : weekStart.startsWith(b) ? 1 : 0))
.map((weekDay) => (
-
+
{weekDay}
))}
diff --git a/components/booking/TimeOptions.tsx b/components/booking/TimeOptions.tsx
index 59cd7a2e..9e51b6ae 100644
--- a/components/booking/TimeOptions.tsx
+++ b/components/booking/TimeOptions.tsx
@@ -25,7 +25,7 @@ const TimeOptions = (props) => {
return (
selectedTimeZone !== "" && (
-
+
Time Options
@@ -37,7 +37,7 @@ const TimeOptions = (props) => {
checked={is24hClock}
onChange={setIs24hClock}
className={classNames(
- is24hClock ? "bg-blue-600" : "dark:bg-gray-600 bg-gray-200",
+ is24hClock ? "bg-black" : "dark:bg-gray-600 bg-gray-200",
"relative inline-flex flex-shrink-0 h-5 w-8 border-2 border-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-black"
)}>
Use setting
diff --git a/components/ui/PoweredByCalendso.tsx b/components/ui/PoweredByCalendso.tsx
index 6f2596c8..1e0ce6ab 100644
--- a/components/ui/PoweredByCalendso.tsx
+++ b/components/ui/PoweredByCalendso.tsx
@@ -1,7 +1,7 @@
import Link from "next/link";
const PoweredByCalendso = () => (
-
+
powered by{" "}
diff --git a/pages/404.tsx b/pages/404.tsx
new file mode 100644
index 00000000..1f3a5025
--- /dev/null
+++ b/pages/404.tsx
@@ -0,0 +1,161 @@
+import { ChevronRightIcon } from "@heroicons/react/solid";
+import { DocumentTextIcon, BookOpenIcon, CodeIcon, CheckIcon } from "@heroicons/react/outline";
+import { useRouter } from "next/router";
+import React from "react";
+import Link from "next/link";
+import Head from "next/head";
+
+const links = [
+ {
+ title: "Documentation",
+ description: "Learn how to integrate our tools with your app",
+ icon: DocumentTextIcon,
+ href: "https://docs.calendso.com",
+ },
+ {
+ title: "API Reference",
+ description: "A complete API reference for our libraries",
+ icon: CodeIcon,
+ href: "https://api.docs.calendso.com",
+ },
+ {
+ title: "Blog",
+ description: "Read our latest news and articles",
+ icon: BookOpenIcon,
+ href: "https://calendso.com/blog",
+ },
+];
+
+export default function Custom404() {
+ const router = useRouter();
+ const username = router.asPath.replace("%20", "-");
+
+ return (
+ <>
+
+ 404: This page could not be found.
+
+
+
+
+
+
+
Popular pages
+
+
+
+
+
+
+
+
+
+ >
+ );
+}
diff --git a/pages/[user]/[type].tsx b/pages/[user]/[type].tsx
index 86136631..8b2787b9 100644
--- a/pages/[user]/[type].tsx
+++ b/pages/[user]/[type].tsx
@@ -1,7 +1,7 @@
import { useEffect, useState } from "react";
import { GetServerSideProps, GetServerSidePropsContext } from "next";
import Head from "next/head";
-import { ChevronDownIcon, ClockIcon, GlobeIcon, InformationCircleIcon } from "@heroicons/react/solid";
+import { ChevronDownIcon, ChevronUpIcon, ClockIcon, GlobeIcon } from "@heroicons/react/solid";
import { useRouter } from "next/router";
import dayjs, { Dayjs } from "dayjs";
import * as Collapsible from "@radix-ui/react-collapsible";
@@ -30,8 +30,6 @@ export default function Type(props): Type {
const [timeFormat, setTimeFormat] = useState("h:mma");
const telemetry = useTelemetry();
- const [calHeight, setCalHeight] = useState(0);
-
useEffect(() => {
handleToggle24hClock(localStorage.getItem("timeOption.is24hClock") === "true");
telemetry.withJitsu((jitsu) => jitsu.track(telemetryEventTypes.pageView, collectPageParameters()));
@@ -81,7 +79,7 @@ export default function Type(props): Type {
return (
isReady && (
-
+
{rescheduleUid && "Reschedule"} {props.eventType.title} | {props.user.name || props.user.username}{" "}
@@ -128,72 +126,77 @@ export default function Type(props): Type {
}
/>
-
-
-
-
- {props.user.name}
-
-
-
- {props.eventType.title}
-
-
-
- {props.eventType.length} minutes
-
-
-
-
- {timeZone()}
-
-
-
-
-
-
-
-
-
-
-
- {selectedDate && (
-
+
+
+
+
+
{props.user.name}
+
+ {props.eventType.title}
+
+
+
+ {props.eventType.length} minutes
+
+
+
+
+
+ {timeZone()}
+ {isTimeOptionsOpen ? (
+
+ ) : (
+
+ )}
+
+
+
+
+
+
+
{props.eventType.description}
+
+
- )}
-
- {!props.user.hideBranding && (
-
-
+ {selectedDate && (
+
+ )}
- )}
+
+ {!props.user.hideBranding && }
)
diff --git a/pages/_document.tsx b/pages/_document.tsx
index 6ec9ef95..29e3027b 100644
--- a/pages/_document.tsx
+++ b/pages/_document.tsx
@@ -18,7 +18,7 @@ class MyDocument extends Document {
-
+
diff --git a/public/calendso-logo-word.svg b/public/calendso-logo-word.svg
index 4a01ade1..e4592085 100644
--- a/public/calendso-logo-word.svg
+++ b/public/calendso-logo-word.svg
@@ -3,7 +3,7 @@