Compare commits

...

64 commits

Author SHA1 Message Date
Peer Richelsen
92806d5257
fixed /booking skeleton (#2722)
Some checks failed
Crowdin Action / synchronize-with-crowdin (push) Has been cancelled
* fixed /booking skeleton

* nit
2022-05-10 16:59:23 +02:00
zomars
9440df4445 Make apps single pages public 2022-05-09 16:17:23 -06:00
zomars
4e0efb76cd Turbo fixes 2022-05-09 16:17:23 -06:00
zomars
4099a477d1 v1.5.4 2022-05-09 14:33:32 -06:00
zomars
6542da7e30 Formatting 2022-05-09 14:33:13 -06:00
Hariom Balhara
8336611f54
Missing translation (#2697)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-09 22:24:01 +02:00
zomars
819c6c96e8 Build fixes 2022-05-09 14:05:57 -06:00
zomars
e9ff358ac2 Update BookingPage.tsx 2022-05-09 13:59:45 -06:00
zomars
f79fd36c03 Merge branch 'production' 2022-05-09 13:58:18 -06:00
Alex van Andel
edd99cdeb2
Replaces member avatars with links to avatar.png endpoint (#2708)
* Replaces member avatars with links to avatar.png endpoint

* Replaced additional occurences

* Use WEBSITE_URL from @calcom/lib/constants instead

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-09 18:25:12 +00:00
zomars
7399d6421e Form warning fixes 2022-05-06 15:30:46 -06:00
Hariom Balhara
dd7f22e021
Fix border in dark theme (#2687) 2022-05-06 12:09:12 +02:00
zomars
1a06d9906b Fixes daily-video slug 2022-05-05 16:36:30 -06:00
zomars
3baf7060f7 Adds console url to redirection whitelist 2022-05-05 16:29:38 -06:00
zomars
82dfd807c8 All apps in DB are installed by default 2022-05-05 16:21:52 -06:00
zomars
af9612968b Fixes missing slack credentials 2022-05-05 16:21:52 -06:00
zomars
4437bfa840 Fix for undefined keys 2022-05-04 08:13:52 -06:00
zomars
b9e34c99ca Jitsi slug fixes 2022-05-03 22:44:24 -06:00
zomars
71fa872d5c slug fixes 2022-05-03 22:38:48 -06:00
zomars
377857915f Space booking test 2022-05-03 22:36:07 -06:00
alannnc
f1bed08c13 feature/space-booking-app (#2673)
* Reschedule for dynamic events

* Fix lint

* feature/space-booking-app initial commit

* added loom video and fixes for main branch

* Revert previous commmit

* Renames spacebookingother to spacebooking

* Type and perf improvements

* Updated comment

* Update seed-app-store.ts

Co-authored-by: zomars <zomars@me.com>
2022-05-03 22:07:17 -06:00
zomars
b8d5c53813 Merge branch 'main' into production 2022-05-02 19:08:05 -06:00
zomars
bb90fe0d4b Marks installed by default 2022-05-02 19:05:49 -06:00
zomars
774f707c9f Type fixes 2022-05-02 18:21:09 -06:00
zomars
a6417c5757 Moar fixes 2022-05-02 18:00:36 -06:00
zomars
1de385a410 App env fixes 2022-05-02 17:42:25 -06:00
zomars
6011b440a8 App env fixes 2022-05-02 17:31:07 -06:00
zomars
de4b3c186e Hubspot fixes 2022-05-02 16:55:34 -06:00
zomars
54269ba0bf v1.5.3 2022-05-02 16:21:11 -06:00
zomars
361579ba31 Migration seeder fixes 2022-05-02 16:21:11 -06:00
Joe Au-Yeung
000785c29f Add Meta Mask to app store (#2650)
* Adds available apps

* Adds App Model

* WIP

* Create meta mask app folder

* Add description and images

* Remove credential from installed apps page

* Updates seeder script

* Seeder fixes

* lowercase categories

* Upgrades prisma

* WIP

* WIP

* Hopefully fixes circular deps

* Type fixes

* Fixes seeder

* Adds migration to connect Credentials to Apps

* Updates app store callbacks

* Updates google credentials

* Uses dirName from DB

* Type fixes

* Update reschedule.ts

* Seeder fixes

* Fixes categories listing

* Update index.ts

* Update schema.prisma

* Updates dependencies

* Renames giphy app

* Uses dynamic imports for app metadata

* Fixes credentials error

* Uses dynamic import for api handlers

* Dynamic import fixes

* Allows for simple folder names in app store

* Remove video adaptor

* Squashes app migrations

* seeder fixes

* Renames to metamask

* Updates metamask metadata

* Fixes dyamic imports

* Remove comments

* Create migration.sql

Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2022-05-02 16:21:11 -06:00
Omar López
2e6bc5e5b4 Fixes/app store keys in db (#2651)
* Adds available apps

* Adds App Model

* WIP

* Updates seeder script

* Seeder fixes

* lowercase categories

* Upgrades prisma

* WIP

* WIP

* Hopefully fixes circular deps

* Type fixes

* Fixes seeder

* Adds migration to connect Credentials to Apps

* Updates app store callbacks

* Updates google credentials

* Uses dirName from DB

* Type fixes

* Update reschedule.ts

* Seeder fixes

* Fixes categories listing

* Update index.ts

* Update schema.prisma

* Updates dependencies

* Renames giphy app

* Uses dynamic imports for app metadata

* Fixes credentials error

* Uses dynamic import for api handlers

* Dynamic import fixes

* Allows for simple folder names in app store

* Squashes app migrations

* seeder fixes

* Fixes dyamic imports

* Update apiHandlers.tsx
2022-05-02 16:21:11 -06:00
Shrey Gupta
11f6972ec9 feat(app-store): Add Giphy app (#2580) 2022-05-02 16:21:11 -06:00
Peer Richelsen
df801b4205 Update README.md 2022-05-02 16:21:11 -06:00
Peer Richelsen
433f2bafd8 Update index.mdx 2022-05-02 16:21:11 -06:00
Peer Richelsen
c5fc1a4648 Update PULL_REQUEST_TEMPLATE.md 2022-05-02 16:21:11 -06:00
sean-brydon
33d486b160 Enable Autocomplete (#2645)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
Peer Richelsen
7e57c192ee added animations for dialog and tooltip (#2648)
* added animations for dialog and tooltip

* Update .env.example
2022-05-02 16:21:11 -06:00
Joe Au-Yeung
e4f7e26ad5 Hotfix - change calendar error message (#2643)
* Change calendar error message

* Change calendar error message

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
Syed Ali Shahbaz
89b4acdfaf Hash my url (#2484)
* disposable link model added

* disposable model updated

* added disposable slug availability page

* added disposable book page

* added disposable slug hook

* added disposable link booking flow

* updated schema

* checktype fix

* added checkfix and schema generated

* create link API added

* added one time link view on event type list

* adjusted schema

* fixed disposable visual indicator

* expired check and visual indicator added

* updated slug for disposable event type

* revised schema

* WIP

* revert desc

* revert --WIP

* rework based on change of plans

* further adjustments

* added eventtype option for hashed link

* added refresh and delete on update

* fixed update call conditions

* cleanup

* code improvement

* clean up

* Potential fix for 404

* backward compat for booking page

* fixes regular booking for user and team

* typefix

* updated path for Booking import

* checkfix

* e2e wip

* link err fix

* workaround for banner issue in event type update-test

* added regenerate hash check

* fixed test according to new testID

Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
2022-05-02 16:21:11 -06:00
alannnc
d856ef53a7 Fix emails and cal event descriptions (#2634)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
sean-brydon
3256d601db Fixes google meet url not appearing calendar invite (#2636)
* Update cal description

* Tidy up console logs

Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
Afzal Sayed
938f4f2b4d Pass userId while creating event-type (#2599)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
sean-brydon
6999ab09b6 Fixing Scope Name [Slack] (#2641) 2022-05-02 16:21:11 -06:00
Peer Richelsen
c2d52bcfd2 consistency for tablet booking page (#2640) 2022-05-02 16:21:11 -06:00
Peer Richelsen
d1c37f84aa fixed layout in insalled apps (#2639) 2022-05-02 16:21:11 -06:00
sean-brydon
83f9defc65 Unlock edit on reschedule (#2628) 2022-05-02 16:21:11 -06:00
Joe Au-Yeung
c4dbab2637 Add new response if request contains account id (#2629)
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
alannnc
e76fafdccf Fix book event form schema validation (#2633) 2022-05-02 16:21:11 -06:00
sean-brydon
73e3e4e226 Adding validation for name and email (#2612) 2022-05-02 16:21:11 -06:00
Hariom Balhara
6535d654d7 Add Event Types Test (#2610)
* Add Event Types Test

* Accept license for tests

* Accept license on preview

* Remove debugging code

* Add License consent flag

* Test fixes

* Update playwright.config.ts

* Update webhookResponse-chromium.txt

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
2022-05-02 16:21:11 -06:00
Hariom Balhara
a224a46654 Make sure that absolute URL is of WEBAPP only (#2624) 2022-05-02 16:21:11 -06:00
Peer Richelsen
59c0784cd6 Update PULL_REQUEST_TEMPLATE.md 2022-05-02 16:21:11 -06:00
Peer Richelsen
b544d5f781 Update PULL_REQUEST_TEMPLATE.md 2022-05-02 16:21:11 -06:00
Hariom Balhara
ebf1373339 Reduce Payload for Event-Types[Avoid 500] (#2627)
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
sean-brydon
75a07f527e Fix scope (#2625) 2022-05-02 16:21:11 -06:00
alannnc
4b75bf7cce Fix/login with provider (#2594) 2022-05-02 16:21:11 -06:00
Agusti Fernandez
e260ba0e49 Swagger docs improved (#2607)
* fix: adds servers in openapi, remove hack in snippets, update deps, make dynamic import to use latests swagger ui deps

* fix: remove unneded import

* fix: adds yarn dev commands for api and swagger

Co-authored-by: Agusti Fernandez Pardo <git@agusti.me>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
sean-brydon
95dfb5b538 Loader Components (#2616)
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2022-05-02 16:21:11 -06:00
sean-brydon
7d3f070e27 Bug/email notes hidden (#2611)
* Fix Width

* Fixes email notes

* Fixing reschedule email

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-05-02 16:21:11 -06:00
Hariom Balhara
01fdbaa990 Improve logs for 500 error in datadog for /book/event (#2593) 2022-05-02 16:21:11 -06:00
Hariom Balhara
05acd26efe Add debugging details (#2585) 2022-05-02 16:21:11 -06:00
sean-brydon
1421b9c0af Feat/impersonate users (#2503)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
2022-05-02 16:21:11 -06:00
sean-brydon
6197ae25c6 Fix providerName (#2589)
Co-authored-by: Omar López <zomars@me.com>
2022-05-02 16:21:11 -06:00
20 changed files with 1454 additions and 104 deletions

View file

@ -84,7 +84,7 @@ export default function App({
}, []); }, []);
return ( return (
<> <>
<Shell large> <Shell large isPublic>
<div className="-mx-4 md:-mx-8"> <div className="-mx-4 md:-mx-8">
<div className="bg-gray-50 px-4"> <div className="bg-gray-50 px-4">
<Link href="/apps"> <Link href="/apps">

View file

@ -2,8 +2,6 @@ import React from "react";
import { SkeletonText } from "@calcom/ui"; import { SkeletonText } from "@calcom/ui";
import BookingsShell from "@components/BookingsShell";
function SkeletonLoader() { function SkeletonLoader() {
return ( return (
<ul className="mt-6 animate-pulse divide-y divide-neutral-200 border border-gray-200 bg-white sm:mx-0 sm:overflow-hidden"> <ul className="mt-6 animate-pulse divide-y divide-neutral-200 border border-gray-200 bg-white sm:mx-0 sm:overflow-hidden">
@ -22,10 +20,9 @@ function SkeletonItem() {
<div className="flex-grow truncate text-sm"> <div className="flex-grow truncate text-sm">
<div className="flex"> <div className="flex">
<div className="flex flex-col space-y-2"> <div className="flex flex-col space-y-2">
<SkeletonText width="32" height="5" /> <SkeletonText width="16" height="5" />
<SkeletonText width="16" height="4" /> <SkeletonText width="32" height="4" />
</div> </div>
<SkeletonText width="24" height="5" className="ml-4" />
</div> </div>
</div> </div>
<div className="mt-4 hidden flex-shrink-0 sm:mt-0 sm:ml-5 lg:flex"> <div className="mt-4 hidden flex-shrink-0 sm:mt-0 sm:ml-5 lg:flex">

View file

@ -24,18 +24,11 @@ import { Frequency as RRuleFrequency } from "rrule";
import { v4 as uuidv4 } from "uuid"; import { v4 as uuidv4 } from "uuid";
import { z } from "zod"; import { z } from "zod";
import { import { useEmbedNonStylesConfig, useIsBackgroundTransparent, useIsEmbed } from "@calcom/embed-core";
useIsEmbed,
useEmbedStyles,
useIsBackgroundTransparent,
useEmbedType,
useEmbedNonStylesConfig,
} from "@calcom/embed-core";
import classNames from "@calcom/lib/classNames"; import classNames from "@calcom/lib/classNames";
import { useLocale } from "@calcom/lib/hooks/useLocale"; import { useLocale } from "@calcom/lib/hooks/useLocale";
import { HttpError } from "@calcom/lib/http-error"; import { HttpError } from "@calcom/lib/http-error";
import { createPaymentLink } from "@calcom/stripe/client"; import { createPaymentLink } from "@calcom/stripe/client";
import { RecurringEvent } from "@calcom/types/Calendar";
import { Button } from "@calcom/ui/Button"; import { Button } from "@calcom/ui/Button";
import { Tooltip } from "@calcom/ui/Tooltip"; import { Tooltip } from "@calcom/ui/Tooltip";
import { EmailInput, Form } from "@calcom/ui/form/fields"; import { EmailInput, Form } from "@calcom/ui/form/fields";
@ -50,7 +43,6 @@ import createRecurringBooking from "@lib/mutations/bookings/create-recurring-boo
import { parseDate, parseRecurringDates } from "@lib/parseDate"; import { parseDate, parseRecurringDates } from "@lib/parseDate";
import slugify from "@lib/slugify"; import slugify from "@lib/slugify";
import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@lib/telemetry"; import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@lib/telemetry";
import { BookingCreateBody } from "@lib/types/booking";
import CustomBranding from "@components/CustomBranding"; import CustomBranding from "@components/CustomBranding";
import AvatarGroup from "@components/ui/AvatarGroup"; import AvatarGroup from "@components/ui/AvatarGroup";

View file

@ -4,6 +4,7 @@ import { MembershipRole } from "@prisma/client";
import Link from "next/link"; import Link from "next/link";
import { useState } from "react"; import { useState } from "react";
import { WEBSITE_URL } from "@calcom/lib/constants";
import { useLocale } from "@calcom/lib/hooks/useLocale"; import { useLocale } from "@calcom/lib/hooks/useLocale";
import showToast from "@calcom/lib/notification"; import showToast from "@calcom/lib/notification";
import Button from "@calcom/ui/Button"; import Button from "@calcom/ui/Button";
@ -17,7 +18,6 @@ import Dropdown, {
import { Tooltip } from "@calcom/ui/Tooltip"; import { Tooltip } from "@calcom/ui/Tooltip";
import TeamAvailabilityModal from "@ee/components/team/availability/TeamAvailabilityModal"; import TeamAvailabilityModal from "@ee/components/team/availability/TeamAvailabilityModal";
import { getPlaceholderAvatar } from "@lib/getPlaceholderAvatar";
import useCurrentUserId from "@lib/hooks/useCurrentUserId"; import useCurrentUserId from "@lib/hooks/useCurrentUserId";
import { inferQueryOutput, trpc } from "@lib/trpc"; import { inferQueryOutput, trpc } from "@lib/trpc";
@ -74,7 +74,7 @@ export default function MemberListItem(props: Props) {
<div className="flex w-full flex-col justify-between sm:flex-row"> <div className="flex w-full flex-col justify-between sm:flex-row">
<div className="flex"> <div className="flex">
<Avatar <Avatar
imageSrc={getPlaceholderAvatar(props.member?.avatar, name)} imageSrc={WEBSITE_URL + "/" + props.member.username + "/avatar.png"}
alt={name || ""} alt={name || ""}
className="h-9 w-9 rounded-full" className="h-9 w-9 rounded-full"
/> />

View file

@ -5,9 +5,9 @@ import Link from "next/link";
import { TeamPageProps } from "pages/team/[slug]"; import { TeamPageProps } from "pages/team/[slug]";
import React from "react"; import React from "react";
import { WEBSITE_URL } from "@calcom/lib/constants";
import Button from "@calcom/ui/Button"; import Button from "@calcom/ui/Button";
import { getPlaceholderAvatar } from "@lib/getPlaceholderAvatar";
import { useLocale } from "@lib/hooks/useLocale"; import { useLocale } from "@lib/hooks/useLocale";
import Avatar from "@components/ui/Avatar"; import Avatar from "@components/ui/Avatar";
@ -52,7 +52,7 @@ const Team = ({ team }: TeamPageProps) => {
<div> <div>
<Avatar <Avatar
alt={member.name || ""} alt={member.name || ""}
imageSrc={getPlaceholderAvatar(member.avatar, member.username)} imageSrc={WEBSITE_URL + "/" + member.username + "/avatar.png"}
className="-mt-4 h-12 w-12" className="-mt-4 h-12 w-12"
/> />
<section className="mt-2 w-full space-y-1"> <section className="mt-2 w-full space-y-1">

View file

@ -24,7 +24,7 @@ export default function ApiKeyListContainer() {
query={query} query={query}
success={({ data }) => ( success={({ data }) => (
<> <>
<div className=" flex flex-col justify-between truncate pl-2 pr-1 sm:flex-row"> <div className="flex flex-col justify-between truncate pl-2 pr-1 sm:flex-row">
<div className="mt-9"> <div className="mt-9">
<h2 className="font-cal text-lg font-medium leading-6 text-gray-900">{t("api_keys")}</h2> <h2 className="font-cal text-lg font-medium leading-6 text-gray-900">{t("api_keys")}</h2>
<p className="mt-1 mb-5 text-sm text-gray-500">{t("api_keys_subtitle")}</p> <p className="mt-1 mb-5 text-sm text-gray-500">{t("api_keys_subtitle")}</p>

View file

@ -3,7 +3,8 @@ import utc from "dayjs/plugin/utc";
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import TimezoneSelect, { ITimezone } from "react-timezone-select"; import TimezoneSelect, { ITimezone } from "react-timezone-select";
import { getPlaceholderAvatar } from "@lib/getPlaceholderAvatar"; import { WEBSITE_URL } from "@calcom/lib/constants";
import { trpc, inferQueryOutput } from "@lib/trpc"; import { trpc, inferQueryOutput } from "@lib/trpc";
import Avatar from "@components/ui/Avatar"; import Avatar from "@components/ui/Avatar";
@ -36,7 +37,7 @@ export default function TeamAvailabilityModal(props: Props) {
<div className="min-w-64 w-64 space-y-5 p-5 pr-0"> <div className="min-w-64 w-64 space-y-5 p-5 pr-0">
<div className="flex"> <div className="flex">
<Avatar <Avatar
imageSrc={getPlaceholderAvatar(props.member?.avatar, props.member?.name as string)} imageSrc={WEBSITE_URL + "/" + props.member?.username + "/avatar.png"}
alt={props.member?.name || ""} alt={props.member?.name || ""}
className="h-14 w-14 rounded-full" className="h-14 w-14 rounded-full"
/> />

View file

@ -4,7 +4,8 @@ import TimezoneSelect, { ITimezone } from "react-timezone-select";
import AutoSizer from "react-virtualized-auto-sizer"; import AutoSizer from "react-virtualized-auto-sizer";
import { FixedSizeList as List } from "react-window"; import { FixedSizeList as List } from "react-window";
import { getPlaceholderAvatar } from "@lib/getPlaceholderAvatar"; import { WEBSITE_URL } from "@calcom/lib/constants";
import { trpc, inferQueryOutput } from "@lib/trpc"; import { trpc, inferQueryOutput } from "@lib/trpc";
import Avatar from "@components/ui/Avatar"; import Avatar from "@components/ui/Avatar";
@ -45,7 +46,7 @@ export default function TeamAvailabilityScreen(props: Props) {
HeaderComponent={ HeaderComponent={
<div className="mb-6 flex items-center"> <div className="mb-6 flex items-center">
<Avatar <Avatar
imageSrc={getPlaceholderAvatar(member?.avatar, member?.name as string)} imageSrc={WEBSITE_URL + "/" + member.username + "/avatar.png"}
alt={member?.name || ""} alt={member?.name || ""}
className="min-w-10 min-h-10 mt-1 h-10 w-10 rounded-full" className="min-w-10 min-h-10 mt-1 h-10 w-10 rounded-full"
/> />

View file

@ -53,7 +53,7 @@ export default class AttendeeRescheduledEmail extends AttendeeScheduledEmail {
${this.attendee.language.translate("event_has_been_rescheduled")} ${this.attendee.language.translate("event_has_been_rescheduled")}
${this.attendee.language.translate("emailed_you_and_any_other_attendees")} ${this.attendee.language.translate("emailed_you_and_any_other_attendees")}
${this.getWhat()} ${this.getWhat()}
${this.getWhen()} ${this.getWhen()}
${this.getLocation()} ${this.getLocation()}
${this.getDescription()} ${this.getDescription()}
${this.getAdditionalNotes()} ${this.getAdditionalNotes()}

View file

@ -11,7 +11,6 @@ export type TeamWithMembers = AsyncReturnType<typeof getTeamWithMembers>;
export async function getTeamWithMembers(id?: number, slug?: string) { export async function getTeamWithMembers(id?: number, slug?: string) {
const userSelect = Prisma.validator<Prisma.UserSelect>()({ const userSelect = Prisma.validator<Prisma.UserSelect>()({
username: true, username: true,
avatar: true,
email: true, email: true,
name: true, name: true,
id: true, id: true,

View file

@ -1,6 +1,6 @@
{ {
"name": "@calcom/web", "name": "@calcom/web",
"version": "1.5.3", "version": "1.5.4",
"private": true, "private": true,
"scripts": { "scripts": {
"analyze": "ANALYZE=true next build", "analyze": "ANALYZE=true next build",

View file

@ -60,10 +60,7 @@ export default function Bookings() {
}; };
return ( return (
<Shell <Shell heading={t("bookings")} subtitle={t("bookings_description")} customLoader={<SkeletonLoader />}>
heading={t("bookings")}
subtitle={t("bookings_description")}
customLoader={<SkeletonLoader></SkeletonLoader>}>
<WipeMyCalActionButton trpc={trpc} bookingStatus={status} bookingsEmpty={isEmpty} /> <WipeMyCalActionButton trpc={trpc} bookingStatus={status} bookingsEmpty={isEmpty} />
<BookingsShell> <BookingsShell>
<div className="-mx-4 flex flex-col sm:mx-auto"> <div className="-mx-4 flex flex-col sm:mx-auto">

View file

@ -13,7 +13,7 @@ import { useSession } from "next-auth/react";
import Link from "next/link"; import Link from "next/link";
import { useRouter } from "next/router"; import { useRouter } from "next/router";
import { useEffect, useRef, useState } from "react"; import { useEffect, useRef, useState } from "react";
import rrule from "rrule"; import RRule from "rrule";
import { SpaceBookingSuccessPage } from "@calcom/app-store/spacebooking/components"; import { SpaceBookingSuccessPage } from "@calcom/app-store/spacebooking/components";
import { import {
@ -379,7 +379,7 @@ export default function Success(props: SuccessProps) {
: "") + : "") +
(props.eventType.recurringEvent (props.eventType.recurringEvent
? "&recur=" + ? "&recur=" +
encodeURIComponent(new rrule(props.eventType.recurringEvent).toString()) encodeURIComponent(new RRule(props.eventType.recurringEvent).toString())
: "") : "")
}> }>
<a className="mx-2 h-10 w-10 rounded-sm border border-neutral-200 px-3 py-2 dark:border-neutral-700 dark:text-white"> <a className="mx-2 h-10 w-10 rounded-sm border border-neutral-200 px-3 py-2 dark:border-neutral-700 dark:text-white">

View file

@ -6,6 +6,7 @@ import Link from "next/link";
import React, { useEffect } from "react"; import React, { useEffect } from "react";
import { useIsEmbed } from "@calcom/embed-core"; import { useIsEmbed } from "@calcom/embed-core";
import { WEBSITE_URL } from "@calcom/lib/constants";
import Button from "@calcom/ui/Button"; import Button from "@calcom/ui/Button";
import { getPlaceholderAvatar } from "@lib/getPlaceholderAvatar"; import { getPlaceholderAvatar } from "@lib/getPlaceholderAvatar";
@ -13,7 +14,6 @@ import { useExposePlanGlobally } from "@lib/hooks/useExposePlanGlobally";
import { useLocale } from "@lib/hooks/useLocale"; import { useLocale } from "@lib/hooks/useLocale";
import useTheme from "@lib/hooks/useTheme"; import useTheme from "@lib/hooks/useTheme";
import { useToggleQuery } from "@lib/hooks/useToggleQuery"; import { useToggleQuery } from "@lib/hooks/useToggleQuery";
import { defaultAvatarSrc } from "@lib/profile";
import { getTeamWithMembers } from "@lib/queries/teams"; import { getTeamWithMembers } from "@lib/queries/teams";
import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@lib/telemetry"; import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@lib/telemetry";
import { inferSSRProps } from "@lib/types/inferSSRProps"; import { inferSSRProps } from "@lib/types/inferSSRProps";
@ -68,7 +68,7 @@ function TeamPage({ team }: TeamPageProps) {
size={10} size={10}
items={type.users.map((user) => ({ items={type.users.map((user) => ({
alt: user.name || "", alt: user.name || "",
image: user.avatar || "", image: WEBSITE_URL + "/" + user.username + "/avatar.png" || "",
}))} }))}
/> />
</div> </div>
@ -147,7 +147,7 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
...type, ...type,
users: type.users.map((user) => ({ users: type.users.map((user) => ({
...user, ...user,
avatar: user.avatar || defaultAvatarSrc({ email: user.email || "" }), avatar: WEBSITE_URL + "/" + user.username + "/avatar.png",
})), })),
})); }));

View file

@ -820,5 +820,6 @@
"zapier_setup_instructions": "<0>Log into your Zapier account and create a new Zap.</0><1>Select Cal.com as your Trigger app. Also choose a Trigger event.</1><2>Choose your account and then enter your Unique API Key.</2><3>Test your Trigger.</3><4>You're set!</4>", "zapier_setup_instructions": "<0>Log into your Zapier account and create a new Zap.</0><1>Select Cal.com as your Trigger app. Also choose a Trigger event.</1><2>Choose your account and then enter your Unique API Key.</2><3>Test your Trigger.</3><4>You're set!</4>",
"install_zapier_app": "Please first install the Zapier App in the app store.", "install_zapier_app": "Please first install the Zapier App in the app store.",
"go_to_app_store": "Go to App Store", "go_to_app_store": "Go to App Store",
"calendar_error": "Something went wrong, try reconnecting your calendar with all necessary permissions" "calendar_error": "Something went wrong, try reconnecting your calendar with all necessary permissions",
"calendar_no_busy_slots": "There are no busy slots"
} }

View file

@ -28,7 +28,7 @@
"heroku-postbuild": "turbo run @calcom/web#build", "heroku-postbuild": "turbo run @calcom/web#build",
"lint": "turbo run lint", "lint": "turbo run lint",
"lint:report": "turbo run lint:report", "lint:report": "turbo run lint:report",
"postinstall": "turbo run postinstall", "postinstall": "turbo run post-install",
"pre-commit": "lint-staged", "pre-commit": "lint-staged",
"env-check:common": "dotenv-checker --schema .env.example --env .env", "env-check:common": "dotenv-checker --schema .env.example --env .env",
"env-check:app-store": "dotenv-checker --schema .env.appStore.example --env .env.appStore", "env-check:app-store": "dotenv-checker --schema .env.appStore.example --env .env.appStore",

View file

@ -1,3 +1,4 @@
export * as api from "./api"; export * as api from "./api";
export * as components from "./components";
export * as lib from "./lib"; export * as lib from "./lib";
export { metadata } from "./_metadata"; export { metadata } from "./_metadata";

View file

@ -3,7 +3,7 @@
"version": "0.0.0", "version": "0.0.0",
"private": true, "private": true,
"scripts": { "scripts": {
"build": "yarn generate-schemas", "build": "yarn prisma migrate deploy && yarn seed-app-store",
"clean": "rm -rf .turbo && rm -rf node_modules", "clean": "rm -rf .turbo && rm -rf node_modules",
"db-deploy": "yarn prisma migrate deploy", "db-deploy": "yarn prisma migrate deploy",
"db-migrate": "yarn prisma migrate dev", "db-migrate": "yarn prisma migrate dev",
@ -13,10 +13,9 @@
"db-setup": "run-s db-up db-deploy db-seed", "db-setup": "run-s db-up db-deploy db-seed",
"db-studio": "yarn prisma studio", "db-studio": "yarn prisma studio",
"db-up": "docker-compose up -d", "db-up": "docker-compose up -d",
"deploy": "yarn prisma migrate deploy && yarn seed-app-store",
"dx": "yarn db-setup", "dx": "yarn db-setup",
"generate-schemas": "prisma generate && prisma format", "generate-schemas": "prisma generate && prisma format",
"postinstall": "yarn generate-schemas", "post-install": "yarn generate-schemas",
"seed-app-store": "ts-node --transpile-only ./seed-app-store.ts" "seed-app-store": "ts-node --transpile-only ./seed-app-store.ts"
}, },
"devDependencies": { "devDependencies": {

View file

@ -3,10 +3,6 @@
"baseBranch": "origin/main", "baseBranch": "origin/main",
"globalDependencies": [".env", "packages/prisma/.env"], "globalDependencies": [".env", "packages/prisma/.env"],
"pipeline": { "pipeline": {
"@calcom/prisma#build": {
"dependsOn": ["$DATABASE_URL"],
"outputs": ["zod/**"]
},
"@calcom/prisma#db-deploy": { "@calcom/prisma#db-deploy": {
"cache": false, "cache": false,
"dependsOn": ["$DATABASE_URL"] "dependsOn": ["$DATABASE_URL"]
@ -103,7 +99,7 @@
"db-seed": {}, "db-seed": {},
"deploy": { "deploy": {
"cache": false, "cache": false,
"dependsOn": ["@calcom/web#build", "@calcom/embed-core#build"], "dependsOn": ["@calcom/web#build"],
"outputs": [] "outputs": []
}, },
"clean": { "clean": {
@ -123,7 +119,7 @@
"cache": false, "cache": false,
"outputs": ["lint-results"] "outputs": ["lint-results"]
}, },
"postinstall": {}, "post-install": {},
"start": {}, "start": {},
"embed-tests": { "embed-tests": {
"cache": false "cache": false

1480
yarn.lock

File diff suppressed because it is too large Load diff