Fix @calcom/embed-react installation with TS project (#2870)

This commit is contained in:
Hariom Balhara
2022-05-27 09:37:02 -06:00
committed by GitHub
parent d6678f9b3a
commit 445cdd7cbf
41 changed files with 171 additions and 107 deletions
+9 -1
View File
@@ -15,7 +15,8 @@
"Website(3001)",
"Embed Core(3100)",
"Embed React(3101)",
"Prisma Studio(5555)"
"Prisma Studio(5555)",
"Maildev(587)"
],
// Mark as the default build task so cmd/ctrl+shift+b will create them
"group": {
@@ -65,6 +66,13 @@
"command": "yarn db-studio",
"isBackground": false,
"problemMatcher": []
},
{
"label": "Maildev(587)",
"type": "shell",
"command": "maildev -s 587",
"isBackground": false,
"problemMatcher": []
}
]
}
+1 -1
View File
@@ -1,6 +1,6 @@
import { useEffect } from "react";
import { useBrandColors } from "@calcom/embed-core";
import { useBrandColors } from "@calcom/embed-core/embed-iframe";
const brandColor = "#292929";
const brandTextColor = "#ffffff";
+1 -1
View File
@@ -19,7 +19,7 @@ import { useRouter } from "next/router";
import React, { Fragment, ReactNode, useEffect, useState } from "react";
import { Toaster } from "react-hot-toast";
import { useIsEmbed } from "@calcom/embed-core";
import { useIsEmbed } from "@calcom/embed-core/embed-iframe";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import Button from "@calcom/ui/Button";
import Dropdown, {
+1 -1
View File
@@ -7,7 +7,7 @@ import utc from "dayjs/plugin/utc";
import { memoize } from "lodash";
import { useEffect, useRef, useState } from "react";
import { useEmbedStyles } from "@calcom/embed-core";
import { useEmbedStyles } from "@calcom/embed-core/embed-iframe";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import classNames from "@lib/classNames";
@@ -30,7 +30,7 @@ import {
useIsBackgroundTransparent,
sdkActionManager,
useEmbedNonStylesConfig,
} from "@calcom/embed-core";
} from "@calcom/embed-core/embed-iframe";
import classNames from "@calcom/lib/classNames";
import { WEBAPP_URL } from "@calcom/lib/constants";
import { useLocale } from "@calcom/lib/hooks/useLocale";
@@ -24,7 +24,11 @@ import { Frequency as RRuleFrequency } from "rrule";
import { v4 as uuidv4 } from "uuid";
import { z } from "zod";
import { useEmbedNonStylesConfig, useIsBackgroundTransparent, useIsEmbed } from "@calcom/embed-core";
import {
useEmbedNonStylesConfig,
useIsBackgroundTransparent,
useIsEmbed,
} from "@calcom/embed-core/embed-iframe";
import classNames from "@calcom/lib/classNames";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { HttpError } from "@calcom/lib/http-error";
+1 -1
View File
@@ -1,6 +1,6 @@
import Link from "next/link";
import { useIsEmbed } from "@calcom/embed-core";
import { useIsEmbed } from "@calcom/embed-core/embed-iframe";
import { useLocale } from "@lib/hooks/useLocale";
@@ -9,7 +9,7 @@ import Head from "next/head";
import { FC, useEffect, useState } from "react";
import { FormattedNumber, IntlProvider } from "react-intl";
import { sdkActionManager, useIsEmbed } from "@calcom/embed-core";
import { sdkActionManager, useIsEmbed } from "@calcom/embed-core/embed-iframe";
import getStripe from "@calcom/stripe/client";
import PaymentComponent from "@ee/components/stripe/Payment";
import { PaymentPageProps } from "@ee/pages/payment/[uid]";
+1 -1
View File
@@ -1,7 +1,7 @@
import Head from "next/head";
import { useEffect, useState } from "react";
import { useEmbedTheme } from "@calcom/embed-core";
import { useEmbedTheme } from "@calcom/embed-core/embed-iframe";
import { Maybe } from "@trpc/server";
+1 -1
View File
@@ -30,7 +30,7 @@
"@calcom/app-store": "*",
"@calcom/core": "*",
"@calcom/ee": "*",
"@calcom/embed-core": "*",
"@calcom/embed-core": "^1.1.0-beta.10",
"@calcom/lib": "*",
"@calcom/prisma": "*",
"@calcom/stripe": "*",
+6 -1
View File
@@ -10,7 +10,12 @@ import { useEffect, useState } from "react";
import { Toaster } from "react-hot-toast";
import { JSONObject } from "superjson/dist/types";
import { sdkActionManager, useEmbedNonStylesConfig, useEmbedStyles, useIsEmbed } from "@calcom/embed-core";
import {
sdkActionManager,
useEmbedNonStylesConfig,
useEmbedStyles,
useIsEmbed,
} from "@calcom/embed-core/embed-iframe";
import defaultEvents, {
getDynamicEventDescription,
getGroupName,
+1 -1
View File
@@ -22,7 +22,7 @@ import {
useEmbedNonStylesConfig,
useIsBackgroundTransparent,
useIsEmbed,
} from "@calcom/embed-core";
} from "@calcom/embed-core/embed-iframe";
import { getDefaultEvent } from "@calcom/lib/defaultEvents";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { localStorage } from "@calcom/lib/webstorage";
+1 -1
View File
@@ -5,7 +5,7 @@ import { GetServerSidePropsContext } from "next";
import Link from "next/link";
import React, { useEffect } from "react";
import { useIsEmbed } from "@calcom/embed-core";
import { useIsEmbed } from "@calcom/embed-core/embed-iframe";
import { WEBSITE_URL } from "@calcom/lib/constants";
import Button from "@calcom/ui/Button";
@@ -0,0 +1,2 @@
export * from "./src/embed-iframe";
export * from "./src/sdk-event";
+3 -1
View File
@@ -1,7 +1,9 @@
/// <reference types="vite/client" />
interface ImportMetaEnv {
readonly NEXT_PUBLIC_WEBSITE_URL: string;
readonly EMBED_PUBLIC_WEBAPP_URL: string;
readonly EMBED_PUBLIC_VERCEL_URL: string;
readonly EMBED_PUBLIC_EMBED_LIB_URL: string;
}
interface ImportMeta {
+1 -1
View File
@@ -1,2 +1,2 @@
export * from "./src/embed-iframe";
export * from "./src/sdk-event";
export * from "./src/embed";
+12 -8
View File
@@ -1,10 +1,11 @@
{
"name": "@calcom/embed-core",
"version": "1.0.0",
"version": "1.1.0-beta.10",
"description": "This is the vanilla JS core script that embeds Cal Link",
"main": "./index.ts",
"main": "./dist/embed/embed.js",
"types": "./dist/index.d.ts",
"scripts": {
"__build": "yarn tailwind && vite build",
"__build": "yarn tailwind && vite build && yarn tsc --emitDeclarationOnly --declarationDir dist && cp -r ../../../apps/web/public/embed ./dist/",
"__dev": "yarn __build --mode development",
"build": "NEXT_PUBLIC_EMBED_FINGER_PRINT=$(git rev-parse --short HEAD) yarn __build",
"build-preview": "PREVIEW_BUILD=1 yarn __build ",
@@ -16,8 +17,12 @@
"type-check": "tsc --pretty --noEmit",
"lint": "eslint --ext .ts,.js src",
"embed-tests": "yarn playwright test --config=playwright/config/playwright.config.ts",
"embed-tests-quick": "QUICK=true yarn embed-tests"
"embed-tests-quick": "QUICK=true yarn embed-tests",
"prepare": "NEXT_PUBLIC_WEBAPP_URL='https://app.cal.com' yarn build"
},
"files": [
"dist"
],
"postcss": {
"map": false,
"plugins": {
@@ -29,11 +34,10 @@
"autoprefixer": "^10.4.7",
"eslint": "^8.15.0",
"postcss": "^8.4.13",
"vite": "^2.9.9"
},
"dependencies": {
"vite": "^2.9.9",
"tailwindcss": "^3.0.24",
"tsc": "^2.0.4",
"typescript": "^4.6.4"
}
},
"dependencies": {}
}
@@ -22,7 +22,8 @@ const config: PlaywrightTestConfig = {
expect: {
toMatchSnapshot: {
// Opacity transitions can cause small differences
maxDiffPixels: 50,
// Every month the rendered month changes failing the snapshot tests. So, increase the threshold to catch major bugs only.
maxDiffPixelRatio: 0.1,
},
},
webServer: {
@@ -123,7 +124,7 @@ expect.extend({
const searchParams = u.searchParams;
const expectedSearchParams = expectedUrlDetails.searchParams || {};
for (let [expectedKey, expectedValue] of Object.entries(expectedSearchParams)) {
for (const [expectedKey, expectedValue] of Object.entries(expectedSearchParams)) {
const value = searchParams.get(expectedKey);
if (value !== expectedValue) {
return {
@@ -36,7 +36,7 @@ export const getEmbedIframe = async ({ page, pathname }: { page: Page; pathname:
await new Promise((resolve) => {
setTimeout(resolve, 2000);
});
let embedIframe = page.frame("cal-embed");
const embedIframe = page.frame("cal-embed");
if (!embedIframe) {
return null;
}
@@ -83,7 +83,7 @@ export async function bookFirstEvent(username: string, frame: Frame, page: Page)
const responseObj = await response.json();
const bookingId = responseObj.uid;
// Make sure we're navigated to the success page
await expect(page.locator("[data-testid=success-page]")).toBeVisible();
await expect(frame.locator("[data-testid=success-page]")).toBeVisible();
expect(await page.screenshot()).toMatchSnapshot("success-page.png");
return bookingId;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 KiB

After

Width:  |  Height:  |  Size: 260 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 282 KiB

After

Width:  |  Height:  |  Size: 286 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 262 KiB

After

Width:  |  Height:  |  Size: 262 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 353 KiB

After

Width:  |  Height:  |  Size: 313 KiB

@@ -1,5 +1,4 @@
import { CalWindow } from "@calcom/embed-snippet";
import { CalWindow } from "../embed";
import getFloatingButtonHtml from "./FloatingButtonHtml";
export class FloatingButton extends HTMLElement {
@@ -1,5 +1,4 @@
import { CalWindow } from "@calcom/embed-snippet";
import { CalWindow } from "../embed";
import loaderCss from "../loader.css";
import { getErrorString } from "../utils";
import inlineHtml from "./inlineHtml";
@@ -1,5 +1,4 @@
import { CalWindow } from "@calcom/embed-snippet";
import { CalWindow } from "../embed";
import loaderCss from "../loader.css";
import { getErrorString } from "../utils";
import modalBoxHtml from "./ModalBoxHtml";
+20 -5
View File
@@ -1,5 +1,3 @@
import type { CalWindow } from "@calcom/embed-snippet";
import { FloatingButton } from "./FloatingButton/FloatingButton";
import { Inline } from "./Inline/inline";
import { ModalBox } from "./ModalBox/ModalBox";
@@ -11,8 +9,7 @@ import allCss from "./tailwind.generated.css";
// HACK: Redefine and don't import WEBAPP_URL as it causes import statement to be present in built file.
// This is happening because we are not able to generate an App and a lib using single Vite Config.
const WEBAPP_URL =
(import.meta.env.NEXT_PUBLIC_WEBAPP_URL_TYPO as string) ||
`https://${import.meta.env.NEXT_PUBLIC_VERCEL_URL}`;
import.meta.env.EMBED_PUBLIC_WEBAPP_URL || `https://${import.meta.env.EMBED_PUBLIC_VERCEL_URL}`;
customElements.define("cal-modal-box", ModalBox);
customElements.define("cal-floating-button", FloatingButton);
@@ -33,7 +30,7 @@ if (!globalCal || !globalCal.q) {
// Store Commit Hash to know exactly what version of the code is running
// TODO: Ideally it should be the version as per package.json and then it can be renamed to version.
// But because it is built on local machine right now, it is much more reliable to have the commit hash.
globalCal.fingerprint = import.meta.env.NEXT_PUBLIC_EMBED_FINGER_PRINT as string;
globalCal.fingerprint = import.meta.env.EMBED_PUBLIC_EMBED_FINGER_PRINT as string;
globalCal.__css = allCss;
document.head.appendChild(document.createElement("style")).innerHTML = css;
@@ -512,6 +509,24 @@ export class Cal {
}
}
export interface GlobalCal {
(methodName: string, arg?: any): void;
/** Marks that the embed.js is loaded. Avoids re-downloading it. */
loaded?: boolean;
/** Maintains a queue till the time embed.js isn't loaded */
q?: InstructionQueue;
/** If user registers multiple namespaces, those are available here */
ns?: Record<string, GlobalCal>;
instance?: Cal;
__css?: string;
fingerprint?: string;
__logQueue?: any[];
}
export interface CalWindow extends Window {
Cal?: GlobalCal;
}
globalCal.instance = new Cal("", globalCal.q!);
for (const [ns, api] of Object.entries(globalCal.ns!)) {
+4 -4
View File
@@ -1,10 +1,10 @@
import { CalWindow } from "@calcom/embed-snippet";
import { CalWindow } from "./embed";
const WEBAPP_URL =
import.meta.env.NEXT_PUBLIC_WEBAPP_URL || `https://${import.meta.env.NEXT_PUBLIC_VERCEL_URL}`;
const EMBED_LIB_URL = import.meta.env.NEXT_PUBLIC_EMBED_LIB_URL || `${WEBAPP_URL}/embed/embed.js`;
import.meta.env.EMBED_PUBLIC_WEBAPP_URL || `https://${import.meta.env.EMBED_PUBLIC_VERCEL_URL}`;
const EMBED_LIB_URL = import.meta.env.EMBED_PUBLIC_EMBED_LIB_URL || `${WEBAPP_URL}/embed/embed.js`;
(window as any).fingerprint = import.meta.env.NEXT_PUBLIC_EMBED_FINGER_PRINT as string;
(window as any).fingerprint = import.meta.env.EMBED_PUBLIC_EMBED_FINGER_PRINT as string;
// Install Cal Embed Code Snippet
(function (C, A, L) {
+1 -1
View File
@@ -8,6 +8,6 @@
"moduleResolution": "Node",
"baseUrl": "."
},
"include": ["."],
"include": ["src", "env.d.ts", "index.ts"],
"exclude": ["dist", "build", "node_modules"]
}
+3 -4
View File
@@ -1,12 +1,11 @@
require("dotenv").config({ path: "../../../.env" });
process.env.NEXT_PUBLIC_VERCEL_URL = process.env.VERCEL_URL;
import viteBaseConfig from "../vite.config";
const path = require("path");
const { defineConfig } = require("vite");
module.exports = defineConfig((configEnv) => {
const config = {
envPrefix: "NEXT_PUBLIC_",
...viteBaseConfig,
base: "/embed/",
build: {
minify: "terser",
+10
View File
@@ -1 +1,11 @@
/// <reference types="vite/client" />
interface ImportMetaEnv {
readonly EMBED_PUBLIC_WEBAPP_URL: string;
readonly EMBED_PUBLIC_VERCEL_URL: string;
readonly EMBED_PUBLIC_EMBED_LIB_URL: string;
}
interface ImportMeta {
readonly env: ImportMetaEnv;
}
+8 -6
View File
@@ -1,13 +1,13 @@
{
"name": "@calcom/embed-react",
"version": "1.0.5",
"version": "1.0.6-beta.10",
"description": "Embed Cal Link as a React Component",
"scripts": {
"dev": "vite --port=3101 --open",
"tsc": "tsc",
"build": "vite build && yarn tsc --emitDeclarationOnly --declarationDir dist",
"preview": "vite preview",
"prepare": "yarn build",
"prepare": "NEXT_PUBLIC_EMBED_LIB_URL='https://app.cal.com/embed/embed.js' NEXT_PUBLIC_WEBAPP_URL='https://app.cal.com' yarn build",
"type-check": "tsc --pretty --noEmit",
"lint": "eslint --ext .ts,.js,.tsx,.jsx ./src",
"embed-tests": "yarn playwright test --config=./playwright/config/playwright.config.ts",
@@ -17,7 +17,7 @@
},
"main": "./dist/Cal.umd.js",
"module": "./dist/Cal.es.js",
"types": "./dist/src/index.d.ts",
"types": "./dist/index.d.ts",
"peerDependencies": {
"react": "^18.1.0",
"react-dom": "^18.1.0"
@@ -32,14 +32,16 @@
}
},
"devDependencies": {
"@calcom/embed-snippet": "^1.0.0",
"@types/react": "18.0.9",
"@types/react-dom": "18.0.4",
"@vitejs/plugin-react": "^1.3.2",
"eslint": "^8.15.0",
"vite": "^2.9.9"
"vite": "^2.9.9",
"playwright": "^1.22.1",
"typescript": "^4.6.4"
},
"dependencies": {
"typescript": "^4.6.4"
"@calcom/embed-snippet": "1.0.1-beta.10",
"@calcom/embed-core": "1.1.0-beta.10"
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
import { CalWindow } from "@calcom/embed-snippet";
import { CalWindow } from "@calcom/embed-core";
import Cal from "./Cal";
+1 -1
View File
@@ -10,6 +10,6 @@
"@lib/*": ["../../../apps/web/lib/*"]
}
},
"include": ["."],
"include": ["src","env.d.ts"],
"exclude": ["dist", "build", "node_modules", "test-cal.tsx"]
}
+3 -1
View File
@@ -2,10 +2,12 @@ import react from "@vitejs/plugin-react";
import path from "path";
import { defineConfig } from "vite";
import viteBaseConfig from "../vite.config";
// https://vitejs.dev/config/
export default defineConfig({
...viteBaseConfig,
plugins: [react()],
envPrefix: "NEXT_PUBLIC_",
build: {
lib: {
entry: path.resolve(__dirname, "src/index.ts"),
+13 -4
View File
@@ -1,14 +1,23 @@
{
"name": "@calcom/embed-snippet",
"version": "1.0.0",
"main": "src/index.ts",
"version": "1.0.1-beta.10",
"main": "./dist/snippet.umd.js",
"module": "./dist/snippet.es.js",
"description": "Vanilla JS embed snippet that is responsible to fetch @calcom/embed-core and thus show Cal Link as an embed on a page.",
"scripts": {
"build": "vite build",
"build": "vite build && yarn tsc --emitDeclarationOnly --declarationDir dist",
"type-check": "tsc --pretty --noEmit",
"lint": "eslint --ext .ts,.js src"
"lint": "eslint --ext .ts,.js src",
"prepare":"NEXT_PUBLIC_EMBED_LIB_URL='https://app.cal.com/embed/embed.js' NEXT_PUBLIC_WEBAPP_URL='https://app.cal.com' yarn build"
},
"files": [
"dist"
],
"types": "./dist/index.d.ts",
"devDependencies": {
"eslint": "^8.15.0"
},
"dependencies": {
"@calcom/embed-core": "^1.1.0-beta.10"
}
}
+3 -21
View File
@@ -4,30 +4,12 @@
* As we want to keep control on the size of this snippet but we want some portion of it to be still readable.
* So, write the code that you need directly but keep it short.
*/
import type { Cal as CalClass, InstructionQueue } from "@calcom/embed-core/src/embed";
import { CalWindow } from "@calcom/embed-core";
const WEBAPP_URL =
import.meta.env.NEXT_PUBLIC_WEBAPP_URL || `https://${import.meta.env.NEXT_PUBLIC_VERCEL_URL}`;
import.meta.env.EMBED_PUBLIC_WEBAPP_URL || `https://${import.meta.env.EMBED_PUBLIC_VERCEL_URL}`;
const EMBED_LIB_URL = import.meta.env.NEXT_PUBLIC_EMBED_LIB_URL || `${WEBAPP_URL}/embed/embed.js`;
export interface GlobalCal {
(methodName: string, arg?: any): void;
/** Marks that the embed.js is loaded. Avoids re-downloading it. */
loaded?: boolean;
/** Maintains a queue till the time embed.js isn't loaded */
q?: InstructionQueue;
/** If user registers multiple namespaces, those are available here */
ns?: Record<string, GlobalCal>;
instance?: CalClass;
__css?: string;
fingerprint?: string;
__logQueue?: any[];
}
export interface CalWindow extends Window {
Cal?: GlobalCal;
}
const EMBED_LIB_URL = import.meta.env.EMBED_PUBLIC_EMBED_LIB_URL || `${WEBAPP_URL}/embed/embed.js`;
export default function EmbedSnippet(url = EMBED_LIB_URL) {
(function (C: CalWindow, A, L) {
+2 -1
View File
@@ -2,7 +2,8 @@
"extends": "@calcom/tsconfig/base.json",
"compilerOptions": {
"baseUrl": ".",
"module": "esnext"
"module": "esnext",
"declaration": true
},
"include": ["."],
"exclude": ["dist", "build", "node_modules"]
+2 -4
View File
@@ -1,13 +1,11 @@
require("dotenv").config({ path: "../../../.env" });
import viteBaseConfig from "../vite.config";
const path = require("path");
const { defineConfig } = require("vite");
process.env.NEXT_PUBLIC_VERCEL_URL = process.env.VERCEL_URL;
module.exports = defineConfig({
...viteBaseConfig,
build: {
envPrefix: "NEXT_PUBLIC_",
lib: {
entry: path.resolve(__dirname, "src", "index.ts"),
name: "snippet",
+9
View File
@@ -0,0 +1,9 @@
require("dotenv").config({ path: "../../.env" });
process.env.EMBED_PUBLIC_VERCEL_URL = process.env.VERCEL_URL;
process.env.EMBED_PUBLIC_WEBAPP_URL = process.env.NEXT_PUBLIC_WEBAPP_URL;
process.env.EMBED_PUBLIC_EMBED_LIB_URL = process.env.NEXT_PUBLIC_EMBED_LIB_URL;
const viteBaseConfig = {
envPrefix: "EMBED_PUBLIC_",
};
export default viteBaseConfig;
+35 -21
View File
@@ -746,6 +746,18 @@
resolved "https://registry.yarnpkg.com/@braintree/sanitize-url/-/sanitize-url-6.0.0.tgz#fe364f025ba74f6de6c837a84ef44bdb1d61e68f"
integrity sha512-mgmE7XBYY/21erpzhexk4Cj1cyTQ9LzvnTxtzM17BJ7ERMNE6W72mQRo0I1Ud8eFJ+RVVIcBNhLFZ3GX4XFz5w==
"@calcom/embed-react@^1.0.2":
version "1.0.5"
resolved "https://registry.yarnpkg.com/@calcom/embed-react/-/embed-react-1.0.5.tgz#8c14bd3d89105e5ba6d0720ed74ec76f8a883f89"
integrity sha512-d9OXMM8w+F9ztl0g+FOQXtJVgIlZAyEw5lhX1aumFnMxHJJWF361//u5D2hsnnAunRV3444iAvI8++848Tf3Vg==
dependencies:
"@calcom/embed-snippet" "^1.0.0"
"@calcom/embed-snippet@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@calcom/embed-snippet/-/embed-snippet-1.0.0.tgz#e4cf75e0b217312767287b20db54cab9c8ebf94f"
integrity sha512-nMcFkNNhwXqaS55JPeGVj2arDpu1ka6TRC1n1g2cC8G7fLEcWrJbkdiVkoQL8YrEm8t74CgtEE2BLCU4+LTzmg==
"@cnakazawa/watch@^1.0.3":
version "1.0.4"
resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a"
@@ -1166,7 +1178,7 @@
resolved "https://registry.yarnpkg.com/@glidejs/glide/-/glide-3.5.2.tgz#7012c5920ecf202bbda44d8526fc979984b6dd54"
integrity sha512-7jGciNJ2bQ4eZLSNlSZ+VAyW63kALf420CvkEpK4lEsUfWJq9odqimci0YCiyNyMUFB+pWHwLYyNc57dijYsCg==
"@headlessui/react@^1.4.1", "@headlessui/react@^1.5.0":
"@headlessui/react@^1.4.1":
version "1.6.1"
resolved "https://registry.yarnpkg.com/@headlessui/react/-/react-1.6.1.tgz#d822792e589aac005462491dd62f86095e0c3bef"
integrity sha512-gMd6uIs1U4Oz718Z5gFoV0o/vD43/4zvbyiJN9Dt7PK9Ubxn+TmJwTmYwyNJc5KxxU1t0CmgTNgwZX9+4NjCnQ==
@@ -3092,7 +3104,7 @@
dependencies:
defer-to-connect "^1.0.1"
"@tailwindcss/forms@^0.5.0", "@tailwindcss/forms@^0.5.1":
"@tailwindcss/forms@^0.5.1":
version "0.5.1"
resolved "https://registry.yarnpkg.com/@tailwindcss/forms/-/forms-0.5.1.tgz#7fe86b9b67e6d91cb902e2d3f4ebe561cc057a13"
integrity sha512-QSwsFORnC2BAP0lRzQkz1pw+EzIiiPdk4e27vGQjyXkwJPeC7iLIRVndJzf9CJVbcrrIcirb/TfxF3gRTyFEVA==
@@ -4352,7 +4364,7 @@ autolinker@^3.11.0:
dependencies:
tslib "^2.3.0"
autoprefixer@^10.3.4, autoprefixer@^10.4.2, autoprefixer@^10.4.7:
autoprefixer@^10.3.4, autoprefixer@^10.4.7:
version "10.4.7"
resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.7.tgz#1db8d195f41a52ca5069b7593be167618edbbedf"
integrity sha512-ypHju4Y2Oav95SipEcCcI5J7CGPuvz8oat7sUtYj3ClK44bldfvtvcxK6IEK++7rqB7YchDGzweZIBG+SD0ZAA==
@@ -5240,11 +5252,6 @@ chardet@^0.7.0:
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
chart.js@^3.7.1:
version "3.7.1"
resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-3.7.1.tgz#0516f690c6a8680c6c707e31a4c1807a6f400ada"
integrity sha512-8knRegQLFnPQAheZV8MjxIXc5gQEfDFD897BJgv/klO/vtIyFFmgMXrNfgrXpbTr/XbTturxRgxIXx/Y+ASJBA==
chokidar@^3.5.3:
version "3.5.3"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
@@ -6775,7 +6782,7 @@ eslint-visitor-keys@^3.3.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
eslint@8.15.0, eslint@^8.10.0, eslint@^8.15.0:
eslint@^8.10.0, eslint@^8.15.0:
version "8.15.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.15.0.tgz#fea1d55a7062da48d82600d2e0974c55612a11e9"
integrity sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA==
@@ -11793,7 +11800,7 @@ next-api-middleware@^1.0.1:
dependencies:
debug "^4.3.2"
next-auth@^4.3.3, next-auth@^4.3.4:
next-auth@^4.3.4:
version "4.3.4"
resolved "https://registry.yarnpkg.com/next-auth/-/next-auth-4.3.4.tgz#7b241e34e1f68632768cef8ee289e33256cb2b19"
integrity sha512-8dGkNicbxY2BYsJq4uOJIEsGt39wXj5AViTBsVfbRQqtAFmZmXYHutf90VBmobm8rT2+Xl60HDUTkuVVK+x+xw==
@@ -12863,6 +12870,18 @@ playwright-core@1.22.1:
resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.22.1.tgz#59ddf903546171fdfd9c3dc189630c883619667c"
integrity sha512-H+ZUVYnceWNXrRf3oxTEKAr81QzFsCKu5Fp//fEjQvqgKkfA1iX3E9DBrPJpPNOrgVzcE+IqeI0fDmYJe6Ynnw==
playwright-core@1.22.2:
version "1.22.2"
resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.22.2.tgz#ed2963d79d71c2a18d5a6fd25b60b9f0a344661a"
integrity sha512-w/hc/Ld0RM4pmsNeE6aL/fPNWw8BWit2tg+TfqJ3+p59c6s3B6C8mXvXrIPmfQEobkcFDc+4KirNzOQ+uBSP1Q==
playwright@^1.22.1:
version "1.22.2"
resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.22.2.tgz#353a7c29f89ca9600edc7a9a30aed790823c797d"
integrity sha512-hUTpg7LytIl3/O4t0AQJS1V6hWsaSY5uZ7w1oCC8r3a1AQN5d6otIdCkiB3cbzgQkcMaRxisinjMFMVqZkybdQ==
dependencies:
playwright-core "1.22.2"
pngjs@^3.0.0, pngjs@^3.3.3:
version "3.4.0"
resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-3.4.0.tgz#99ca7d725965fb655814eaf65f38f12bbdbf555f"
@@ -12922,7 +12941,7 @@ postcss@8.4.5:
picocolors "^1.0.0"
source-map-js "^1.0.1"
postcss@^8.3.6, postcss@^8.4.13, postcss@^8.4.8:
postcss@^8.3.6, postcss@^8.4.13:
version "8.4.13"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.13.tgz#7c87bc268e79f7f86524235821dfdf9f73e5d575"
integrity sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==
@@ -13342,11 +13361,6 @@ react-calendar@^3.3.1:
merge-class-names "^1.1.1"
prop-types "^15.6.0"
react-chartjs-2@^4.0.1:
version "4.1.0"
resolved "https://registry.yarnpkg.com/react-chartjs-2/-/react-chartjs-2-4.1.0.tgz#2a123df16d3a987c54eb4e810ed766d3c03adf8d"
integrity sha512-AsUihxEp8Jm1oBhbEovE+w50m9PVNhz1sfwEIT4hZduRC0m14gHWHd0cUaxkFDb8HNkdMIGzsNlmVqKiOpU74g==
react-colorful@^5.5.1:
version "5.5.1"
resolved "https://registry.yarnpkg.com/react-colorful/-/react-colorful-5.5.1.tgz#29d9c4e496f2ca784dd2bb5053a3a4340cfaf784"
@@ -15135,11 +15149,6 @@ swarm-js@^0.1.40:
tar "^4.0.2"
xhr-request "^1.0.1"
swr@^1.2.2:
version "1.3.0"
resolved "https://registry.yarnpkg.com/swr/-/swr-1.3.0.tgz#c6531866a35b4db37b38b72c45a63171faf9f4e8"
integrity sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==
symbol-tree@^3.2.4:
version "3.2.4"
resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
@@ -17047,6 +17056,11 @@ zod-prisma@^0.5.4:
parenthesis "^3.1.8"
ts-morph "^13.0.2"
zod@^3.14.4:
version "3.17.3"
resolved "https://registry.yarnpkg.com/zod/-/zod-3.17.3.tgz#86abbc670ff0063a4588d85a4dcc917d6e4af2ba"
integrity sha512-4oKP5zvG6GGbMlqBkI5FESOAweldEhSOZ6LI6cG+JzUT7ofj1ZOC0PJudpQOpT1iqOFpYYtX5Pw0+o403y4bcg==
zod@^3.16.0:
version "3.16.0"
resolved "https://registry.yarnpkg.com/zod/-/zod-3.16.0.tgz#edfdbf77fcc9a5af13a2630a44bdda5b90e759b7"