From c28d647a0db7351b2a170a00025fbd55a712c39e Mon Sep 17 00:00:00 2001 From: Benny Joo Date: Wed, 15 Apr 2026 01:18:24 +0900 Subject: [PATCH 1/3] docs: improve self-hosting contents (#28888) --- apps/docs/app/[[...mdxPath]]/page.tsx | 28 + apps/docs/app/fonts.css | 17 + apps/docs/app/layout.tsx | 90 + apps/docs/app/logo.css | 11 + apps/docs/content/_meta.ts | 17 + apps/docs/content/apps/_meta.ts | 11 + apps/docs/content/apps/daily.mdx | 13 + apps/docs/content/apps/google.mdx | 44 + apps/docs/content/apps/hubspot.mdx | 34 + apps/docs/content/apps/microsoft.mdx | 21 + apps/docs/content/apps/sendgrid.mdx | 21 + apps/docs/content/apps/stripe.mdx | 29 + apps/docs/content/apps/twilio.mdx | 57 + apps/docs/content/apps/zoho.mdx | 97 + apps/docs/content/apps/zoom.mdx | 40 + apps/docs/content/database-migrations.mdx | 60 + apps/docs/content/deployments/_meta.ts | 10 + apps/docs/content/deployments/aws.mdx | 46 + apps/docs/content/deployments/azure.mdx | 47 + apps/docs/content/deployments/elestio.mdx | 7 + apps/docs/content/deployments/gcp.mdx | 102 + apps/docs/content/deployments/northflank.mdx | 9 + apps/docs/content/deployments/railway.mdx | 9 + apps/docs/content/deployments/render.mdx | 7 + apps/docs/content/deployments/vercel.mdx | 75 + apps/docs/content/docker.mdx | 114 + apps/docs/content/index.mdx | 124 + apps/docs/content/installation.mdx | 142 + apps/docs/content/upgrading.mdx | 50 + apps/docs/fonts/CalSans-Regular.woff2 | Bin 0 -> 37412 bytes apps/docs/fonts/CalSansUI-UIBold.woff2 | Bin 0 -> 54016 bytes apps/docs/fonts/CalSansUI-UILight.woff2 | Bin 0 -> 52600 bytes apps/docs/fonts/CalSansUI-UIMedium.woff2 | Bin 0 -> 54584 bytes apps/docs/fonts/CalSansUI-UIRegular.woff2 | Bin 0 -> 54212 bytes apps/docs/fonts/CalSansUI-UISemiBold.woff2 | Bin 0 -> 54676 bytes apps/docs/mdx-components.ts | 1 + apps/docs/next-env.d.ts | 6 + apps/docs/next.config.mjs | 7 + apps/docs/package.json | 21 + apps/docs/public/cal-docs-logo-white.svg | 13 + apps/docs/public/cal-docs-logo.svg | 13 + apps/docs/tsconfig.json | 36 + yarn.lock | 2820 +++++++++++++++++- 43 files changed, 4214 insertions(+), 35 deletions(-) create mode 100644 apps/docs/app/[[...mdxPath]]/page.tsx create mode 100644 apps/docs/app/fonts.css create mode 100644 apps/docs/app/layout.tsx create mode 100644 apps/docs/app/logo.css create mode 100644 apps/docs/content/_meta.ts create mode 100644 apps/docs/content/apps/_meta.ts create mode 100644 apps/docs/content/apps/daily.mdx create mode 100644 apps/docs/content/apps/google.mdx create mode 100644 apps/docs/content/apps/hubspot.mdx create mode 100644 apps/docs/content/apps/microsoft.mdx create mode 100644 apps/docs/content/apps/sendgrid.mdx create mode 100644 apps/docs/content/apps/stripe.mdx create mode 100644 apps/docs/content/apps/twilio.mdx create mode 100644 apps/docs/content/apps/zoho.mdx create mode 100644 apps/docs/content/apps/zoom.mdx create mode 100644 apps/docs/content/database-migrations.mdx create mode 100644 apps/docs/content/deployments/_meta.ts create mode 100644 apps/docs/content/deployments/aws.mdx create mode 100644 apps/docs/content/deployments/azure.mdx create mode 100644 apps/docs/content/deployments/elestio.mdx create mode 100644 apps/docs/content/deployments/gcp.mdx create mode 100644 apps/docs/content/deployments/northflank.mdx create mode 100644 apps/docs/content/deployments/railway.mdx create mode 100644 apps/docs/content/deployments/render.mdx create mode 100644 apps/docs/content/deployments/vercel.mdx create mode 100644 apps/docs/content/docker.mdx create mode 100644 apps/docs/content/index.mdx create mode 100644 apps/docs/content/installation.mdx create mode 100644 apps/docs/content/upgrading.mdx create mode 100644 apps/docs/fonts/CalSans-Regular.woff2 create mode 100644 apps/docs/fonts/CalSansUI-UIBold.woff2 create mode 100644 apps/docs/fonts/CalSansUI-UILight.woff2 create mode 100644 apps/docs/fonts/CalSansUI-UIMedium.woff2 create mode 100644 apps/docs/fonts/CalSansUI-UIRegular.woff2 create mode 100644 apps/docs/fonts/CalSansUI-UISemiBold.woff2 create mode 100644 apps/docs/mdx-components.ts create mode 100644 apps/docs/next-env.d.ts create mode 100644 apps/docs/next.config.mjs create mode 100644 apps/docs/package.json create mode 100644 apps/docs/public/cal-docs-logo-white.svg create mode 100644 apps/docs/public/cal-docs-logo.svg create mode 100644 apps/docs/tsconfig.json diff --git a/apps/docs/app/[[...mdxPath]]/page.tsx b/apps/docs/app/[[...mdxPath]]/page.tsx new file mode 100644 index 00000000000000..cd8cff3e98e3d7 --- /dev/null +++ b/apps/docs/app/[[...mdxPath]]/page.tsx @@ -0,0 +1,28 @@ +import { generateStaticParamsFor, importPage } from "nextra/pages"; +import { useMDXComponents as getMDXComponents } from "../../mdx-components"; + +export const generateStaticParams = generateStaticParamsFor("mdxPath"); + +export async function generateMetadata(props: { + params: Promise<{ mdxPath?: string[] }>; +}) { + const params = await props.params; + const { metadata } = await importPage(params.mdxPath); + return metadata; +} + +const Wrapper = getMDXComponents().wrapper; + +export default async function Page(props: { + params: Promise<{ mdxPath?: string[] }>; +}) { + const params = await props.params; + const { default: MDXContent, toc, metadata } = await importPage( + params.mdxPath, + ); + return ( + + + + ); +} diff --git a/apps/docs/app/fonts.css b/apps/docs/app/fonts.css new file mode 100644 index 00000000000000..5d6f9f44e43eb3 --- /dev/null +++ b/apps/docs/app/fonts.css @@ -0,0 +1,17 @@ +/* Cal Sans for headlines */ +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: var(--font-cal), sans-serif; + font-weight: 400; + letter-spacing: 0; + font-feature-settings: normal; +} + +/* Cal Sans UI for body text */ +body { + font-family: var(--font-cal-ui), sans-serif; +} diff --git a/apps/docs/app/layout.tsx b/apps/docs/app/layout.tsx new file mode 100644 index 00000000000000..7686097b0a0641 --- /dev/null +++ b/apps/docs/app/layout.tsx @@ -0,0 +1,90 @@ +import { Footer, Layout, Navbar } from "nextra-theme-docs"; +import { Head } from "nextra/components"; +import { getPageMap } from "nextra/page-map"; +import localFont from "next/font/local"; +import "nextra-theme-docs/style.css"; +import "./logo.css"; +import "./fonts.css"; + +const calSans = localFont({ + src: "../fonts/CalSans-Regular.woff2", + variable: "--font-cal", + display: "swap", + weight: "400", +}); + +const calSansUI = localFont({ + src: [ + { path: "../fonts/CalSansUI-UILight.woff2", weight: "300" }, + { path: "../fonts/CalSansUI-UIRegular.woff2", weight: "400" }, + { path: "../fonts/CalSansUI-UIMedium.woff2", weight: "500" }, + { path: "../fonts/CalSansUI-UISemiBold.woff2", weight: "600" }, + { path: "../fonts/CalSansUI-UIBold.woff2", weight: "700" }, + ], + variable: "--font-cal-ui", + display: "swap", +}); + +const navbar: React.ReactElement = ( + + Cal.diy Docs + Cal.diy Docs + + } + /> +); + +const footer: React.ReactElement = ( +
+ + Cal.diy is the open source community edition of Cal.com. Cal.com® and Cal® + are a registered trademark by Cal.com, Inc. All rights reserved. + +
+); + +export const metadata: { title: string; description: string } = { + title: "Cal.com Docs", + description: "Cal.com self-hosting documentation", +}; + +export default async function RootLayout({ + children, +}: { + children: React.ReactNode; +}) { + return ( + + + + + {children} + + + + ); +} diff --git a/apps/docs/app/logo.css b/apps/docs/app/logo.css new file mode 100644 index 00000000000000..374162609d623e --- /dev/null +++ b/apps/docs/app/logo.css @@ -0,0 +1,11 @@ +.logo-dark { + display: none; +} + +html.dark .logo-light { + display: none; +} + +html.dark .logo-dark { + display: block; +} diff --git a/apps/docs/content/_meta.ts b/apps/docs/content/_meta.ts new file mode 100644 index 00000000000000..2ffd4ed6c58ccf --- /dev/null +++ b/apps/docs/content/_meta.ts @@ -0,0 +1,17 @@ +export default { + index: "Introduction", + "-- getting-started": { + type: "separator", + title: "Getting Started", + }, + installation: "Installation", + "database-migrations": "Database Migrations", + upgrading: "Upgrading", + docker: "Docker", + apps: "Apps", + "-- deployments": { + type: "separator", + title: "Deployments", + }, + deployments: "Deployments", +}; diff --git a/apps/docs/content/apps/_meta.ts b/apps/docs/content/apps/_meta.ts new file mode 100644 index 00000000000000..bc65c14b6eda45 --- /dev/null +++ b/apps/docs/content/apps/_meta.ts @@ -0,0 +1,11 @@ +export default { + google: "Google", + microsoft: "Microsoft", + zoom: "Zoom", + daily: "Daily", + hubspot: "HubSpot", + sendgrid: "Sendgrid", + stripe: "Stripe", + twilio: "Twilio", + zoho: "Zoho", +}; diff --git a/apps/docs/content/apps/daily.mdx b/apps/docs/content/apps/daily.mdx new file mode 100644 index 00000000000000..008a769778aa22 --- /dev/null +++ b/apps/docs/content/apps/daily.mdx @@ -0,0 +1,13 @@ +# Daily + +#### Obtaining Daily API Credentials + +1. **Open Daily and sign into your account** - Go to [Daily](https://daily.co) and sign into your account. + +2. **Navigate to the Developers tab** - From within your dashboard, go to the developers tab. + +3. **Copy your API key** - Copy the API key provided in the developers tab. + +4. **Paste the API key into the .env file** - Now paste the API key into the `DAILY_API_KEY` field in your `.env` file. + +5. **Set the DAILY_SCALE_PLAN variable (optional)** - If you have the Daily Scale Plan, set the `DAILY_SCALE_PLAN` variable to `true` in the `.env` file to use features like video recording. diff --git a/apps/docs/content/apps/google.mdx b/apps/docs/content/apps/google.mdx new file mode 100644 index 00000000000000..91ca0963aaa362 --- /dev/null +++ b/apps/docs/content/apps/google.mdx @@ -0,0 +1,44 @@ +# Google + +#### Obtaining the Google API Credentials + +1. **Open Google API Console** - Go to [Google API Console](https://console.cloud.google.com/apis/dashboard). If you don't have a project in your Google Cloud subscription, create one before proceeding. Under the Dashboard pane, select "Enable APIs and Services". + +2. **Search for the Google Calendar API** - In the search box, type "calendar" and select the Google Calendar API search result. + +3. **Enable the Google Calendar API** - Enable the selected API to proceed. + +4. **Configure the OAuth Consent Screen** - Go to the [OAuth consent screen](https://console.cloud.google.com/apis/credentials/consent) from the side pane. Select the app type (Internal or External) and enter the basic app details on the first page. + +5. **Add Calendar Scopes** - On the Scopes page, select "Add or Remove Scopes". Search for Calendar.event and select the scopes with values `.../auth/calendar.events`, `.../auth/calendar.readonly`, and then click "Update". + +6. **Add Test Users** - On the Test Users page, add the Google account(s) you'll be using. Verify details on the last page to complete the consent screen configuration. + +7. **Create OAuth Credentials** - From the side pane, select [Credentials](https://console.cloud.google.com/apis/credentials) and then "Create Credentials". Choose "OAuth Client ID". + +8. **Select Web Application as the Application Type** - Choose "Web Application" as the Application Type. + +9. **Add Authorized Redirect URIs** - Under Authorized redirect URI's, add the URIs: + +``` +/api/integrations/googlecalendar/callback +/api/auth/callback/google +``` + +Replace `` with the URL where your application runs. + +10. **Download the OAuth Client ID JSON** - The key will be created, redirecting you back to the Credentials page. Select the new client ID under "OAuth 2.0 Client IDs", then click "Download JSON". Copy the JSON file contents and paste the entire string into the `.env` and `.env.appStore` files under the `GOOGLE_API_CREDENTIALS` key. + +11. **Set the Google Integration as Internal** - In the `.env` file, set the following environment variable: + +``` +GOOGLE_LOGIN_ENABLED=false +``` + +This will configure the Google integration as an Internal app, restricting login access. + +### Adding Google Calendar to Cal.com App Store + +After adding Google credentials, you can now add the Google Calendar App to the app store. Repopulate the App store by running: + +1. **Repopulate App Store** - Run `pnpm db-seed` to update the app store and include the newly added Google Calendar integration. diff --git a/apps/docs/content/apps/hubspot.mdx b/apps/docs/content/apps/hubspot.mdx new file mode 100644 index 00000000000000..5417d3ec2ea485 --- /dev/null +++ b/apps/docs/content/apps/hubspot.mdx @@ -0,0 +1,34 @@ +# HubSpot + +### Obtaining HubSpot Client ID and Secret + +1. **Sign into HubSpot Developer** - Go to [HubSpot Developer](https://developers.hubspot.com/) and sign into your account, or create a new one. + +2. **Navigate to Manage Apps** - From the Developer account home page, go to "Manage apps". + +3. **Create a new app** - Click the "Create app" button located at the top right corner of the page. + +4. **Fill in App Information** - In the "App info" tab, fill in any information you want for your app. + +5. **Go to the Auth tab** - Navigate to the "Auth" tab to set up authentication for the app. + +6. **Copy Client ID and Client Secret** - Copy the Client ID and Client Secret and add them to your `.env` file under the fields: + +``` +HUBSPOT_CLIENT_ID +HUBSPOT_CLIENT_SECRET +``` + +7. **Set the Redirect URL for OAuth** - Set the Redirect URL for OAuth to: + +``` +/api/integrations/hubspot/callback +``` + +Replace `` with the URL where your application is hosted. + +8. **Select Required Scopes** - In the "Scopes" section, select "Read" and "Write" for the scope called `crm.objects.contacts`. + +9. **Save the Application** - Click the "Save" button at the bottom of the page. + +10. **Complete HubSpot Integration** - You're all set! Any booking in Cal.com will now be created as a meeting in HubSpot for your contacts. diff --git a/apps/docs/content/apps/microsoft.mdx b/apps/docs/content/apps/microsoft.mdx new file mode 100644 index 00000000000000..8f1957386eeb6e --- /dev/null +++ b/apps/docs/content/apps/microsoft.mdx @@ -0,0 +1,21 @@ +# Microsoft + +#### Obtaining Microsoft Graph Client ID and Secret + +1. **Open Azure App Registration** - Go to [Azure App Registration](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade) and select "New registration". + +2. **Name your application** - Provide a name for your application to proceed with the registration. + +3. **Set who can use this application** - Set "Who can use this application or access this API?" to "Accounts in any organizational directory (Any Azure AD directory - Multitenant)". + +4. **Configure the Web redirect URI** - Set the Web redirect URI to: + +``` +/api/integrations/office365calendar/callback +``` + +Replace `` with the URL where your application runs. + +5. **Obtain and set the MS_GRAPH_CLIENT_ID** - Use the Application (client) ID as the value for `MS_GRAPH_CLIENT_ID` in your `.env` file. + +6. **Create a client secret and set MS_GRAPH_CLIENT_SECRET** - Click on "Certificates & secrets", create a new client secret, and use the generated value as the `MS_GRAPH_CLIENT_SECRET` in your `.env` file. diff --git a/apps/docs/content/apps/sendgrid.mdx b/apps/docs/content/apps/sendgrid.mdx new file mode 100644 index 00000000000000..10c8b18b36e487 --- /dev/null +++ b/apps/docs/content/apps/sendgrid.mdx @@ -0,0 +1,21 @@ +# Sendgrid + +1. **Create a SendGrid account** - Go to [https://signup.sendgrid.com/](https://signup.sendgrid.com/) and create a new SendGrid account. + +2. **Generate an API key** - Navigate to **Settings** -> **API Keys** and create a new API key. + +3. **Add API key to .env** - Copy the generated API key and add it to your `.env` file under the field: + +``` +SENDGRID_API_KEY +``` + +4. **Verify a sender email** - Go to **Settings** -> **Sender Authentication** and verify a single sender. + +5. **Add verified email to .env** - Copy the verified email address and add it to your `.env` file under the field: + +``` +SENDGRID_EMAIL +``` + +> This app is **required** for Workflows diff --git a/apps/docs/content/apps/stripe.mdx b/apps/docs/content/apps/stripe.mdx new file mode 100644 index 00000000000000..6813b350b96ad9 --- /dev/null +++ b/apps/docs/content/apps/stripe.mdx @@ -0,0 +1,29 @@ +# Stripe + +### Setting up Stripe + +1. **Create or log into a Stripe account** - Go to [Stripe](https://stripe.com) and either create a new account or log into an existing one. For testing, activate the Test-Mode toggle in the top right of the Stripe dashboard. + +2. **Save API keys** - Open [Stripe API Keys](https://dashboard.stripe.com/apikeys), then save the token starting with `pk_...` to `NEXT_PUBLIC_STRIPE_PUBLIC_KEY` and `sk_...` to `STRIPE_PRIVATE_KEY` in the `.env` file. + +3. **Activate OAuth for Standard Accounts** - Go to [Stripe Connect Settings](https://dashboard.stripe.com/settings/connect) and activate OAuth for Standard Accounts. + +4. **Add the redirect URL** - Add the following redirect URL, replacing `` with your application's URL: + +``` +/api/integrations/stripepayment/callback +``` + +5. **Save the Stripe Client ID** - Copy your client ID (`ca_...`) to `STRIPE_CLIENT_ID` in the `.env` file. + +6. **Set up a Stripe webhook** - Open [Stripe Webhooks](https://dashboard.stripe.com/webhooks) and add: + +``` +/api/integrations/stripepayment/webhook +``` + +as the webhook for connected applications. + +7. **Select webhook events** - Select all `payment_intent` and `setup_intent` events for the webhook. + +8. **Save the webhook secret** - Copy the webhook secret (`whsec_...`) to `STRIPE_WEBHOOK_SECRET` in the `.env` file. diff --git a/apps/docs/content/apps/twilio.mdx b/apps/docs/content/apps/twilio.mdx new file mode 100644 index 00000000000000..fc883302057ecc --- /dev/null +++ b/apps/docs/content/apps/twilio.mdx @@ -0,0 +1,57 @@ +# Twilio + +1. **Create a Twilio account** - Go to [Twilio](https://www.twilio.com/) and create a new account. + +2. **Get a Twilio phone number** - Click on 'Get a Twilio phone number' to obtain a phone number for your account. + +3. **Save the Account SID** - Copy the Account SID and add it to your `.env` file under the field: + +``` +TWILIO_SID +``` + +4. **Save the Auth Token** - Copy the Auth Token and add it to your `.env` file under the field: + +``` +TWILIO_TOKEN +``` + +5. **Save the Twilio phone number** - Copy your Twilio phone number and add it to your `.env` file under the field: + +``` +TWILIO_PHONE_NUMBER +``` + +6. **Set the Sender ID** - Add your own sender ID to the `.env` file under the field: + +``` +NEXT_PUBLIC_SENDER_ID +``` + +(The fallback is set to "Cal" if not specified.) + +7. **Create a Messaging Service** - Navigate to **Develop** -> **Messaging** -> **Services**, then create a new messaging service. + +8. **Name the Messaging Service** - Choose a name for the messaging service. This can be anything you like. + +9. **Add Senders to the Messaging Service** - Click 'Add Senders' and select 'Phone number' as the sender type. + +10. **Add your Twilio phone number as a sender** - Add the listed phone number to the messaging service. + +11. **Complete the Messaging Service setup** - Leave all other fields as they are, then complete the setup by clicking 'View my new Messaging Service'. + +12. **Save the Messaging Service SID** - Copy the Messaging Service SID and add it to your `.env` file under the field: + +``` +TWILIO_MESSAGING_SID +``` + +13. **Create a Verify Service** - Go to the Twilio dashboard, create a new Verify Service, and name it as you wish. + +14. **Save the Verify Service SID** - Copy the Verify Service SID and add it to your `.env` file under the field: + +``` +TWILIO_VERIFY_SID +``` + +> This app is **required** for Workflows diff --git a/apps/docs/content/apps/zoho.mdx b/apps/docs/content/apps/zoho.mdx new file mode 100644 index 00000000000000..2b2a9efa57a157 --- /dev/null +++ b/apps/docs/content/apps/zoho.mdx @@ -0,0 +1,97 @@ +# Zoho + +#### Obtaining ZohoCRM Client ID and Secret + +1. **Sign into Zoho API Console** - Go to [Zoho API Console](https://api-console.zoho.com/) and sign into your account, or create a new one. + +2. **Go to Applications** - From the API console page, navigate to "Applications". + +3. **Add a New Client** - Click the "ADD CLIENT" button at the top right and select "Server-based Applications". + +4. **Fill in Client Details** - Enter any desired information in the "Client Details" tab. + +5. **Go to the Client Secret tab** - Navigate to the "Client Secret" tab. + +6. **Save Client ID and Secret to .env** - Copy the Client ID and Client Secret into your `.env` file under: + +``` +ZOHOCRM_CLIENT_ID +ZOHOCRM_CLIENT_SECRET +``` + +7. **Set the Redirect URL for OAuth** - Set the Redirect URL for OAuth to: + +``` +/api/integrations/zohocrm/callback +``` + +Replace `` with your application URL. + +8. **Enable Multi-DC Option** - In the "Settings" section, check the "Multi-DC" option if you wish to use the same OAuth credentials for all data centers. + +9. **Save your settings** - Click "Save" or "UPDATE" at the bottom of the page. + +10. **Integration is Ready** - Your ZohoCRM integration can now be easily added in the Cal.com settings. + +#### Obtaining Zoho Calendar Client ID and Secret + +1. **Sign into Zoho API Console** - Go to [Zoho API Console](https://api-console.zoho.com/) and sign into your account, or create a new one. + +2. **Create a New Server-based Application** - Choose "Server-based Applications" and set the Redirect URL for OAuth to: + +``` +/api/integrations/zohocalendar/callback +``` + +Replace `` with your application URL. + +3. **Fill in Client Details** - Enter any information you want in the "Client Details" tab. + +4. **Go to the Client Secret tab** - Navigate to the "Client Secret" tab. + +5. **Save Credentials in Cal.com Admin Panel** - Copy the Client ID and Client Secret to your app keys in the Cal.com admin panel at: + +``` +/settings/admin/apps +``` + +6. **Enable Multi-DC Option** - In the "Settings" section of Zoho API Console, check the "Multi-DC" option if you wish to use the same OAuth credentials across data centers. + +7. **Save Settings** - Click "Save" or "UPDATE" at the bottom of the page. + +8. **Complete Zoho Calendar Integration** - Your Zoho Calendar integration is now ready and can be managed at: + +``` +/settings/my-account/calendars +``` + +9. **Access Zoho Calendar** - You can access your Zoho calendar at [https://calendar.zoho.com/](https://calendar.zoho.com/). + +> If you use multiple calendars with Cal, make sure to enable the toggle to prevent double-bookings across calendars. This setting can be found at `/settings/my-account/calendars`. + +#### Obtaining Zoho Bigin Client ID and Secret + +1. **Sign into Zoho API Console** - Go to [Zoho API Console](https://api-console.zoho.com/) and sign into your account, or create a new one. + +2. **Add a New Client for Zoho Bigin** - Click the "ADD CLIENT" button at the top right, and select "Server-based Applications". + +3. **Set the Redirect URL for OAuth** - Set the Redirect URL for OAuth to: + +``` +/api/integrations/zoho-bigin/callback +``` + +Replace `` with your application URL. + +4. **Go to the Client Secret tab** - Navigate to the "Client Secret" tab. + +5. **Save Client ID and Secret to .env.appStore** - Copy the Client ID and Client Secret into the `.env.appStore` file under: + +``` +ZOHO_BIGIN_CLIENT_ID +ZOHO_BIGIN_CLIENT_SECRET +``` + +6. **Enable Multi-DC Option** - In the "Settings" section, check the "Multi-DC" option if you wish to use the same OAuth credentials across data centers. + +7. **Complete Zoho Bigin Integration** - Your Zoho Bigin integration is now ready and can be added from the Cal.com app store. diff --git a/apps/docs/content/apps/zoom.mdx b/apps/docs/content/apps/zoom.mdx new file mode 100644 index 00000000000000..8219afded89c88 --- /dev/null +++ b/apps/docs/content/apps/zoom.mdx @@ -0,0 +1,40 @@ +# Zoom + +### Obtaining Zoom Client ID and Secret + +1. **Sign into Zoom Marketplace** - Go to [Zoom Marketplace](https://marketplace.zoom.us/) and sign in with your Zoom account. + +2. **Build a New App** - In the upper right, click "Develop" and then "Build App". + +3. **Create an OAuth App** - Under "OAuth", select "Create". + +4. **Name Your App** - Provide a name for your app. + +5. **Choose User-managed App Type** - Select "User-managed app" as the app type. + +6. **Set Marketplace Visibility** - De-select the option to publish the app on the Zoom App Marketplace. + +7. **Create the App** - Click "Create" to proceed. + +8. **Save Client ID and Secret** - Copy the Client ID and Client Secret and add them to your `.env` file under the fields: + +``` +ZOOM_CLIENT_ID +ZOOM_CLIENT_SECRET +``` + +9. **Set the Redirect URL for OAuth** - Set the Redirect URL for OAuth to: + +``` +/api/integrations/zoomvideo/callback +``` + +Replace `` with your application URL. + +10. **Configure Allow List and Subdomain Check** - Add the redirect URL to the allow list and enable "Subdomain check". Ensure it displays "saved" below the form. + +11. **Skip Basic Information and Add Scopes** - You don't need to provide basic information about your app. Instead, go to "Scopes", click "+ Add Scopes", then select the category "Meeting" on the left, and check the scope `meeting:write`. + +12. **Save the Scope** - Click "Done" to save the scope settings. + +13. **Complete Zoom Integration** - Your Zoom integration is now ready and can be easily added in the Cal.com settings. diff --git a/apps/docs/content/database-migrations.mdx b/apps/docs/content/database-migrations.mdx new file mode 100644 index 00000000000000..e203a0eab47f19 --- /dev/null +++ b/apps/docs/content/database-migrations.mdx @@ -0,0 +1,60 @@ +# Database Migrations + +As described in the upgrade guide, you should use the + +```bash +yarn workspace @calcom/prisma db-migrate +``` + +or + +```bash +yarn workspace @calcom/prisma db-deploy +``` + +command to update the database. We use database migrations in order to handle changes to the database schema in a more secure and stable way. This is actually very common. The thing is that when just changing the schema in `schema.prisma` without creating migrations, the update to the newer database schema can damage or delete all data in production mode, since the system sometimes doesn't know how to transform the data from A to B. Using migrations, each step is reproducible, transparent and can be undone in a simple way. + +### Creating migrations + +If you are modifying the codebase and make a change to the `schema.prisma` file, you must create a migration. To create a migration for your previously changed `schema.prisma`, simply run the following: + +```bash +yarn workspace @calcom/prisma db-migrate +``` + +Now, you must create a short name for your migration to describe what changed (for example, "user_add_email_verified"). Then just add and commit it with the corresponding code that uses your new database schema. + +**Always keep an eye on what migrations Prisma is generating.** Prisma often happily will drop entire columns of data because it can't figure out what to do. + +### Error: The database schema is not empty + +Prisma uses a database called `_prisma_migrations` to keep track of which migrations have been applied and which haven't. If your local migrations database doesn't match up with what's in the actual database, then Prisma will throw the following error: + +``` +Error: P3005 + +The database schema for `localhost:5432` is not empty. Read more about how to baseline an existing production database: https://pris.ly/d/migrate-baseline +``` + +In order to fix this, we need to tell Prisma which migrations have already been applied. This can be done by running the following command, replacing `migration_name` with each migration that you have already applied: + +```bash +yarn prisma migrate resolve --applied migration_name +``` + +You will need to run the command for each migration that you want to mark as applied. + +### Resetting Prisma migrate + +When your local Prisma database runs out of sync with migrations on local and you are tearing your hair out, I've been there, so you don't have to: PostgreSQL + +```sql +DELETE FROM "_prisma_migrations"; +``` + +Quickly re-index + +```bash +# Run the following to easily apply all migrations in the prisma/migrations directory +ls -1a prisma/migrations/ | grep 2021 | xargs -I{} prisma migrate resolve --applied {} +``` diff --git a/apps/docs/content/deployments/_meta.ts b/apps/docs/content/deployments/_meta.ts new file mode 100644 index 00000000000000..ce81073a28a343 --- /dev/null +++ b/apps/docs/content/deployments/_meta.ts @@ -0,0 +1,10 @@ +export default { + aws: "AWS", + azure: "Azure", + elestio: "Elestio", + gcp: "GCP", + northflank: "Northflank", + railway: "Railway", + render: "Render", + vercel: "Vercel", +}; diff --git a/apps/docs/content/deployments/aws.mdx b/apps/docs/content/deployments/aws.mdx new file mode 100644 index 00000000000000..38d40082bcdd03 --- /dev/null +++ b/apps/docs/content/deployments/aws.mdx @@ -0,0 +1,46 @@ +# AWS + +Deploying Cal.diy on AWS + +## Manual Deployment + +### 1. Prerequisites + +1. Amazon Web Services account +2. Familiarity with AWS services and management console +3. Access to the Cal.diy source code + +### 2. AWS Environment Setup + +1. **Create an AWS Account:** If not already set up, create an account on AWS. +2. **Management Console:** Log in to the AWS Management Console. + +### 3. Creating AWS Resources + +1. **Create a New IAM User:** Set up an IAM user with the necessary permissions for deploying and managing the application. +2. **Set Up Required Services:** Establish services like Amazon EC2, RDS for PostgreSQL, etc., as needed for your application. + +### 4. Configuring Cal.diy + +1. **Clone the Repository:** Get the Cal.diy repository onto your local environment. +2. **Update Configuration:** Modify the .env file to include your AWS resource details (like database endpoints). + +### 5. Deploying on AWS + +1. **Deploy Application:** Utilize AWS services such as EC2 or Elastic Beanstalk to deploy the Cal.diy application. +2. **Database Configuration:** Set up and connect the RDS instance to your application. +3. **Verify Deployment:** Ensure the application is operational and accessible. + +### 6. Post-Deployment Steps + +1. **DNS Setup:** Update your DNS settings to point to your AWS deployment. +2. **Monitoring and Scaling:** Leverage AWS monitoring tools to keep track of your application's performance and scale resources accordingly. + +### Best Practices + +1. Regularly update your deployment with the latest Cal.diy releases. +2. Adhere to AWS's recommended security practices. + +### Additional Resources + +[https://docs.aws.amazon.com/](https://docs.aws.amazon.com/) diff --git a/apps/docs/content/deployments/azure.mdx b/apps/docs/content/deployments/azure.mdx new file mode 100644 index 00000000000000..6971536c5afd15 --- /dev/null +++ b/apps/docs/content/deployments/azure.mdx @@ -0,0 +1,47 @@ +# Azure + +Deploying Cal.diy on Azure + +## One Click Deployment + +[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template) + +## Manual Deployment + +### 1. Prerequisites + +1. Microsoft Azure account +2. Basic knowledge of Azure services +3. Access to Cal.diy source code + +### 2. Azure Setup + +1. **Create an Azure Account** +2. **Azure Portal:** Familiarize yourself with the Azure Portal. + +### 3. Creating Azure Resources + +1. **Creating Azure Resources:** In the Azure Portal, create a new resource group for your Cal.diy project. +2. **Create Azure Services:** Set up required services such as Azure App Service, Azure Database for PostgreSQL, etc. + +#### Create Web App + +#### Setup Database, Networking + +#### Setup Monitoring + +### 4. Configuring Cal.diy + +1. **Clone Repository:** Clone the Cal.diy repository to your local machine. +2. **Configuration Files:** Update the .env file with necessary Azure configurations (e.g., database connection strings). + +### 5. Deploying on Azure + +1. **Deploying Web App:** Use Azure App Service to deploy the Cal.diy web application. +2. **Database Setup:** Deploy and configure the Azure Database for PostgreSQL with Cal.diy. +3. **Deployment Verification:** Ensure that the application is running smoothly post-deployment. + +### 6. Post-Deployment Steps + +1. **DNS Configuration:** Configure your DNS settings to point to the Azure deployment. +2. **Monitor and Scale:** Utilize Azure monitoring tools to keep track of performance and scale resources as needed. diff --git a/apps/docs/content/deployments/elestio.mdx b/apps/docs/content/deployments/elestio.mdx new file mode 100644 index 00000000000000..9b8d0cc54c8e85 --- /dev/null +++ b/apps/docs/content/deployments/elestio.mdx @@ -0,0 +1,7 @@ +# Elestio + +You can deploy Cal.diy on Elestio using the button below. + +## One Click Deployment + +[![Deploy on Elestio](https://elest.io/images/logos/deploy-to-elestio-btn.png)](https://dash.elest.io/deploy?soft=Cal&id=347) diff --git a/apps/docs/content/deployments/gcp.mdx b/apps/docs/content/deployments/gcp.mdx new file mode 100644 index 00000000000000..1a2f3b58db9972 --- /dev/null +++ b/apps/docs/content/deployments/gcp.mdx @@ -0,0 +1,102 @@ +# GCP + +Deploying Cal.diy on Google Cloud Platform (GCP). In this guide, we will go over the steps to deploy Cal.diy on Google Cloud Platform (GCP). We will cover how to create a virtual machine, configure it, install Docker, and finally deploy the Cal.diy application. + +## One Click Deployment + +[![Run on Google Cloud](https://storage.googleapis.com/gweb-cloudblog-publish/images/run_on_google_cloud.max-300x300.png)](https://deploy.cloud.run/?git_repo=https://github.com/calcom/cal.diy) + +## Manual Deployment + +### 1. Creating a Virtual Machine + +#### Go to the GCP Console + +First, open the Google Cloud Platform console by visiting [https://console.cloud.google.com/](https://console.cloud.google.com/). + +#### Create a New Project + +If you haven't already, create a new project by clicking on the "Select a project" dropdown menu and selecting "New Project". Enter a name for your project and click on the "Create" button. + +#### Create a New VM Instance + +Click on the navigation menu icon (three horizontal lines) and select "Compute Engine" from the list. Then, click on "VM instances" in the sub-menu. Click on the "Create" button to create a new virtual machine. + +#### Select the Machine Type + +Choose the machine type that best suits your needs. Ideally, 2 vCPUs and 2-4GB RAM is enough. + +#### Set Up Networking + +Make sure the "Networking" tab is selected and click on the "Add network" button. Choose the "Default" network and click on the "Add" button. + +#### Create the Instance + +Review the details of your virtual machine and click on the "Create" button to create the instance. Note the public IP of the VM. + +### 2. Configuring the Virtual Machine + +Once your virtual machine is created, you need to configure it to allow traffic on port 80. + +#### Open Port 80 + +Click on the navigation menu icon (three horizontal lines) and select "Compute Engine" from the list. Then, click on "VM instances" in the sub-menu. Find your newly created instance and click on its name to enter its details page. Click on the "Firewalls" tab and then click on the "Add firewall rule" button. Select "Allow all" as the source and destination, set the protocol to "tcp" and the ports to "80". Click on the "Add" button to save the changes. + +### 3. Installing Docker + +Now that your virtual machine is configured, you need to install Docker on it. + +#### Connect to Your Instance + +Open a terminal window on your local machine and use SSH to connect to your virtual machine. You can find the external IP address or DNS name of your instance in the GCP console. Use the following command to connect to your instance: + +```bash +gcloud ssh --project=[PROJECT_ID] --zone=[ZONE] [INSTANCE_NAME] +``` + +Replace `[PROJECT_ID]` with your project ID, `[ZONE]` with the zone where your instance is located, and `[INSTANCE_NAME]` with the name of your instance. You can also use web based SSH. + +#### Install Docker + +Once connected, update the package list and install Docker using the following commands: + +```bash +sudo apt-get update +sudo apt-get install docker.io +``` + +#### Start the Docker Service + +Start the Docker service using the following command: + +```bash +sudo systemctl start docker +``` + +### 4. Deploying Cal.diy + +Now that Docker is installed and running, you can deploy Cal.diy on your virtual machine. + +#### Pull the Docker Image + +Use the following command to pull the Cal.diy Docker image from Docker Hub: + +```bash +docker pull cal/calcom +``` + +#### Run the Docker Container + +Run the Docker container using the following command: + +```bash +docker run -d -p 80:80 cal/cal.com +``` + +This command maps port 80 on your local machine to port 80 inside the container, so you can access Cal.diy from outside the container. + +#### Access Cal.diy + +Open a web browser and navigate to `http://localhost`. You should now be able to access the Cal.diy homepage. + +Congratulations! You have successfully deployed Cal.diy on Google Cloud Platform. diff --git a/apps/docs/content/deployments/northflank.mdx b/apps/docs/content/deployments/northflank.mdx new file mode 100644 index 00000000000000..15c535fcff3e37 --- /dev/null +++ b/apps/docs/content/deployments/northflank.mdx @@ -0,0 +1,9 @@ +# Northflank + +You can deploy Cal.diy on Northflank using the button below. + +The team at Northflank also have a [detailed blog post](https://northflank.com/guides/deploy-calcom-with-northflank) on deploying Cal.diy on their platform. + +## One Click Deployment + +[![Deploy on Northflank](https://northflank.com/button.svg)](https://app.northflank.com/s/account/stack-templates/deploy-calcom) diff --git a/apps/docs/content/deployments/railway.mdx b/apps/docs/content/deployments/railway.mdx new file mode 100644 index 00000000000000..87181638369b38 --- /dev/null +++ b/apps/docs/content/deployments/railway.mdx @@ -0,0 +1,9 @@ +# Railway + +You can deploy Cal.diy on Railway using the button below. + +The team at Railway also have a [detailed blog post](https://blog.railway.app/p/calcom) on deploying Cal.diy on their platform. + +## One Click Deployment + +[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/new/template/calcom) diff --git a/apps/docs/content/deployments/render.mdx b/apps/docs/content/deployments/render.mdx new file mode 100644 index 00000000000000..e7795c1acbcb21 --- /dev/null +++ b/apps/docs/content/deployments/render.mdx @@ -0,0 +1,7 @@ +# Render + +You can deploy Cal.diy on Render using the button below. + +## One Click Deployment + +[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/calcom/docker) diff --git a/apps/docs/content/deployments/vercel.mdx b/apps/docs/content/deployments/vercel.mdx new file mode 100644 index 00000000000000..6045f392d044d7 --- /dev/null +++ b/apps/docs/content/deployments/vercel.mdx @@ -0,0 +1,75 @@ +# Vercel + +## Requirements + +Currently Vercel Pro Plan is required to be able to Deploy this application with Vercel, due to limitations on the number of serverless functions on the free plan. + +You need a PostgresDB database hosted somewhere. [Supabase](https://supabase.com) offer a great free option while [Heroku](https://heroku.com) offers a low-cost option. + +## One Click Deployment + +[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/calcom/cal.com) + +## Manual Deployment + +### Local settings + +1. **Fork and clone the repository** + +```bash +git clone https://github.com/<>/cal.com.git +``` + +2. **Set environment variables** + +Copy the `.env.example` file in `apps/web`, rename it to `.env` and fill it with your settings (See [manual setup](/installation) and Obtaining the Google API Credentials) + +3. **Install packages with yarn** + +```bash +yarn install +``` + +4. **Set up the database using the Prisma schema** + +Schema is located in at `packages/prisma/schema.prisma`. + +```bash +yarn workspace @calcom/prisma db-deploy +``` + +5. **Open Prisma Studio** + +To look at or modify the database content + +```bash +yarn db-studio +``` + +6. **Open User model** + +Click on the `User` model to add a new user record. + +7. **Create new user** + +Fill out the fields (remembering to encrypt your password with [BCrypt](https://bcrypt-generator.com/)) and click `Save 1 Record` to create your first user. + +8. **Login** + +Open a browser to port 3000 on your localhost and login with your just created, first user. + +> Sometimes, yarn install might fail during deployment on Vercel, in which case, you can use `YARN_ENABLE_IMMUTABLE_INSTALLS=false yarn install` as the install command instead. + +#### Deployment + +1. Create a new project on Vercel +2. Import from your forked repository +3. Set the Environment Variables +4. Set the root directory to `apps/web` +5. Override the build command to: + +```bash +cd ../.. && yarn build --include-dependencies --no-deps +``` + +6. Hit Deploy diff --git a/apps/docs/content/docker.mdx b/apps/docs/content/docker.mdx new file mode 100644 index 00000000000000..5a77713b827c56 --- /dev/null +++ b/apps/docs/content/docker.mdx @@ -0,0 +1,114 @@ +# Docker + +### Introduction + +This image can be found on DockerHub at [https://hub.docker.com/r/calcom/cal.diy](https://hub.docker.com/r/calcom/cal.diy). Note for ARM Users: Use the `-arm` suffix for pulling images. Example: `docker pull calcom/cal.diy:v5.6.19-arm`. + +### Contributing + +The Docker configuration for Cal.diy is officially maintained in the main Cal.diy repository. The Dockerfile and docker-compose.yml are located in the root of the calcom/cal.diy repository. If you want to contribute to the Docker setup, please open an issue or pull request in the main Cal.diy repository. + +### Requirements + +Make sure you have `docker` & `docker compose` installed on the server / system. Note: `docker compose` without the hyphen is now the primary method of using docker-compose, per the Docker documentation. + +### Getting Started + +Clone the Cal.diy repository + +```bash +git clone https://github.com/calcom/cal.diy.git +``` + +Change into the directory + +```bash +cd cal.diy +``` + +Prepare your configuration: Rename .env.example to .env and then update .env + +```bash +cp .env.example .env +``` + +(optional) Pre-Pull the images by running the following command + +```bash +docker compose pull +``` + +Start Cal.diy via docker compose (Most basic users, and for First Run) To run the complete stack, which includes a local Postgres database, Cal.diy web app, and Prisma Studio: + +```bash +docker compose up -d +``` + +To run Cal.diy web app and Prisma Studio against a remote database, ensure that DATABASE_URL is configured for an available database and run: + +```bash +docker compose up -d calcom studio +``` + +To run only the Cal.diy web app, ensure that DATABASE_URL is configured for an available database and run: + +```bash +docker compose up -d calcom +``` + +1. Most configurations can be left as-is, but for configuration options see Important Run-time variables below. Update the appropriate values in your .env file, then proceed. +2. Open a browser to http://localhost:3000, or your defined NEXT_PUBLIC_WEBAPP_URL. The first time you run Cal.diy, a setup wizard will initialize. Define your first user, and you're ready to go! + +### Update Calcom Instance + +Stop the Cal.diy stack + +```bash +docker compose down +``` + +Pull the latest changes + +```bash +docker compose pull +``` + +Re-start the Cal.diy stack + +```bash +docker compose up -d +``` + +1. Update environment variables as necessary. + +### Configuration + +#### Build-time variables + +These variables must be provided at the time of the docker build, and can be provided by updating the .env file. Changing these is not required for evaluation, but may be required for running in production. Currently, if you require changes to these variables, you must follow the instructions to build and publish your own image. + +- `NEXT_PUBLIC_TELEMETRY_KEY` +- `NEXT_PUBLIC_LICENSE_CONSENT` +- `NEXT_PUBLIC_WEBAPP_URL` + +#### Important Run-time variables + +- `NEXTAUTH_SECRET` + +## Advanced Users - Building and Configuring + +For more detailed instructions on how to build and configure your own Docker image, refer to the Dockerfile and docker-compose.yml in the root of the Cal.diy repository. + +## Troubleshooting + +- **Failed to commit changes: Invalid 'prisma.user.create()'**: Certain versions may have trouble creating a user if the field `metadata` is empty. Using an empty json object `{}` as the field value should resolve this issue. Also, the `id` field will autoincrement, so you may also try leaving the value of `id` as empty. +- **SSL edge termination**: If running behind a load balancer which handles SSL certificates, you will need to add the environmental variable `NODE_TLS_REJECT_UNAUTHORIZED=0` to prevent requests from being rejected. Only do this if you know what you are doing and trust the services/load-balancers directing traffic to your service. + +### CLIENT_FETCH_ERROR + +If you experience this error, it may be the way the default Auth callback in the server is using the WEBAPP_URL as a base url. The container does not necessarily have access to the same DNS as your local machine, and therefore needs to be configured to resolve to itself. You may be able to correct this by configuring `NEXTAUTH_URL=http://localhost:3000/api/auth`, to help the backend loop back to itself. + +``` +docker-calcom-1 | @calcom/web:start: [next-auth][error][CLIENT_FETCH_ERROR] +docker-calcom-1 | @calcom/web:start: https://next-auth.js.org/errors#client_fetch_error request to http://testing.localhost:3000/api/auth/session failed, reason: getaddrinfo ENOTFOUND testing.localhost +``` diff --git a/apps/docs/content/index.mdx b/apps/docs/content/index.mdx new file mode 100644 index 00000000000000..15f09af1dae375 --- /dev/null +++ b/apps/docs/content/index.mdx @@ -0,0 +1,124 @@ +import { Callout } from "nextra/components"; + +# Cal.diy Self-Hosting Documentation + + + **Use at your own risk.** Cal.diy is the open source community edition of + Cal.com and it is intended for users who want to self-host their own Cal.diy + instance. **It is strictly recommended for personal, non-production use.** + Please review all installation and configuration steps carefully. Self-hosting + requires advanced knowledge of server administration, database management, and + securing sensitive data. Proceed only if you are comfortable with these + responsibilities. + + + + **For any commercial and enterprise-ready scheduling infrastructure, use + Cal.com**, not Cal.diy; hosted by us or get invited to on-prem enterprise + access here: https://cal.com/sales + + +## Getting Started + +- [Installation](/installation) - Learn how to install and set up Cal.com +- [Database Migrations](/database-migrations) - Manage database schema changes +- [Upgrading](/upgrading) - Keep your instance up to date +- [Docker](/docker) - Deploy with Docker +- [Apps](/apps/google) - Set up third-party integrations + +## Deployments + +Deploy Cal.com on your preferred platform: + +- [AWS](/deployments/aws) +- [Azure](/deployments/azure) +- [Elestio](/deployments/elestio) +- [GCP](/deployments/gcp) +- [Northflank](/deployments/northflank) +- [Railway](/deployments/railway) +- [Render](/deployments/render) +- [Vercel](/deployments/vercel) + +## Differences between Cal.diy and Cal.com + +Cal.com is the commercial application running on app.cal.com. It's free to sign up and battle-tested with millions +of monthly bookings by large organizations. Cal.diy is the new open source community edition which was spun out of Cal.com. +Like any diy project, Cal.com, Inc. does not guarantee security and safety of the open source project. Cal.diy is +community maintained and strictly recommended for personal, non-production use. Please use at your own risk. + +For any commerical usage, please visit Cal.com or request enterprise access to our on-prem hosting: https://cal.com/sales. + +Find all differences in features below (summarized): + +| Feature | Cal.diy | Cal.com | +|--------------------------------------------------------------- |:-------:|:-------:| +| **SCHEDULING & BOOKINGS** | | | +| Event Types | ✅ | ✅ | +| Recurring Event Types | ✅ | ✅ | +| Seated Events | ✅ | ✅ | +| Paid Events (Stripe/PayPal) | ✅ | ✅ | +| Private Links (Hashed URLs) | ✅ | ✅ | +| Booking Management | ✅ | ✅ | +| Teams | ❌ | ✅ | +| Team Event Types (Round-Robin) | ❌ | ✅ | +| Team Event Types (Collective) | ❌ | ✅ | +| Managed Event Types | ❌ | ✅ | +| Instant Meeting | ❌ | ✅ | +| Organizations | ❌ | ✅ | +| **AVAILABILITY** | | | +| Availability Schedules | ✅ | ✅ | +| Date Overrides | ✅ | ✅ | +| Buffer Times | ✅ | ✅ | +| Minimum Notice / Booking Limits | ✅ | ✅ | +| Travel Schedules | ✅ | ✅ | +| Out-of-Office (OOO) | ✅ | ✅ | +| **CALENDAR INTEGRATIONS** | | | +| Google Calendar | ✅ | ✅ | +| Outlook / Office 365 Calendar | ✅ | ✅ | +| Apple Calendar | ✅ | ✅ | +| CalDAV | ✅ | ✅ | +| Lark Calendar | ✅ | ✅ | +| Feishu Calendar | ✅ | ✅ | +| Zoho Calendar | ✅ | ✅ | +| Exchange Calendar | ✅ | ✅ | +| ICS Feed Calendar | ✅ | ✅ | +| **VIDEO & CONFERENCING** | | | +| Cal Video (Daily.co) | ✅ | ✅ | +| Zoom | ✅ | ✅ | +| Google Meet | ✅ | ✅ | +| Microsoft Teams | ✅ | ✅ | +| Webex | ✅ | ✅ | +| Jitsi | ✅ | ✅ | +| Other conferencing (Whereby, Huddle01, etc.) | ✅ | ✅ | +| Cal.com Video Recordings | ❌ | ✅ | +| **AUTHENTICATION** | | | +| Email / Password Login | ✅ | ✅ | +| Google OAuth | ✅ | ✅ | +| Azure AD / Microsoft OAuth | ✅ | ✅ | +| SAML SSO | ❌ | ✅ | +| SCIM Directory Sync | ❌ | ✅ | +| Impersonation | ❌ | ✅ | +| **AUTOMATION & INTEGRATIONS** | | | +| Webhooks | ✅ | ✅ | +| Zapier | ✅ | ✅ | +| n8n / Make / Pipedream | ✅ | ✅ | +| CRM (HubSpot / Salesforce / Close, etc.) | ✅ | ✅ | +| Messaging (Discord, Telegram, WhatsApp, etc.) | ✅ | ✅ | +| AI Agents (Retell AI, ElevenLabs, Synthflow, etc.) | ✅ | ✅ | +| Analytics (GA4, GTM, PostHog, Fathom, etc.) | ✅ | ✅ | +| Workflows (Automations) | ❌ | ✅ | +| Routing Forms | ❌ | ✅ | +| **EMBED & API** | | | +| Embed (Inline, Popup, Floating Button) | ✅ | ✅ | +| API v2 (REST) | ✅ | ✅ | +| API Keys | ✅ | ✅ | +| Platform / OAuth Clients | ✅ | ✅ | +| API v1 (Legacy) | ❌ | ✅ | +| **ANALYTICS** | | | +| Insights Dashboard | ❌ | ✅ | +| **ADVANCED / ENTERPRISE** | | | +| Attributes & Segments | ❌ | ✅ | +| Delegation | ❌ | ✅ | +| Workspace Platform | ❌ | ✅ | +| Admin Panel | ❌ | ✅ | +| | [Install](/installation) |[Sign up](https://cal.com/signup)| \ No newline at end of file diff --git a/apps/docs/content/installation.mdx b/apps/docs/content/installation.mdx new file mode 100644 index 00000000000000..f028c604b84f6e --- /dev/null +++ b/apps/docs/content/installation.mdx @@ -0,0 +1,142 @@ +# Installation + +There are multiple ways in which you can deploy Cal.diy, providing support for customers who want to implement Cal.diy within their existing infrastructure stack. Let's go through them one-by-one. You can find the instructions for deployment in our README file, which is the section you see when you scroll down in our GitHub repository, or if you've got a copy of Cal.diy downloaded already, you can open the file contained in the downloaded repository called `README.md`. + +## Requirements + +Cal.diy runs with pretty minimal hardware requirements by itself. The most intensive part for the software is when you actually build the software, but once it's running it's relatively lightweight. + +Cal.diy works with a very large range of operating systems, as it only requires JavaScript execution to run. **Cal.diy is known to work well with Windows, Mac, Linux and BSD.** Although they do work well on all of them, for production deployments we would suggest Linux as the ideal platform. Any operating system that runs Node.js should be able to work too, but these are some of the common operating systems that we know work well. + +To run Cal.diy, you need to install a few things. **Node.js, yarn, Git and PostgreSQL**. We use **Prisma** for database maintenance, and is one of the dependencies. We won't publish installation guides for these as they have their own resources available on the internet. If you're on Linux/BSD, all of these things should be readily available on your package manager. Your best bet is searching for something like **Debian 12 PostgreSQL**, which will give you a guide to installing and configuring PostgreSQL on Debian Linux 12. + +> To ensure optimal performance and compatibility, we highly recommend using Node.js version 18 for your development environment. This version provides the best balance of stability, features, and security for this project. Please make sure to update your Node.js installation if necessary. + +## Production Build + +1. First, you git clone the repository with the following command, so you have a copy of the code. + +```bash +git clone https://github.com/calcom/cal.diy.git +``` + +> If you are on windows, you would need to use the following command when cloning, with **admin privileges**: +> +> ```bash +> git clone -c core.symlinks=true https://github.com/calcom/cal.diy.git +> ``` + +2. Then, go into the directory you just cloned with + +```bash +cd cal.diy +``` + +and run + +```bash +yarn +``` + +to install all of the dependencies. Essentially, dependencies are just things that Cal.diy needs to install to be able to work. + +3. Then, you just need to set up a couple of things. For that, we use a `.env` file. We just need to copy and paste the `.env.example` file and rename the copy to `.env`. Here you'll have a template with comments showing you the settings you need/might want to set. + +> For preview deployments on **Vercel**, please leave the following environment variables empty: +> +> - **NEXTAUTH_URL** +> - **NEXT_PUBLIC_WEBSITE_URL** +> - **NEXT_PUBLIC_WEBAPP_URL** + +4. Next, use the command + +```bash +openssl rand -base64 32 +``` + +(or another secret generator tool if you prefer) to generate a key and add it under `NEXTAUTH_SECRET` in the .env file. + +5. You'll also want to fill out the `.env.appStore` file similar to the `.env` file as this includes keys to enable apps. + +#### Production Build + +For a production build, **please make sure** to set up [E2E testing](/docs/developing/local-development#e2e-testing) and [Upgrading](/upgrading) the database from earlier version, and the proceed to build as follows: + +```bash +yarn build +yarn start +``` + +> **Warning:** Please make sure to upgrade your database before you build for production + +## Cron Jobs + +There are a few features which require cron job setup. When self-hosting, you would probably need to set up cron jobs according to the hosting platform you are using. For instance, if you are hosting on Vercel, you would need to set up cron jobs by following [this document](https://vercel.com/guides/how-to-setup-cron-jobs). + +At cal.diy, the cron jobs are found in the following directory: + +``` +/apps/web/app/api/cron +``` + +## App store seeder + +> We recommend using the admin UI/wizard instead of the seeder to enable app store apps + +## API + +#### Step 1 + +Copy the .env files from their respective example files: + +```bash +cp apps/api/v2/.env.example apps/api/v2/.env +cp .env.example .env +``` + +#### Step 2 + +Install packages with yarn: + +```bash +yarn +``` + +### Running API server + +Build & Run the API V2 with yarn: + +```bash +yarn workspace @calcom/api-v2 build +yarn workspace @calcom/api-v2 start +``` + +## One Click Deployments + +### Azure + +[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template) + +### GCP + +[![Run on Google Cloud](https://storage.googleapis.com/gweb-cloudblog-publish/images/run_on_google_cloud.max-300x300.png)](https://deploy.cloud.run/?git_repo=https://github.com/calcom/docker) + +### Railway + +[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/new/template/calcom) + +### Render + +[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/calcom/docker) + +### Vercel + +[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/calcom/cal.diy) + +## Elestio + +[![Deploy on Elestio](https://elest.io/images/logos/deploy-to-elestio-btn.png)](https://elest.io/open-source/cal.diy) + +## Other environments + +Cal.diy effectively is just a Next.js application, so any possible solution you find online pertaining to Next.js applications should work. One example is Netlify, which is pretty similar to Vercel. It says it supports Next.js, so you can deploy Cal.diy on Netlify. Refer to Netlify's docs on Next.js projects for more info. Another example is on a self hosted instance people may want to configure complex reverse proxies, SSL gateways and all sorts of other stuff. We can't officially support every configuration, but for any edge case where you may want to deploy Cal.diy with X, just refer to X's docs on Next.js applications and you should be fine. That's it. Your new self hosted Cal.diy instance should now be up and running. diff --git a/apps/docs/content/upgrading.mdx b/apps/docs/content/upgrading.mdx new file mode 100644 index 00000000000000..f23164de11c6b2 --- /dev/null +++ b/apps/docs/content/upgrading.mdx @@ -0,0 +1,50 @@ +# Upgrading + +Pull the current version: + +```bash +git pull +``` + +Check if dependencies got added/updated/removed + +```bash +yarn +``` + +Apply database migrations by running **one of** the following commands: + +In a development environment, run: + +```bash +yarn workspace @calcom/prisma db-migrate +``` + +(this can clear your development database in some cases) + +In a production environment, run: + +```bash +yarn workspace @calcom/prisma db-deploy +``` + +Check for `.env` variables changes + +```bash +yarn predev +``` + +Start the server. In a development environment, just do: + +```bash +yarn dev +``` + +For a production build, run for example: + +```bash +yarn build +yarn start +``` + +Enjoy the new version. diff --git a/apps/docs/fonts/CalSans-Regular.woff2 b/apps/docs/fonts/CalSans-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..6c83a2df3bdb000e5f6e86f8db4583102f9df455 GIT binary patch literal 37412 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 z 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 Mdtua=PXPb`0BRBLO8@`> literal 0 HcmV?d00001 diff --git a/apps/docs/fonts/CalSansUI-UIBold.woff2 b/apps/docs/fonts/CalSansUI-UIBold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..3fc204ab9c6c4dff1ca4424a9fd36deaaac362a8 GIT binary patch literal 54016 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

=PET%RT;hya4!*2{Tx4df~ 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 I{7R7gEJ3XNG5`Po literal 0 HcmV?d00001 diff --git a/apps/docs/fonts/CalSansUI-UILight.woff2 b/apps/docs/fonts/CalSansUI-UILight.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e6e8e42185a62f3eb465f515ff87318a45d32e00 GIT binary patch literal 52600 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�UL`+>S;GUZEDK4SQ=N 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 e@T0_{tf^HdLEqs literal 0 HcmV?d00001 diff --git a/apps/docs/fonts/CalSansUI-UIMedium.woff2 b/apps/docs/fonts/CalSansUI-UIMedium.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..01ff99b1cd55c62aaf80a99625e0e13ad5c706f3 GIT binary patch literal 54584 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

JY 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 literal 0 HcmV?d00001 diff --git a/apps/docs/fonts/CalSansUI-UISemiBold.woff2 b/apps/docs/fonts/CalSansUI-UISemiBold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..3be632703d84e828adec1ef296f4fb3b0d6ea96b GIT binary patch literal 54676 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 f;hbty3zyP{sU~ +/// +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/app/api-reference/config/typescript for more information. diff --git a/apps/docs/next.config.mjs b/apps/docs/next.config.mjs new file mode 100644 index 00000000000000..f2fc0984207adf --- /dev/null +++ b/apps/docs/next.config.mjs @@ -0,0 +1,7 @@ +import nextra from "nextra"; + +const withNextra = nextra({}); + +export default withNextra({ + reactStrictMode: true, +}); diff --git a/apps/docs/package.json b/apps/docs/package.json new file mode 100644 index 00000000000000..b91f4a3e27882b --- /dev/null +++ b/apps/docs/package.json @@ -0,0 +1,21 @@ +{ + "name": "@calcom/docs", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "next --turbopack", + "build": "next build", + "start": "next start" + }, + "dependencies": { + "next": "^15.1.0", + "nextra": "^4.2.0", + "nextra-theme-docs": "^4.2.0", + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@types/react": "^19.0.0", + "typescript": "^5.0.0" + } +} diff --git a/apps/docs/public/cal-docs-logo-white.svg b/apps/docs/public/cal-docs-logo-white.svg new file mode 100644 index 00000000000000..236cfdc9fcafca --- /dev/null +++ b/apps/docs/public/cal-docs-logo-white.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/apps/docs/public/cal-docs-logo.svg b/apps/docs/public/cal-docs-logo.svg new file mode 100644 index 00000000000000..6ab1c0a99f1c43 --- /dev/null +++ b/apps/docs/public/cal-docs-logo.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/apps/docs/tsconfig.json b/apps/docs/tsconfig.json new file mode 100644 index 00000000000000..b23c7feaa77e2b --- /dev/null +++ b/apps/docs/tsconfig.json @@ -0,0 +1,36 @@ +{ + "compilerOptions": { + "target": "ES2017", + "lib": [ + "dom", + "dom.iterable", + "esnext" + ], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "noEmit": true, + "incremental": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "plugins": [ + { + "name": "next" + } + ] + }, + "include": [ + "**/*.mdx", + "**/*.ts", + "**/*.tsx", + "next-env.d.ts", + ".next/types/**/*.ts" + ], + "exclude": [ + "node_modules" + ] +} diff --git a/yarn.lock b/yarn.lock index 00eef74e65fdc2..619ce8eb2bda58 100644 --- a/yarn.lock +++ b/yarn.lock @@ -255,6 +255,16 @@ __metadata: languageName: node linkType: hard +"@antfu/install-pkg@npm:^1.1.0": + version: 1.1.0 + resolution: "@antfu/install-pkg@npm:1.1.0" + dependencies: + package-manager-detector: "npm:^1.3.0" + tinyexec: "npm:^1.0.1" + checksum: 10/e20b7cd1c37eff832cc878cddd794f8c3779175681cf6d75c4cc1ae1475526126a4c1f71fa027161aa1ee35a8850782be9ca0ec01b621893defebe97ba9dc70e + languageName: node + linkType: hard + "@antfu/utils@npm:^0.7.7": version: 0.7.8 resolution: "@antfu/utils@npm:0.7.8" @@ -1862,6 +1872,13 @@ __metadata: languageName: node linkType: hard +"@braintree/sanitize-url@npm:^7.1.1": + version: 7.1.2 + resolution: "@braintree/sanitize-url@npm:7.1.2" + checksum: 10/d9626ff8f8eb5e192cd055e6e743449c21102c76bb59e405b7028fe56230fa080bfcc80dfb1e21850a6876e75adda9f7b3c888cf0685942bb74da4d2866d6ec3 + languageName: node + linkType: hard + "@bufbuild/protobuf@npm:^1.10.0": version: 1.10.1 resolution: "@bufbuild/protobuf@npm:1.10.1" @@ -2297,6 +2314,20 @@ __metadata: languageName: unknown linkType: soft +"@calcom/docs@workspace:apps/docs": + version: 0.0.0-use.local + resolution: "@calcom/docs@workspace:apps/docs" + dependencies: + "@types/react": "npm:^19.0.0" + next: "npm:^15.1.0" + nextra: "npm:^4.2.0" + nextra-theme-docs: "npm:^4.2.0" + react: "npm:^19.0.0" + react-dom: "npm:^19.0.0" + typescript: "npm:^5.0.0" + languageName: unknown + linkType: soft + "@calcom/dub@workspace:packages/app-store/dub": version: 0.0.0-use.local resolution: "@calcom/dub@workspace:packages/app-store/dub" @@ -3833,6 +3864,16 @@ __metadata: languageName: node linkType: hard +"@chevrotain/cst-dts-gen@npm:12.0.0": + version: 12.0.0 + resolution: "@chevrotain/cst-dts-gen@npm:12.0.0" + dependencies: + "@chevrotain/gast": "npm:12.0.0" + "@chevrotain/types": "npm:12.0.0" + checksum: 10/d5af4f2580613501eb02cd68ceb93463e47c5d2103226d698efb6bd1c01864543fff729984961b403ce7627e2268352abec76d854122aa3731432baef5f6ceec + languageName: node + linkType: hard + "@chevrotain/gast@npm:10.5.0": version: 10.5.0 resolution: "@chevrotain/gast@npm:10.5.0" @@ -3843,6 +3884,22 @@ __metadata: languageName: node linkType: hard +"@chevrotain/gast@npm:12.0.0": + version: 12.0.0 + resolution: "@chevrotain/gast@npm:12.0.0" + dependencies: + "@chevrotain/types": "npm:12.0.0" + checksum: 10/113dd2830b7fa738da56913102e52f682604675a22e88798e16e892fa0f4838fd17260090d225c332e513ec4e4caa6da0161e44f3ee8a7d7eb6dbfee4af6196b + languageName: node + linkType: hard + +"@chevrotain/regexp-to-ast@npm:12.0.0, @chevrotain/regexp-to-ast@npm:~12.0.0": + version: 12.0.0 + resolution: "@chevrotain/regexp-to-ast@npm:12.0.0" + checksum: 10/61cbd3a064c71b5deb1d53bc652db5cfb6f7c162720874e28919edf07ac52f097bcd68982d9acd24a45bcb49f0217b5472876cd2abeb3c1ad40997d765ad08b1 + languageName: node + linkType: hard + "@chevrotain/types@npm:10.5.0": version: 10.5.0 resolution: "@chevrotain/types@npm:10.5.0" @@ -3850,6 +3907,13 @@ __metadata: languageName: node linkType: hard +"@chevrotain/types@npm:12.0.0": + version: 12.0.0 + resolution: "@chevrotain/types@npm:12.0.0" + checksum: 10/a2033266ef6cef121a4787b7bc9b62c653527b91061539458249bea1574a4a752d31c270d4d78af292eb9e4b939cec35600f6729adb3c923b369a87c6ac2b994 + languageName: node + linkType: hard + "@chevrotain/utils@npm:10.5.0": version: 10.5.0 resolution: "@chevrotain/utils@npm:10.5.0" @@ -3857,6 +3921,13 @@ __metadata: languageName: node linkType: hard +"@chevrotain/utils@npm:12.0.0": + version: 12.0.0 + resolution: "@chevrotain/utils@npm:12.0.0" + checksum: 10/c72ba1e953df4a9196af374966f67588e585b4700b5dfea661eae4cb3730d78e97690b48ab4d9e8db7478c74fd4f0deaa71eb5a0b9767483db9a2f7e02230a31 + languageName: node + linkType: hard + "@clack/core@npm:0.5.0": version: 0.5.0 resolution: "@clack/core@npm:0.5.0" @@ -5006,6 +5077,15 @@ __metadata: languageName: node linkType: hard +"@floating-ui/core@npm:^1.7.5": + version: 1.7.5 + resolution: "@floating-ui/core@npm:1.7.5" + dependencies: + "@floating-ui/utils": "npm:^0.2.11" + checksum: 10/fecdc9b3ce93f02bf78a6114b93730a4cb9fa8234c62f9a949016186297a039c9f9cd3c5c81ff74b93ebddf0b32048c4af7a528afe7904b75423ed2e7491b888 + languageName: node + linkType: hard + "@floating-ui/dom@npm:^1.0.1, @floating-ui/dom@npm:^1.6.12, @floating-ui/dom@npm:^1.7.4": version: 1.7.4 resolution: "@floating-ui/dom@npm:1.7.4" @@ -5016,6 +5096,16 @@ __metadata: languageName: node linkType: hard +"@floating-ui/dom@npm:^1.7.6": + version: 1.7.6 + resolution: "@floating-ui/dom@npm:1.7.6" + dependencies: + "@floating-ui/core": "npm:^1.7.5" + "@floating-ui/utils": "npm:^0.2.11" + checksum: 10/84dff2ffdf85c8b92d7edafc543c55869abbeaeb3007fa983159467e050153b507a0f5fe8e84f88c3f28c35a82de9df9c20a6eef5560cbba3afae19141444ff2 + languageName: node + linkType: hard + "@floating-ui/react-dom@npm:^2.0.0, @floating-ui/react-dom@npm:^2.1.6": version: 2.1.6 resolution: "@floating-ui/react-dom@npm:2.1.6" @@ -5028,6 +5118,32 @@ __metadata: languageName: node linkType: hard +"@floating-ui/react-dom@npm:^2.1.2": + version: 2.1.8 + resolution: "@floating-ui/react-dom@npm:2.1.8" + dependencies: + "@floating-ui/dom": "npm:^1.7.6" + peerDependencies: + react: ">=16.8.0" + react-dom: ">=16.8.0" + checksum: 10/39c3e3e5538a111a3eadf1b9ca486d7dc17c7eb24b83a0ea9b4c189fa7dbe5abe01357388d8cf6a4badb2d3fec2b1090e10529537bde91acbcfe19b0a8d10f90 + languageName: node + linkType: hard + +"@floating-ui/react@npm:^0.26.16": + version: 0.26.28 + resolution: "@floating-ui/react@npm:0.26.28" + dependencies: + "@floating-ui/react-dom": "npm:^2.1.2" + "@floating-ui/utils": "npm:^0.2.8" + tabbable: "npm:^6.0.0" + peerDependencies: + react: ">=16.8.0" + react-dom: ">=16.8.0" + checksum: 10/7f8e6b27db48b68ca94756687af21857be04e7360ac922d7c8e22411f2895df6384af7bd40f4b48663d3cc5809bb5c6574cd9c9ea15543ec747b9a8e1c8c3008 + languageName: node + linkType: hard + "@floating-ui/utils@npm:^0.2.10": version: 0.2.10 resolution: "@floating-ui/utils@npm:0.2.10" @@ -5035,6 +5151,22 @@ __metadata: languageName: node linkType: hard +"@floating-ui/utils@npm:^0.2.11, @floating-ui/utils@npm:^0.2.8": + version: 0.2.11 + resolution: "@floating-ui/utils@npm:0.2.11" + checksum: 10/72150138ba1c274d757a1da85233202fa9fdfd2272ec1fb0883eb0ffdf138863af81573049ed2c20b98adb4b7ae2236065541ce14037fe328955089831a678d5 + languageName: node + linkType: hard + +"@formatjs/intl-localematcher@npm:^0.6.0": + version: 0.6.2 + resolution: "@formatjs/intl-localematcher@npm:0.6.2" + dependencies: + tslib: "npm:^2.8.0" + checksum: 10/eb12a7f5367bbecdfafc20d7f005559ce840f420e970f425c5213d35e94e86dfe75bde03464971a26494bf8427d4961269db22ecad2834f2a19d888b5d9cc064 + languageName: node + linkType: hard + "@formbricks/api@npm:3.0.0": version: 3.0.0 resolution: "@formbricks/api@npm:3.0.0" @@ -5800,6 +5932,22 @@ __metadata: languageName: node linkType: hard +"@headlessui/react@npm:^2.1.2": + version: 2.2.10 + resolution: "@headlessui/react@npm:2.2.10" + dependencies: + "@floating-ui/react": "npm:^0.26.16" + "@react-aria/focus": "npm:^3.20.2" + "@react-aria/interactions": "npm:^3.25.0" + "@tanstack/react-virtual": "npm:^3.13.9" + use-sync-external-store: "npm:^1.5.0" + peerDependencies: + react: ^18 || ^19 || ^19.0.0-rc + react-dom: ^18 || ^19 || ^19.0.0-rc + checksum: 10/1b8445fffa8c20312b9af2c131ea4202fe17875447137d7cc06a1b7c2c5eac02edd7862465e848efba9fdc6792a96980a6943a70a2871648a24faac31480a0e8 + languageName: node + linkType: hard + "@hono/node-server@npm:^1.19.9": version: 1.19.9 resolution: "@hono/node-server@npm:1.19.9" @@ -5845,6 +5993,24 @@ __metadata: languageName: node linkType: hard +"@iconify/types@npm:^2.0.0": + version: 2.0.0 + resolution: "@iconify/types@npm:2.0.0" + checksum: 10/1b3425ecbc0eef44f23d3f27355ae7ef306d5119c566f013ef1849995b016e1fdcc5af6b74c3bc0554485d70cf5179cb9c1095b14d662a55abcae1148e1a13c9 + languageName: node + linkType: hard + +"@iconify/utils@npm:^3.0.2": + version: 3.1.0 + resolution: "@iconify/utils@npm:3.1.0" + dependencies: + "@antfu/install-pkg": "npm:^1.1.0" + "@iconify/types": "npm:^2.0.0" + mlly: "npm:^1.8.0" + checksum: 10/28e83311ec7eca3f94a9c128c6d6f0f6aa68b7a63bcac44d08a1ea6f94d3752a7447a4354f3d02fdcdbf782ba033784ef7a65212b3afe52d9b41ef8138e96b14 + languageName: node + linkType: hard + "@img/colour@npm:^1.0.0": version: 1.0.0 resolution: "@img/colour@npm:1.0.0" @@ -7814,6 +7980,48 @@ __metadata: languageName: node linkType: hard +"@mdx-js/mdx@npm:^3.0.0": + version: 3.1.1 + resolution: "@mdx-js/mdx@npm:3.1.1" + dependencies: + "@types/estree": "npm:^1.0.0" + "@types/estree-jsx": "npm:^1.0.0" + "@types/hast": "npm:^3.0.0" + "@types/mdx": "npm:^2.0.0" + acorn: "npm:^8.0.0" + collapse-white-space: "npm:^2.0.0" + devlop: "npm:^1.0.0" + estree-util-is-identifier-name: "npm:^3.0.0" + estree-util-scope: "npm:^1.0.0" + estree-walker: "npm:^3.0.0" + hast-util-to-jsx-runtime: "npm:^2.0.0" + markdown-extensions: "npm:^2.0.0" + recma-build-jsx: "npm:^1.0.0" + recma-jsx: "npm:^1.0.0" + recma-stringify: "npm:^1.0.0" + rehype-recma: "npm:^1.0.0" + remark-mdx: "npm:^3.0.0" + remark-parse: "npm:^11.0.0" + remark-rehype: "npm:^11.0.0" + source-map: "npm:^0.7.0" + unified: "npm:^11.0.0" + unist-util-position-from-estree: "npm:^2.0.0" + unist-util-stringify-position: "npm:^4.0.0" + unist-util-visit: "npm:^5.0.0" + vfile: "npm:^6.0.0" + checksum: 10/b871da2497f6e0f11da1574fe772a50b09b7c177de8df0f821f708bf162febe76c01a572a5c68e860960189209fd66f768c2e747fdb3a1f497c5c32e11890c11 + languageName: node + linkType: hard + +"@mermaid-js/parser@npm:^1.1.0": + version: 1.1.0 + resolution: "@mermaid-js/parser@npm:1.1.0" + dependencies: + langium: "npm:^4.0.0" + checksum: 10/845bafce5d2be94a8104112e2197ebd925e58b3c9aae5b3e4b7795e308b0bc7c8016a5c955974da956cf7351a5572e4797ad5c991ecbb771326ffa18d1db2074 + languageName: node + linkType: hard + "@microsoft/api-extractor-model@npm:7.32.2": version: 7.32.2 resolution: "@microsoft/api-extractor-model@npm:7.32.2" @@ -8011,6 +8219,165 @@ __metadata: languageName: node linkType: hard +"@napi-rs/simple-git-android-arm-eabi@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-android-arm-eabi@npm:0.1.22" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@napi-rs/simple-git-android-arm64@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-android-arm64@npm:0.1.22" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@napi-rs/simple-git-darwin-arm64@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-darwin-arm64@npm:0.1.22" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@napi-rs/simple-git-darwin-x64@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-darwin-x64@npm:0.1.22" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@napi-rs/simple-git-freebsd-x64@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-freebsd-x64@npm:0.1.22" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-arm-gnueabihf@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-arm-gnueabihf@npm:0.1.22" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-arm64-gnu@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-arm64-gnu@npm:0.1.22" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-arm64-musl@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-arm64-musl@npm:0.1.22" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-ppc64-gnu@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-ppc64-gnu@npm:0.1.22" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-s390x-gnu@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-s390x-gnu@npm:0.1.22" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-x64-gnu@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-x64-gnu@npm:0.1.22" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@napi-rs/simple-git-linux-x64-musl@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-linux-x64-musl@npm:0.1.22" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@napi-rs/simple-git-win32-arm64-msvc@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-win32-arm64-msvc@npm:0.1.22" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@napi-rs/simple-git-win32-ia32-msvc@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-win32-ia32-msvc@npm:0.1.22" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@napi-rs/simple-git-win32-x64-msvc@npm:0.1.22": + version: 0.1.22 + resolution: "@napi-rs/simple-git-win32-x64-msvc@npm:0.1.22" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@napi-rs/simple-git@npm:^0.1.9": + version: 0.1.22 + resolution: "@napi-rs/simple-git@npm:0.1.22" + dependencies: + "@napi-rs/simple-git-android-arm-eabi": "npm:0.1.22" + "@napi-rs/simple-git-android-arm64": "npm:0.1.22" + "@napi-rs/simple-git-darwin-arm64": "npm:0.1.22" + "@napi-rs/simple-git-darwin-x64": "npm:0.1.22" + "@napi-rs/simple-git-freebsd-x64": "npm:0.1.22" + "@napi-rs/simple-git-linux-arm-gnueabihf": "npm:0.1.22" + "@napi-rs/simple-git-linux-arm64-gnu": "npm:0.1.22" + "@napi-rs/simple-git-linux-arm64-musl": "npm:0.1.22" + "@napi-rs/simple-git-linux-ppc64-gnu": "npm:0.1.22" + "@napi-rs/simple-git-linux-s390x-gnu": "npm:0.1.22" + "@napi-rs/simple-git-linux-x64-gnu": "npm:0.1.22" + "@napi-rs/simple-git-linux-x64-musl": "npm:0.1.22" + "@napi-rs/simple-git-win32-arm64-msvc": "npm:0.1.22" + "@napi-rs/simple-git-win32-ia32-msvc": "npm:0.1.22" + "@napi-rs/simple-git-win32-x64-msvc": "npm:0.1.22" + dependenciesMeta: + "@napi-rs/simple-git-android-arm-eabi": + optional: true + "@napi-rs/simple-git-android-arm64": + optional: true + "@napi-rs/simple-git-darwin-arm64": + optional: true + "@napi-rs/simple-git-darwin-x64": + optional: true + "@napi-rs/simple-git-freebsd-x64": + optional: true + "@napi-rs/simple-git-linux-arm-gnueabihf": + optional: true + "@napi-rs/simple-git-linux-arm64-gnu": + optional: true + "@napi-rs/simple-git-linux-arm64-musl": + optional: true + "@napi-rs/simple-git-linux-ppc64-gnu": + optional: true + "@napi-rs/simple-git-linux-s390x-gnu": + optional: true + "@napi-rs/simple-git-linux-x64-gnu": + optional: true + "@napi-rs/simple-git-linux-x64-musl": + optional: true + "@napi-rs/simple-git-win32-arm64-msvc": + optional: true + "@napi-rs/simple-git-win32-ia32-msvc": + optional: true + "@napi-rs/simple-git-win32-x64-msvc": + optional: true + checksum: 10/222965373b229f5364875678b1d8c88e069cecd041d49203ab6549287b235a94c77dcf1d201a77c76970bbe8fdbd97c15cb39b21ad724c2cd344601d3f2b1307 + languageName: node + linkType: hard + "@napi-rs/wasm-runtime@npm:^1.0.7": version: 1.0.7 resolution: "@napi-rs/wasm-runtime@npm:1.0.7" @@ -8344,6 +8711,13 @@ __metadata: languageName: node linkType: hard +"@next/env@npm:15.5.15": + version: 15.5.15 + resolution: "@next/env@npm:15.5.15" + checksum: 10/563340390668c717ca179067c3caf7f9e12b282b66a05a5f6b3dec1ab64cfdd93e08d7f2ac4fdb37fffcb8c32911054a35e6c9d3a443fba990c2a0c868db0514 + languageName: node + linkType: hard + "@next/env@npm:16.1.5": version: 16.1.5 resolution: "@next/env@npm:16.1.5" @@ -8358,6 +8732,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-darwin-arm64@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-darwin-arm64@npm:15.5.15" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@next/swc-darwin-arm64@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-darwin-arm64@npm:16.1.5" @@ -8372,6 +8753,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-darwin-x64@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-darwin-x64@npm:15.5.15" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@next/swc-darwin-x64@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-darwin-x64@npm:16.1.5" @@ -8386,6 +8774,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-arm64-gnu@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-linux-arm64-gnu@npm:15.5.15" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@next/swc-linux-arm64-gnu@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-linux-arm64-gnu@npm:16.1.5" @@ -8400,6 +8795,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-arm64-musl@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-linux-arm64-musl@npm:15.5.15" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + "@next/swc-linux-arm64-musl@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-linux-arm64-musl@npm:16.1.5" @@ -8414,6 +8816,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-x64-gnu@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-linux-x64-gnu@npm:15.5.15" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@next/swc-linux-x64-gnu@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-linux-x64-gnu@npm:16.1.5" @@ -8428,6 +8837,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-x64-musl@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-linux-x64-musl@npm:15.5.15" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@next/swc-linux-x64-musl@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-linux-x64-musl@npm:16.1.5" @@ -8442,6 +8858,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-win32-arm64-msvc@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-win32-arm64-msvc@npm:15.5.15" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@next/swc-win32-arm64-msvc@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-win32-arm64-msvc@npm:16.1.5" @@ -8463,6 +8886,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-win32-x64-msvc@npm:15.5.15": + version: 15.5.15 + resolution: "@next/swc-win32-x64-msvc@npm:15.5.15" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@next/swc-win32-x64-msvc@npm:16.1.5": version: 16.1.5 resolution: "@next/swc-win32-x64-msvc@npm:16.1.5" @@ -12846,6 +13276,95 @@ __metadata: languageName: node linkType: hard +"@react-aria/focus@npm:^3.20.2": + version: 3.21.5 + resolution: "@react-aria/focus@npm:3.21.5" + dependencies: + "@react-aria/interactions": "npm:^3.27.1" + "@react-aria/utils": "npm:^3.33.1" + "@react-types/shared": "npm:^3.33.1" + "@swc/helpers": "npm:^0.5.0" + clsx: "npm:^2.0.0" + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + checksum: 10/cfc2698626a221b978213104d7d5354e2ab24467397e4c74879a0cb23733a004ca19c40fa55de0927b7d3d9156562b00c4e1e84e20f4894afd706cd8a31400e5 + languageName: node + linkType: hard + +"@react-aria/interactions@npm:^3.25.0, @react-aria/interactions@npm:^3.27.1": + version: 3.27.1 + resolution: "@react-aria/interactions@npm:3.27.1" + dependencies: + "@react-aria/ssr": "npm:^3.9.10" + "@react-aria/utils": "npm:^3.33.1" + "@react-stately/flags": "npm:^3.1.2" + "@react-types/shared": "npm:^3.33.1" + "@swc/helpers": "npm:^0.5.0" + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + checksum: 10/58ef760bfbede659991d670516ac2c04b6230461ae963370d3fa2a86d9da2f8a27c17f76a6549c95af6845fa40f2c3e23d7574748347b6c3bc9581ca36bbaacd + languageName: node + linkType: hard + +"@react-aria/ssr@npm:^3.9.10": + version: 3.9.10 + resolution: "@react-aria/ssr@npm:3.9.10" + dependencies: + "@swc/helpers": "npm:^0.5.0" + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + checksum: 10/3b414b5b174769e874014604749d9beaf2556f360f61d3df3223bca6150c16dd37fbf16800e669a2b0045bd221df70212756991a426a7a472c56aac6c0dabd1b + languageName: node + linkType: hard + +"@react-aria/utils@npm:^3.33.1": + version: 3.33.1 + resolution: "@react-aria/utils@npm:3.33.1" + dependencies: + "@react-aria/ssr": "npm:^3.9.10" + "@react-stately/flags": "npm:^3.1.2" + "@react-stately/utils": "npm:^3.11.0" + "@react-types/shared": "npm:^3.33.1" + "@swc/helpers": "npm:^0.5.0" + clsx: "npm:^2.0.0" + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + checksum: 10/676de77e907862fc44963657a370a45242bfbec2cd54a2ed0935a709315e31415c7c045e2721f067c315418e9aa8c46aa9bd18cb6010820af357c17e335cba47 + languageName: node + linkType: hard + +"@react-stately/flags@npm:^3.1.2": + version: 3.1.2 + resolution: "@react-stately/flags@npm:3.1.2" + dependencies: + "@swc/helpers": "npm:^0.5.0" + checksum: 10/a020c3680c36d9624f765c5916ce95d69959f64887928e8f380f11b5362bb0499a901a5842e4e12eb8e5a776af59212b1ee0c4c6a6681ce75f61dace8b2f9c40 + languageName: node + linkType: hard + +"@react-stately/utils@npm:^3.11.0": + version: 3.11.0 + resolution: "@react-stately/utils@npm:3.11.0" + dependencies: + "@swc/helpers": "npm:^0.5.0" + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + checksum: 10/ae3414559cde99230cfd05c19a6498fffa94d268d139825fb4777f5beba4ec5b39f19f1199c8e625d5977ae7f568d1c0dd447b87ec0ab4ed12721303409b9f16 + languageName: node + linkType: hard + +"@react-types/shared@npm:^3.33.1": + version: 3.33.1 + resolution: "@react-types/shared@npm:3.33.1" + peerDependencies: + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 + checksum: 10/18b9586e4d6f1fda82a471bde7e4dec5bcc95d1a7ece58864fe40bcd9dce175b5c76c4285d8aeed1beba2d397e3e89b521519a917aa97e16847edfa3c67b5df5 + languageName: node + linkType: hard + "@redis/bloom@npm:1.2.0": version: 1.2.0 resolution: "@redis/bloom@npm:1.2.0" @@ -13802,6 +14321,87 @@ __metadata: languageName: node linkType: hard +"@shikijs/core@npm:3.23.0": + version: 3.23.0 + resolution: "@shikijs/core@npm:3.23.0" + dependencies: + "@shikijs/types": "npm:3.23.0" + "@shikijs/vscode-textmate": "npm:^10.0.2" + "@types/hast": "npm:^3.0.4" + hast-util-to-html: "npm:^9.0.5" + checksum: 10/b692850d79d36f90cb92d517de60c3739e888a3ce0b49450090fa954166eae6655ae1884dbbb971e254b907644cc6aa7757fa84fc2437c45208e09143d4f75ab + languageName: node + linkType: hard + +"@shikijs/engine-javascript@npm:3.23.0": + version: 3.23.0 + resolution: "@shikijs/engine-javascript@npm:3.23.0" + dependencies: + "@shikijs/types": "npm:3.23.0" + "@shikijs/vscode-textmate": "npm:^10.0.2" + oniguruma-to-es: "npm:^4.3.4" + checksum: 10/0ca854fb05a14a97fc83c6a54291af6b387fb1c319bd09426eeca3e0ed597bb0b81a79459838c65d0fadce012ba3f166bebb587828d0cc5511b943c743eae2be + languageName: node + linkType: hard + +"@shikijs/engine-oniguruma@npm:3.23.0": + version: 3.23.0 + resolution: "@shikijs/engine-oniguruma@npm:3.23.0" + dependencies: + "@shikijs/types": "npm:3.23.0" + "@shikijs/vscode-textmate": "npm:^10.0.2" + checksum: 10/edd8983be86f6b055793813e80ecf31c3cefdd896f3742797ae03f2cbb9f467ac736c4b152d4a5c42dbd17da17d24ff798a15d37bcf6205d7f8cd8f44e2a11e0 + languageName: node + linkType: hard + +"@shikijs/langs@npm:3.23.0": + version: 3.23.0 + resolution: "@shikijs/langs@npm:3.23.0" + dependencies: + "@shikijs/types": "npm:3.23.0" + checksum: 10/115b1afb9eb4eb300eb68b146e442f7e6d196878798c5b9d75dd53a6ef1e1c3b27e325353a10973e3fa47d88630e937b8a3cf3b37b6eef80bf2aec3d51657bb3 + languageName: node + linkType: hard + +"@shikijs/themes@npm:3.23.0": + version: 3.23.0 + resolution: "@shikijs/themes@npm:3.23.0" + dependencies: + "@shikijs/types": "npm:3.23.0" + checksum: 10/741987380445b788aea6cc1e03492bc06950f1a0461edf45083bd226889c5ba78c7ed1af9724afacab7d6471777f0c0e8871577183dfb2cfbceb255663374835 + languageName: node + linkType: hard + +"@shikijs/twoslash@npm:^3.2.1": + version: 3.23.0 + resolution: "@shikijs/twoslash@npm:3.23.0" + dependencies: + "@shikijs/core": "npm:3.23.0" + "@shikijs/types": "npm:3.23.0" + twoslash: "npm:^0.3.6" + peerDependencies: + typescript: ">=5.5.0" + checksum: 10/a7d7eaddb80e332d2c4070edd70179efaaa08bec6a6658599a6a60428a8b3ae7652ed60632f33b491bb281f5ccf91e4a8f7f63f377c539ceadf04b2d6f6f24c3 + languageName: node + linkType: hard + +"@shikijs/types@npm:3.23.0": + version: 3.23.0 + resolution: "@shikijs/types@npm:3.23.0" + dependencies: + "@shikijs/vscode-textmate": "npm:^10.0.2" + "@types/hast": "npm:^3.0.4" + checksum: 10/18b5703d445d53dd6782a3e2c7332009302c6c046f301d9cd99f1a26b9c8329b3e502b096894bffac61f78835c533827bab2ce78a39666ab87b78f8d7ca11f7b + languageName: node + linkType: hard + +"@shikijs/vscode-textmate@npm:^10.0.2": + version: 10.0.2 + resolution: "@shikijs/vscode-textmate@npm:10.0.2" + checksum: 10/d924cba8a01cd9ca12f56ba097d628fdb81455abb85884c8d8a5ae85b628a37dd5907e7691019b97107bd6608c866adf91ba04a1c3bba391281c88e386c044ea + languageName: node + linkType: hard + "@shuding/opentype.js@npm:1.4.0-beta.0": version: 1.4.0-beta.0 resolution: "@shuding/opentype.js@npm:1.4.0-beta.0" @@ -14571,6 +15171,15 @@ __metadata: languageName: node linkType: hard +"@swc/helpers@npm:^0.5.0": + version: 0.5.21 + resolution: "@swc/helpers@npm:0.5.21" + dependencies: + tslib: "npm:^2.8.0" + checksum: 10/3b637f836282a0a0f2c21e27a2354f09659a4ffa6fad7fbb464a94ff235704b224a578ac04df320cc633471681c61a7316ca02079c90d39e9713ad3422aea0dc + languageName: node + linkType: hard + "@swc/types@npm:^0.1.25": version: 0.1.25 resolution: "@swc/types@npm:0.1.25" @@ -14967,6 +15576,18 @@ __metadata: languageName: node linkType: hard +"@tanstack/react-virtual@npm:^3.13.9": + version: 3.13.23 + resolution: "@tanstack/react-virtual@npm:3.13.23" + dependencies: + "@tanstack/virtual-core": "npm:3.13.23" + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + checksum: 10/fb60d65b61f299648325d8d69d00e5d9434ec20e075496c2e451426087d6216d617558565f05d7a503393a482db29112140b19082f709785f4a469800ddc4e31 + languageName: node + linkType: hard + "@tanstack/table-core@npm:8.20.5": version: 8.20.5 resolution: "@tanstack/table-core@npm:8.20.5" @@ -14981,6 +15602,13 @@ __metadata: languageName: node linkType: hard +"@tanstack/virtual-core@npm:3.13.23": + version: 3.13.23 + resolution: "@tanstack/virtual-core@npm:3.13.23" + checksum: 10/17f6e3c3f56d2d91d5818981416a628db2e1038f6a13f39f60e5b2bdcff04b99fba0e79640a6667ea9ef70756a2a086fb468f8b5f065faea9f1a47f8aa3722a5 + languageName: node + linkType: hard + "@tediousjs/connection-string@npm:^0.5.0": version: 0.5.0 resolution: "@tediousjs/connection-string@npm:0.5.0" @@ -15086,6 +15714,28 @@ __metadata: languageName: node linkType: hard +"@theguild/remark-mermaid@npm:^0.3.0": + version: 0.3.0 + resolution: "@theguild/remark-mermaid@npm:0.3.0" + dependencies: + mermaid: "npm:^11.0.0" + unist-util-visit: "npm:^5.0.0" + peerDependencies: + react: ^18.2.0 || ^19.0.0 + checksum: 10/4feb773a0089b0fa4b86b28d5c44f6d2e321f735209481ca7b4eeb2da6e53af73c270ef84863487358acc476da3738e6a4fddb57ab2102951afeb34e3f8e29ef + languageName: node + linkType: hard + +"@theguild/remark-npm2yarn@npm:^0.3.2": + version: 0.3.3 + resolution: "@theguild/remark-npm2yarn@npm:0.3.3" + dependencies: + npm-to-yarn: "npm:^3.0.0" + unist-util-visit: "npm:^5.0.0" + checksum: 10/aa6f4e1ab7e729a8d7e74dbd17867946cd2adaf00a942d9b884a0feec1251169b295735fb46298311cfa1b8bffba076673a07df575365cf2fef821f04d7a3904 + languageName: node + linkType: hard + "@todesktop/client-core@npm:1.20.0": version: 1.20.0 resolution: "@todesktop/client-core@npm:1.20.0" @@ -15354,6 +16004,17 @@ __metadata: languageName: node linkType: hard +"@ts-morph/common@npm:~0.28.1": + version: 0.28.1 + resolution: "@ts-morph/common@npm:0.28.1" + dependencies: + minimatch: "npm:^10.0.1" + path-browserify: "npm:^1.0.1" + tinyglobby: "npm:^0.2.14" + checksum: 10/d5c6ed11cf046c186c7263c28c7e9b5fbefb61c65b99f66cfe6a3b249f70f3fbf116b5aace2980602a7ceabecdc399065d5a7f14aabe5475eb43fd573a3cc665 + languageName: node + linkType: hard + "@tsconfig/node10@npm:^1.0.7": version: 1.0.8 resolution: "@tsconfig/node10@npm:1.0.8" @@ -15560,6 +16221,13 @@ __metadata: languageName: node linkType: hard +"@types/d3-array@npm:*": + version: 3.2.2 + resolution: "@types/d3-array@npm:3.2.2" + checksum: 10/1afebd05b688cafaaea295f765b409789f088b274b8a7ca40a4bc2b79760044a898e06a915f40bbc59cf39eabdd2b5d32e960b136fc025fd05c9a9d4435614c6 + languageName: node + linkType: hard + "@types/d3-array@npm:^3.0.3": version: 3.0.4 resolution: "@types/d3-array@npm:3.0.4" @@ -15567,6 +16235,31 @@ __metadata: languageName: node linkType: hard +"@types/d3-axis@npm:*": + version: 3.0.6 + resolution: "@types/d3-axis@npm:3.0.6" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 10/8af56b629a0597ac8ef5051b6ad5390818462d8e588e1b52fb181808b1c0525d12a658730fad757e1ae256d0db170a0e29076acdef21acc98b954608d1c37b84 + languageName: node + linkType: hard + +"@types/d3-brush@npm:*": + version: 3.0.6 + resolution: "@types/d3-brush@npm:3.0.6" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 10/4095cee2512d965732147493c471a8dd97dfb5967479d9aef43397f8b0e074b03296302423b8379c4274f9249b52bd1d74cc021f98d4f64b5a8a4a7e6fe48335 + languageName: node + linkType: hard + +"@types/d3-chord@npm:*": + version: 3.0.6 + resolution: "@types/d3-chord@npm:3.0.6" + checksum: 10/ca9ba8b00debd24a2b51527b9c3db63eafa5541c08dc721d1c52ca19960c5cec93a7b1acfc0ec072dbca31d134924299755e20a4d1d4ee04b961fc0de841b418 + languageName: node + linkType: hard + "@types/d3-color@npm:*": version: 3.1.0 resolution: "@types/d3-color@npm:3.1.0" @@ -15574,6 +16267,53 @@ __metadata: languageName: node linkType: hard +"@types/d3-contour@npm:*": + version: 3.0.6 + resolution: "@types/d3-contour@npm:3.0.6" + dependencies: + "@types/d3-array": "npm:*" + "@types/geojson": "npm:*" + checksum: 10/e7b7e3972aa71003c21f2c864116ffb95a9175a62ec56ec656a855e5198a66a0830b2ad7fc26811214cfa8c98cdf4190d7d351913ca0913f799fbcf2a4c99b2d + languageName: node + linkType: hard + +"@types/d3-delaunay@npm:*": + version: 6.0.4 + resolution: "@types/d3-delaunay@npm:6.0.4" + checksum: 10/cb8d2c9ed0b39ade3107b9792544a745b2de3811a6bd054813e9dc708b1132fbacd796e54c0602c11b3a14458d14487c5276c1affb7c2b9f25fe55fff88d6d25 + languageName: node + linkType: hard + +"@types/d3-dispatch@npm:*": + version: 3.0.7 + resolution: "@types/d3-dispatch@npm:3.0.7" + checksum: 10/ce7ab5a7d5c64aacf563797c0c61f3862b9ff687cb35470fe462219f09e402185646f51707339beede616586d92ded6974c3958dbeb15e35a85b1ecfafdf13a8 + languageName: node + linkType: hard + +"@types/d3-drag@npm:*": + version: 3.0.7 + resolution: "@types/d3-drag@npm:3.0.7" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 10/93aba299c3a8d41ee326c5304ab694ceea135ed115c3b2ccab727a5d9bfc935f7f36d3fc416c013010eb755ac536c52adfcb15c195f241dc61f62650cc95088e + languageName: node + linkType: hard + +"@types/d3-dsv@npm:*": + version: 3.0.7 + resolution: "@types/d3-dsv@npm:3.0.7" + checksum: 10/8507f542135cae472781dff1c3b391eceedad0f2032d24ac4a0814e72e2f6877e4ddcb66f44627069977ee61029dc0a729edf659ed73cbf1040f55a7451f05ef + languageName: node + linkType: hard + +"@types/d3-ease@npm:*": + version: 3.0.2 + resolution: "@types/d3-ease@npm:3.0.2" + checksum: 10/d8f92a8a7a008da71f847a16227fdcb53a8938200ecdf8d831ab6b49aba91e8921769761d3bfa7e7191b28f62783bfd8b0937e66bae39d4dd7fb0b63b50d4a94 + languageName: node + linkType: hard + "@types/d3-ease@npm:^3.0.0": version: 3.0.0 resolution: "@types/d3-ease@npm:3.0.0" @@ -15581,6 +16321,54 @@ __metadata: languageName: node linkType: hard +"@types/d3-fetch@npm:*": + version: 3.0.7 + resolution: "@types/d3-fetch@npm:3.0.7" + dependencies: + "@types/d3-dsv": "npm:*" + checksum: 10/d496475cec7750f75740936e750a0150ca45e924a4f4697ad2c564f3a8f6c4ebc1b1edf8e081936e896532516731dbbaf2efd4890d53274a8eae13f51f821557 + languageName: node + linkType: hard + +"@types/d3-force@npm:*": + version: 3.0.10 + resolution: "@types/d3-force@npm:3.0.10" + checksum: 10/9c35abed2af91b94fc72d6b477188626e628ed89a01016437502c1deaf558da934b5d0cc808c2f2979ac853b6302b3d6ef763eddaff3a55552a55c0be710d5ca + languageName: node + linkType: hard + +"@types/d3-format@npm:*": + version: 3.0.4 + resolution: "@types/d3-format@npm:3.0.4" + checksum: 10/b937ecd2712d4aa38d5b4f5daab9cc8a576383868be1809e046aec99eeb1f1798c139f2e862dc400a82494c763be46087d154891773417f8eb53c73762ba3eb8 + languageName: node + linkType: hard + +"@types/d3-geo@npm:*": + version: 3.1.0 + resolution: "@types/d3-geo@npm:3.1.0" + dependencies: + "@types/geojson": "npm:*" + checksum: 10/e759d98470fe605ff0088247af81c3197cefce72b16eafe8acae606216c3e0a9f908df4e7cd5005ecfe13b8ac8396a51aaa0d282f3ca7d1c3850313a13fac905 + languageName: node + linkType: hard + +"@types/d3-hierarchy@npm:*": + version: 3.1.7 + resolution: "@types/d3-hierarchy@npm:3.1.7" + checksum: 10/9ff6cdedf5557ef9e1e7a65ca3c6846c895c84c1184e11ec6fa48565e96ebf5482d8be5cc791a8bc7f7debbd0e62604ee3da3ddca4f9d58bf6c8b4030567c6c6 + languageName: node + linkType: hard + +"@types/d3-interpolate@npm:*": + version: 3.0.4 + resolution: "@types/d3-interpolate@npm:3.0.4" + dependencies: + "@types/d3-color": "npm:*" + checksum: 10/72a883afd52c91132598b02a8cdfced9e783c54ca7e4459f9e29d5f45d11fb33f2cabc844e42fd65ba6e28f2a931dcce1add8607d2f02ef6fb8ea5b83ae84127 + languageName: node + linkType: hard + "@types/d3-interpolate@npm:^3.0.1": version: 3.0.1 resolution: "@types/d3-interpolate@npm:3.0.1" @@ -15597,6 +16385,43 @@ __metadata: languageName: node linkType: hard +"@types/d3-polygon@npm:*": + version: 3.0.2 + resolution: "@types/d3-polygon@npm:3.0.2" + checksum: 10/7cf1eadb54f02dd3617512b558f4c0f3811f8a6a8c887d9886981c3cc251db28b68329b2b0707d9f517231a72060adbb08855227f89bef6ef30caedc0a67cab2 + languageName: node + linkType: hard + +"@types/d3-quadtree@npm:*": + version: 3.0.6 + resolution: "@types/d3-quadtree@npm:3.0.6" + checksum: 10/4c260c9857d496b7f112cf57680c411c1912cc72538a5846c401429e3ed89a097c66410cfd38b394bfb4733ec2cb47d345b4eb5e202cbfb8e78ab044b535be02 + languageName: node + linkType: hard + +"@types/d3-random@npm:*": + version: 3.0.3 + resolution: "@types/d3-random@npm:3.0.3" + checksum: 10/2c126dda6846f6c7e02c9123a30b4cdf27f3655d19b78456bbb330fbac27acceeeb987318055d3964dba8e6450377ff737db91d81f27c81ca6f4522c9b994ef2 + languageName: node + linkType: hard + +"@types/d3-scale-chromatic@npm:*": + version: 3.1.0 + resolution: "@types/d3-scale-chromatic@npm:3.1.0" + checksum: 10/6b04af931b7cd4aa09f21519970cab44aaae181faf076013ab93ccb0d550ec16f4c8d444c1e9dee1493be4261a8a8bb6f8e6356e6f4c6ba0650011b1e8a38aef + languageName: node + linkType: hard + +"@types/d3-scale@npm:*": + version: 4.0.9 + resolution: "@types/d3-scale@npm:4.0.9" + dependencies: + "@types/d3-time": "npm:*" + checksum: 10/2cae90a5e39252ae51388f3909ffb7009178582990462838a4edd53dd7e2e08121b38f0d2e1ac0e28e41167e88dea5b99e064ca139ba917b900a8020cf85362f + languageName: node + linkType: hard + "@types/d3-scale@npm:^4.0.2": version: 4.0.3 resolution: "@types/d3-scale@npm:4.0.3" @@ -15606,6 +16431,22 @@ __metadata: languageName: node linkType: hard +"@types/d3-selection@npm:*": + version: 3.0.11 + resolution: "@types/d3-selection@npm:3.0.11" + checksum: 10/2d2d993b9e9553d066566cb22916c632e5911090db99e247bd8c32855a344e6b7c25b674f3c27956c367a6b3b1214b09931ce854788c3be2072003e01f2c75d7 + languageName: node + linkType: hard + +"@types/d3-shape@npm:*": + version: 3.1.8 + resolution: "@types/d3-shape@npm:3.1.8" + dependencies: + "@types/d3-path": "npm:*" + checksum: 10/ebc161d49101d84409829fea516ba7ec71ad51a1e97438ca0fafc1c30b56b3feae802d220375323632723a338dda7237c652e831e0b53527a6222ab0d1bb7809 + languageName: node + linkType: hard + "@types/d3-shape@npm:^3.1.0": version: 3.1.1 resolution: "@types/d3-shape@npm:3.1.1" @@ -15615,6 +16456,13 @@ __metadata: languageName: node linkType: hard +"@types/d3-time-format@npm:*": + version: 4.0.3 + resolution: "@types/d3-time-format@npm:4.0.3" + checksum: 10/9dfc1516502ac1c657d6024bdb88b6dc7e21dd7bff88f6187616cf9a0108250f63507a2004901ece4f97cc46602005a2ca2d05c6dbe53e8a0f6899bd60d4ff7a + languageName: node + linkType: hard + "@types/d3-time@npm:*, @types/d3-time@npm:^3.0.0": version: 3.0.0 resolution: "@types/d3-time@npm:3.0.0" @@ -15622,6 +16470,13 @@ __metadata: languageName: node linkType: hard +"@types/d3-timer@npm:*": + version: 3.0.2 + resolution: "@types/d3-timer@npm:3.0.2" + checksum: 10/1643eebfa5f4ae3eb00b556bbc509444d88078208ec2589ddd8e4a24f230dd4cf2301e9365947e70b1bee33f63aaefab84cd907822aae812b9bc4871b98ab0e1 + languageName: node + linkType: hard + "@types/d3-timer@npm:^3.0.0": version: 3.0.0 resolution: "@types/d3-timer@npm:3.0.0" @@ -15629,6 +16484,63 @@ __metadata: languageName: node linkType: hard +"@types/d3-transition@npm:*": + version: 3.0.9 + resolution: "@types/d3-transition@npm:3.0.9" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 10/dad647c485440f176117e8a45f31aee9427d8d4dfa174eaa2f01e702641db53ad0f752a144b20987c7189723c4f0afe0bf0f16d95b2a91aa28937eee4339c161 + languageName: node + linkType: hard + +"@types/d3-zoom@npm:*": + version: 3.0.8 + resolution: "@types/d3-zoom@npm:3.0.8" + dependencies: + "@types/d3-interpolate": "npm:*" + "@types/d3-selection": "npm:*" + checksum: 10/cc6ba975cf4f55f94933413954d81b87feb1ee8b8cee8f2202cf526f218dcb3ba240cbeb04ed80522416201c4a7394b37de3eb695d840a36d190dfb2d3e62cb5 + languageName: node + linkType: hard + +"@types/d3@npm:^7.4.3": + version: 7.4.3 + resolution: "@types/d3@npm:7.4.3" + dependencies: + "@types/d3-array": "npm:*" + "@types/d3-axis": "npm:*" + "@types/d3-brush": "npm:*" + "@types/d3-chord": "npm:*" + "@types/d3-color": "npm:*" + "@types/d3-contour": "npm:*" + "@types/d3-delaunay": "npm:*" + "@types/d3-dispatch": "npm:*" + "@types/d3-drag": "npm:*" + "@types/d3-dsv": "npm:*" + "@types/d3-ease": "npm:*" + "@types/d3-fetch": "npm:*" + "@types/d3-force": "npm:*" + "@types/d3-format": "npm:*" + "@types/d3-geo": "npm:*" + "@types/d3-hierarchy": "npm:*" + "@types/d3-interpolate": "npm:*" + "@types/d3-path": "npm:*" + "@types/d3-polygon": "npm:*" + "@types/d3-quadtree": "npm:*" + "@types/d3-random": "npm:*" + "@types/d3-scale": "npm:*" + "@types/d3-scale-chromatic": "npm:*" + "@types/d3-selection": "npm:*" + "@types/d3-shape": "npm:*" + "@types/d3-time": "npm:*" + "@types/d3-time-format": "npm:*" + "@types/d3-timer": "npm:*" + "@types/d3-transition": "npm:*" + "@types/d3-zoom": "npm:*" + checksum: 10/12234aa093c8661546168becdd8956e892b276f525d96f65a7b32fed886fc6a569fe5a1171bff26fef2a5663960635f460c9504a6f2d242ba281a2b6c8c6465c + languageName: node + linkType: hard + "@types/deasync@npm:^0": version: 0.1.5 resolution: "@types/deasync@npm:0.1.5" @@ -15771,6 +16683,13 @@ __metadata: languageName: node linkType: hard +"@types/geojson@npm:*": + version: 7946.0.16 + resolution: "@types/geojson@npm:7946.0.16" + checksum: 10/34d07421bdd60e7b99fa265441d17ac6e9aef48e3ce22d04324127d0de1daf7fbaa0bd3be1cece2092eb6995f21da84afa5231e24621a2910ff7340bc98f496f + languageName: node + linkType: hard + "@types/glidejs__glide@npm:3.4.2": version: 3.4.2 resolution: "@types/glidejs__glide@npm:3.4.2" @@ -15794,7 +16713,7 @@ __metadata: languageName: node linkType: hard -"@types/hast@npm:^3.0.0": +"@types/hast@npm:^3.0.0, @types/hast@npm:^3.0.4": version: 3.0.4 resolution: "@types/hast@npm:3.0.4" dependencies: @@ -15923,6 +16842,13 @@ __metadata: languageName: node linkType: hard +"@types/katex@npm:^0.16.0": + version: 0.16.8 + resolution: "@types/katex@npm:0.16.8" + checksum: 10/4bf5d83d2430bc04c183765c5916c21180a75cb0181172a0aac7350943507679ceb79bfd13e394cf7c101b7417564d14c0c660baa93b16f2f42baef22a99435c + languageName: node + linkType: hard + "@types/linkify-it@npm:*, @types/linkify-it@npm:^3.0.1": version: 3.0.5 resolution: "@types/linkify-it@npm:3.0.5" @@ -15977,6 +16903,13 @@ __metadata: languageName: node linkType: hard +"@types/mdx@npm:^2.0.0": + version: 2.0.13 + resolution: "@types/mdx@npm:2.0.13" + checksum: 10/b73ed5f08114879b9590dc6a9ee8b648643c57c708583cd24b2bc3cc8961361fc63139ac7e9291e7b3b6e6b45707749d01d6f9727ddec5533df75dc3b90871a4 + languageName: node + linkType: hard + "@types/memory-cache@npm:0.2.2": version: 0.2.2 resolution: "@types/memory-cache@npm:0.2.2" @@ -16046,6 +16979,15 @@ __metadata: languageName: node linkType: hard +"@types/nlcst@npm:^2.0.0": + version: 2.0.3 + resolution: "@types/nlcst@npm:2.0.3" + dependencies: + "@types/unist": "npm:*" + checksum: 10/0edb3679b50f84ca5216b52d87c42fed0e65fa6cc5c9905380918f2269c6865894589ffd40fb09d91ceef1a9c544a32769ebbf4ef697894bfee457317ee7ceb4 + languageName: node + linkType: hard + "@types/node-fetch@npm:^2.6.11, @types/node-fetch@npm:^2.6.4": version: 2.6.12 resolution: "@types/node-fetch@npm:2.6.12" @@ -16574,6 +17516,17 @@ __metadata: languageName: node linkType: hard +"@typescript/vfs@npm:^1.6.4": + version: 1.6.4 + resolution: "@typescript/vfs@npm:1.6.4" + dependencies: + debug: "npm:^4.4.3" + peerDependencies: + typescript: "*" + checksum: 10/3a301cdc950f7b3bc3b21164d355d9d23ec00b6888ca77c83193afd950b9f5d30ec2de61c7473c99518fc47b51e1c69592eab253072a35781b48e5096b11692a + languageName: node + linkType: hard + "@ungap/structured-clone@npm:^1.0.0": version: 1.3.0 resolution: "@ungap/structured-clone@npm:1.3.0" @@ -16606,6 +17559,21 @@ __metadata: languageName: node linkType: hard +"@upsetjs/venn.js@npm:^2.0.0": + version: 2.0.0 + resolution: "@upsetjs/venn.js@npm:2.0.0" + dependencies: + d3-selection: "npm:^3.0.0" + d3-transition: "npm:^3.0.1" + dependenciesMeta: + d3-selection: + optional: true + d3-transition: + optional: true + checksum: 10/84505be440490666566a6f59e765e1f24b154e4ca45cfed9102f02261be45912149f706e21b3cc7a6247816a8703e1f1b667561295b587c6dcc3162a9a48a5f2 + languageName: node + linkType: hard + "@upstash/redis@npm:1.35.2": version: 1.35.2 resolution: "@upstash/redis@npm:1.35.2" @@ -17136,6 +18104,13 @@ __metadata: languageName: node linkType: hard +"@xmldom/xmldom@npm:0.9.9": + version: 0.9.9 + resolution: "@xmldom/xmldom@npm:0.9.9" + checksum: 10/292e4a25e7c6c87001475184f413cd38cb07b25d013d33294cf2eacec72c450ccd3f58a0140e0a72462647dc78d808263006aae1952d6a00a3fd521b0bdb11b0 + languageName: node + linkType: hard + "@xmldom/xmldom@npm:^0.8.1, @xmldom/xmldom@npm:^0.8.10, @xmldom/xmldom@npm:^0.8.5, @xmldom/xmldom@npm:^0.8.8": version: 0.8.11 resolution: "@xmldom/xmldom@npm:0.8.11" @@ -17284,6 +18259,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.16.0": + version: 8.16.0 + resolution: "acorn@npm:8.16.0" + bin: + acorn: bin/acorn + checksum: 10/690c673bb4d61b38ef82795fab58526471ad7f7e67c0e40c4ff1e10ecd80ce5312554ef633c9995bfc4e6d170cef165711f9ca9e49040b62c0c66fbf2dd3df2b + languageName: node + linkType: hard + "address@npm:^1.0.1": version: 1.2.0 resolution: "address@npm:1.2.0" @@ -17624,7 +18608,7 @@ __metadata: languageName: node linkType: hard -"arg@npm:5.0.2, arg@npm:^5.0.2": +"arg@npm:5.0.2, arg@npm:^5.0.0, arg@npm:^5.0.2": version: 5.0.2 resolution: "arg@npm:5.0.2" checksum: 10/92fe7de222054a060fd2329e92e867410b3ea260328147ee3fb7855f78efae005f4087e698d4e688a856893c56bb09951588c40f2c901cf6996cd8cd7bcfef2c @@ -17696,6 +18680,13 @@ __metadata: languageName: node linkType: hard +"array-iterate@npm:^2.0.0": + version: 2.0.1 + resolution: "array-iterate@npm:2.0.1" + checksum: 10/b3db2c865a245dfded8f8dfe280218d2170e2ae8d4f559f6a1f66bdca6523bd406fe2cc99c323c545503f2652ec5ed7b1bbdf3d12eb130bfe980fdde36c33db7 + languageName: node + linkType: hard + "array-timsort@npm:^1.0.3": version: 1.0.3 resolution: "array-timsort@npm:1.0.3" @@ -17772,6 +18763,15 @@ __metadata: languageName: node linkType: hard +"astring@npm:^1.8.0": + version: 1.9.0 + resolution: "astring@npm:1.9.0" + bin: + astring: bin/astring + checksum: 10/ee88f71d8534557b27993d6d035ae85d78488d8dbc6429cd8e8fdfcafec3c65928a3bdc518cf69767a1298d3361490559a4819cd4b314007edae1e94cf1f9e4c + languageName: node + linkType: hard + "async-mqtt@npm:2.6.3": version: 2.6.3 resolution: "async-mqtt@npm:2.6.3" @@ -18113,6 +19113,17 @@ __metadata: languageName: node linkType: hard +"better-react-mathjax@npm:^2.3.0": + version: 2.3.0 + resolution: "better-react-mathjax@npm:2.3.0" + dependencies: + mathjax-full: "npm:^3.2.2" + peerDependencies: + react: ">=16.8" + checksum: 10/c8780681758c161d20d369d084eac18b8ec0317eb77bafbfe48c753fc75b718ccd6480f9edb9359223a5c16801268370be6631bc438d76db954b85398194419f + languageName: node + linkType: hard + "bignumber.js@npm:^9.0.0": version: 9.0.2 resolution: "bignumber.js@npm:9.0.2" @@ -18821,7 +19832,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:5.6.2, chalk@npm:^5.2.0, chalk@npm:^5.3.0": +"chalk@npm:5.6.2, chalk@npm:^5.0.0, chalk@npm:^5.2.0, chalk@npm:^5.3.0": version: 5.6.2 resolution: "chalk@npm:5.6.2" checksum: 10/1b2f48f6fba1370670d5610f9cd54c391d6ede28f4b7062dd38244ea5768777af72e5be6b74fb6c6d54cb84c4a2dff3f3afa9b7cb5948f7f022cfd3d087989e0 @@ -19003,6 +20014,17 @@ __metadata: languageName: node linkType: hard +"chevrotain-allstar@npm:~0.4.1": + version: 0.4.1 + resolution: "chevrotain-allstar@npm:0.4.1" + dependencies: + lodash-es: "npm:^4.17.21" + peerDependencies: + chevrotain: ^12.0.0 + checksum: 10/7a59b46ba03c859182a0187cd4066de4c16b68e7f667bdaf119e4eabbe5432bae83e882030944c97b4c8287ae0a6f6aedfffa8c4ee258e3da520c7662720926c + languageName: node + linkType: hard + "chevrotain@npm:^10.5.0": version: 10.5.0 resolution: "chevrotain@npm:10.5.0" @@ -19017,6 +20039,19 @@ __metadata: languageName: node linkType: hard +"chevrotain@npm:~12.0.0": + version: 12.0.0 + resolution: "chevrotain@npm:12.0.0" + dependencies: + "@chevrotain/cst-dts-gen": "npm:12.0.0" + "@chevrotain/gast": "npm:12.0.0" + "@chevrotain/regexp-to-ast": "npm:12.0.0" + "@chevrotain/types": "npm:12.0.0" + "@chevrotain/utils": "npm:12.0.0" + checksum: 10/6100982d3e0278ef62b5322a38ade4e99226e025a9d203c1e7dd53ad73974b18f190000f222a721db2cb4879e869eb25979cd28ca05756f4f3bbf00ffab57049 + languageName: node + linkType: hard + "chokidar@npm:3.6.0, chokidar@npm:^3.3.0, chokidar@npm:^3.5.3, chokidar@npm:^3.6.0": version: 3.6.0 resolution: "chokidar@npm:3.6.0" @@ -19346,6 +20381,17 @@ __metadata: languageName: node linkType: hard +"clipboardy@npm:^4.0.0": + version: 4.0.0 + resolution: "clipboardy@npm:4.0.0" + dependencies: + execa: "npm:^8.0.1" + is-wsl: "npm:^3.1.0" + is64bit: "npm:^2.0.0" + checksum: 10/ec4ebe7e5c81d9c9cb994637e7b0e068c1c8fc272167ecd5519f967427271ec66e0e64da7268a2630b860eff42933aeabe25ba5e42bb80dbf1fae6362df059ed + languageName: node + linkType: hard + "cliui@npm:^6.0.0": version: 6.0.0 resolution: "cliui@npm:6.0.0" @@ -19393,7 +20439,7 @@ __metadata: languageName: node linkType: hard -"clsx@npm:2.1.1, clsx@npm:^2.0.0, clsx@npm:^2.1.1": +"clsx@npm:2.1.1, clsx@npm:^2.0.0, clsx@npm:^2.1.0, clsx@npm:^2.1.1": version: 2.1.1 resolution: "clsx@npm:2.1.1" checksum: 10/cdfb57fa6c7649bbff98d9028c2f0de2f91c86f551179541cf784b1cfdc1562dcb951955f46d54d930a3879931a980e32a46b598acaea274728dbe068deca919 @@ -19441,6 +20487,13 @@ __metadata: languageName: node linkType: hard +"code-block-writer@npm:^13.0.3": + version: 13.0.3 + resolution: "code-block-writer@npm:13.0.3" + checksum: 10/771546224f38610eecee0598e83c9e0f86dcd600ea316dbf27c2cfebaab4fed51b042325aa460b8e0f131fac5c1de208f6610a1ddbffe4b22e76f9b5256707cb + languageName: node + linkType: hard + "code-excerpt@npm:^3.0.0": version: 3.0.0 resolution: "code-excerpt@npm:3.0.0" @@ -19459,6 +20512,13 @@ __metadata: languageName: node linkType: hard +"collapse-white-space@npm:^2.0.0": + version: 2.1.0 + resolution: "collapse-white-space@npm:2.1.0" + checksum: 10/c1424ae7c5ff370ec06bbff5990382c54ae6e14a021c7568151e4889e514667e110cc3a051fe5d8e17b117f76304fffcfe9f0360cda642cf0201a5ac398bf0e7 + languageName: node + linkType: hard + "collect-v8-coverage@npm:^1.0.0": version: 1.0.2 resolution: "collect-v8-coverage@npm:1.0.2" @@ -19584,6 +20644,13 @@ __metadata: languageName: node linkType: hard +"commander@npm:13.1.0": + version: 13.1.0 + resolution: "commander@npm:13.1.0" + checksum: 10/d3b4b79e6be8471ddadacbb8cd441fe82154d7da7393b50e76165a9e29ccdb74fa911a186437b9a211d0fc071db6051915c94fb8ef16d77511d898e9dbabc6af + languageName: node + linkType: hard + "commander@npm:4.1.1, commander@npm:^4.0.0": version: 4.1.1 resolution: "commander@npm:4.1.1" @@ -19598,6 +20665,13 @@ __metadata: languageName: node linkType: hard +"commander@npm:7, commander@npm:^7.1.0, commander@npm:^7.2.0": + version: 7.2.0 + resolution: "commander@npm:7.2.0" + checksum: 10/9973af10727ad4b44f26703bf3e9fdc323528660a7590efe3aa9ad5042b4584c0deed84ba443f61c9d6f02dade54a5a5d3c95e306a1e1630f8374ae6db16c06d + languageName: node + linkType: hard + "commander@npm:9.1.0": version: 9.1.0 resolution: "commander@npm:9.1.0" @@ -19633,14 +20707,7 @@ __metadata: languageName: node linkType: hard -"commander@npm:^7.1.0, commander@npm:^7.2.0": - version: 7.2.0 - resolution: "commander@npm:7.2.0" - checksum: 10/9973af10727ad4b44f26703bf3e9fdc323528660a7590efe3aa9ad5042b4584c0deed84ba443f61c9d6f02dade54a5a5d3c95e306a1e1630f8374ae6db16c06d - languageName: node - linkType: hard - -"commander@npm:^8.0.0": +"commander@npm:^8.0.0, commander@npm:^8.3.0": version: 8.3.0 resolution: "commander@npm:8.3.0" checksum: 10/6b7b5d334483ce24bd73c5dac2eab901a7dbb25fd983ea24a1eeac6e7166bb1967f641546e8abf1920afbde86a45fbfe5812fbc69d0dc451bb45ca416a12a3a3 @@ -19712,6 +20779,13 @@ __metadata: languageName: node linkType: hard +"compute-scroll-into-view@npm:^3.0.2": + version: 3.1.1 + resolution: "compute-scroll-into-view@npm:3.1.1" + checksum: 10/b68827555c39862cf3d7def838f3b8ee3751e3e88b9ec3bb601484666f0596963cd91db16b23248e14759339cf2ddff72b9c53c3070f6fd27177393ea83185f3 + languageName: node + linkType: hard + "concat-map@npm:0.0.1": version: 0.0.1 resolution: "concat-map@npm:0.0.1" @@ -20007,6 +21081,24 @@ __metadata: languageName: node linkType: hard +"cose-base@npm:^1.0.0": + version: 1.0.3 + resolution: "cose-base@npm:1.0.3" + dependencies: + layout-base: "npm:^1.0.0" + checksum: 10/52e1f4ae173738aebe14395e3f865dc10ce430156554bab52f4b8ef0c583375644348c2a226b83d97eebc7d35340919e7bc10d23a3e2fe51b853bf56f27b5da7 + languageName: node + linkType: hard + +"cose-base@npm:^2.2.0": + version: 2.2.0 + resolution: "cose-base@npm:2.2.0" + dependencies: + layout-base: "npm:^2.0.0" + checksum: 10/4d4b16a84188b8f9419d9dbaffca62561f0e0ee125569339782141111aaf2bec1d180270bbaf5a13ac956f6a8c6b74ab2431e456da239982046b9ddb612bde6a + languageName: node + linkType: hard + "cosmiconfig@npm:^6.0.0": version: 6.0.0 resolution: "cosmiconfig@npm:6.0.0" @@ -20416,6 +21508,44 @@ __metadata: languageName: node linkType: hard +"cytoscape-cose-bilkent@npm:^4.1.0": + version: 4.1.0 + resolution: "cytoscape-cose-bilkent@npm:4.1.0" + dependencies: + cose-base: "npm:^1.0.0" + peerDependencies: + cytoscape: ^3.2.0 + checksum: 10/9ec2999159af62f1a251bf1e146a9a779085c4fdb1b8146596208f0097c0512fc4bffda53d3b00c87a1e8ae5024db3ebfb97162115216f5b4d024e314f4a03bb + languageName: node + linkType: hard + +"cytoscape-fcose@npm:^2.2.0": + version: 2.2.0 + resolution: "cytoscape-fcose@npm:2.2.0" + dependencies: + cose-base: "npm:^2.2.0" + peerDependencies: + cytoscape: ^3.2.0 + checksum: 10/927aa3b29c1d514c6513c5a785d7af7a8d0499eb166de1f42b958ef20d264ef9cbe238da0b65ae01860424972dce1c73017cf2afdae4f02f9a247f7031b00de3 + languageName: node + linkType: hard + +"cytoscape@npm:^3.33.1": + version: 3.33.2 + resolution: "cytoscape@npm:3.33.2" + checksum: 10/4e9d1038635b300abbe743189b712af0668d9664fe48af42bd14fb21d3030ccb402e576dca8da4ee1160a1339b48bca75d2050ad26a81d13614402db8f97c6cc + languageName: node + linkType: hard + +"d3-array@npm:1 - 2": + version: 2.12.1 + resolution: "d3-array@npm:2.12.1" + dependencies: + internmap: "npm:^1.0.0" + checksum: 10/9fdfb91f428915006e126090fe9aa9d5fcbecc78e925eceb32de9dfb989135f6ad940a8f1b086d0b569523679f85453c5335772aa9e6d5d41b480c2610857c7f + languageName: node + linkType: hard + "d3-array@npm:2 - 3, d3-array@npm:2.10.0 - 3, d3-array@npm:^3.1.6": version: 3.2.3 resolution: "d3-array@npm:3.2.3" @@ -20425,20 +21555,134 @@ __metadata: languageName: node linkType: hard -"d3-color@npm:1 - 3": +"d3-array@npm:2.5.0 - 3, d3-array@npm:3, d3-array@npm:^3.2.0": + version: 3.2.4 + resolution: "d3-array@npm:3.2.4" + dependencies: + internmap: "npm:1 - 2" + checksum: 10/5800c467f89634776a5977f6dae3f4e127d91be80f1d07e3e6e35303f9de93e6636d014b234838eea620f7469688d191b3f41207a30040aab750a63c97ec1d7c + languageName: node + linkType: hard + +"d3-axis@npm:3": + version: 3.0.0 + resolution: "d3-axis@npm:3.0.0" + checksum: 10/15ec43ecbd4e7b606fcda60f67a522e45576dfd6aa83dff47f3e91ef6c8448841a09cd91f630b492250dcec67c6ea64463510ead5e632ff6b827aeefae1d42ad + languageName: node + linkType: hard + +"d3-brush@npm:3": + version: 3.0.0 + resolution: "d3-brush@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-drag: "npm:2 - 3" + d3-interpolate: "npm:1 - 3" + d3-selection: "npm:3" + d3-transition: "npm:3" + checksum: 10/fa3a461b62f0f0ee6fe41f5babf45535a0a8f6d4999f675fb1dce932ee02eff72dec14c7296af31ca15998dc0141ccf5d02aa6499363f8bf2941d90688a1d644 + languageName: node + linkType: hard + +"d3-chord@npm:3": + version: 3.0.1 + resolution: "d3-chord@npm:3.0.1" + dependencies: + d3-path: "npm:1 - 3" + checksum: 10/4febcdca4fdc8ba91fc4f7545f4b6321c440150dff80c1ebef887db07bb4200395dfebede63b257393259de07f914da10842da5ab3135e1e281e33ad153e0849 + languageName: node + linkType: hard + +"d3-color@npm:1 - 3, d3-color@npm:3": version: 3.1.0 resolution: "d3-color@npm:3.1.0" checksum: 10/536ba05bfd9f4fcd6fa289b5974f5c846b21d186875684637e22bf6855e6aba93e24a2eb3712985c6af3f502fbbfa03708edb72f58142f626241a8a17258e545 languageName: node linkType: hard -"d3-ease@npm:^3.0.1": +"d3-contour@npm:4": + version: 4.0.2 + resolution: "d3-contour@npm:4.0.2" + dependencies: + d3-array: "npm:^3.2.0" + checksum: 10/0b252267e0c3c5e97d7e0c720bd35654de99f981199f7240d7dd1acfd4e2d5bf1638829f6db486452eff9c38608efa4a6ab5a0d1525131735c011ee7be3cb4ba + languageName: node + linkType: hard + +"d3-delaunay@npm:6": + version: 6.0.4 + resolution: "d3-delaunay@npm:6.0.4" + dependencies: + delaunator: "npm:5" + checksum: 10/4588e2872d4154daaf2c3f34fefe74e43b909cc460238a7b02823907ca6dd109f2c488c57c8551f1a2607fe4b44fdf24e3a190cea29bca70ef5606678dd9e2de + languageName: node + linkType: hard + +"d3-dispatch@npm:1 - 3, d3-dispatch@npm:3": + version: 3.0.1 + resolution: "d3-dispatch@npm:3.0.1" + checksum: 10/2b82f41bf4ef88c2f9033dfe32815b67e2ef1c5754a74137a74c7d44d6f0d6ecfa934ac56ed8afe358f6c1f06462e8aa42ca0a388397b5b77a42721570e80487 + languageName: node + linkType: hard + +"d3-drag@npm:2 - 3, d3-drag@npm:3": + version: 3.0.0 + resolution: "d3-drag@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-selection: "npm:3" + checksum: 10/80bc689935e5a46ee92b2d7f71e1c792279382affed9fbcf46034bff3ff7d3f50cf61a874da4bdf331037292b9e7dca5c6401a605d4bb699fdcb4e0c87e176ec + languageName: node + linkType: hard + +"d3-dsv@npm:1 - 3, d3-dsv@npm:3": + version: 3.0.1 + resolution: "d3-dsv@npm:3.0.1" + dependencies: + commander: "npm:7" + iconv-lite: "npm:0.6" + rw: "npm:1" + bin: + csv2json: bin/dsv2json.js + csv2tsv: bin/dsv2dsv.js + dsv2dsv: bin/dsv2dsv.js + dsv2json: bin/dsv2json.js + json2csv: bin/json2dsv.js + json2dsv: bin/json2dsv.js + json2tsv: bin/json2dsv.js + tsv2csv: bin/dsv2dsv.js + tsv2json: bin/dsv2json.js + checksum: 10/a628ac42a272466940f713f310db2e5246690b22035121dc1230077070c9135fb7c9b4d260f093fcadf63b0528202a1953107448a4be3a860c4f42f50d09504d + languageName: node + linkType: hard + +"d3-ease@npm:1 - 3, d3-ease@npm:3, d3-ease@npm:^3.0.1": version: 3.0.1 resolution: "d3-ease@npm:3.0.1" checksum: 10/985d46e868494e9e6806fedd20bad712a50dcf98f357bf604a843a9f6bc17714a657c83dd762f183173dcde983a3570fa679b2bc40017d40b24163cdc4167796 languageName: node linkType: hard +"d3-fetch@npm:3": + version: 3.0.1 + resolution: "d3-fetch@npm:3.0.1" + dependencies: + d3-dsv: "npm:1 - 3" + checksum: 10/cd35d55f8fbb1ea1e37be362a575bb0161449957133aa5b45b9891889b2aca1dc0769c240a236736e33cd823e820a0e73fb3744582307a5d26d1df7bed0ccecb + languageName: node + linkType: hard + +"d3-force@npm:3": + version: 3.0.0 + resolution: "d3-force@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-quadtree: "npm:1 - 3" + d3-timer: "npm:1 - 3" + checksum: 10/85945f8d444d78567009518f0ab54c0f0c8873eb8eb9a2ff0ab667b0f81b419e101a411415d4a2c752547ec7143f89675e8c33b8f111e55e5579a04cb7f4591c + languageName: node + linkType: hard + "d3-format@npm:1 - 3": version: 3.1.0 resolution: "d3-format@npm:3.1.0" @@ -20446,7 +21690,30 @@ __metadata: languageName: node linkType: hard -"d3-interpolate@npm:1.2.0 - 3, d3-interpolate@npm:^3.0.1": +"d3-format@npm:3": + version: 3.1.2 + resolution: "d3-format@npm:3.1.2" + checksum: 10/811d913c2c7624cb0d2a8f0ccd7964c50945b3de3c7f7aa14c309fba7266a3ec53cbee8c05f6ad61b2b65b93e157c55a0e07db59bc3180c39dac52be8e841ab1 + languageName: node + linkType: hard + +"d3-geo@npm:3": + version: 3.1.1 + resolution: "d3-geo@npm:3.1.1" + dependencies: + d3-array: "npm:2.5.0 - 3" + checksum: 10/dc5e980330d891dabf92869b98871b05ca2021c64d7ef253bcfd4f2348839ad33576fba474baecc2def86ebd3d943a11d93c0af26be0a2694f5bd59824838133 + languageName: node + linkType: hard + +"d3-hierarchy@npm:3": + version: 3.1.2 + resolution: "d3-hierarchy@npm:3.1.2" + checksum: 10/497b79dc6c35e28b21e8a7b94db92876abd1d4ec082d9803a07ea8964e55b0e71c511a21489363a36f1456f069adb8ff7d33c633678730d6ae961ed350b27733 + languageName: node + linkType: hard + +"d3-interpolate@npm:1 - 3, d3-interpolate@npm:1.2.0 - 3, d3-interpolate@npm:3, d3-interpolate@npm:^3.0.1": version: 3.0.1 resolution: "d3-interpolate@npm:3.0.1" dependencies: @@ -20455,14 +21722,62 @@ __metadata: languageName: node linkType: hard -"d3-path@npm:^3.1.0": +"d3-path@npm:1": + version: 1.0.9 + resolution: "d3-path@npm:1.0.9" + checksum: 10/6ce1747837ea2a449d9ea32e169a382978ab09a4805eb408feb6bbc12cb5f5f6ce29aefc252dd9a815d420f4813d672f75578b78b3bbaf7811f54d8c7f93fd11 + languageName: node + linkType: hard + +"d3-path@npm:1 - 3, d3-path@npm:3, d3-path@npm:^3.1.0": version: 3.1.0 resolution: "d3-path@npm:3.1.0" checksum: 10/8e97a9ab4930a05b18adda64cf4929219bac913a5506cf8585631020253b39309549632a5cbeac778c0077994442ddaaee8316ee3f380e7baf7566321b84e76a languageName: node linkType: hard -"d3-scale@npm:^4.0.2": +"d3-polygon@npm:3": + version: 3.0.1 + resolution: "d3-polygon@npm:3.0.1" + checksum: 10/c4fa2ed19dcba13fd341815361d27e64597aa0d38d377e401e1353c4acbe8bd73c0afb3e49a1cf4119fadc3651ec8073d06aa6d0e34e664c868d071e58912cd1 + languageName: node + linkType: hard + +"d3-quadtree@npm:1 - 3, d3-quadtree@npm:3": + version: 3.0.1 + resolution: "d3-quadtree@npm:3.0.1" + checksum: 10/1915b6a7b031fc312f9af61947072db9468c5a2b03837f6a90b38fdaebcd0ea17a883bffd94d16b8a6848e81711a06222f7d39f129386ef1850297219b8d32ba + languageName: node + linkType: hard + +"d3-random@npm:3": + version: 3.0.1 + resolution: "d3-random@npm:3.0.1" + checksum: 10/9f41d6ca3a1826cea8d88392917b5039504337d442a4d1357c870fa3031701e60209a2689a6ddae7df8fca824383d038c957eb545bc49a7428c71aaf3b11f56f + languageName: node + linkType: hard + +"d3-sankey@npm:^0.12.3": + version: 0.12.3 + resolution: "d3-sankey@npm:0.12.3" + dependencies: + d3-array: "npm:1 - 2" + d3-shape: "npm:^1.2.0" + checksum: 10/d5c679135a26d435e9970de3fc0778c6ef5c911f0c878b246939517b57a8daa2e2db6ef99318a0dad16e6079e4b89ef9166f1f661d8d247637875b764628094d + languageName: node + linkType: hard + +"d3-scale-chromatic@npm:3": + version: 3.1.0 + resolution: "d3-scale-chromatic@npm:3.1.0" + dependencies: + d3-color: "npm:1 - 3" + d3-interpolate: "npm:1 - 3" + checksum: 10/25df6a7c621b9171df8b2225e98e41c0a6bcac4de02deb4807280b31116e8f495c5ac93301796098ee5b698cb690154e8138d90d72fd1fe36744c60e02a3d8c4 + languageName: node + linkType: hard + +"d3-scale@npm:4, d3-scale@npm:^4.0.2": version: 4.0.2 resolution: "d3-scale@npm:4.0.2" dependencies: @@ -20475,7 +21790,14 @@ __metadata: languageName: node linkType: hard -"d3-shape@npm:^3.1.0": +"d3-selection@npm:2 - 3, d3-selection@npm:3, d3-selection@npm:^3.0.0": + version: 3.0.0 + resolution: "d3-selection@npm:3.0.0" + checksum: 10/0e5acfd305b31628b7be5009ba7303d84bb34817a88ed4dde9c8bd9c23528573fc5272f89fc04e5be03d2cbf5441a248d7274aaf55a8ef3dad46e16333d72298 + languageName: node + linkType: hard + +"d3-shape@npm:3, d3-shape@npm:^3.1.0": version: 3.2.0 resolution: "d3-shape@npm:3.2.0" dependencies: @@ -20484,7 +21806,16 @@ __metadata: languageName: node linkType: hard -"d3-time-format@npm:2 - 4": +"d3-shape@npm:^1.2.0": + version: 1.3.7 + resolution: "d3-shape@npm:1.3.7" + dependencies: + d3-path: "npm:1" + checksum: 10/1e40fdcfdc8edc9c53a77a6aaea2dbf31bf06df12ebd66cc8d91f76bbde753049ad21dfee0577f7dc5d0a4468554ede4783f6df7d809e291745334dba977c09e + languageName: node + linkType: hard + +"d3-time-format@npm:2 - 4, d3-time-format@npm:4": version: 4.1.0 resolution: "d3-time-format@npm:4.1.0" dependencies: @@ -20493,7 +21824,7 @@ __metadata: languageName: node linkType: hard -"d3-time@npm:1 - 3, d3-time@npm:2.1.1 - 3, d3-time@npm:^3.0.0": +"d3-time@npm:1 - 3, d3-time@npm:2.1.1 - 3, d3-time@npm:3, d3-time@npm:^3.0.0": version: 3.1.0 resolution: "d3-time@npm:3.1.0" dependencies: @@ -20502,13 +21833,89 @@ __metadata: languageName: node linkType: hard -"d3-timer@npm:^3.0.1": +"d3-timer@npm:1 - 3, d3-timer@npm:3, d3-timer@npm:^3.0.1": version: 3.0.1 resolution: "d3-timer@npm:3.0.1" checksum: 10/004128602bb187948d72c7dc153f0f063f38ac7a584171de0b45e3a841ad2e17f1e40ad396a4af9cce5551b6ab4a838d5246d23492553843d9da4a4050a911e2 languageName: node linkType: hard +"d3-transition@npm:2 - 3, d3-transition@npm:3, d3-transition@npm:^3.0.1": + version: 3.0.1 + resolution: "d3-transition@npm:3.0.1" + dependencies: + d3-color: "npm:1 - 3" + d3-dispatch: "npm:1 - 3" + d3-ease: "npm:1 - 3" + d3-interpolate: "npm:1 - 3" + d3-timer: "npm:1 - 3" + peerDependencies: + d3-selection: 2 - 3 + checksum: 10/02571636acb82f5532117928a87fe25de68f088c38ab4a8b16e495f0f2d08a3fd2937eaebdefdfcf7f1461545524927d2632d795839b88d2e4c71e387aaaffac + languageName: node + linkType: hard + +"d3-zoom@npm:3": + version: 3.0.0 + resolution: "d3-zoom@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-drag: "npm:2 - 3" + d3-interpolate: "npm:1 - 3" + d3-selection: "npm:2 - 3" + d3-transition: "npm:2 - 3" + checksum: 10/0e6e5c14e33c4ecdff311a900dd037dea407734f2dd2818988ed6eae342c1799e8605824523678bd404f81e37824cc588f62dbde46912444c89acc7888036c6b + languageName: node + linkType: hard + +"d3@npm:^7.9.0": + version: 7.9.0 + resolution: "d3@npm:7.9.0" + dependencies: + d3-array: "npm:3" + d3-axis: "npm:3" + d3-brush: "npm:3" + d3-chord: "npm:3" + d3-color: "npm:3" + d3-contour: "npm:4" + d3-delaunay: "npm:6" + d3-dispatch: "npm:3" + d3-drag: "npm:3" + d3-dsv: "npm:3" + d3-ease: "npm:3" + d3-fetch: "npm:3" + d3-force: "npm:3" + d3-format: "npm:3" + d3-geo: "npm:3" + d3-hierarchy: "npm:3" + d3-interpolate: "npm:3" + d3-path: "npm:3" + d3-polygon: "npm:3" + d3-quadtree: "npm:3" + d3-random: "npm:3" + d3-scale: "npm:4" + d3-scale-chromatic: "npm:3" + d3-selection: "npm:3" + d3-shape: "npm:3" + d3-time: "npm:3" + d3-time-format: "npm:4" + d3-timer: "npm:3" + d3-transition: "npm:3" + d3-zoom: "npm:3" + checksum: 10/b0b418996bdf279b01f5c7a0117927f9ad3e833c9ce4657550ce6f6ace70b70cf829c4144b01df0be5a0f716d4e5f15ab0cadc5ff1ce1561d7be29ac86493d83 + languageName: node + linkType: hard + +"dagre-d3-es@npm:7.0.14": + version: 7.0.14 + resolution: "dagre-d3-es@npm:7.0.14" + dependencies: + d3: "npm:^7.9.0" + lodash-es: "npm:^4.17.21" + checksum: 10/f2787049ae2684de27950dfc61eb23437cbb5c3ca7ec7f58620e19f16059465b6d23324ca861961353a60bb4cdaa5c66edfa9bbe44ac2304b72dd00ab4199714 + languageName: node + linkType: hard + "data-uri-to-buffer@npm:^4.0.0": version: 4.0.1 resolution: "data-uri-to-buffer@npm:4.0.1" @@ -20621,6 +22028,13 @@ __metadata: languageName: node linkType: hard +"dayjs@npm:^1.11.19": + version: 1.11.20 + resolution: "dayjs@npm:1.11.20" + checksum: 10/5347533f21a55b8bb1b1ef559be9b805514c3a8fb7e68b75fb7e73808131c59e70909c073aa44ce8a0d159195cd110cdd4081cf87ab96cb06fee3edacae791c6 + languageName: node + linkType: hard + "dayjs@patch:dayjs@npm%3A1.11.4#./.yarn/patches/dayjs-npm-1.11.4-97921cd375.patch::locator=calcom-monorepo%40workspace%3A.": version: 1.11.4 resolution: "dayjs@patch:dayjs@npm%3A1.11.4#./.yarn/patches/dayjs-npm-1.11.4-97921cd375.patch::version=1.11.4&hash=24cc20&locator=calcom-monorepo%40workspace%3A." @@ -20876,6 +22290,15 @@ __metadata: languageName: node linkType: hard +"delaunator@npm:5": + version: 5.1.0 + resolution: "delaunator@npm:5.1.0" + dependencies: + robust-predicates: "npm:^3.0.2" + checksum: 10/ede01ddbb69c2d12672e1fd334e4265099d73c082a10fc2d33b4e527c61e0221b25011e9d49a701941211bbedd9d39b9eccac232803edf22d6308ad08ef61a98 + languageName: node + linkType: hard + "delayed-stream@npm:~1.0.0": version: 1.0.0 resolution: "delayed-stream@npm:1.0.0" @@ -21178,6 +22601,18 @@ __metadata: languageName: node linkType: hard +"dompurify@npm:^3.3.1": + version: 3.4.0 + resolution: "dompurify@npm:3.4.0" + dependencies: + "@types/trusted-types": "npm:^2.0.7" + dependenciesMeta: + "@types/trusted-types": + optional: true + checksum: 10/ead40b78ec51cd451f2c74fada4233ee0afeafdbab54af2f4a4bd5d4d138ac04d0d85140e79f533803ecfd1c3758edc1176087039c1e7217824f9794a9d34d2c + languageName: node + linkType: hard + "domutils@npm:3.2.2, domutils@npm:^3.0.1, domutils@npm:^3.2.1": version: 3.2.2 resolution: "domutils@npm:3.2.2" @@ -21841,6 +23276,30 @@ __metadata: languageName: node linkType: hard +"esast-util-from-estree@npm:^2.0.0": + version: 2.0.0 + resolution: "esast-util-from-estree@npm:2.0.0" + dependencies: + "@types/estree-jsx": "npm:^1.0.0" + devlop: "npm:^1.0.0" + estree-util-visit: "npm:^2.0.0" + unist-util-position-from-estree: "npm:^2.0.0" + checksum: 10/b11a13df70e51e0306a8097d691eb2dbde52388bb4d29f89c080fccd00c9fb22a624fad8683ca2ce01761cbf289d3fd480852aec8f5e5a3f0a2abd30aa8dfbe7 + languageName: node + linkType: hard + +"esast-util-from-js@npm:^2.0.0": + version: 2.0.1 + resolution: "esast-util-from-js@npm:2.0.1" + dependencies: + "@types/estree-jsx": "npm:^1.0.0" + acorn: "npm:^8.0.0" + esast-util-from-estree: "npm:^2.0.0" + vfile-message: "npm:^4.0.0" + checksum: 10/ad3ff18de45d981a19ae35ecd7f47a2954399c2d901f3d9f22ab58309c327215b6e2e39f9c0a8ff58d3fd0435fe81a3ff4257754e1a12bdc590a0b68c9d6e085 + languageName: node + linkType: hard + "esbuild@npm:^0.23.0": version: 0.23.1 resolution: "esbuild@npm:0.23.1" @@ -22201,6 +23660,27 @@ __metadata: languageName: node linkType: hard +"estree-util-attach-comments@npm:^3.0.0": + version: 3.0.0 + resolution: "estree-util-attach-comments@npm:3.0.0" + dependencies: + "@types/estree": "npm:^1.0.0" + checksum: 10/a788b5bb7ab98311ab5e96628e40d2fc5d74eae5e5a1ca9769b4749ec5bf9747b00e200c597dc22b8d492a311933e78989930ef3a753556e375a41c360df19ac + languageName: node + linkType: hard + +"estree-util-build-jsx@npm:^3.0.0": + version: 3.0.1 + resolution: "estree-util-build-jsx@npm:3.0.1" + dependencies: + "@types/estree-jsx": "npm:^1.0.0" + devlop: "npm:^1.0.0" + estree-util-is-identifier-name: "npm:^3.0.0" + estree-walker: "npm:^3.0.0" + checksum: 10/08b43edd1d97ecbaa8e3be891b75bdab426734e68a9520bafd67ee61d04dc1680a6a7cb331b61b3b323952016cce7d947562bf3ed51d7ec6701a4463a3bacdb5 + languageName: node + linkType: hard + "estree-util-is-identifier-name@npm:^3.0.0": version: 3.0.0 resolution: "estree-util-is-identifier-name@npm:3.0.0" @@ -22218,6 +23698,17 @@ __metadata: languageName: node linkType: hard +"estree-util-to-js@npm:^2.0.0": + version: 2.0.0 + resolution: "estree-util-to-js@npm:2.0.0" + dependencies: + "@types/estree-jsx": "npm:^1.0.0" + astring: "npm:^1.8.0" + source-map: "npm:^0.7.0" + checksum: 10/4a1673d9c859d8fa8a3d87d83c770390ce3cde70978891f3ef1692d57b4f852e0d5a94d18c656bd6431e0be29a64fd041a1fb8e2a579a4484d47142d2a1addb5 + languageName: node + linkType: hard + "estree-util-value-to-estree@npm:^3.0.0": version: 3.4.0 resolution: "estree-util-value-to-estree@npm:3.4.0" @@ -22227,6 +23718,15 @@ __metadata: languageName: node linkType: hard +"estree-util-value-to-estree@npm:^3.3.3": + version: 3.5.0 + resolution: "estree-util-value-to-estree@npm:3.5.0" + dependencies: + "@types/estree": "npm:^1.0.0" + checksum: 10/b8fc4db7a70d7af5c1ae9d611fc7802022e88fece351ddc557a2db3aa3c7d65eb79e4499f845b9783054cb6826b489ed17c178b09d50ca182c17c53d07a79b83 + languageName: node + linkType: hard + "estree-util-visit@npm:^2.0.0": version: 2.0.0 resolution: "estree-util-visit@npm:2.0.0" @@ -22656,6 +24156,19 @@ __metadata: languageName: node linkType: hard +"fast-glob@npm:^3.3.2": + version: 3.3.3 + resolution: "fast-glob@npm:3.3.3" + dependencies: + "@nodelib/fs.stat": "npm:^2.0.2" + "@nodelib/fs.walk": "npm:^1.2.3" + glob-parent: "npm:^5.1.2" + merge2: "npm:^1.3.0" + micromatch: "npm:^4.0.8" + checksum: 10/dcc6432b269762dd47381d8b8358bf964d8f4f60286ac6aa41c01ade70bda459ff2001b516690b96d5365f68a49242966112b5d5cc9cd82395fa8f9d017c90ad + languageName: node + linkType: hard + "fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -23738,6 +25251,13 @@ __metadata: languageName: node linkType: hard +"github-slugger@npm:^2.0.0": + version: 2.0.0 + resolution: "github-slugger@npm:2.0.0" + checksum: 10/2fb15d78262eeba1e68671f048c62d05ed21e51281cccc7b1c9e8e089e8510b3037fb648b8ba27290e60534df2cb251312a1e7e813204495df621220192fd600 + languageName: node + linkType: hard + "glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" @@ -24192,6 +25712,13 @@ __metadata: languageName: node linkType: hard +"hachure-fill@npm:^0.5.2": + version: 0.5.2 + resolution: "hachure-fill@npm:0.5.2" + checksum: 10/d78f1b992d1c8951a4fc893bf32045748132a8b481c15d6d31c77c05557f5fa86913a2b66b3c3a3c8ce46ca8e0a46b0b2aa11f979bc804d8edba77b8c30eb1ca + languageName: node + linkType: hard + "handlebars@npm:4.7.9": version: 4.7.9 resolution: "handlebars@npm:4.7.9" @@ -24313,7 +25840,123 @@ __metadata: languageName: node linkType: hard -"hast-util-to-html@npm:^9.0.0": +"hast-util-from-dom@npm:^5.0.0": + version: 5.0.1 + resolution: "hast-util-from-dom@npm:5.0.1" + dependencies: + "@types/hast": "npm:^3.0.0" + hastscript: "npm:^9.0.0" + web-namespaces: "npm:^2.0.0" + checksum: 10/acef237ee0cc581d5914f9cbec7b99cb738272d6b1c90741ce3ece8335b49631a6109428e153d4d09b3ee8167da0a2ebf6c359d50703b2bdb4c1c8108ea0a6c7 + languageName: node + linkType: hard + +"hast-util-from-html-isomorphic@npm:^2.0.0": + version: 2.0.0 + resolution: "hast-util-from-html-isomorphic@npm:2.0.0" + dependencies: + "@types/hast": "npm:^3.0.0" + hast-util-from-dom: "npm:^5.0.0" + hast-util-from-html: "npm:^2.0.0" + unist-util-remove-position: "npm:^5.0.0" + checksum: 10/16ba4b46f9f3322d750516fcf760f5d181ff32cefc941dc4d3992742d30ad5ba78139e7429db8567a8e5c8725db7c86f07f4af9935342469db0b8565147eb2b6 + languageName: node + linkType: hard + +"hast-util-from-html@npm:^2.0.0": + version: 2.0.3 + resolution: "hast-util-from-html@npm:2.0.3" + dependencies: + "@types/hast": "npm:^3.0.0" + devlop: "npm:^1.1.0" + hast-util-from-parse5: "npm:^8.0.0" + parse5: "npm:^7.0.0" + vfile: "npm:^6.0.0" + vfile-message: "npm:^4.0.0" + checksum: 10/cdd8ceae114d7ff6d4a81d9d7314c53299acfaca3d959a5894e80eb013c0850af613e2688f1682945c2793e0d9e1acb105560295fd8f141ab7b75f4b2e49cb2c + languageName: node + linkType: hard + +"hast-util-from-parse5@npm:^8.0.0": + version: 8.0.3 + resolution: "hast-util-from-parse5@npm:8.0.3" + dependencies: + "@types/hast": "npm:^3.0.0" + "@types/unist": "npm:^3.0.0" + devlop: "npm:^1.0.0" + hastscript: "npm:^9.0.0" + property-information: "npm:^7.0.0" + vfile: "npm:^6.0.0" + vfile-location: "npm:^5.0.0" + web-namespaces: "npm:^2.0.0" + checksum: 10/539c945c550cfef394a89dcff6e4de26768a748a7288ddce6f59554dd271b663b8398d58ace434264e965aaf3828fdbff86f9109d7fa639b3fe34dedcad4a5df + languageName: node + linkType: hard + +"hast-util-is-element@npm:^3.0.0": + version: 3.0.0 + resolution: "hast-util-is-element@npm:3.0.0" + dependencies: + "@types/hast": "npm:^3.0.0" + checksum: 10/b4e6d84c763ffdc44198ba0c4a5a7430794a7b2c1eec699d37776ea9832eef79f129726c175982103eb3b21f531a6bfd2fa43ce26e1ed6d8f6a87c102ba212c8 + languageName: node + linkType: hard + +"hast-util-parse-selector@npm:^4.0.0": + version: 4.0.0 + resolution: "hast-util-parse-selector@npm:4.0.0" + dependencies: + "@types/hast": "npm:^3.0.0" + checksum: 10/76087670d3b0b50b23a6cb70bca53a6176d6608307ccdbb3ed18b650b82e7c3513bfc40348f1389dc0c5ae872b9a768851f4335f44654abd7deafd6974c52402 + languageName: node + linkType: hard + +"hast-util-raw@npm:^9.0.0": + version: 9.1.0 + resolution: "hast-util-raw@npm:9.1.0" + dependencies: + "@types/hast": "npm:^3.0.0" + "@types/unist": "npm:^3.0.0" + "@ungap/structured-clone": "npm:^1.0.0" + hast-util-from-parse5: "npm:^8.0.0" + hast-util-to-parse5: "npm:^8.0.0" + html-void-elements: "npm:^3.0.0" + mdast-util-to-hast: "npm:^13.0.0" + parse5: "npm:^7.0.0" + unist-util-position: "npm:^5.0.0" + unist-util-visit: "npm:^5.0.0" + vfile: "npm:^6.0.0" + web-namespaces: "npm:^2.0.0" + zwitch: "npm:^2.0.0" + checksum: 10/fa304d08a9fce0f54b2baa18d15c45cb5cac695cbee3567b8ccbd9a57fa295c0fb23d238daca1cf0135ad8d538bb341dcd7d9da03f8b7d12e6980a9f8c4340ae + languageName: node + linkType: hard + +"hast-util-to-estree@npm:^3.0.0, hast-util-to-estree@npm:^3.1.0": + version: 3.1.3 + resolution: "hast-util-to-estree@npm:3.1.3" + dependencies: + "@types/estree": "npm:^1.0.0" + "@types/estree-jsx": "npm:^1.0.0" + "@types/hast": "npm:^3.0.0" + comma-separated-tokens: "npm:^2.0.0" + devlop: "npm:^1.0.0" + estree-util-attach-comments: "npm:^3.0.0" + estree-util-is-identifier-name: "npm:^3.0.0" + hast-util-whitespace: "npm:^3.0.0" + mdast-util-mdx-expression: "npm:^2.0.0" + mdast-util-mdx-jsx: "npm:^3.0.0" + mdast-util-mdxjs-esm: "npm:^2.0.0" + property-information: "npm:^7.0.0" + space-separated-tokens: "npm:^2.0.0" + style-to-js: "npm:^1.0.0" + unist-util-position: "npm:^5.0.0" + zwitch: "npm:^2.0.0" + checksum: 10/efe69c8af68f021d853e70916c6e940765be519aec8703765898c1c3814424b0470f70c0272cf4ac06dcaf6d6f3cc781ebf034701ed240a33ac691d1f5eaf65b + languageName: node + linkType: hard + +"hast-util-to-html@npm:^9.0.0, hast-util-to-html@npm:^9.0.5": version: 9.0.5 resolution: "hast-util-to-html@npm:9.0.5" dependencies: @@ -24332,6 +25975,65 @@ __metadata: languageName: node linkType: hard +"hast-util-to-jsx-runtime@npm:^2.0.0": + version: 2.3.6 + resolution: "hast-util-to-jsx-runtime@npm:2.3.6" + dependencies: + "@types/estree": "npm:^1.0.0" + "@types/hast": "npm:^3.0.0" + "@types/unist": "npm:^3.0.0" + comma-separated-tokens: "npm:^2.0.0" + devlop: "npm:^1.0.0" + estree-util-is-identifier-name: "npm:^3.0.0" + hast-util-whitespace: "npm:^3.0.0" + mdast-util-mdx-expression: "npm:^2.0.0" + mdast-util-mdx-jsx: "npm:^3.0.0" + mdast-util-mdxjs-esm: "npm:^2.0.0" + property-information: "npm:^7.0.0" + space-separated-tokens: "npm:^2.0.0" + style-to-js: "npm:^1.0.0" + unist-util-position: "npm:^5.0.0" + vfile-message: "npm:^4.0.0" + checksum: 10/111bd69f482952c7591cb4e1d3face25f1c18849b310a4d6cacc91e2d2cbc965d455fad35c059b8f0cfd762e933b826a7090b6f3098dece08307a6569de8f1d8 + languageName: node + linkType: hard + +"hast-util-to-parse5@npm:^8.0.0": + version: 8.0.1 + resolution: "hast-util-to-parse5@npm:8.0.1" + dependencies: + "@types/hast": "npm:^3.0.0" + comma-separated-tokens: "npm:^2.0.0" + devlop: "npm:^1.0.0" + property-information: "npm:^7.0.0" + space-separated-tokens: "npm:^2.0.0" + web-namespaces: "npm:^2.0.0" + zwitch: "npm:^2.0.0" + checksum: 10/4776c2fc2d6231364e4d59e7b0045f2ba340fdbf912825147fa2c3dfdf90cc7f458c86da90a9c2c7028375197f1ba2e831ea4c4ea549a0a9911a670e73edd6a7 + languageName: node + linkType: hard + +"hast-util-to-string@npm:^3.0.0": + version: 3.0.1 + resolution: "hast-util-to-string@npm:3.0.1" + dependencies: + "@types/hast": "npm:^3.0.0" + checksum: 10/a569518313a648bc86e712858bc907d1f65137ebba87bc71180dbc2f24f194f6035019ffa8e38b1f7897672d45a337046a4c9964ce6d2593953b5069e10d31c2 + languageName: node + linkType: hard + +"hast-util-to-text@npm:^4.0.0": + version: 4.0.2 + resolution: "hast-util-to-text@npm:4.0.2" + dependencies: + "@types/hast": "npm:^3.0.0" + "@types/unist": "npm:^3.0.0" + hast-util-is-element: "npm:^3.0.0" + unist-util-find-after: "npm:^5.0.0" + checksum: 10/71241e486a155b186b06355fa3bbdaa88602aa108a44ab00a6992e5cabcd7858b43dcb1211c5b17bfe76dddbe9acbbd97408a8e483c1ce83834032778bccd157 + languageName: node + linkType: hard + "hast-util-whitespace@npm:^3.0.0": version: 3.0.0 resolution: "hast-util-whitespace@npm:3.0.0" @@ -24341,6 +26043,19 @@ __metadata: languageName: node linkType: hard +"hastscript@npm:^9.0.0": + version: 9.0.1 + resolution: "hastscript@npm:9.0.1" + dependencies: + "@types/hast": "npm:^3.0.0" + comma-separated-tokens: "npm:^2.0.0" + hast-util-parse-selector: "npm:^4.0.0" + property-information: "npm:^7.0.0" + space-separated-tokens: "npm:^2.0.0" + checksum: 10/9aa8135faf0307807cca4075bef4e3403ae1ce959ad4b9e6720892ba957d58ff98b2f60b5eb3ac67d88ae897dc918997299cd4249d7ac602a0066dd46442c5d4 + languageName: node + linkType: hard + "he@npm:1.2.0, he@npm:^1.2.0": version: 1.2.0 resolution: "he@npm:1.2.0" @@ -24792,7 +26507,7 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6, iconv-lite@npm:^0.6.2, iconv-lite@npm:^0.6.3": +"iconv-lite@npm:0.6, iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6, iconv-lite@npm:^0.6.2, iconv-lite@npm:^0.6.3": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" dependencies: @@ -25121,6 +26836,13 @@ __metadata: languageName: node linkType: hard +"inline-style-parser@npm:0.2.7": + version: 0.2.7 + resolution: "inline-style-parser@npm:0.2.7" + checksum: 10/cdfe719bd694b53bfbad20a645a9a4dda89c3ff56ee2b95945ad4eea86c541501f49f852d23bc2f73cd8127b6b62ea9027f697838e323a7f7d0d9b760e27a632 + languageName: node + linkType: hard + "inline-style-prefixer@npm:^7.0.1": version: 7.0.1 resolution: "inline-style-prefixer@npm:7.0.1" @@ -25264,6 +26986,13 @@ __metadata: languageName: node linkType: hard +"internmap@npm:^1.0.0": + version: 1.0.1 + resolution: "internmap@npm:1.0.1" + checksum: 10/429cb9e28f393f10c73a826d71ba9e359711b7e42345bd684aba708f43b8139ce90f09b15abbf977a981474ac61615294854e5b9520d3f65187d0f6a2ff27665 + languageName: node + linkType: hard + "interpret@npm:^1.0.0": version: 1.4.0 resolution: "interpret@npm:1.4.0" @@ -26024,6 +27753,15 @@ __metadata: languageName: node linkType: hard +"is64bit@npm:^2.0.0": + version: 2.0.0 + resolution: "is64bit@npm:2.0.0" + dependencies: + system-architecture: "npm:^0.1.0" + checksum: 10/94dafd5f29bfb96c542e89ef8c33e811159ca7d07a2890ab83026fa87706612af4101308d9392e9ee68e046e8604a6b59a8f41091f8556f6235efbcfd9c5574c + languageName: node + linkType: hard + "isarray@npm:2.0.5, isarray@npm:^2.0.5": version: 2.0.5 resolution: "isarray@npm:2.0.5" @@ -27127,6 +28865,17 @@ __metadata: languageName: node linkType: hard +"katex@npm:^0.16.0, katex@npm:^0.16.21, katex@npm:^0.16.25": + version: 0.16.45 + resolution: "katex@npm:0.16.45" + dependencies: + commander: "npm:^8.3.0" + bin: + katex: cli.js + checksum: 10/8c82f9651c3615459722166a6ccb16f23ecd8323850a956568b69b1f641331a57679aa9f3ad4903c4be26089434cbbde850c0384b9b0dff022e4357b84a20ebc + languageName: node + linkType: hard + "kbar@npm:0.1.0-beta.36": version: 0.1.0-beta.36 resolution: "kbar@npm:0.1.0-beta.36" @@ -27143,6 +28892,13 @@ __metadata: languageName: node linkType: hard +"khroma@npm:^2.1.0": + version: 2.1.0 + resolution: "khroma@npm:2.1.0" + checksum: 10/a195e317bf6f3a1cba98df2677bf9bf6d14195ee0b1c3e5bc20a542cd99652682f290c196a8963956d87aed4ad65ac0bc8a15d75cddf00801fdafd148e01a5d2 + languageName: node + linkType: hard + "kind-of@npm:^6.0.0, kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": version: 6.0.3 resolution: "kind-of@npm:6.0.3" @@ -27178,6 +28934,34 @@ __metadata: languageName: node linkType: hard +"langium@npm:^4.0.0": + version: 4.2.2 + resolution: "langium@npm:4.2.2" + dependencies: + "@chevrotain/regexp-to-ast": "npm:~12.0.0" + chevrotain: "npm:~12.0.0" + chevrotain-allstar: "npm:~0.4.1" + vscode-languageserver: "npm:~9.0.1" + vscode-languageserver-textdocument: "npm:~1.0.11" + vscode-uri: "npm:~3.1.0" + checksum: 10/adb5b7dde073a3215ecebe56077c12b6ea22bbdeebd4845b33db13c919f02c94aa95a0d13a674e66221301bf1fa664d57a89c763df2ef09f370fe05dc453005a + languageName: node + linkType: hard + +"layout-base@npm:^1.0.0": + version: 1.0.2 + resolution: "layout-base@npm:1.0.2" + checksum: 10/34504e61e4770e563cf49d4a56c8c10f1da0fb452cff89a652118783189c642ebc86a300d97cbc247e59a9c1eb06a2d419982f7dd10e8eedcab2414bc46d32f8 + languageName: node + linkType: hard + +"layout-base@npm:^2.0.0": + version: 2.0.1 + resolution: "layout-base@npm:2.0.1" + checksum: 10/b5cca04a2e327ea16374a0058f73544291aeb0026972677a128594aca3b627d26949140ab7d275798c7d39193a33b41c5a856d4509c1518f49c9a5f1dad39a20 + languageName: node + linkType: hard + "leven@npm:^2.1.0": version: 2.1.0 resolution: "leven@npm:2.1.0" @@ -28239,6 +30023,13 @@ __metadata: languageName: node linkType: hard +"markdown-extensions@npm:^2.0.0": + version: 2.0.0 + resolution: "markdown-extensions@npm:2.0.0" + checksum: 10/ec4ffcb0768f112e778e7ac74cb8ef22a966c168c3e6c29829f007f015b0a0b5c79c73ee8599a0c72e440e7f5cfdbf19e80e2d77b9a313b8f66e180a330cf1b2 + languageName: node + linkType: hard + "markdown-it@npm:13.0.1": version: 13.0.1 resolution: "markdown-it@npm:13.0.1" @@ -28270,6 +30061,15 @@ __metadata: languageName: node linkType: hard +"marked@npm:^16.3.0": + version: 16.4.2 + resolution: "marked@npm:16.4.2" + bin: + marked: bin/marked.js + checksum: 10/6e40e40661dce97e271198daa2054fc31e6445892a735e416c248fba046bdfa4573cafa08dc254529f105e7178a34485eb7f82573979cfb377a4530f66e79187 + languageName: node + linkType: hard + "matchit@npm:^1.0.0": version: 1.1.0 resolution: "matchit@npm:1.1.0" @@ -28286,6 +30086,18 @@ __metadata: languageName: node linkType: hard +"mathjax-full@npm:^3.2.2": + version: 3.2.2 + resolution: "mathjax-full@npm:3.2.2" + dependencies: + esm: "npm:^3.2.25" + mhchemparser: "npm:^4.1.0" + mj-context-menu: "npm:^0.6.1" + speech-rule-engine: "npm:^4.0.6" + checksum: 10/1091a1773f736c00723ce4db35f9f0f04f4e54b8af51cf1b916ea0e1f90411e64521970f9ec5f760a7b490956f54cf2a5ddda2a2d762eddf65d6cd63494c4f8c + languageName: node + linkType: hard + "md5@npm:2.3.0": version: 2.3.0 resolution: "md5@npm:2.3.0" @@ -28329,6 +30141,26 @@ __metadata: languageName: node linkType: hard +"mdast-util-from-markdown@npm:^2.0.1": + version: 2.0.3 + resolution: "mdast-util-from-markdown@npm:2.0.3" + dependencies: + "@types/mdast": "npm:^4.0.0" + "@types/unist": "npm:^3.0.0" + decode-named-character-reference: "npm:^1.0.0" + devlop: "npm:^1.0.0" + mdast-util-to-string: "npm:^4.0.0" + micromark: "npm:^4.0.0" + micromark-util-decode-numeric-character-reference: "npm:^2.0.0" + micromark-util-decode-string: "npm:^2.0.0" + micromark-util-normalize-identifier: "npm:^2.0.0" + micromark-util-symbol: "npm:^2.0.0" + micromark-util-types: "npm:^2.0.0" + unist-util-stringify-position: "npm:^4.0.0" + checksum: 10/96f2bfb3b240c3d20a57db5d215faed795abf495c65ca2a4d61c0cf796011bc980619aa032d7984b05b67c15edc0eccd12a004a848952d3a598d108cf14901ab + languageName: node + linkType: hard + "mdast-util-frontmatter@npm:^2.0.0": version: 2.0.1 resolution: "mdast-util-frontmatter@npm:2.0.1" @@ -28420,6 +30252,21 @@ __metadata: languageName: node linkType: hard +"mdast-util-math@npm:^3.0.0": + version: 3.0.0 + resolution: "mdast-util-math@npm:3.0.0" + dependencies: + "@types/hast": "npm:^3.0.0" + "@types/mdast": "npm:^4.0.0" + devlop: "npm:^1.0.0" + longest-streak: "npm:^3.0.0" + mdast-util-from-markdown: "npm:^2.0.0" + mdast-util-to-markdown: "npm:^2.1.0" + unist-util-remove-position: "npm:^5.0.0" + checksum: 10/26f44933f3ae2bfce85df23e79cd31bcc42ef328eaeef70550f38310e29fc8eece5e79fc404ed1485fd38b9113e1817258ca6c1a602be82a933e0198d812c9af + languageName: node + linkType: hard + "mdast-util-mdx-expression@npm:^2.0.0": version: 2.0.1 resolution: "mdast-util-mdx-expression@npm:2.0.1" @@ -28508,7 +30355,7 @@ __metadata: languageName: node linkType: hard -"mdast-util-to-markdown@npm:^2.0.0": +"mdast-util-to-markdown@npm:^2.0.0, mdast-util-to-markdown@npm:^2.1.0": version: 2.1.2 resolution: "mdast-util-to-markdown@npm:2.1.2" dependencies: @@ -28682,6 +30529,35 @@ __metadata: languageName: node linkType: hard +"mermaid@npm:^11.0.0": + version: 11.14.0 + resolution: "mermaid@npm:11.14.0" + dependencies: + "@braintree/sanitize-url": "npm:^7.1.1" + "@iconify/utils": "npm:^3.0.2" + "@mermaid-js/parser": "npm:^1.1.0" + "@types/d3": "npm:^7.4.3" + "@upsetjs/venn.js": "npm:^2.0.0" + cytoscape: "npm:^3.33.1" + cytoscape-cose-bilkent: "npm:^4.1.0" + cytoscape-fcose: "npm:^2.2.0" + d3: "npm:^7.9.0" + d3-sankey: "npm:^0.12.3" + dagre-d3-es: "npm:7.0.14" + dayjs: "npm:^1.11.19" + dompurify: "npm:^3.3.1" + katex: "npm:^0.16.25" + khroma: "npm:^2.1.0" + lodash-es: "npm:^4.17.23" + marked: "npm:^16.3.0" + roughjs: "npm:^4.6.6" + stylis: "npm:^4.3.6" + ts-dedent: "npm:^2.2.0" + uuid: "npm:^11.1.0" + checksum: 10/44a4d1884702956b61e99a54a7a8f369749c65da4c2278d6aa6dd2c4a6904f9950ce9925b310c37fc9f71c7684c38f5853995e4c0002256e7d887621bb24a4ec + languageName: node + linkType: hard + "meros@npm:^1.2.1": version: 1.3.0 resolution: "meros@npm:1.3.0" @@ -28701,6 +30577,13 @@ __metadata: languageName: node linkType: hard +"mhchemparser@npm:^4.1.0": + version: 4.2.1 + resolution: "mhchemparser@npm:4.2.1" + checksum: 10/06aeb3893a1015c9e66430e4d24a7cd876cc3761aa7258900310f674296ff9797e62d9411bfa0898514100922ccf7bbc9f9eafb34d6bd169177f85df3723a333 + languageName: node + linkType: hard + "micro@npm:10.0.1": version: 10.0.1 resolution: "micro@npm:10.0.1" @@ -28843,6 +30726,21 @@ __metadata: languageName: node linkType: hard +"micromark-extension-math@npm:^3.0.0": + version: 3.1.0 + resolution: "micromark-extension-math@npm:3.1.0" + dependencies: + "@types/katex": "npm:^0.16.0" + devlop: "npm:^1.0.0" + katex: "npm:^0.16.0" + micromark-factory-space: "npm:^2.0.0" + micromark-util-character: "npm:^2.0.0" + micromark-util-symbol: "npm:^2.0.0" + micromark-util-types: "npm:^2.0.0" + checksum: 10/37b2002aca15cf354ff754191379942f2b36df5ceeb69509294d80b4e158e8af83dda03c434e1497ccc597d63cf85a1ccc0d46f17770fc7692f76887404c8d1d + languageName: node + linkType: hard + "micromark-extension-mdx-expression@npm:^3.0.0": version: 3.0.1 resolution: "micromark-extension-mdx-expression@npm:3.0.1" @@ -29508,6 +31406,13 @@ __metadata: languageName: node linkType: hard +"mj-context-menu@npm:^0.6.1": + version: 0.6.1 + resolution: "mj-context-menu@npm:0.6.1" + checksum: 10/5b9d6e3dabd9098eb37b9583a55b5e23d9d4f80a97c295c2f4ca318233801519e5abc7b5d7907817fea5cc7dcf334f192ac9622e2d4da55d350b78c8e31e7e3a + languageName: node + linkType: hard + "mkdirp-classic@npm:^0.5.2, mkdirp-classic@npm:^0.5.3": version: 0.5.3 resolution: "mkdirp-classic@npm:0.5.3" @@ -29547,6 +31452,18 @@ __metadata: languageName: node linkType: hard +"mlly@npm:^1.8.0": + version: 1.8.2 + resolution: "mlly@npm:1.8.2" + dependencies: + acorn: "npm:^8.16.0" + pathe: "npm:^2.0.3" + pkg-types: "npm:^1.3.1" + ufo: "npm:^1.6.3" + checksum: 10/e13b79edb113ac9d3ce8b5998d490cd979e907d31b562b9c6630e59623d32710cc83be1da46755ccd3143c57d50debcf98a9903d55e6e07e57910dc3369d96c1 + languageName: node + linkType: hard + "mnemonist@npm:0.38.3": version: 0.38.3 resolution: "mnemonist@npm:0.38.3" @@ -30130,6 +32047,16 @@ __metadata: languageName: node linkType: hard +"next-themes@npm:^0.4.0": + version: 0.4.6 + resolution: "next-themes@npm:0.4.6" + peerDependencies: + react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + checksum: 10/48540e77a8f1967fa27338e91037df296f84d8979ba3003f71eed8d9a2f4f29b3cc6797d27b501547fd39cf33611a2accb432eec92ad8a457abe1a142cc5a02e + languageName: node + linkType: hard + "next-validations@npm:0.2.1": version: 0.2.1 resolution: "next-validations@npm:0.2.1" @@ -30257,6 +32184,136 @@ __metadata: languageName: node linkType: hard +"next@npm:^15.1.0": + version: 15.5.15 + resolution: "next@npm:15.5.15" + dependencies: + "@next/env": "npm:15.5.15" + "@next/swc-darwin-arm64": "npm:15.5.15" + "@next/swc-darwin-x64": "npm:15.5.15" + "@next/swc-linux-arm64-gnu": "npm:15.5.15" + "@next/swc-linux-arm64-musl": "npm:15.5.15" + "@next/swc-linux-x64-gnu": "npm:15.5.15" + "@next/swc-linux-x64-musl": "npm:15.5.15" + "@next/swc-win32-arm64-msvc": "npm:15.5.15" + "@next/swc-win32-x64-msvc": "npm:15.5.15" + "@swc/helpers": "npm:0.5.15" + caniuse-lite: "npm:^1.0.30001579" + postcss: "npm:8.4.31" + sharp: "npm:^0.34.3" + styled-jsx: "npm:5.1.6" + peerDependencies: + "@opentelemetry/api": ^1.1.0 + "@playwright/test": ^1.51.1 + babel-plugin-react-compiler: "*" + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + sass: ^1.3.0 + dependenciesMeta: + "@next/swc-darwin-arm64": + optional: true + "@next/swc-darwin-x64": + optional: true + "@next/swc-linux-arm64-gnu": + optional: true + "@next/swc-linux-arm64-musl": + optional: true + "@next/swc-linux-x64-gnu": + optional: true + "@next/swc-linux-x64-musl": + optional: true + "@next/swc-win32-arm64-msvc": + optional: true + "@next/swc-win32-x64-msvc": + optional: true + sharp: + optional: true + peerDependenciesMeta: + "@opentelemetry/api": + optional: true + "@playwright/test": + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + bin: + next: dist/bin/next + checksum: 10/f15867d9e068194376a9657a13b5bc28dee4afedf4a163304c49cf9cec008ad5b905b8f4639bbebd702f77342b76847252b02dffeb130dd07be24aa0d2a694f0 + languageName: node + linkType: hard + +"nextra-theme-docs@npm:^4.2.0": + version: 4.6.1 + resolution: "nextra-theme-docs@npm:4.6.1" + dependencies: + "@headlessui/react": "npm:^2.1.2" + clsx: "npm:^2.1.0" + next-themes: "npm:^0.4.0" + react-compiler-runtime: "npm:^19.1.0-rc.2" + scroll-into-view-if-needed: "npm:^3.1.0" + zod: "npm:^4.1.12" + zustand: "npm:^5.0.1" + peerDependencies: + next: ">=14" + nextra: 4.6.1 + react: ">=18" + react-dom: ">=18" + checksum: 10/dcb33b6db2b9e76a19dd64707c7e0bffa84686a45d1f4c6ce472c0821d6ccbc0bca661428d3f656f542ff298e94226299576c62fdff130bb930dc24917ec4446 + languageName: node + linkType: hard + +"nextra@npm:^4.2.0": + version: 4.6.1 + resolution: "nextra@npm:4.6.1" + dependencies: + "@formatjs/intl-localematcher": "npm:^0.6.0" + "@headlessui/react": "npm:^2.1.2" + "@mdx-js/mdx": "npm:^3.0.0" + "@napi-rs/simple-git": "npm:^0.1.9" + "@shikijs/twoslash": "npm:^3.2.1" + "@theguild/remark-mermaid": "npm:^0.3.0" + "@theguild/remark-npm2yarn": "npm:^0.3.2" + better-react-mathjax: "npm:^2.3.0" + clsx: "npm:^2.1.0" + estree-util-to-js: "npm:^2.0.0" + estree-util-value-to-estree: "npm:^3.3.3" + fast-glob: "npm:^3.3.2" + github-slugger: "npm:^2.0.0" + hast-util-to-estree: "npm:^3.1.0" + katex: "npm:^0.16.21" + mdast-util-from-markdown: "npm:^2.0.1" + mdast-util-gfm: "npm:^3.0.0" + mdast-util-to-hast: "npm:^13.2.0" + negotiator: "npm:^1.0.0" + react-compiler-runtime: "npm:^19.1.0-rc.2" + react-medium-image-zoom: "npm:^5.2.12" + rehype-katex: "npm:^7.0.0" + rehype-pretty-code: "npm:0.14.1" + rehype-raw: "npm:^7.0.0" + remark-frontmatter: "npm:^5.0.0" + remark-gfm: "npm:^4.0.0" + remark-math: "npm:^6.0.0" + remark-reading-time: "npm:^2.0.2" + remark-smartypants: "npm:^3.0.0" + server-only: "npm:^0.0.1" + shiki: "npm:^3.2.1" + slash: "npm:^5.1.0" + title: "npm:^4.0.1" + ts-morph: "npm:^27.0.0" + unist-util-remove: "npm:^4.0.0" + unist-util-visit: "npm:^5.0.0" + unist-util-visit-children: "npm:^3.0.0" + yaml: "npm:^2.3.2" + zod: "npm:^4.1.12" + peerDependencies: + next: ">=14" + react: ">=18" + react-dom: ">=18" + checksum: 10/e143bc141e8fecf7cceeecf60deceb7b3b36fd133b427582526210c2f1ae50c8a6267987555a121375b53ece4a45a6c93ff725c65c0ba949dd9545b4a08f1e6e + languageName: node + linkType: hard + "nice-try@npm:^1.0.4": version: 1.0.5 resolution: "nice-try@npm:1.0.5" @@ -30264,6 +32321,15 @@ __metadata: languageName: node linkType: hard +"nlcst-to-string@npm:^4.0.0": + version: 4.0.0 + resolution: "nlcst-to-string@npm:4.0.0" + dependencies: + "@types/nlcst": "npm:^2.0.0" + checksum: 10/a780ca517548582016b6a92216962500de1179ace37cc7a9afbddd219e6893f253eab564f4c2292a13cf2ade27a669c6222b3eb27671cf647e15b6abf2eb1827 + languageName: node + linkType: hard + "no-case@npm:^3.0.4": version: 3.0.4 resolution: "no-case@npm:3.0.4" @@ -30704,6 +32770,13 @@ __metadata: languageName: node linkType: hard +"npm-to-yarn@npm:^3.0.0": + version: 3.0.1 + resolution: "npm-to-yarn@npm:3.0.1" + checksum: 10/0af1332064cf482a9039f41a2132d555875779646e0467f8150868f1af79e2c172cbda303cfd51c63ded4e54d80e78eb62a288da0e53016f8edc0e0bb8036b23 + languageName: node + linkType: hard + "npmlog@npm:^6.0.0": version: 6.0.2 resolution: "npmlog@npm:6.0.2" @@ -31023,6 +33096,24 @@ __metadata: languageName: node linkType: hard +"oniguruma-parser@npm:^0.12.1": + version: 0.12.1 + resolution: "oniguruma-parser@npm:0.12.1" + checksum: 10/2e7e308ec222f377b4be21e87f009729ce1cc014511d35a50440e7270a17413e4859b8c7ad1985123abe1089bda5ad2d0feccc75f7de25d9cb272b7cc34b4f3c + languageName: node + linkType: hard + +"oniguruma-to-es@npm:^4.3.4": + version: 4.3.5 + resolution: "oniguruma-to-es@npm:4.3.5" + dependencies: + oniguruma-parser: "npm:^0.12.1" + regex: "npm:^6.1.0" + regex-recursion: "npm:^6.0.2" + checksum: 10/fb73b21776735876a12ce5fe797906faf2191d5fd57580ce4f996a8badf75848a81794f4b1297ec68c5ddf0f5ebe6d1d07633c6d8038c9bd17a01d5b7fe0a633 + languageName: node + linkType: hard + "open@npm:10.2.0, open@npm:^10.0.3, open@npm:^10.1.0": version: 10.2.0 resolution: "open@npm:10.2.0" @@ -31312,6 +33403,13 @@ __metadata: languageName: node linkType: hard +"package-manager-detector@npm:^1.3.0": + version: 1.6.0 + resolution: "package-manager-detector@npm:1.6.0" + checksum: 10/b38a9532198cefdb98a1b7131c42cbffa55d8b997d6117811cf83f00079fd57a572db2aa5e3db5e36bcd0af84d0bec5a7d6251142427314390ed99a3d76cd0a0 + languageName: node + linkType: hard + "pako@npm:^0.2.5": version: 0.2.9 resolution: "pako@npm:0.2.9" @@ -31443,6 +33541,20 @@ __metadata: languageName: node linkType: hard +"parse-latin@npm:^7.0.0": + version: 7.0.0 + resolution: "parse-latin@npm:7.0.0" + dependencies: + "@types/nlcst": "npm:^2.0.0" + "@types/unist": "npm:^3.0.0" + nlcst-to-string: "npm:^4.0.0" + unist-util-modify-children: "npm:^4.0.0" + unist-util-visit-children: "npm:^3.0.0" + vfile: "npm:^6.0.0" + checksum: 10/4ad50aef731f47c8d02ecf777343c508a2b2680dfd08aae11581082a17f605e9a95f4114a44a4ebdcd8fd409b1e843cc08421bf28d9ed04918677849dc7f13aa + languageName: node + linkType: hard + "parse-ms@npm:^4.0.0": version: 4.0.0 resolution: "parse-ms@npm:4.0.0" @@ -31460,6 +33572,13 @@ __metadata: languageName: node linkType: hard +"parse-numeric-range@npm:^1.3.0": + version: 1.3.0 + resolution: "parse-numeric-range@npm:1.3.0" + checksum: 10/289ca126d5b8ace7325b199218de198014f58ea6895ccc88a5247491d07f0143bf047f80b4a31784f1ca8911762278d7d6ecb90a31dfae31da91cc1a2524c8ce + languageName: node + linkType: hard + "parse-srcset@npm:^1.0.2": version: 1.0.2 resolution: "parse-srcset@npm:1.0.2" @@ -31597,6 +33716,13 @@ __metadata: languageName: node linkType: hard +"path-data-parser@npm:0.1.0, path-data-parser@npm:^0.1.0": + version: 0.1.0 + resolution: "path-data-parser@npm:0.1.0" + checksum: 10/a23a214adb38074576a8873d25e8dea7e090b8396d86f58f83f3f6c6298ff56b06adc694147b67f0ed22f14dc478efa1d525710d3ec7b2d7b1efbac57e3fafe6 + languageName: node + linkType: hard + "path-exists@npm:^3.0.0": version: 3.0.0 resolution: "path-exists@npm:3.0.0" @@ -31915,6 +34041,13 @@ __metadata: languageName: node linkType: hard +"picomatch@npm:^4.0.4": + version: 4.0.4 + resolution: "picomatch@npm:4.0.4" + checksum: 10/f6ef80a3590827ce20378ae110ac78209cc4f74d39236370f1780f957b7ee41c12acde0e4651b90f39983506fd2f5e449994716f516db2e9752924aff8de93ce + languageName: node + linkType: hard + "pidtree@npm:^0.3.0": version: 0.3.1 resolution: "pidtree@npm:0.3.1" @@ -32075,6 +34208,23 @@ __metadata: languageName: node linkType: hard +"points-on-curve@npm:0.2.0, points-on-curve@npm:^0.2.0": + version: 0.2.0 + resolution: "points-on-curve@npm:0.2.0" + checksum: 10/3f9a4a9f5a624bb307a72f5cdf1f7c29bedc546716664a2cfd7228085308575e63b461a3e64a88d3b451031655714eb49469d2ced392ee014b709132cd59be93 + languageName: node + linkType: hard + +"points-on-path@npm:^0.2.1": + version: 0.2.1 + resolution: "points-on-path@npm:0.2.1" + dependencies: + path-data-parser: "npm:0.1.0" + points-on-curve: "npm:0.2.0" + checksum: 10/8b3f42feb24433b4a3e0b1c1f951340f06f523b26ed4d87446829f500f1468ad1484a6bf7fedf076ff4b492ae6b1daa7ffc07c7a8f7c00f4d072f17f79fe9ed0 + languageName: node + linkType: hard + "polka@npm:^0.5.2": version: 0.5.2 resolution: "polka@npm:0.5.2" @@ -33313,6 +35463,15 @@ __metadata: languageName: node linkType: hard +"react-compiler-runtime@npm:^19.1.0-rc.2": + version: 19.1.0-rc.3 + resolution: "react-compiler-runtime@npm:19.1.0-rc.3" + peerDependencies: + react: ^17.0.0 || ^18.0.0 || ^19.0.0 || ^0.0.0-experimental + checksum: 10/ee9085e070eec4135bad982f47a82a4fc28c0c6d7111b3ec93354dab61bd56f9da0bde18af2ab0ee84f5ff9e71026cbfa58513ce8ac7c0290979a84199970ab6 + languageName: node + linkType: hard + "react-date-picker@npm:^8.4.0": version: 8.4.0 resolution: "react-date-picker@npm:8.4.0" @@ -33373,6 +35532,17 @@ __metadata: languageName: node linkType: hard +"react-dom@npm:^19.0.0": + version: 19.2.5 + resolution: "react-dom@npm:19.2.5" + dependencies: + scheduler: "npm:^0.27.0" + peerDependencies: + react: ^19.2.5 + checksum: 10/ba14b022c7191d27b723314b964a1a4d839832e6edd231294097e323973808f97ac647bcf182ab0104e20ae6532dbc36733aec3e8333a1446a7183099c96b255 + languageName: node + linkType: hard + "react-easy-crop@npm:3.5.3": version: 3.5.3 resolution: "react-easy-crop@npm:3.5.3" @@ -33501,6 +35671,16 @@ __metadata: languageName: node linkType: hard +"react-medium-image-zoom@npm:^5.2.12": + version: 5.4.3 + resolution: "react-medium-image-zoom@npm:5.4.3" + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + checksum: 10/bc42b5be4ec84c91ee94a2e7c5d6f66a1e3410bb4b6b0fa0511e54848923805fcbd5cba8dedb63461ffe15ca9aad64e9ec1f865ad310f4fc164d9bd36f64d1e5 + languageName: node + linkType: hard + "react-phone-input-2@npm:2.15.1": version: 2.15.1 resolution: "react-phone-input-2@npm:2.15.1" @@ -33840,6 +36020,13 @@ __metadata: languageName: node linkType: hard +"react@npm:^19.0.0": + version: 19.2.5 + resolution: "react@npm:19.2.5" + checksum: 10/1c3c7ffecb90b7f89a5c3ef635e6811f3a84600097f203b918150cb7e6b0a52915e858e5b4c82317a520dffccfa46ee4819ccf92c59c5b2d6c25cffe258dd20c + languageName: node + linkType: hard + "read-cache@npm:^1.0.0": version: 1.0.0 resolution: "read-cache@npm:1.0.0" @@ -33935,6 +36122,13 @@ __metadata: languageName: node linkType: hard +"reading-time@npm:^1.3.0": + version: 1.5.0 + resolution: "reading-time@npm:1.5.0" + checksum: 10/d52921d2563693f34e71ecc6ec97bd48ec960c44dff04384e56c47ee68cfa36749acbcaeec4d0cd1d18113e53ae67825bb067ea63ba1f86107e289573e5f584f + languageName: node + linkType: hard + "recharts@npm:3.0.2": version: 3.0.2 resolution: "recharts@npm:3.0.2" @@ -33967,6 +36161,56 @@ __metadata: languageName: node linkType: hard +"recma-build-jsx@npm:^1.0.0": + version: 1.0.0 + resolution: "recma-build-jsx@npm:1.0.0" + dependencies: + "@types/estree": "npm:^1.0.0" + estree-util-build-jsx: "npm:^3.0.0" + vfile: "npm:^6.0.0" + checksum: 10/ba82fe08efdf5ecd178ab76a08a4acac792a41d9f38aea99f93cb3d9e577ba8952620c547e730ba6717c13efa08fdb3dfe893bccfa9717f5a81d3fb2ab20c572 + languageName: node + linkType: hard + +"recma-jsx@npm:^1.0.0": + version: 1.0.1 + resolution: "recma-jsx@npm:1.0.1" + dependencies: + acorn-jsx: "npm:^5.0.0" + estree-util-to-js: "npm:^2.0.0" + recma-parse: "npm:^1.0.0" + recma-stringify: "npm:^1.0.0" + unified: "npm:^11.0.0" + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + checksum: 10/eebbdc4e08e03f259dcd80387e51559d792de2dcb3f553c5d5a29d1ef4385e985c377cf60eabf408b1ead923a8eff85f157797a196e8262078a21dce247bbf0f + languageName: node + linkType: hard + +"recma-parse@npm:^1.0.0": + version: 1.0.0 + resolution: "recma-parse@npm:1.0.0" + dependencies: + "@types/estree": "npm:^1.0.0" + esast-util-from-js: "npm:^2.0.0" + unified: "npm:^11.0.0" + vfile: "npm:^6.0.0" + checksum: 10/8854f830ee7b7a21934f9ac2108412a2bdd9c41465e617ac8d6edd158ff05c70dca121bf87d3716d863545b387d39e67ff011d5cb0c3d1fdba9d5a48140e12ee + languageName: node + linkType: hard + +"recma-stringify@npm:^1.0.0": + version: 1.0.0 + resolution: "recma-stringify@npm:1.0.0" + dependencies: + "@types/estree": "npm:^1.0.0" + estree-util-to-js: "npm:^2.0.0" + unified: "npm:^11.0.0" + vfile: "npm:^6.0.0" + checksum: 10/4ab6f0416296fd6b1a6180e74e19ec110b3fa6f0b3a434468e84092e8c36db99a3a77bd6412cf7a4c8d69b1701ab38aed7d0fd466588802ca295765892d2d361 + languageName: node + linkType: hard + "redent@npm:^3.0.0": version: 3.0.0 resolution: "redent@npm:3.0.0" @@ -34078,6 +36322,31 @@ __metadata: languageName: node linkType: hard +"regex-recursion@npm:^6.0.2": + version: 6.0.2 + resolution: "regex-recursion@npm:6.0.2" + dependencies: + regex-utilities: "npm:^2.3.0" + checksum: 10/ce25d54bdf79e38ae663c26a7f265754047b918e8b771b4ed3c871e9a926b85b195dcd0dd7a6444c82d2c9db9b2cbcaf51a353a807b469a3ad7a2172f27f21d4 + languageName: node + linkType: hard + +"regex-utilities@npm:^2.3.0": + version: 2.3.0 + resolution: "regex-utilities@npm:2.3.0" + checksum: 10/d11519c31f379488cbc6278b8645d72f16339ee325c79a4b8b3a6477738016a52983158dc69ae1b5867f8b06978ff5d83933520257a57f7e5c3e4ac6a1ea3cc7 + languageName: node + linkType: hard + +"regex@npm:^6.1.0": + version: 6.1.0 + resolution: "regex@npm:6.1.0" + dependencies: + regex-utilities: "npm:^2.3.0" + checksum: 10/553bac92b7ddcea99187aea1bd5cd50f31a923b45ff0bb2ae3876387df01957eb074931613c8a1f6471bb8fea1e0ba1e52f12b8257a5602900e52dd1abb5e436 + languageName: node + linkType: hard + "regexp-to-ast@npm:0.5.0": version: 0.5.0 resolution: "regexp-to-ast@npm:0.5.0" @@ -34099,6 +36368,70 @@ __metadata: languageName: node linkType: hard +"rehype-katex@npm:^7.0.0": + version: 7.0.1 + resolution: "rehype-katex@npm:7.0.1" + dependencies: + "@types/hast": "npm:^3.0.0" + "@types/katex": "npm:^0.16.0" + hast-util-from-html-isomorphic: "npm:^2.0.0" + hast-util-to-text: "npm:^4.0.0" + katex: "npm:^0.16.0" + unist-util-visit-parents: "npm:^6.0.0" + vfile: "npm:^6.0.0" + checksum: 10/8753ff2ade6bd031d36f552201e01680f54a60b384a0dfc6e2f65d86ff0bbdfdd344b452e7622d2ae1dbec859630bda467492a9361b3dc115468386dd075ad98 + languageName: node + linkType: hard + +"rehype-parse@npm:^9.0.0": + version: 9.0.1 + resolution: "rehype-parse@npm:9.0.1" + dependencies: + "@types/hast": "npm:^3.0.0" + hast-util-from-html: "npm:^2.0.0" + unified: "npm:^11.0.0" + checksum: 10/67855c6426d1cd39d64b4a38e934bb234e59f1d4df2f67008848b9bde01f9e068eed549d62a97f54d5c5eb8bfa56c7e2c4b7c3aad769fc4ded9218dc9078ef37 + languageName: node + linkType: hard + +"rehype-pretty-code@npm:0.14.1": + version: 0.14.1 + resolution: "rehype-pretty-code@npm:0.14.1" + dependencies: + "@types/hast": "npm:^3.0.4" + hast-util-to-string: "npm:^3.0.0" + parse-numeric-range: "npm:^1.3.0" + rehype-parse: "npm:^9.0.0" + unified: "npm:^11.0.5" + unist-util-visit: "npm:^5.0.0" + peerDependencies: + shiki: ^1.0.0 || ^2.0.0 || ^3.0.0 + checksum: 10/13b68f8c021a3c09f3fe9710bc32cdd6516005500ec6ef8a61cdc9936e8a889567df1a02173aa18263d1a3959fd373c9d6f6ba257178e5bb3eb6f0b1ade1e25c + languageName: node + linkType: hard + +"rehype-raw@npm:^7.0.0": + version: 7.0.0 + resolution: "rehype-raw@npm:7.0.0" + dependencies: + "@types/hast": "npm:^3.0.0" + hast-util-raw: "npm:^9.0.0" + vfile: "npm:^6.0.0" + checksum: 10/65dd5809f95410ca5056efe50f5b16cb08a69c0785c6d4ec80c9280487efbaec81d342084f6cfdca5624134c1c4018705d97c37b5c0a21d9625ed8a3c88700f1 + languageName: node + linkType: hard + +"rehype-recma@npm:^1.0.0": + version: 1.0.0 + resolution: "rehype-recma@npm:1.0.0" + dependencies: + "@types/estree": "npm:^1.0.0" + "@types/hast": "npm:^3.0.0" + hast-util-to-estree: "npm:^3.0.0" + checksum: 10/d3d544ad4a18485ec6b03a194b40473f96e2169c63d6a8ee3ce9af5e87b946c308fb9549b53e010c7dd39740337e387bb1a8856ce1b47f3e957b696f1d5b2d0c + languageName: node + linkType: hard + "rehype-stringify@npm:10.0.1": version: 10.0.1 resolution: "rehype-stringify@npm:10.0.1" @@ -34137,7 +36470,7 @@ __metadata: languageName: node linkType: hard -"remark-frontmatter@npm:5.0.0": +"remark-frontmatter@npm:5.0.0, remark-frontmatter@npm:^5.0.0": version: 5.0.0 resolution: "remark-frontmatter@npm:5.0.0" dependencies: @@ -34149,7 +36482,7 @@ __metadata: languageName: node linkType: hard -"remark-gfm@npm:4.0.1": +"remark-gfm@npm:4.0.1, remark-gfm@npm:^4.0.0": version: 4.0.1 resolution: "remark-gfm@npm:4.0.1" dependencies: @@ -34163,6 +36496,18 @@ __metadata: languageName: node linkType: hard +"remark-math@npm:^6.0.0": + version: 6.0.0 + resolution: "remark-math@npm:6.0.0" + dependencies: + "@types/mdast": "npm:^4.0.0" + mdast-util-math: "npm:^3.0.0" + micromark-extension-math: "npm:^3.0.0" + unified: "npm:^11.0.0" + checksum: 10/8cd262eadccba1a48bb2353e5b3d0ff18ae6aa2f00adec96458bfd4d414a0763463ff15d2c71d86330bbc355272d6ae7ae2efafba6cb4ae5ba7b7c642394c022 + languageName: node + linkType: hard + "remark-mdx-frontmatter@npm:5.2.0": version: 5.2.0 resolution: "remark-mdx-frontmatter@npm:5.2.0" @@ -34177,7 +36522,7 @@ __metadata: languageName: node linkType: hard -"remark-mdx@npm:3.1.1": +"remark-mdx@npm:3.1.1, remark-mdx@npm:^3.0.0": version: 3.1.1 resolution: "remark-mdx@npm:3.1.1" dependencies: @@ -34199,7 +36544,19 @@ __metadata: languageName: node linkType: hard -"remark-rehype@npm:11.1.2": +"remark-reading-time@npm:^2.0.2": + version: 2.1.0 + resolution: "remark-reading-time@npm:2.1.0" + dependencies: + estree-util-is-identifier-name: "npm:^3.0.0" + estree-util-value-to-estree: "npm:^3.3.3" + reading-time: "npm:^1.3.0" + unist-util-visit: "npm:^5.0.0" + checksum: 10/ba5ec8d7132bc07334a7fa1e00356f4ad63b722daa519d8ec84e87abcd0bbd1401843ebcb6c27befedd14bae7f7ac00a40d6f6d0034a47ae4afa2dd98324c216 + languageName: node + linkType: hard + +"remark-rehype@npm:11.1.2, remark-rehype@npm:^11.0.0": version: 11.1.2 resolution: "remark-rehype@npm:11.1.2" dependencies: @@ -34212,6 +36569,18 @@ __metadata: languageName: node linkType: hard +"remark-smartypants@npm:^3.0.0": + version: 3.0.2 + resolution: "remark-smartypants@npm:3.0.2" + dependencies: + retext: "npm:^9.0.0" + retext-smartypants: "npm:^6.0.0" + unified: "npm:^11.0.4" + unist-util-visit: "npm:^5.0.0" + checksum: 10/c2d16ad997f5ebbf1c13b13e56192c6d39d0f9dcff3a00f2015d27fe18efb38f5d1b5f48229c57b2656ae53cd1e6ec1c1f686216bae159cb04337cb4ce7da345 + languageName: node + linkType: hard + "remark-stringify@npm:11.0.0, remark-stringify@npm:^11.0.0": version: 11.0.0 resolution: "remark-stringify@npm:11.0.0" @@ -34449,6 +36818,51 @@ __metadata: languageName: node linkType: hard +"retext-latin@npm:^4.0.0": + version: 4.0.0 + resolution: "retext-latin@npm:4.0.0" + dependencies: + "@types/nlcst": "npm:^2.0.0" + parse-latin: "npm:^7.0.0" + unified: "npm:^11.0.0" + checksum: 10/9e339aa89d2f0e6629e10c17f7a2f060697f60ef07a0a54e285c5f1928aef37e8c241bb7526403b536c1e7f13c009f181be0a5f6c6ccd28191405a2fc81d7d42 + languageName: node + linkType: hard + +"retext-smartypants@npm:^6.0.0": + version: 6.2.0 + resolution: "retext-smartypants@npm:6.2.0" + dependencies: + "@types/nlcst": "npm:^2.0.0" + nlcst-to-string: "npm:^4.0.0" + unist-util-visit: "npm:^5.0.0" + checksum: 10/657c80390b9277cf4d7e3942145434432f78a40f2f8c82e2ae6b723520156799a72456c3fa0558710ae3bc4f97b398b77c3a672819e906877b13d7f21366c929 + languageName: node + linkType: hard + +"retext-stringify@npm:^4.0.0": + version: 4.0.0 + resolution: "retext-stringify@npm:4.0.0" + dependencies: + "@types/nlcst": "npm:^2.0.0" + nlcst-to-string: "npm:^4.0.0" + unified: "npm:^11.0.0" + checksum: 10/0dde44f42c6882f9fea2ebebc32f47962f0a25ac33d87d98e52301c30096636dcfc698a84273d804b6193da5225c74a64f33e628ca72bccd4cf1f8bcc5c2f62d + languageName: node + linkType: hard + +"retext@npm:^9.0.0": + version: 9.0.0 + resolution: "retext@npm:9.0.0" + dependencies: + "@types/nlcst": "npm:^2.0.0" + retext-latin: "npm:^4.0.0" + retext-stringify: "npm:^4.0.0" + unified: "npm:^11.0.0" + checksum: 10/4a6970205598742eae6026f6a23d809af50d3433b4eea070046b3cdcc6de5225c7b3e5de6512224e4b4f6c47db877e615dc4d94068297110ca67c9f7783373b0 + languageName: node + linkType: hard + "retry@npm:^0.12.0": version: 0.12.0 resolution: "retry@npm:0.12.0" @@ -34509,6 +36923,13 @@ __metadata: languageName: node linkType: hard +"robust-predicates@npm:^3.0.2": + version: 3.0.3 + resolution: "robust-predicates@npm:3.0.3" + checksum: 10/38464ec7a839b366e039410fa375ec9ea6d365f30eb38dab1c33c0269160ffa682c552a4c2f0098d89aff085fd51023db0cf039e7e6d24f87b4fc4b74ac5e89b + languageName: node + linkType: hard + "rollup@npm:4.22.4": version: 4.22.4 resolution: "rollup@npm:4.22.4" @@ -34579,6 +37000,18 @@ __metadata: languageName: node linkType: hard +"roughjs@npm:^4.6.6": + version: 4.6.6 + resolution: "roughjs@npm:4.6.6" + dependencies: + hachure-fill: "npm:^0.5.2" + path-data-parser: "npm:^0.1.0" + points-on-curve: "npm:^0.2.0" + points-on-path: "npm:^0.2.1" + checksum: 10/76bd1e892d79b002dbc0591a28442462e027a77edfcdcd3dbbd2e404fa6d248891ade84ca656b24b1d40a29e3a9df5831633b7a7bb5c8551adcdac480a3dce79 + languageName: node + linkType: hard + "router@npm:^2.2.0": version: 2.2.0 resolution: "router@npm:2.2.0" @@ -34683,6 +37116,13 @@ __metadata: languageName: node linkType: hard +"rw@npm:1": + version: 1.3.3 + resolution: "rw@npm:1.3.3" + checksum: 10/e90985d64777a00f4ab5f8c0bfea2fb5645c6bda5238840afa339c8a4f86f776e8ce83731155643a7425a0b27ce89077dab27b2f57519996ba4d2fe54cac1941 + languageName: node + linkType: hard + "rxjs@npm:*, rxjs@npm:7.8.2, rxjs@npm:^7.5.5, rxjs@npm:^7.8.1, rxjs@npm:^7.8.2": version: 7.8.2 resolution: "rxjs@npm:7.8.2" @@ -34830,6 +37270,13 @@ __metadata: languageName: node linkType: hard +"scheduler@npm:^0.27.0": + version: 0.27.0 + resolution: "scheduler@npm:0.27.0" + checksum: 10/eab3c3a8373195173e59c147224fc30dabe6dd453f248f5e610e8458512a5a2ee3a06465dc400ebfe6d35c9f5b7f3bb6b2e41c88c86fd177c25a73e7286a1e06 + languageName: node + linkType: hard + "schema-dts@npm:1.1.0": version: 1.1.0 resolution: "schema-dts@npm:1.1.0" @@ -34864,6 +37311,15 @@ __metadata: languageName: node linkType: hard +"scroll-into-view-if-needed@npm:^3.1.0": + version: 3.1.0 + resolution: "scroll-into-view-if-needed@npm:3.1.0" + dependencies: + compute-scroll-into-view: "npm:^3.0.2" + checksum: 10/1ea10d84b79db592493ed22563e307a4eaf858527b4c345e70cc26b9c51383636edda31a09d383541fafb5b50a94e59384d85351662cb7d6e5d70805c0d18798 + languageName: node + linkType: hard + "scuid@npm:^1.1.0": version: 1.1.0 resolution: "scuid@npm:1.1.0" @@ -35210,7 +37666,7 @@ __metadata: languageName: node linkType: hard -"sharp@npm:^0.34.4": +"sharp@npm:^0.34.3, sharp@npm:^0.34.4": version: 0.34.5 resolution: "sharp@npm:0.34.5" dependencies: @@ -35346,6 +37802,22 @@ __metadata: languageName: node linkType: hard +"shiki@npm:^3.2.1": + version: 3.23.0 + resolution: "shiki@npm:3.23.0" + dependencies: + "@shikijs/core": "npm:3.23.0" + "@shikijs/engine-javascript": "npm:3.23.0" + "@shikijs/engine-oniguruma": "npm:3.23.0" + "@shikijs/langs": "npm:3.23.0" + "@shikijs/themes": "npm:3.23.0" + "@shikijs/types": "npm:3.23.0" + "@shikijs/vscode-textmate": "npm:^10.0.2" + "@types/hast": "npm:^3.0.4" + checksum: 10/4c2751cac9dbcd61b6c80aed6c97ea4954b083c0cdf0d29fab71dbf90042c82b29f104c2843b24ea593e6d56608973b7c153dd3c05520ae001bc2f294651e398 + languageName: node + linkType: hard + "shimmer@npm:^1.2.1": version: 1.2.1 resolution: "shimmer@npm:1.2.1" @@ -35509,7 +37981,7 @@ __metadata: languageName: node linkType: hard -"slash@npm:^5.0.0": +"slash@npm:^5.0.0, slash@npm:^5.1.0": version: 5.1.0 resolution: "slash@npm:5.1.0" checksum: 10/2c41ec6fb1414cd9bba0fa6b1dd00e8be739e3fe85d079c69d4b09ca5f2f86eafd18d9ce611c0c0f686428638a36c272a6ac14799146a8295f259c10cc45cde4 @@ -35763,6 +38235,13 @@ __metadata: languageName: node linkType: hard +"source-map@npm:^0.7.0": + version: 0.7.6 + resolution: "source-map@npm:0.7.6" + checksum: 10/c8d2da7c57c14f3fd7568f764b39ad49bbf9dd7632b86df3542b31fed117d4af2fb74a4f886fc06baf7a510fee68e37998efc3080aacdac951c36211dc29a7a3 + languageName: node + linkType: hard + "space-separated-tokens@npm:^2.0.0": version: 2.0.2 resolution: "space-separated-tokens@npm:2.0.2" @@ -35830,6 +38309,19 @@ __metadata: languageName: node linkType: hard +"speech-rule-engine@npm:^4.0.6": + version: 4.1.3 + resolution: "speech-rule-engine@npm:4.1.3" + dependencies: + "@xmldom/xmldom": "npm:0.9.9" + commander: "npm:13.1.0" + wicked-good-xpath: "npm:1.3.0" + bin: + sre: bin/sre + checksum: 10/8d62c431c49b9234f9e3222ab0ce46602ec6275cdf7bd77ae4a4daabc6978306790f31375d4e9ea59062abacaed592eff057661d3cae43daddbecbfbe7f8083a + languageName: node + linkType: hard + "spel2js@npm:^0.2.8": version: 0.2.8 resolution: "spel2js@npm:0.2.8" @@ -36364,6 +38856,24 @@ __metadata: languageName: node linkType: hard +"style-to-js@npm:^1.0.0": + version: 1.1.21 + resolution: "style-to-js@npm:1.1.21" + dependencies: + style-to-object: "npm:1.0.14" + checksum: 10/5e30b4c52ed4e0294324adab2a43a0438b5495a77a72a6b1258637eebfc4dc8e0614f5ac7bf38a2f514879b3b448215d01fecf1f8d7468b8b95d90bed1d05d57 + languageName: node + linkType: hard + +"style-to-object@npm:1.0.14": + version: 1.0.14 + resolution: "style-to-object@npm:1.0.14" + dependencies: + inline-style-parser: "npm:0.2.7" + checksum: 10/06b86a5cf435dafac908d19082842983f9052d8cf3682915b1bd9251e3fe9b8065dbd2aef060dc5dfa0fa2ee24d717b587a5205f571513a10f30e3947f9d28ff + languageName: node + linkType: hard + "styled-jsx@npm:5.1.1": version: 5.1.1 resolution: "styled-jsx@npm:5.1.1" @@ -36422,6 +38932,13 @@ __metadata: languageName: node linkType: hard +"stylis@npm:^4.3.6": + version: 4.3.6 + resolution: "stylis@npm:4.3.6" + checksum: 10/6ebe8a37827124e0caf0704c13d39c121f6e6a8433eb8c67cfce508477b24a4434d1731198ba0b6e453655022bbf5beda93585f38ff420545e5356f925f83761 + languageName: node + linkType: hard + "sucrase@npm:^3.32.0": version: 3.34.0 resolution: "sucrase@npm:3.34.0" @@ -36704,6 +39221,20 @@ __metadata: languageName: node linkType: hard +"system-architecture@npm:^0.1.0": + version: 0.1.0 + resolution: "system-architecture@npm:0.1.0" + checksum: 10/ca0dd793c45c354ab57dd7fc8ce7dc9923a6e07382bd3b22eb5b08f55ddb0217c390d00767549c5155fd4ce7ef23ffdd8cfb33dd4344cbbd37837d085a50f6f0 + languageName: node + linkType: hard + +"tabbable@npm:^6.0.0": + version: 6.4.0 + resolution: "tabbable@npm:6.4.0" + checksum: 10/0fe8fada2d97bd02058af2e0176bddca26b1100c069e0a096ac19ad8ef61bd0b4f0cf05e1dd68229b8f1cb6fe6bf4c34d50a5f4a3e26b150a92f89b7dc0a4916 + languageName: node + linkType: hard + "tabbable@npm:^6.3.0": version: 6.3.0 resolution: "tabbable@npm:6.3.0" @@ -37093,6 +39624,16 @@ __metadata: languageName: node linkType: hard +"tinyglobby@npm:^0.2.14": + version: 0.2.16 + resolution: "tinyglobby@npm:0.2.16" + dependencies: + fdir: "npm:^6.5.0" + picomatch: "npm:^4.0.4" + checksum: 10/5c2c41b572ada38449e7c86a5fe034f204a1dbba577225a761a14f29f48dc3f2fc0d81a6c56fcc67c5a742cc3aa9fb5e2ca18dbf22b610b0bc0e549b34d5a0f8 + languageName: node + linkType: hard + "tinygradient@npm:^1.1.5": version: 1.1.5 resolution: "tinygradient@npm:1.1.5" @@ -37129,6 +39670,19 @@ __metadata: languageName: node linkType: hard +"title@npm:^4.0.1": + version: 4.0.1 + resolution: "title@npm:4.0.1" + dependencies: + arg: "npm:^5.0.0" + chalk: "npm:^5.0.0" + clipboardy: "npm:^4.0.0" + bin: + title: dist/esm/bin.js + checksum: 10/3972a85b715cc98b2e16e82f86e8e8d8697573ef1a814093ddedbcc2364bee55a6a9c541493d00bfb24d7b7df8e968b34baeb86fa4c02a00dc54169795b16924 + languageName: node + linkType: hard + "tldts-core@npm:^6.1.86": version: 6.1.86 resolution: "tldts-core@npm:6.1.86" @@ -37442,6 +39996,13 @@ __metadata: languageName: node linkType: hard +"ts-dedent@npm:^2.2.0": + version: 2.2.0 + resolution: "ts-dedent@npm:2.2.0" + checksum: 10/93ed8f7878b6d5ed3c08d99b740010eede6bccfe64bce61c5a4da06a2c17d6ddbb80a8c49c2d15251de7594a4f93ffa21dd10e7be75ef66a4dc9951b4a94e2af + languageName: node + linkType: hard + "ts-easing@npm:^0.2.0": version: 0.2.0 resolution: "ts-easing@npm:0.2.0" @@ -37536,6 +40097,16 @@ __metadata: languageName: node linkType: hard +"ts-morph@npm:^27.0.0": + version: 27.0.2 + resolution: "ts-morph@npm:27.0.2" + dependencies: + "@ts-morph/common": "npm:~0.28.1" + code-block-writer: "npm:^13.0.3" + checksum: 10/b9bd8ed86d4b76ca23446d3f808787cfe95a3bcb2316769a2f3fa262ea9ab4043bb76bf8aef677f9be0d758576f074df2926e701a535f84fd21946fdbf465148 + languageName: node + linkType: hard + "ts-node@npm:10.9.2, ts-node@npm:^10.9.1": version: 10.9.2 resolution: "ts-node@npm:10.9.2" @@ -37870,6 +40441,25 @@ __metadata: languageName: node linkType: hard +"twoslash-protocol@npm:0.3.7": + version: 0.3.7 + resolution: "twoslash-protocol@npm:0.3.7" + checksum: 10/a632dddcfba50d1df38603da349bce49e6909b5b51bd6c87b0bea5c2f682063e25972193abb1b2ba47addb2c31aa0de981f1299894839f850a4df64e225fa882 + languageName: node + linkType: hard + +"twoslash@npm:^0.3.6": + version: 0.3.7 + resolution: "twoslash@npm:0.3.7" + dependencies: + "@typescript/vfs": "npm:^1.6.4" + twoslash-protocol: "npm:0.3.7" + peerDependencies: + typescript: ^5.5.0 || ^6.0.0 + checksum: 10/1072bd9c26a008122d56fee2f7a8cbf20bf638097ba204f022e6fc0aff2978d8fe69820102816993521743350d0f538750d2c42f57115b8cab9d148373fdbcbe + languageName: node + linkType: hard + "type-detect@npm:4.0.8": version: 4.0.8 resolution: "type-detect@npm:4.0.8" @@ -38137,7 +40727,7 @@ __metadata: languageName: node linkType: hard -"typescript@npm:5.9.3": +"typescript@npm:5.9.3, typescript@npm:^5.0.0": version: 5.9.3 resolution: "typescript@npm:5.9.3" bin: @@ -38177,7 +40767,7 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@npm%3A5.9.3#optional!builtin": +"typescript@patch:typescript@npm%3A5.9.3#optional!builtin, typescript@patch:typescript@npm%3A^5.0.0#optional!builtin": version: 5.9.3 resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=5786d5" bin: @@ -38227,6 +40817,13 @@ __metadata: languageName: node linkType: hard +"ufo@npm:^1.6.3": + version: 1.6.3 + resolution: "ufo@npm:1.6.3" + checksum: 10/79803984f3e414567273a666183d6a50d1bec0d852100a98f55c1e393cb705e3b88033e04029dd651714e6eec99e1b00f54fdc13f32404968251a16f8898cfe5 + languageName: node + linkType: hard + "uglify-js@npm:^3.1.4": version: 3.17.4 resolution: "uglify-js@npm:3.17.4" @@ -38304,7 +40901,7 @@ __metadata: languageName: node linkType: hard -"unified@npm:11.0.5, unified@npm:^11.0.0": +"unified@npm:11.0.5, unified@npm:^11.0.0, unified@npm:^11.0.4, unified@npm:^11.0.5": version: 11.0.5 resolution: "unified@npm:11.0.5" dependencies: @@ -38373,6 +40970,16 @@ __metadata: languageName: node linkType: hard +"unist-util-find-after@npm:^5.0.0": + version: 5.0.0 + resolution: "unist-util-find-after@npm:5.0.0" + dependencies: + "@types/unist": "npm:^3.0.0" + unist-util-is: "npm:^6.0.0" + checksum: 10/7960f98f99ae3c2585a8e16b23f338e5851b7c0f40c3e82e2aef9ddb4887ae63d4cb3906e793dc8ff8242f252425ef846a4e59afa1d3d91ebf0ac84732df2509 + languageName: node + linkType: hard + "unist-util-is@npm:^6.0.0": version: 6.0.0 resolution: "unist-util-is@npm:6.0.0" @@ -38397,6 +41004,16 @@ __metadata: languageName: node linkType: hard +"unist-util-modify-children@npm:^4.0.0": + version: 4.0.0 + resolution: "unist-util-modify-children@npm:4.0.0" + dependencies: + "@types/unist": "npm:^3.0.0" + array-iterate: "npm:^2.0.0" + checksum: 10/a37bbf35362774c07ac2b07e84d4697209446a2982522d379d55296acc8b3748ca33b48e10557b1cba608db2388421d46ed7d5fe6da9f17d3dd579f0d1a8b247 + languageName: node + linkType: hard + "unist-util-position-from-estree@npm:^2.0.0": version: 2.0.0 resolution: "unist-util-position-from-estree@npm:2.0.0" @@ -38415,6 +41032,27 @@ __metadata: languageName: node linkType: hard +"unist-util-remove-position@npm:^5.0.0": + version: 5.0.0 + resolution: "unist-util-remove-position@npm:5.0.0" + dependencies: + "@types/unist": "npm:^3.0.0" + unist-util-visit: "npm:^5.0.0" + checksum: 10/4d89dc25e2091f9d47d92552145a26bf0e4a32d6b453e9cacac7742d730ada186ee1b820579fee3eeaa31e119850c2cb82f8b5898f977a636d7220e998626967 + languageName: node + linkType: hard + +"unist-util-remove@npm:^4.0.0": + version: 4.0.0 + resolution: "unist-util-remove@npm:4.0.0" + dependencies: + "@types/unist": "npm:^3.0.0" + unist-util-is: "npm:^6.0.0" + unist-util-visit-parents: "npm:^6.0.0" + checksum: 10/24a84224720f4c2d2ffce1d570c00b83ef545de80ec32a246698feff880446af6c410fc94deec4b4daafe09851d59f17cd1770e20f66d68092e3cd60c2147fb8 + languageName: node + linkType: hard + "unist-util-stringify-position@npm:^4.0.0": version: 4.0.0 resolution: "unist-util-stringify-position@npm:4.0.0" @@ -38424,6 +41062,15 @@ __metadata: languageName: node linkType: hard +"unist-util-visit-children@npm:^3.0.0": + version: 3.0.0 + resolution: "unist-util-visit-children@npm:3.0.0" + dependencies: + "@types/unist": "npm:^3.0.0" + checksum: 10/aa62b9f7cbf5725c1d21ff37cbdf5b297bf2a0c08ad6401044e5d8511164e0f9dacd0f1573c8105c92adcbc529fb74bf5a0cb49b842ceef424c8adfc257b06e1 + languageName: node + linkType: hard + "unist-util-visit-parents@npm:^6.0.0": version: 6.0.1 resolution: "unist-util-visit-parents@npm:6.0.1" @@ -38660,7 +41307,7 @@ __metadata: languageName: node linkType: hard -"use-sync-external-store@npm:^1.2.2, use-sync-external-store@npm:^1.4.0, use-sync-external-store@npm:^1.6.0": +"use-sync-external-store@npm:^1.2.2, use-sync-external-store@npm:^1.4.0, use-sync-external-store@npm:^1.5.0, use-sync-external-store@npm:^1.6.0": version: 1.6.0 resolution: "use-sync-external-store@npm:1.6.0" peerDependencies: @@ -38770,6 +41417,16 @@ __metadata: languageName: node linkType: hard +"vfile-location@npm:^5.0.0": + version: 5.0.3 + resolution: "vfile-location@npm:5.0.3" + dependencies: + "@types/unist": "npm:^3.0.0" + vfile: "npm:^6.0.0" + checksum: 10/f481d592fd507fe242da9a00d7400ded3c91587931f24e64c54f24752d7b30321721a1c99c0d949be1f6ed5fa7f8b169054fd07c744705b65dbdd10a9e4ebfe0 + languageName: node + linkType: hard + "vfile-message@npm:^4.0.0": version: 4.0.2 resolution: "vfile-message@npm:4.0.2" @@ -39063,7 +41720,49 @@ __metadata: languageName: node linkType: hard -"vscode-uri@npm:^3.0.8": +"vscode-jsonrpc@npm:8.2.0": + version: 8.2.0 + resolution: "vscode-jsonrpc@npm:8.2.0" + checksum: 10/6d57c3aed591d0bc89d1c226061d265b04de528582bef183f5998cac5de78a736887e5238fe48b9f6a14ec32f05d8fda71599f92862ac5dacc7f26bf7399b532 + languageName: node + linkType: hard + +"vscode-languageserver-protocol@npm:3.17.5": + version: 3.17.5 + resolution: "vscode-languageserver-protocol@npm:3.17.5" + dependencies: + vscode-jsonrpc: "npm:8.2.0" + vscode-languageserver-types: "npm:3.17.5" + checksum: 10/aeb9c190184c365fa6b835e5aa7574c86cb3ecb2789386bcff76a09b22bc8b8e0d5da47c28193a9c73cfb32c10a12a91191779280324a38efb401e3ef7bad294 + languageName: node + linkType: hard + +"vscode-languageserver-textdocument@npm:~1.0.11": + version: 1.0.12 + resolution: "vscode-languageserver-textdocument@npm:1.0.12" + checksum: 10/2bc0fde952d40f35a31179623d1491b0fafdee156aaf58557f40f5d394a25fc84826763cdde55fa6ce2ed9cd35a931355ad6dd7fe5db82e7f21e5d865f0af8c6 + languageName: node + linkType: hard + +"vscode-languageserver-types@npm:3.17.5": + version: 3.17.5 + resolution: "vscode-languageserver-types@npm:3.17.5" + checksum: 10/900d0b81df5bef8d90933e75be089142f6989cc70fdb2d5a3a5f11fa20feb396aaea23ccffc8fbcc83a2f0e1b13c6ee48ff8151f236cbd6e61a4f856efac1a58 + languageName: node + linkType: hard + +"vscode-languageserver@npm:~9.0.1": + version: 9.0.1 + resolution: "vscode-languageserver@npm:9.0.1" + dependencies: + vscode-languageserver-protocol: "npm:3.17.5" + bin: + installServerIntoExtension: bin/installServerIntoExtension + checksum: 10/1cb643b1b1f41a620aaf4a62e152acad694c22b4d98de73fa614a0bddf3b4b4832460465bdbc43f27ba23dad7e61aba533e77b8bfac74cc8de310c39623a7ba1 + languageName: node + linkType: hard + +"vscode-uri@npm:^3.0.8, vscode-uri@npm:~3.1.0": version: 3.1.0 resolution: "vscode-uri@npm:3.1.0" checksum: 10/80c2a2421f44b64008ef1f91dfa52a2d68105cbb4dcea197dbf5b00c65ccaccf218b615e93ec587f26fc3ba04796898f3631a9406e3b04cda970c3ca8eadf646 @@ -39123,6 +41822,13 @@ __metadata: languageName: node linkType: hard +"web-namespaces@npm:^2.0.0": + version: 2.0.1 + resolution: "web-namespaces@npm:2.0.1" + checksum: 10/b6d9f02f1a43d0ef0848a812d89c83801d5bbad57d8bb61f02eb6d7eb794c3736f6cc2e1191664bb26136594c8218ac609f4069722c6f56d9fc2d808fa9271c6 + languageName: node + linkType: hard + "web-push@npm:3.6.7": version: 3.6.7 resolution: "web-push@npm:3.6.7" @@ -39480,6 +42186,13 @@ __metadata: languageName: node linkType: hard +"wicked-good-xpath@npm:1.3.0": + version: 1.3.0 + resolution: "wicked-good-xpath@npm:1.3.0" + checksum: 10/e4d7d6c1b48ccb4f406d69217b2fe1073988bcb970645c64be359a1cc81e5aec49d348a7763ad54c7c4a05b6a92986dff7c23edcc5462b54bf1260d52217ace4 + languageName: node + linkType: hard + "wide-align@npm:^1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" @@ -39952,6 +42665,15 @@ __metadata: languageName: node linkType: hard +"yaml@npm:^2.3.2": + version: 2.8.3 + resolution: "yaml@npm:2.8.3" + bin: + yaml: bin.mjs + checksum: 10/ecad41d39d34fae5cc17ea2d4b7f7f55faacd45cbce8983ba22d48d1ed1a92ed242ea49ea813a79ac39a69f75f9c5a03e7b5395fd954d55476f25e21a47c141d + languageName: node + linkType: hard + "yargs-parser@npm:21.1.1, yargs-parser@npm:^21.0.1, yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" @@ -40185,6 +42907,13 @@ __metadata: languageName: node linkType: hard +"zod@npm:^4.1.12": + version: 4.3.6 + resolution: "zod@npm:4.3.6" + checksum: 10/25fc0f62e01b557b4644bf0b393bbaf47542ab30877c37837ea8caf314a8713d220c7d7fe51f68ffa72f0e1018ddfa34d96f1973d23033f5a2a5a9b6b9d9da01 + languageName: node + linkType: hard + "zod@npm:^4.1.5": version: 4.1.8 resolution: "zod@npm:4.1.8" @@ -40212,6 +42941,27 @@ __metadata: languageName: node linkType: hard +"zustand@npm:^5.0.1": + version: 5.0.12 + resolution: "zustand@npm:5.0.12" + peerDependencies: + "@types/react": ">=18.0.0" + immer: ">=9.0.6" + react: ">=18.0.0" + use-sync-external-store: ">=1.2.0" + peerDependenciesMeta: + "@types/react": + optional: true + immer: + optional: true + react: + optional: true + use-sync-external-store: + optional: true + checksum: 10/b84c85fc4133ec5ee05c11d0f2f3dff0f7537d9d0f1d3475a8e5a92f42ee1ba6d38039e09baf510075eb738e3d55018a635b3fa7db07c94e8d5717104abab9e5 + languageName: node + linkType: hard + "zwitch@npm:^2.0.0, zwitch@npm:^2.0.4": version: 2.0.4 resolution: "zwitch@npm:2.0.4" From 21eb77012d0770559127f0c9609f47e1f95fa527 Mon Sep 17 00:00:00 2001 From: Pedro Castro Date: Tue, 14 Apr 2026 14:05:00 -0300 Subject: [PATCH 2/3] fix: narrow AssignmentReasonTooltip prop to used fields (#28890) --- apps/web/components/booking/BookingListItem.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/web/components/booking/BookingListItem.tsx b/apps/web/components/booking/BookingListItem.tsx index 1c3ca971c79864..336738fa5cfb46 100644 --- a/apps/web/components/booking/BookingListItem.tsx +++ b/apps/web/components/booking/BookingListItem.tsx @@ -1151,7 +1151,7 @@ const AssignmentReasonTooltip = ({ assignmentReason, onClick, }: { - assignmentReason: AssignmentReason; + assignmentReason: Pick; onClick?: () => void; }) => { const { t } = useLocale(); From 7b6572b9655be659fc2e41be74fc03a139f614df Mon Sep 17 00:00:00 2001 From: Pedro Castro Date: Tue, 14 Apr 2026 15:12:40 -0300 Subject: [PATCH 3/3] fix: wait for team visibility before navigating in team-management e2e (#28891) --- apps/web/playwright/organization/team-management.e2e.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/web/playwright/organization/team-management.e2e.ts b/apps/web/playwright/organization/team-management.e2e.ts index 0ebca8d8f5f6bd..50055010fe5d98 100644 --- a/apps/web/playwright/organization/team-management.e2e.ts +++ b/apps/web/playwright/organization/team-management.e2e.ts @@ -53,8 +53,10 @@ test.describe("Teams", () => { }); await test.step("Can navigate to team settings", async () => { - // Click on the team to go to settings - await page.locator(`text=${user.username}'s Team`).click(); + // Wait for the team name to be visible before clicking + const teamLocator = page.locator(`text=${user.username}'s Team`); + await expect(teamLocator).toBeVisible({ timeout: 15000 }); + await teamLocator.click(); await page.waitForURL(/\/settings\/teams\/(\d+)\/profile$/i); });