diff --git a/god-mode/.eslintrc.js b/god-mode/.eslintrc.js
deleted file mode 100644
index 2278de30f1..0000000000
--- a/god-mode/.eslintrc.js
+++ /dev/null
@@ -1,14 +0,0 @@
-module.exports = {
- root: true,
- extends: ["custom"],
- parser: "@typescript-eslint/parser",
- settings: {
- "import/resolver": {
- typescript: {},
- node: {
- moduleDirectory: ["node_modules", "."],
- },
- },
- },
- rules: {}
-}
\ No newline at end of file
diff --git a/god-mode/.prettierignore b/god-mode/.prettierignore
deleted file mode 100644
index 43e8a7b8ff..0000000000
--- a/god-mode/.prettierignore
+++ /dev/null
@@ -1,6 +0,0 @@
-.next
-.vercel
-.tubro
-out/
-dis/
-build/
\ No newline at end of file
diff --git a/god-mode/.prettierrc b/god-mode/.prettierrc
deleted file mode 100644
index 87d988f1b2..0000000000
--- a/god-mode/.prettierrc
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "printWidth": 120,
- "tabWidth": 2,
- "trailingComma": "es5"
-}
diff --git a/god-mode/Dockerfile.dev b/god-mode/Dockerfile.dev
deleted file mode 100644
index 6ad715eb29..0000000000
--- a/god-mode/Dockerfile.dev
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM node:18-alpine
-RUN apk add --no-cache libc6-compat
-# Set working directory
-WORKDIR /app
-
-COPY . .
-RUN yarn global add turbo
-RUN yarn install
-EXPOSE 3333
-ENV NEXT_PUBLIC_DEPLOY_WITH_NGINX=1
-
-VOLUME [ "/app/node_modules", "/app/god-mode/node_modules"]
-CMD ["yarn","dev", "--filter=god-mode"]
diff --git a/god-mode/Dockerfile.godmode b/god-mode/Dockerfile.godmode
deleted file mode 100644
index 7faa347db1..0000000000
--- a/god-mode/Dockerfile.godmode
+++ /dev/null
@@ -1,41 +0,0 @@
-FROM node:18-alpine AS builder
-RUN apk add --no-cache libc6-compat
-WORKDIR /app
-
-RUN yarn global add turbo
-COPY . .
-
-RUN turbo prune --scope=god-mode --docker
-
-FROM node:18-alpine AS installer
-
-RUN apk add --no-cache libc6-compat
-WORKDIR /app
-
-COPY .gitignore .gitignore
-COPY --from=builder /app/out/json/ .
-COPY --from=builder /app/out/yarn.lock ./yarn.lock
-RUN yarn install --network-timeout 500000
-
-COPY --from=builder /app/out/full/ .
-COPY turbo.json turbo.json
-
-USER root
-
-ARG NEXT_PUBLIC_API_BASE_URL=""
-ARG NEXT_PUBLIC_DEPLOY_WITH_NGINX=1
-
-ENV NEXT_PUBLIC_API_BASE_URL=$NEXT_PUBLIC_API_BASE_URL
-
-RUN yarn turbo run build --filter=god-mode
-
-FROM nginx:1.25.0-alpine AS runner
-WORKDIR /app
-
-ARG NEXT_PUBLIC_API_BASE_URL=""
-ENV NEXT_PUBLIC_API_BASE_URL=$NEXT_PUBLIC_API_BASE_URL
-ENV NEXT_TELEMETRY_DISABLED 1
-ENV TURBO_TELEMETRY_DISABLED 1
-
-COPY --from=installer /app/god-mode/out /usr/share/nginx/html
-
diff --git a/god-mode/app/ai/page.tsx b/god-mode/app/ai/page.tsx
deleted file mode 100644
index a50225c99b..0000000000
--- a/god-mode/app/ai/page.tsx
+++ /dev/null
@@ -1,56 +0,0 @@
-"use client";
-
-import useSWR from "swr";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader } from "@plane/ui";
-// icons
-import { Lightbulb } from "lucide-react";
-// components
-import { InstanceAIForm } from "components/ai";
-
-const InstanceAIPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig } = useInstance();
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- return (
-
-
-
AI features for all your workspaces
-
- Configure your AI API credentials so Plane AI features are turned on for all your workspaces.
-
-
- {formattedConfig ? (
- <>
-
-
OpenAI
-
If you use ChatGPT, this is for you.
-
-
-
-
-
-
If you have a preferred AI models vendor, please get in touch with us.
-
-
- >
- ) : (
-
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceAIPage;
diff --git a/god-mode/app/authentication/github/page.tsx b/god-mode/app/authentication/github/page.tsx
deleted file mode 100644
index b9d298d2c6..0000000000
--- a/god-mode/app/authentication/github/page.tsx
+++ /dev/null
@@ -1,107 +0,0 @@
-"use client";
-
-import { useState } from "react";
-import Image from "next/image";
-import { useTheme } from "next-themes";
-import { observer } from "mobx-react-lite";
-import useSWR from "swr";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui";
-// components
-import { AuthenticationMethodCard, InstanceGithubConfigForm } from "components/authentication";
-// icons
-import githubLightModeImage from "/public/logos/github-black.png";
-import githubDarkModeImage from "/public/logos/github-white.png";
-// helpers
-import { resolveGeneralTheme } from "helpers/common.helper";
-
-const InstanceGithubAuthenticationPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig, updateInstanceConfigurations } = useInstance();
- // state
- const [isSubmitting, setIsSubmitting] = useState(false);
- // theme
- const { resolvedTheme } = useTheme();
- // config
- const enableGithubConfig = formattedConfig?.IS_GITHUB_ENABLED ?? "";
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- const updateConfig = async (key: "IS_GITHUB_ENABLED", value: string) => {
- setIsSubmitting(true);
-
- const payload = {
- [key]: value,
- };
-
- const updateConfigPromise = updateInstanceConfigurations(payload);
-
- setPromiseToast(updateConfigPromise, {
- loading: "Saving Configuration...",
- success: {
- title: "Configuration saved",
- message: () => `Github authentication is now ${value ? "active" : "disabled"}.`,
- },
- error: {
- title: "Error",
- message: () => "Failed to save configuration",
- },
- });
-
- await updateConfigPromise
- .then(() => {
- setIsSubmitting(false);
- })
- .catch((err) => {
- console.error(err);
- setIsSubmitting(false);
- });
- };
- return (
-
-
-
- }
- config={
-
{
- Boolean(parseInt(enableGithubConfig)) === true
- ? updateConfig("IS_GITHUB_ENABLED", "0")
- : updateConfig("IS_GITHUB_ENABLED", "1");
- }}
- size="sm"
- disabled={isSubmitting || !formattedConfig}
- />
- }
- disabled={isSubmitting || !formattedConfig}
- withBorder={false}
- />
-
- {formattedConfig ? (
-
- ) : (
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceGithubAuthenticationPage;
diff --git a/god-mode/app/authentication/google/page.tsx b/god-mode/app/authentication/google/page.tsx
deleted file mode 100644
index ad0d12afab..0000000000
--- a/god-mode/app/authentication/google/page.tsx
+++ /dev/null
@@ -1,95 +0,0 @@
-"use client";
-
-import { useState } from "react";
-import Image from "next/image";
-import { observer } from "mobx-react-lite";
-import useSWR from "swr";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui";
-// components
-import { AuthenticationMethodCard, InstanceGoogleConfigForm } from "components/authentication";
-// icons
-import GoogleLogo from "/public/logos/google-logo.svg";
-
-const InstanceGoogleAuthenticationPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig, updateInstanceConfigurations } = useInstance();
- // state
- const [isSubmitting, setIsSubmitting] = useState(false);
- // config
- const enableGoogleConfig = formattedConfig?.IS_GOOGLE_ENABLED ?? "";
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- const updateConfig = async (key: "IS_GOOGLE_ENABLED", value: string) => {
- setIsSubmitting(true);
-
- const payload = {
- [key]: value,
- };
-
- const updateConfigPromise = updateInstanceConfigurations(payload);
-
- setPromiseToast(updateConfigPromise, {
- loading: "Saving Configuration...",
- success: {
- title: "Configuration saved",
- message: () => `Google authentication is now ${value ? "active" : "disabled"}.`,
- },
- error: {
- title: "Error",
- message: () => "Failed to save configuration",
- },
- });
-
- await updateConfigPromise
- .then(() => {
- setIsSubmitting(false);
- })
- .catch((err) => {
- console.error(err);
- setIsSubmitting(false);
- });
- };
- return (
-
-
-
}
- config={
-
{
- Boolean(parseInt(enableGoogleConfig)) === true
- ? updateConfig("IS_GOOGLE_ENABLED", "0")
- : updateConfig("IS_GOOGLE_ENABLED", "1");
- }}
- size="sm"
- disabled={isSubmitting || !formattedConfig}
- />
- }
- disabled={isSubmitting || !formattedConfig}
- withBorder={false}
- />
-
- {formattedConfig ? (
-
- ) : (
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceGoogleAuthenticationPage;
diff --git a/god-mode/app/authentication/oidc/page.tsx b/god-mode/app/authentication/oidc/page.tsx
deleted file mode 100644
index 1d87558286..0000000000
--- a/god-mode/app/authentication/oidc/page.tsx
+++ /dev/null
@@ -1,95 +0,0 @@
-"use client";
-
-import { useState } from "react";
-import Image from "next/image";
-import { observer } from "mobx-react-lite";
-import useSWR from "swr";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui";
-// components
-import { AuthenticationMethodCard, InstanceOIDCConfigForm } from "components/authentication";
-// icons
-import OIDCLogo from "/public/logos/oidc-logo.png";
-
-const InstanceOIDCAuthenticationPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig, updateInstanceConfigurations } = useInstance();
- // state
- const [isSubmitting, setIsSubmitting] = useState(false);
- // config
- const enableOIDCConfig = formattedConfig?.IS_OIDC_ENABLED ?? "";
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- const updateConfig = async (key: "IS_OIDC_ENABLED", value: string) => {
- setIsSubmitting(true);
-
- const payload = {
- [key]: value,
- };
-
- const updateConfigPromise = updateInstanceConfigurations(payload);
-
- setPromiseToast(updateConfigPromise, {
- loading: "Saving Configuration...",
- success: {
- title: "Configuration saved",
- message: () => `OIDC authentication is now ${value ? "active" : "disabled"}.`,
- },
- error: {
- title: "Error",
- message: () => "Failed to save configuration",
- },
- });
-
- await updateConfigPromise
- .then(() => {
- setIsSubmitting(false);
- })
- .catch((err) => {
- console.error(err);
- setIsSubmitting(false);
- });
- };
- return (
-
-
-
}
- config={
-
{
- Boolean(parseInt(enableOIDCConfig)) === true
- ? updateConfig("IS_OIDC_ENABLED", "0")
- : updateConfig("IS_OIDC_ENABLED", "1");
- }}
- size="sm"
- disabled={isSubmitting || !formattedConfig}
- />
- }
- disabled={isSubmitting || !formattedConfig}
- withBorder={false}
- />
-
- {formattedConfig ? (
-
- ) : (
-
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceOIDCAuthenticationPage;
diff --git a/god-mode/app/authentication/page.tsx b/god-mode/app/authentication/page.tsx
deleted file mode 100644
index 115eee94da..0000000000
--- a/god-mode/app/authentication/page.tsx
+++ /dev/null
@@ -1,207 +0,0 @@
-"use client";
-
-import { useState } from "react";
-import Image from "next/image";
-import { useTheme } from "next-themes";
-import useSWR from "swr";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui";
-// types
-import { TInstanceConfigurationKeys } from "@plane/types";
-// icons
-import { Mails, KeyRound } from "lucide-react";
-import GoogleLogo from "/public/logos/google-logo.svg";
-import githubLightModeImage from "/public/logos/github-black.png";
-import githubDarkModeImage from "/public/logos/github-white.png";
-// icons - enterprise
-import OIDCLogo from "/public/logos/oidc-logo.png";
-import SAMLLogo from "/public/logos/saml-logo.svg";
-// helpers
-import { resolveGeneralTheme } from "helpers/common.helper";
-// components
-import {
- AuthenticationMethodCard,
- EmailCodesConfiguration,
- PasswordLoginConfiguration,
- GoogleConfiguration,
- GithubConfiguration,
- // enterprise
- OIDCConfiguration,
- SAMLConfiguration,
-} from "components/authentication";
-
-type TInstanceAuthenticationMethodCard = {
- key: string;
- name: string;
- description: string;
- icon: JSX.Element;
- config: JSX.Element;
-};
-
-const InstanceAuthenticationPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig, updateInstanceConfigurations } = useInstance();
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- // state
- const [isSubmitting, setIsSubmitting] = useState(false);
- // theme
- const { resolvedTheme } = useTheme();
-
- // Sign-up config
- const enableSignup = formattedConfig?.ENABLE_SIGNUP ?? "";
-
- const updateConfig = async (key: TInstanceConfigurationKeys, value: string) => {
- setIsSubmitting(true);
-
- const payload = {
- [key]: value,
- };
-
- const updateConfigPromise = updateInstanceConfigurations(payload);
-
- setPromiseToast(updateConfigPromise, {
- loading: "Saving Configuration...",
- success: {
- title: "Success",
- message: () => "Configuration saved successfully",
- },
- error: {
- title: "Error",
- message: () => "Failed to save configuration",
- },
- });
-
- await updateConfigPromise
- .then(() => {
- setIsSubmitting(false);
- })
- .catch((err) => {
- console.error(err);
- setIsSubmitting(false);
- });
- };
-
- // Authentication methods
- const authenticationMethodsCard: TInstanceAuthenticationMethodCard[] = [
- {
- key: "email-codes",
- name: "Email codes",
- description: "Login or sign up using codes sent via emails. You need to have email setup here and enabled.",
- icon: ,
- config: ,
- },
- {
- key: "password-login",
- name: "Password based login",
- description: "Allow members to create accounts with passwords for emails to sign in.",
- icon: ,
- config: ,
- },
- {
- key: "google",
- name: "Google",
- description: "Allow members to login or sign up to plane with their Google accounts.",
- icon: ,
- config: ,
- },
- {
- key: "github",
- name: "Github",
- description: "Allow members to login or sign up to plane with their Github accounts.",
- icon: (
-
- ),
- config: ,
- },
- ];
-
- // Enterprise authentication methods
- authenticationMethodsCard.push(
- {
- key: "oidc",
- name: "OIDC",
- description: "Authenticate your users via the OpenID connect protocol.",
- icon: ,
- config: ,
- },
- {
- key: "saml",
- name: "SAML",
- description: "Authenticate your users via Security Assertion Markup Language protocol.",
- icon: ,
- config: ,
- }
- );
-
- return (
-
-
-
Manage authentication for your instance
-
- Configure authentication modes for your team and restrict sign ups to be invite only.
-
-
- {formattedConfig ? (
- <>
-
Sign-up configuration
-
-
-
- Allow anyone to sign up without invite
-
-
- Toggling this off will disable self sign ups.
-
-
-
- {
- Boolean(parseInt(enableSignup)) === true
- ? updateConfig("ENABLE_SIGNUP", "0")
- : updateConfig("ENABLE_SIGNUP", "1");
- }}
- size="sm"
- disabled={isSubmitting}
- />
-
-
- {/* Authentication modes */}
-
Authentication modes
- {authenticationMethodsCard.map((method) => (
-
- ))}
- >
- ) : (
-
-
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceAuthenticationPage;
diff --git a/god-mode/app/authentication/saml/page.tsx b/god-mode/app/authentication/saml/page.tsx
deleted file mode 100644
index 8ce3fa3493..0000000000
--- a/god-mode/app/authentication/saml/page.tsx
+++ /dev/null
@@ -1,95 +0,0 @@
-"use client";
-
-import { useState } from "react";
-import Image from "next/image";
-import { observer } from "mobx-react-lite";
-import useSWR from "swr";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui";
-// components
-import { AuthenticationMethodCard, InstanceSAMLConfigForm } from "components/authentication";
-// icons
-import SAMLLogo from "/public/logos/saml-logo.svg";
-
-const InstanceSAMLAuthenticationPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig, updateInstanceConfigurations } = useInstance();
- // state
- const [isSubmitting, setIsSubmitting] = useState(false);
- // config
- const enableSAMLConfig = formattedConfig?.IS_SAML_ENABLED ?? "";
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- const updateConfig = async (key: "IS_SAML_ENABLED", value: string) => {
- setIsSubmitting(true);
-
- const payload = {
- [key]: value,
- };
-
- const updateConfigPromise = updateInstanceConfigurations(payload);
-
- setPromiseToast(updateConfigPromise, {
- loading: "Saving Configuration...",
- success: {
- title: "Configuration saved",
- message: () => `SAML authentication is now ${value ? "active" : "disabled"}.`,
- },
- error: {
- title: "Error",
- message: () => "Failed to save configuration",
- },
- });
-
- await updateConfigPromise
- .then(() => {
- setIsSubmitting(false);
- })
- .catch((err) => {
- console.error(err);
- setIsSubmitting(false);
- });
- };
- return (
-
-
-
}
- config={
-
{
- Boolean(parseInt(enableSAMLConfig)) === true
- ? updateConfig("IS_SAML_ENABLED", "0")
- : updateConfig("IS_SAML_ENABLED", "1");
- }}
- size="sm"
- disabled={isSubmitting || !formattedConfig}
- />
- }
- disabled={isSubmitting || !formattedConfig}
- withBorder={false}
- />
-
- {formattedConfig ? (
-
- ) : (
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceSAMLAuthenticationPage;
diff --git a/god-mode/app/create-workspace-popup.tsx b/god-mode/app/create-workspace-popup.tsx
deleted file mode 100644
index 1b73860c4e..0000000000
--- a/god-mode/app/create-workspace-popup.tsx
+++ /dev/null
@@ -1,61 +0,0 @@
-"use client";
-
-import React from "react";
-import { observer } from "mobx-react-lite";
-import Link from "next/link";
-import Image from "next/image";
-import { useTheme } from "next-themes";
-// ui
-import { Button, getButtonStyling } from "@plane/ui";
-// helpers
-import { resolveGeneralTheme } from "helpers/common.helper";
-// icons
-import TakeoffIconLight from "/public/logos/takeoff-icon-light.svg";
-import TakeoffIconDark from "/public/logos/takeoff-icon-dark.svg";
-
-type Props = {
- isOpen: boolean;
- onClose?: () => void;
-};
-
-export const CreateWorkspacePopup: React.FC = observer((props) => {
- const { isOpen, onClose } = props;
- // theme
- const { resolvedTheme } = useTheme();
-
- const handleClose = () => {
- onClose && onClose();
- };
-
- if (!isOpen) return null;
-
- return (
-
-
-
-
Create workspace
-
- Instance setup done! Welcome to Plane instance portal. Start your journey with by creating your first
- workspace, you will need to login again.
-
-
-
- Create workspace
-
-
-
-
-
-
-
-
-
- );
-});
diff --git a/god-mode/app/email/page.tsx b/god-mode/app/email/page.tsx
deleted file mode 100644
index a86063ed4d..0000000000
--- a/god-mode/app/email/page.tsx
+++ /dev/null
@@ -1,45 +0,0 @@
-"use client";
-
-import useSWR from "swr";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader } from "@plane/ui";
-// components
-import { InstanceEmailForm } from "components/email";
-
-const InstanceEmailPage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig } = useInstance();
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- return (
-
-
-
Secure emails from your own instance
-
- Plane can send useful emails to you and your users from your own instance without talking to the Internet.
-
-
- Set it up below and please test your settings before you save them.{" "}
- Misconfigs can lead to email bounces and errors.
-
-
- {formattedConfig ? (
-
- ) : (
-
-
-
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceEmailPage;
diff --git a/god-mode/app/globals.css b/god-mode/app/globals.css
deleted file mode 100644
index 4a7599d497..0000000000
--- a/god-mode/app/globals.css
+++ /dev/null
@@ -1,466 +0,0 @@
-@import url("https://fonts.googleapis.com/css2?family=Inter:wght@200;300;400;500;600;700;800&display=swap");
-@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@48,400,0,0&display=swap");
-
-@tailwind base;
-@tailwind components;
-@tailwind utilities;
-
-@layer components {
- .text-1\.5xl {
- font-size: 1.375rem;
- line-height: 1.875rem;
- }
-
- .text-2\.5xl {
- font-size: 1.75rem;
- line-height: 2.25rem;
- }
-}
-
-@layer base {
- html {
- font-family: "Inter", sans-serif;
- }
-
- :root {
- color-scheme: light !important;
-
- --color-primary-10: 236, 241, 255;
- --color-primary-20: 217, 228, 255;
- --color-primary-30: 197, 214, 255;
- --color-primary-40: 178, 200, 255;
- --color-primary-50: 159, 187, 255;
- --color-primary-60: 140, 173, 255;
- --color-primary-70: 121, 159, 255;
- --color-primary-80: 101, 145, 255;
- --color-primary-90: 82, 132, 255;
- --color-primary-100: 63, 118, 255;
- --color-primary-200: 57, 106, 230;
- --color-primary-300: 50, 94, 204;
- --color-primary-400: 44, 83, 179;
- --color-primary-500: 38, 71, 153;
- --color-primary-600: 32, 59, 128;
- --color-primary-700: 25, 47, 102;
- --color-primary-800: 19, 35, 76;
- --color-primary-900: 13, 24, 51;
-
- --color-background-100: 255, 255, 255; /* primary bg */
- --color-background-90: 250, 250, 250; /* secondary bg */
- --color-background-80: 245, 245, 245; /* tertiary bg */
-
- --color-text-100: 23, 23, 23; /* primary text */
- --color-text-200: 58, 58, 58; /* secondary text */
- --color-text-300: 82, 82, 82; /* tertiary text */
- --color-text-400: 163, 163, 163; /* placeholder text */
-
- --color-scrollbar: 163, 163, 163; /* scrollbar thumb */
-
- --color-border-100: 245, 245, 245; /* subtle border= 1 */
- --color-border-200: 229, 229, 229; /* subtle border- 2 */
- --color-border-300: 212, 212, 212; /* strong border- 1 */
- --color-border-400: 185, 185, 185; /* strong border- 2 */
-
- --color-shadow-2xs: 0px 0px 1px 0px rgba(23, 23, 23, 0.06),
- 0px 1px 2px 0px rgba(23, 23, 23, 0.06),
- 0px 1px 2px 0px rgba(23, 23, 23, 0.14);
- --color-shadow-xs: 0px 1px 2px 0px rgba(0, 0, 0, 0.16),
- 0px 2px 4px 0px rgba(16, 24, 40, 0.12),
- 0px 1px 8px -1px rgba(16, 24, 40, 0.1);
- --color-shadow-sm: 0px 1px 4px 0px rgba(0, 0, 0, 0.01),
- 0px 4px 8px 0px rgba(0, 0, 0, 0.02), 0px 1px 12px 0px rgba(0, 0, 0, 0.12);
- --color-shadow-rg: 0px 3px 6px 0px rgba(0, 0, 0, 0.1),
- 0px 4px 4px 0px rgba(16, 24, 40, 0.08),
- 0px 1px 12px 0px rgba(16, 24, 40, 0.04);
- --color-shadow-md: 0px 4px 8px 0px rgba(0, 0, 0, 0.12),
- 0px 6px 12px 0px rgba(16, 24, 40, 0.12),
- 0px 1px 16px 0px rgba(16, 24, 40, 0.12);
- --color-shadow-lg: 0px 6px 12px 0px rgba(0, 0, 0, 0.12),
- 0px 8px 16px 0px rgba(0, 0, 0, 0.12),
- 0px 1px 24px 0px rgba(16, 24, 40, 0.12);
- --color-shadow-xl: 0px 0px 18px 0px rgba(0, 0, 0, 0.16),
- 0px 0px 24px 0px rgba(16, 24, 40, 0.16),
- 0px 0px 52px 0px rgba(16, 24, 40, 0.16);
- --color-shadow-2xl: 0px 8px 16px 0px rgba(0, 0, 0, 0.12),
- 0px 12px 24px 0px rgba(16, 24, 40, 0.12),
- 0px 1px 32px 0px rgba(16, 24, 40, 0.12);
- --color-shadow-3xl: 0px 12px 24px 0px rgba(0, 0, 0, 0.12),
- 0px 16px 32px 0px rgba(0, 0, 0, 0.12),
- 0px 1px 48px 0px rgba(16, 24, 40, 0.12);
- --color-shadow-4xl: 0px 8px 40px 0px rgba(0, 0, 61, 0.05),
- 0px 12px 32px -16px rgba(0, 0, 0, 0.05);
-
- --color-sidebar-background-100: var(
- --color-background-100
- ); /* primary sidebar bg */
- --color-sidebar-background-90: var(
- --color-background-90
- ); /* secondary sidebar bg */
- --color-sidebar-background-80: var(
- --color-background-80
- ); /* tertiary sidebar bg */
-
- --color-sidebar-text-100: var(--color-text-100); /* primary sidebar text */
- --color-sidebar-text-200: var(
- --color-text-200
- ); /* secondary sidebar text */
- --color-sidebar-text-300: var(--color-text-300); /* tertiary sidebar text */
- --color-sidebar-text-400: var(
- --color-text-400
- ); /* sidebar placeholder text */
-
- --color-sidebar-border-100: var(
- --color-border-100
- ); /* subtle sidebar border= 1 */
- --color-sidebar-border-200: var(
- --color-border-100
- ); /* subtle sidebar border- 2 */
- --color-sidebar-border-300: var(
- --color-border-100
- ); /* strong sidebar border- 1 */
- --color-sidebar-border-400: var(
- --color-border-100
- ); /* strong sidebar border- 2 */
-
- --color-sidebar-shadow-2xs: var(--color-shadow-2xs);
- --color-sidebar-shadow-xs: var(--color-shadow-xs);
- --color-sidebar-shadow-sm: var(--color-shadow-sm);
- --color-sidebar-shadow-rg: var(--color-shadow-rg);
- --color-sidebar-shadow-md: var(--color-shadow-md);
- --color-sidebar-shadow-lg: var(--color-shadow-lg);
- --color-sidebar-shadow-xl: var(--color-shadow-xl);
- --color-sidebar-shadow-2xl: var(--color-shadow-2xl);
- --color-sidebar-shadow-3xl: var(--color-shadow-3xl);
- --color-sidebar-shadow-4xl: var(--color-shadow-4xl);
- }
-
- [data-theme="light"],
- [data-theme="light-contrast"] {
- color-scheme: light !important;
-
- --color-background-100: 255, 255, 255; /* primary bg */
- --color-background-90: 250, 250, 250; /* secondary bg */
- --color-background-80: 245, 245, 245; /* tertiary bg */
- }
-
- [data-theme="light"] {
- --color-text-100: 23, 23, 23; /* primary text */
- --color-text-200: 58, 58, 58; /* secondary text */
- --color-text-300: 82, 82, 82; /* tertiary text */
- --color-text-400: 163, 163, 163; /* placeholder text */
-
- --color-scrollbar: 163, 163, 163; /* scrollbar thumb */
-
- --color-border-100: 245, 245, 245; /* subtle border= 1 */
- --color-border-200: 229, 229, 229; /* subtle border- 2 */
- --color-border-300: 212, 212, 212; /* strong border- 1 */
- --color-border-400: 185, 185, 185; /* strong border- 2 */
-
- /* onboarding colors */
- --gradient-onboarding-100: linear-gradient(
- 106deg,
- #f2f6ff 29.8%,
- #e1eaff 99.34%
- );
- --gradient-onboarding-200: linear-gradient(
- 129deg,
- rgba(255, 255, 255, 0) -22.23%,
- rgba(255, 255, 255, 0.8) 62.98%
- );
- --gradient-onboarding-300: linear-gradient(
- 164deg,
- #fff 4.25%,
- rgba(255, 255, 255, 0.06) 93.5%
- );
- --gradient-onboarding-400: linear-gradient(
- 129deg,
- rgba(255, 255, 255, 0) -22.23%,
- rgba(255, 255, 255, 0.8) 62.98%
- );
-
- --color-onboarding-text-100: 23, 23, 23;
- --color-onboarding-text-200: 58, 58, 58;
- --color-onboarding-text-300: 82, 82, 82;
- --color-onboarding-text-400: 163, 163, 163;
-
- --color-onboarding-background-100: 236, 241, 255;
- --color-onboarding-background-200: 255, 255, 255;
- --color-onboarding-background-300: 236, 241, 255;
- --color-onboarding-background-400: 177, 206, 250;
-
- --color-onboarding-border-100: 229, 229, 229;
- --color-onboarding-border-200: 217, 228, 255;
- --color-onboarding-border-300: 229, 229, 229, 0.5;
-
- --color-onboarding-shadow-sm: 0px 4px 20px 0px rgba(126, 139, 171, 0.1);
-
- /* toast theme */
- --color-toast-success-text: 62, 155, 79;
- --color-toast-error-text: 220, 62, 66;
- --color-toast-warning-text: 255, 186, 24;
- --color-toast-info-text: 51, 88, 212;
- --color-toast-loading-text: 28, 32, 36;
- --color-toast-secondary-text: 128, 131, 141;
- --color-toast-tertiary-text: 96, 100, 108;
-
- --color-toast-success-background: 253, 253, 254;
- --color-toast-error-background: 255, 252, 252;
- --color-toast-warning-background: 254, 253, 251;
- --color-toast-info-background: 253, 253, 254;
- --color-toast-loading-background: 253, 253, 254;
-
- --color-toast-success-border: 218, 241, 219;
- --color-toast-error-border: 255, 219, 220;
- --color-toast-warning-border: 255, 247, 194;
- --color-toast-info-border: 210, 222, 255;
- --color-toast-loading-border: 224, 225, 230;
- }
-
- [data-theme="light-contrast"] {
- --color-text-100: 11, 11, 11; /* primary text */
- --color-text-200: 38, 38, 38; /* secondary text */
- --color-text-300: 58, 58, 58; /* tertiary text */
- --color-text-400: 115, 115, 115; /* placeholder text */
-
- --color-scrollbar: 115, 115, 115; /* scrollbar thumb */
-
- --color-border-100: 34, 34, 34; /* subtle border= 1 */
- --color-border-200: 38, 38, 38; /* subtle border- 2 */
- --color-border-300: 46, 46, 46; /* strong border- 1 */
- --color-border-400: 58, 58, 58; /* strong border- 2 */
- }
-
- [data-theme="dark"],
- [data-theme="dark-contrast"] {
- color-scheme: dark !important;
-
- --color-background-100: 7, 7, 7; /* primary bg */
- --color-background-90: 11, 11, 11; /* secondary bg */
- --color-background-80: 23, 23, 23; /* tertiary bg */
-
- --color-shadow-2xs: 0px 0px 1px 0px rgba(0, 0, 0, 0.15),
- 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
- --color-shadow-xs: 0px 0px 2px 0px rgba(0, 0, 0, 0.2),
- 0px 2px 4px 0px rgba(0, 0, 0, 0.5);
- --color-shadow-sm: 0px 0px 4px 0px rgba(0, 0, 0, 0.2),
- 0px 2px 6px 0px rgba(0, 0, 0, 0.5);
- --color-shadow-rg: 0px 0px 6px 0px rgba(0, 0, 0, 0.2),
- 0px 4px 6px 0px rgba(0, 0, 0, 0.5);
- --color-shadow-md: 0px 2px 8px 0px rgba(0, 0, 0, 0.2),
- 0px 4px 8px 0px rgba(0, 0, 0, 0.5);
- --color-shadow-lg: 0px 4px 12px 0px rgba(0, 0, 0, 0.25),
- 0px 4px 10px 0px rgba(0, 0, 0, 0.55);
- --color-shadow-xl: 0px 0px 14px 0px rgba(0, 0, 0, 0.25),
- 0px 6px 10px 0px rgba(0, 0, 0, 0.55);
- --color-shadow-2xl: 0px 0px 18px 0px rgba(0, 0, 0, 0.25),
- 0px 8px 12px 0px rgba(0, 0, 0, 0.6);
- --color-shadow-3xl: 0px 4px 24px 0px rgba(0, 0, 0, 0.3),
- 0px 12px 40px 0px rgba(0, 0, 0, 0.65);
- }
-
- [data-theme="dark"] {
- --color-text-100: 229, 229, 229; /* primary text */
- --color-text-200: 163, 163, 163; /* secondary text */
- --color-text-300: 115, 115, 115; /* tertiary text */
- --color-text-400: 82, 82, 82; /* placeholder text */
-
- --color-scrollbar: 82, 82, 82; /* scrollbar thumb */
-
- --color-border-100: 34, 34, 34; /* subtle border= 1 */
- --color-border-200: 38, 38, 38; /* subtle border- 2 */
- --color-border-300: 46, 46, 46; /* strong border- 1 */
- --color-border-400: 58, 58, 58; /* strong border- 2 */
-
- /* onboarding colors */
- --gradient-onboarding-100: linear-gradient(
- 106deg,
- #18191b 25.17%,
- #18191b 99.34%
- );
- --gradient-onboarding-200: linear-gradient(
- 129deg,
- rgba(47, 49, 53, 0.8) -22.23%,
- rgba(33, 34, 37, 0.8) 62.98%
- );
- --gradient-onboarding-300: linear-gradient(
- 167deg,
- rgba(47, 49, 53, 0.45) 19.22%,
- #212225 98.48%
- );
-
- --color-onboarding-text-100: 237, 238, 240;
- --color-onboarding-text-200: 176, 180, 187;
- --color-onboarding-text-300: 118, 123, 132;
- --color-onboarding-text-400: 105, 110, 119;
-
- --color-onboarding-background-100: 54, 58, 64;
- --color-onboarding-background-200: 40, 42, 45;
- --color-onboarding-background-300: 40, 42, 45;
- --color-onboarding-background-400: 67, 72, 79;
-
- --color-onboarding-border-100: 54, 58, 64;
- --color-onboarding-border-200: 54, 58, 64;
- --color-onboarding-border-300: 34, 35, 38, 0.5;
-
- --color-onboarding-shadow-sm: 0px 4px 20px 0px rgba(39, 44, 56, 0.1);
-
- /* toast theme */
- --color-toast-success-text: 178, 221, 181;
- --color-toast-error-text: 206, 44, 49;
- --color-toast-warning-text: 255, 186, 24;
- --color-toast-info-text: 141, 164, 239;
- --color-toast-loading-text: 255, 255, 255;
- --color-toast-secondary-text: 185, 187, 198;
- --color-toast-tertiary-text: 139, 141, 152;
-
- --color-toast-success-background: 46, 46, 46;
- --color-toast-error-background: 46, 46, 46;
- --color-toast-warning-background: 46, 46, 46;
- --color-toast-info-background: 46, 46, 46;
- --color-toast-loading-background: 46, 46, 46;
-
- --color-toast-success-border: 42, 126, 59;
- --color-toast-error-border: 100, 23, 35;
- --color-toast-warning-border: 79, 52, 34;
- --color-toast-info-border: 58, 91, 199;
- --color-toast-loading-border: 96, 100, 108;
- }
-
- [data-theme="dark-contrast"] {
- --color-text-100: 250, 250, 250; /* primary text */
- --color-text-200: 241, 241, 241; /* secondary text */
- --color-text-300: 212, 212, 212; /* tertiary text */
- --color-text-400: 115, 115, 115; /* placeholder text */
-
- --color-scrollbar: 115, 115, 115; /* scrollbar thumb */
-
- --color-border-100: 245, 245, 245; /* subtle border= 1 */
- --color-border-200: 229, 229, 229; /* subtle border- 2 */
- --color-border-300: 212, 212, 212; /* strong border- 1 */
- --color-border-400: 185, 185, 185; /* strong border- 2 */
- }
-
- [data-theme="light"],
- [data-theme="dark"],
- [data-theme="light-contrast"],
- [data-theme="dark-contrast"] {
- --color-primary-10: 236, 241, 255;
- --color-primary-20: 217, 228, 255;
- --color-primary-30: 197, 214, 255;
- --color-primary-40: 178, 200, 255;
- --color-primary-50: 159, 187, 255;
- --color-primary-60: 140, 173, 255;
- --color-primary-70: 121, 159, 255;
- --color-primary-80: 101, 145, 255;
- --color-primary-90: 82, 132, 255;
- --color-primary-100: 63, 118, 255;
- --color-primary-200: 57, 106, 230;
- --color-primary-300: 50, 94, 204;
- --color-primary-400: 44, 83, 179;
- --color-primary-500: 38, 71, 153;
- --color-primary-600: 32, 59, 128;
- --color-primary-700: 25, 47, 102;
- --color-primary-800: 19, 35, 76;
- --color-primary-900: 13, 24, 51;
-
- --color-sidebar-background-100: var(
- --color-background-100
- ); /* primary sidebar bg */
- --color-sidebar-background-90: var(
- --color-background-90
- ); /* secondary sidebar bg */
- --color-sidebar-background-80: var(
- --color-background-80
- ); /* tertiary sidebar bg */
-
- --color-sidebar-text-100: var(--color-text-100); /* primary sidebar text */
- --color-sidebar-text-200: var(
- --color-text-200
- ); /* secondary sidebar text */
- --color-sidebar-text-300: var(--color-text-300); /* tertiary sidebar text */
- --color-sidebar-text-400: var(
- --color-text-400
- ); /* sidebar placeholder text */
-
- --color-sidebar-border-100: var(
- --color-border-100
- ); /* subtle sidebar border= 1 */
- --color-sidebar-border-200: var(
- --color-border-200
- ); /* subtle sidebar border- 2 */
- --color-sidebar-border-300: var(
- --color-border-300
- ); /* strong sidebar border- 1 */
- --color-sidebar-border-400: var(
- --color-border-400
- ); /* strong sidebar border- 2 */
- }
-}
-
-* {
- margin: 0;
- padding: 0;
- box-sizing: border-box;
- -webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
- font-variant-ligatures: none;
- -webkit-font-variant-ligatures: none;
- text-rendering: optimizeLegibility;
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-smoothing: antialiased;
-}
-
-body {
- color: rgba(var(--color-text-100));
-}
-
-/* scrollbar style */
-::-webkit-scrollbar {
- display: none;
-}
-
-.horizontal-scroll-enable {
- overflow-x: scroll;
-}
-
-.horizontal-scroll-enable::-webkit-scrollbar {
- display: block;
- height: 7px;
- width: 0;
-}
-
-.horizontal-scroll-enable::-webkit-scrollbar-track {
- height: 7px;
- background-color: rgba(var(--color-background-100));
-}
-
-.horizontal-scroll-enable::-webkit-scrollbar-thumb {
- border-radius: 5px;
- background-color: rgba(var(--color-scrollbar));
-}
-
-.vertical-scroll-enable::-webkit-scrollbar {
- display: block;
- width: 5px;
-}
-
-.vertical-scroll-enable::-webkit-scrollbar-track {
- width: 5px;
-}
-
-.vertical-scroll-enable::-webkit-scrollbar-thumb {
- border-radius: 5px;
- background-color: rgba(var(--color-background-90));
-}
-/* end scrollbar style */
-
-/* progress bar */
-.progress-bar {
- fill: currentColor;
- color: rgba(var(--color-sidebar-background-100));
-}
-
-::-webkit-input-placeholder,
-::placeholder,
-:-ms-input-placeholder {
- color: rgb(var(--color-text-400));
-}
diff --git a/god-mode/app/header.tsx b/god-mode/app/header.tsx
deleted file mode 100644
index 160622fa41..0000000000
--- a/god-mode/app/header.tsx
+++ /dev/null
@@ -1,88 +0,0 @@
-"use client";
-
-import { FC } from "react";
-import { usePathname } from "next/navigation";
-// mobx
-import { observer } from "mobx-react-lite";
-// ui
-import { Settings } from "lucide-react";
-// icons
-import { Breadcrumbs } from "@plane/ui";
-// components
-import { BreadcrumbLink } from "components/common";
-import { SidebarHamburgerToggle } from "components/sidebar";
-
-export const InstanceHeader: FC = observer(() => {
- const pathName = usePathname();
-
- const getHeaderTitle = (pathName: string) => {
- switch (pathName) {
- case "":
- return "General";
- case "ai":
- return "Artificial Intelligence";
- case "email":
- return "Email";
- case "authentication":
- return "Authentication";
- case "image":
- return "Image";
- case "google":
- return "Google";
- case "github":
- return "Github";
- default:
- return pathName.toUpperCase();
- }
- };
-
- // Function to dynamically generate breadcrumb items based on pathname
- const generateBreadcrumbItems = (pathname: string) => {
- const pathSegments = pathname.split("/").slice(1); // removing the first empty string.
- let currentUrl = "";
- const breadcrumbItems = pathSegments.map((segment) => {
- currentUrl += "/" + segment;
- return {
- title: getHeaderTitle(segment),
- href: currentUrl,
- };
- });
- return breadcrumbItems;
- };
-
- const breadcrumbItems = generateBreadcrumbItems(pathName);
-
- return (
-
-
-
- {breadcrumbItems.length >= 0 && (
-
-
- }
- />
- }
- />
- {breadcrumbItems.map(
- (item) =>
- item.title && (
- }
- />
- )
- )}
-
-
- )}
-
-
- );
-});
diff --git a/god-mode/app/image/page.tsx b/god-mode/app/image/page.tsx
deleted file mode 100644
index e78d026799..0000000000
--- a/god-mode/app/image/page.tsx
+++ /dev/null
@@ -1,38 +0,0 @@
-"use client";
-
-import useSWR from "swr";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Loader } from "@plane/ui";
-// components
-import { InstanceImageConfigForm } from "components/image";
-
-const InstanceImagePage = observer(() => {
- // store
- const { fetchInstanceConfigurations, formattedConfig } = useInstance();
-
- useSWR("INSTANCE_CONFIGURATIONS", () => fetchInstanceConfigurations());
-
- return (
-
-
-
Third-party image libraries
-
- Let your users search and choose images from third-party libraries
-
-
- {formattedConfig ? (
-
- ) : (
-
-
-
-
- )}
-
- );
-});
-
-export default InstanceImagePage;
diff --git a/god-mode/app/layout.tsx b/god-mode/app/layout.tsx
deleted file mode 100644
index b64f70a865..0000000000
--- a/god-mode/app/layout.tsx
+++ /dev/null
@@ -1,44 +0,0 @@
-// lib
-// import { ThemeProvider } from "lib/theme-provider";
-// import AppWrapper from "lib/wrappers/app-wrapper";
-// import { UserAuthWrapper } from "lib/wrappers/user-auth-wrapper";
-// components
-// import { InstanceSidebar } from "./sidebar";
-// import { InstanceHeader } from "./header";
-import { DefaultLayout } from "@/layouts";
-// styles
-import "./globals.css";
-
-export const metadata = {
- title: "God Mode",
- description: "You are god now.",
-};
-
-interface RootLayoutProps {
- children: React.ReactNode;
-}
-
-export const RootLayout = async ({ children }: RootLayoutProps) => (
-
-
- {children}
- {/*
-
-
-
-
-
- */}
-
-
-);
-
-export default RootLayout;
diff --git a/god-mode/app/page.tsx b/god-mode/app/page.tsx
deleted file mode 100644
index dbd16979b8..0000000000
--- a/god-mode/app/page.tsx
+++ /dev/null
@@ -1,56 +0,0 @@
-"use client";
-
-import { observer } from "mobx-react-lite";
-// import useSWR from "swr";
-// hooks
-// import useInstance from "hooks/use-instance";
-// ui
-// import { Loader } from "@plane/ui";
-// components
-// import { InstanceGeneralForm } from "components/general";
-// import { PageHead } from "components/core";
-import { InstanceSignInForm, InstanceSignUpForm } from "@/components/user-authentication-forms";
-
-const GeneralSettingsPage = observer(() => {
- // store
- // const { instance, instanceAdmins, fetchInstanceInfo, fetchInstanceAdmins } = useInstance();
-
- // fetching instance information
- // useSWR("INSTANCE_INFO", () => fetchInstanceInfo());
- // fetching instance admins
- // useSWR("INSTANCE_ADMINS", () => fetchInstanceAdmins());
-
- console.log("init page");
-
- return (
- <>
- {/* */}
- {/*
-
-
General settings
-
- Change the name of your instance and instance admin e-mail addresses. Enable or disable telemetry in your
- instance.
-
-
- {instance && instanceAdmins ? (
- <>
-
Instance details
-
- >
- ) : (
-
-
-
-
-
-
- )}
-
*/}
-
- {/* */}
- >
- );
-});
-
-export default GeneralSettingsPage;
diff --git a/god-mode/app/sidebar.tsx b/god-mode/app/sidebar.tsx
deleted file mode 100644
index cb65fcf93b..0000000000
--- a/god-mode/app/sidebar.tsx
+++ /dev/null
@@ -1,57 +0,0 @@
-"use client";
-
-import { FC, useEffect, useRef } from "react";
-import { observer } from "mobx-react-lite";
-// hooks
-import useAppTheme from "hooks/use-theme";
-import useOutsideClickDetector from "hooks/use-outside-click-detector";
-// components
-import { HelpSection, SidebarMenu, SidebarDropdown } from "components/sidebar";
-
-export interface IInstanceSidebar {}
-
-export const InstanceSidebar: FC = observer(() => {
- // store
- const themeStore = useAppTheme();
-
- const ref = useRef(null);
-
- useOutsideClickDetector(ref, () => {
- if (themeStore.sidebarCollapsed === false) {
- if (window.innerWidth < 768) {
- themeStore.toggleSidebar();
- }
- }
- });
-
- useEffect(() => {
- const handleResize = () => {
- if (window.innerWidth <= 768) {
- themeStore.toggleSidebar(true);
- }
- };
- handleResize();
- window.addEventListener("resize", handleResize);
- return () => {
- window.removeEventListener("resize", handleResize);
- };
- }, [themeStore]);
-
- return (
-
- );
-});
diff --git a/god-mode/components/ai/ai-config-form.tsx b/god-mode/components/ai/ai-config-form.tsx
deleted file mode 100644
index fd5d98cc4b..0000000000
--- a/god-mode/components/ai/ai-config-form.tsx
+++ /dev/null
@@ -1,124 +0,0 @@
-import { FC } from "react";
-import { useForm } from "react-hook-form";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, setToast } from "@plane/ui";
-// components
-import { ControllerInput, TControllerInputFormField } from "components/common";
-// types
-import {
- IFormattedInstanceConfiguration,
- TInstanceAIConfigurationKeys,
-} from "@plane/types";
-
-type IInstanceAIForm = {
- config: IFormattedInstanceConfiguration;
-};
-
-type AIFormValues = Record;
-
-export const InstanceAIForm: FC = (props) => {
- const { config } = props;
- // store
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- formState: { errors, isSubmitting },
- } = useForm({
- defaultValues: {
- OPENAI_API_KEY: config["OPENAI_API_KEY"],
- GPT_ENGINE: config["GPT_ENGINE"],
- },
- });
-
- const aiFormFields: TControllerInputFormField[] = [
- {
- key: "GPT_ENGINE",
- type: "text",
- label: "GPT_ENGINE",
- description: (
- <>
- Choose an OpenAI engine.{" "}
-
- Learn more
-
- >
- ),
- placeholder: "gpt-3.5-turbo",
- error: Boolean(errors.GPT_ENGINE),
- required: false,
- },
- {
- key: "OPENAI_API_KEY",
- type: "password",
- label: "API key",
- description: (
- <>
- You will find your API key{" "}
-
- here.
-
- >
- ),
- placeholder: "sk-asddassdfasdefqsdfasd23das3dasdcasd",
- error: Boolean(errors.OPENAI_API_KEY),
- required: false,
- },
- ];
-
- const onSubmit = async (formData: AIFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() =>
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "AI Settings updated successfully",
- })
- )
- .catch((err) => console.error(err));
- };
-
- return (
- <>
-
- {aiFormFields.map((field) => (
-
- ))}
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/ai/index.ts b/god-mode/components/ai/index.ts
deleted file mode 100644
index 8c1763b760..0000000000
--- a/god-mode/components/ai/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./ai-config-form";
\ No newline at end of file
diff --git a/god-mode/components/authentication/authentication-method-card.tsx b/god-mode/components/authentication/authentication-method-card.tsx
deleted file mode 100644
index 1346a730ec..0000000000
--- a/god-mode/components/authentication/authentication-method-card.tsx
+++ /dev/null
@@ -1,51 +0,0 @@
-"use client";
-
-import { FC } from "react";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- name: string;
- description: string;
- icon: JSX.Element;
- config: JSX.Element;
- disabled?: boolean;
- withBorder?: boolean;
-};
-
-export const AuthenticationMethodCard: FC = (props) => {
- const { name, description, icon, config, disabled = false, withBorder = true } = props;
-
- return (
-
-
-
-
-
- {name}
-
-
- {description}
-
-
-
-
{config}
-
- );
-};
diff --git a/god-mode/components/authentication/email-codes/index.ts b/god-mode/components/authentication/email-codes/index.ts
deleted file mode 100644
index 50a9c47c01..0000000000
--- a/god-mode/components/authentication/email-codes/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./root";
\ No newline at end of file
diff --git a/god-mode/components/authentication/email-codes/root.tsx b/god-mode/components/authentication/email-codes/root.tsx
deleted file mode 100644
index c1328bc1e4..0000000000
--- a/god-mode/components/authentication/email-codes/root.tsx
+++ /dev/null
@@ -1,36 +0,0 @@
-"use client";
-
-import React from "react";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { ToggleSwitch } from "@plane/ui";
-// types
-import { TInstanceAuthenticationMethodKeys } from "@plane/types";
-
-type Props = {
- disabled: boolean;
- updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void;
-};
-
-export const EmailCodesConfiguration: React.FC = observer((props) => {
- const { disabled, updateConfig } = props;
- // store
- const { formattedConfig } = useInstance();
- // derived values
- const enableMagicLogin = formattedConfig?.ENABLE_MAGIC_LINK_LOGIN ?? "";
-
- return (
- {
- Boolean(parseInt(enableMagicLogin)) === true
- ? updateConfig("ENABLE_MAGIC_LINK_LOGIN", "0")
- : updateConfig("ENABLE_MAGIC_LINK_LOGIN", "1");
- }}
- size="sm"
- disabled={disabled}
- />
- );
-});
diff --git a/god-mode/components/authentication/github/github-config-form.tsx b/god-mode/components/authentication/github/github-config-form.tsx
deleted file mode 100644
index 2c307bb966..0000000000
--- a/god-mode/components/authentication/github/github-config-form.tsx
+++ /dev/null
@@ -1,205 +0,0 @@
-import { FC, useState } from "react";
-import { useForm } from "react-hook-form";
-import Link from "next/link";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, getButtonStyling, setToast } from "@plane/ui";
-// components
-import {
- ConfirmDiscardModal,
- ControllerInput,
- CopyField,
- TControllerInputFormField,
- TCopyField,
-} from "components/common";
-// types
-import { IFormattedInstanceConfiguration, TInstanceGithubAuthenticationConfigurationKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- config: IFormattedInstanceConfiguration;
-};
-
-type GithubConfigFormValues = Record;
-
-export const InstanceGithubConfigForm: FC = (props) => {
- const { config } = props;
- // states
- const [isDiscardChangesModalOpen, setIsDiscardChangesModalOpen] = useState(false);
- // store hooks
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- reset,
- formState: { errors, isDirty, isSubmitting },
- } = useForm({
- defaultValues: {
- GITHUB_CLIENT_ID: config["GITHUB_CLIENT_ID"],
- GITHUB_CLIENT_SECRET: config["GITHUB_CLIENT_SECRET"],
- },
- });
-
- const originURL = typeof window !== "undefined" ? window.location.origin : "";
-
- const githubFormFields: TControllerInputFormField[] = [
- {
- key: "GITHUB_CLIENT_ID",
- type: "text",
- label: "Client ID",
- description: (
- <>
- You will get this from your{" "}
-
- GitHub OAuth application settings.
-
- >
- ),
- placeholder: "70a44354520df8bd9bcd",
- error: Boolean(errors.GITHUB_CLIENT_ID),
- required: true,
- },
- {
- key: "GITHUB_CLIENT_SECRET",
- type: "password",
- label: "Client secret",
- description: (
- <>
- Your client secret is also found in your{" "}
-
- GitHub OAuth application settings.
-
- >
- ),
- placeholder: "9b0050f94ec1b744e32ce79ea4ffacd40d4119cb",
- error: Boolean(errors.GITHUB_CLIENT_SECRET),
- required: true,
- },
- ];
-
- const githubCopyFields: TCopyField[] = [
- {
- key: "Origin_URL",
- label: "Origin URL",
- url: originURL,
- description: (
- <>
- We will auto-generate this. Paste this into the Authorized origin URL field{" "}
-
- here.
-
- >
- ),
- },
- {
- key: "Callback_URI",
- label: "Callback URI",
- url: `${originURL}/auth/github/callback/`,
- description: (
- <>
- We will auto-generate this. Paste this into your Authorized Callback URI field{" "}
-
- here.
-
- >
- ),
- },
- ];
-
- const onSubmit = async (formData: GithubConfigFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() => {
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "Github Configuration Settings updated successfully",
- });
- reset();
- })
- .catch((err) => console.error(err));
- };
-
- const handleGoBack = (e: React.MouseEvent) => {
- if (isDirty) {
- e.preventDefault();
- setIsDiscardChangesModalOpen(true);
- }
- };
-
- return (
- <>
- setIsDiscardChangesModalOpen(false)}
- />
-
-
-
-
Configuration
- {githubFormFields.map((field) => (
-
- ))}
-
-
-
-
- Go back
-
-
-
-
-
-
-
Service provider details
- {githubCopyFields.map((field) => (
-
- ))}
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/authentication/github/index.ts b/god-mode/components/authentication/github/index.ts
deleted file mode 100644
index e9e36e988a..0000000000
--- a/god-mode/components/authentication/github/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./root";
-export * from "./github-config-form";
\ No newline at end of file
diff --git a/god-mode/components/authentication/github/root.tsx b/god-mode/components/authentication/github/root.tsx
deleted file mode 100644
index a690b54814..0000000000
--- a/god-mode/components/authentication/github/root.tsx
+++ /dev/null
@@ -1,70 +0,0 @@
-"use client";
-
-import React from "react";
-import Link from "next/link";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { ToggleSwitch, getButtonStyling } from "@plane/ui";
-// icons
-import { Settings2 } from "lucide-react";
-// types
-import { TInstanceAuthenticationMethodKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- disabled: boolean;
- updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void;
-};
-
-export const GithubConfiguration: React.FC = observer((props) => {
- const { disabled, updateConfig } = props;
- // store
- const { formattedConfig } = useInstance();
- // derived values
- const enableGithubConfig = formattedConfig?.IS_GITHUB_ENABLED ?? "";
- const isGithubConfigured =
- !!formattedConfig?.GITHUB_CLIENT_ID &&
- !!formattedConfig?.GITHUB_CLIENT_SECRET;
-
- return (
- <>
- {isGithubConfigured ? (
-
-
- Edit
-
- {
- Boolean(parseInt(enableGithubConfig)) === true
- ? updateConfig("IS_GITHUB_ENABLED", "0")
- : updateConfig("IS_GITHUB_ENABLED", "1");
- }}
- size="sm"
- disabled={disabled}
- />
-
- ) : (
-
-
- Configure
-
- )}
- >
- );
-});
diff --git a/god-mode/components/authentication/google/google-config-form.tsx b/god-mode/components/authentication/google/google-config-form.tsx
deleted file mode 100644
index 8c08b69f29..0000000000
--- a/god-mode/components/authentication/google/google-config-form.tsx
+++ /dev/null
@@ -1,205 +0,0 @@
-import { FC, useState } from "react";
-import { useForm } from "react-hook-form";
-import Link from "next/link";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, getButtonStyling, setToast } from "@plane/ui";
-// components
-import {
- ConfirmDiscardModal,
- ControllerInput,
- CopyField,
- TControllerInputFormField,
- TCopyField,
-} from "components/common";
-// types
-import { IFormattedInstanceConfiguration, TInstanceGoogleAuthenticationConfigurationKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- config: IFormattedInstanceConfiguration;
-};
-
-type GoogleConfigFormValues = Record;
-
-export const InstanceGoogleConfigForm: FC = (props) => {
- const { config } = props;
- // states
- const [isDiscardChangesModalOpen, setIsDiscardChangesModalOpen] = useState(false);
- // store hooks
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- reset,
- formState: { errors, isDirty, isSubmitting },
- } = useForm({
- defaultValues: {
- GOOGLE_CLIENT_ID: config["GOOGLE_CLIENT_ID"],
- GOOGLE_CLIENT_SECRET: config["GOOGLE_CLIENT_SECRET"],
- },
- });
-
- const originURL = typeof window !== "undefined" ? window.location.origin : "";
-
- const googleFormFields: TControllerInputFormField[] = [
- {
- key: "GOOGLE_CLIENT_ID",
- type: "text",
- label: "Client ID",
- description: (
- <>
- Your client ID lives in your Google API Console.{" "}
-
- Learn more
-
- >
- ),
- placeholder: "840195096245-0p2tstej9j5nc4l8o1ah2dqondscqc1g.apps.googleusercontent.com",
- error: Boolean(errors.GOOGLE_CLIENT_ID),
- required: true,
- },
- {
- key: "GOOGLE_CLIENT_SECRET",
- type: "password",
- label: "Client secret",
- description: (
- <>
- Your client secret should also be in your Google API Console.{" "}
-
- Learn more
-
- >
- ),
- placeholder: "GOCShX-ADp4cI0kPqav1gGCBg5bE02E",
- error: Boolean(errors.GOOGLE_CLIENT_SECRET),
- required: true,
- },
- ];
-
- const googleCopyFeilds: TCopyField[] = [
- {
- key: "Origin_URL",
- label: "Origin URL",
- url: originURL,
- description: (
-
- We will auto-generate this. Paste this into your Authorized JavaScript origins field. For this OAuth client{" "}
-
- here.
-
-
- ),
- },
- {
- key: "Callback_URI",
- label: "Callback URI",
- url: `${originURL}/auth/google/callback/`,
- description: (
-
- We will auto-generate this. Paste this into your Authorized Redirect URI field. For this OAuth client{" "}
-
- here.
-
-
- ),
- },
- ];
-
- const onSubmit = async (formData: GoogleConfigFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() => {
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "Google Configuration Settings updated successfully",
- });
- reset();
- })
- .catch((err) => console.error(err));
- };
-
- const handleGoBack = (e: React.MouseEvent) => {
- if (isDirty) {
- e.preventDefault();
- setIsDiscardChangesModalOpen(true);
- }
- };
-
- return (
- <>
- setIsDiscardChangesModalOpen(false)}
- />
-
-
-
-
Configuration
- {googleFormFields.map((field) => (
-
- ))}
-
-
-
-
- Go back
-
-
-
-
-
-
-
Service provider details
- {googleCopyFeilds.map((field) => (
-
- ))}
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/authentication/google/index.ts b/god-mode/components/authentication/google/index.ts
deleted file mode 100644
index d0d37f3057..0000000000
--- a/god-mode/components/authentication/google/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./root";
-export * from "./google-config-form";
\ No newline at end of file
diff --git a/god-mode/components/authentication/google/root.tsx b/god-mode/components/authentication/google/root.tsx
deleted file mode 100644
index e713f381c0..0000000000
--- a/god-mode/components/authentication/google/root.tsx
+++ /dev/null
@@ -1,70 +0,0 @@
-"use client";
-
-import React from "react";
-import Link from "next/link";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { ToggleSwitch, getButtonStyling } from "@plane/ui";
-// icons
-import { Settings2 } from "lucide-react";
-// types
-import { TInstanceAuthenticationMethodKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- disabled: boolean;
- updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void;
-};
-
-export const GoogleConfiguration: React.FC = observer((props) => {
- const { disabled, updateConfig } = props;
- // store
- const { formattedConfig } = useInstance();
- // derived values
- const enableGoogleConfig = formattedConfig?.IS_GOOGLE_ENABLED ?? "";
- const isGoogleConfigured =
- !!formattedConfig?.GOOGLE_CLIENT_ID &&
- !!formattedConfig?.GOOGLE_CLIENT_SECRET;
-
- return (
- <>
- {isGoogleConfigured ? (
-
-
- Edit
-
- {
- Boolean(parseInt(enableGoogleConfig)) === true
- ? updateConfig("IS_GOOGLE_ENABLED", "0")
- : updateConfig("IS_GOOGLE_ENABLED", "1");
- }}
- size="sm"
- disabled={disabled}
- />
-
- ) : (
-
-
- Configure
-
- )}
- >
- );
-});
diff --git a/god-mode/components/authentication/index.ts b/god-mode/components/authentication/index.ts
deleted file mode 100644
index 144a96fcfe..0000000000
--- a/god-mode/components/authentication/index.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-export * from "./authentication-method-card";
-export * from "./email-codes";
-export * from "./password";
-export * from "./google";
-export * from "./github";
-
-// enterprise
-export * from "./oidc";
-export * from "./saml";
diff --git a/god-mode/components/authentication/oidc/index.ts b/god-mode/components/authentication/oidc/index.ts
deleted file mode 100644
index e39a6b18ec..0000000000
--- a/god-mode/components/authentication/oidc/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./root";
-export * from "./oidc-config-form";
\ No newline at end of file
diff --git a/god-mode/components/authentication/oidc/oidc-config-form.tsx b/god-mode/components/authentication/oidc/oidc-config-form.tsx
deleted file mode 100644
index 4799d3442e..0000000000
--- a/god-mode/components/authentication/oidc/oidc-config-form.tsx
+++ /dev/null
@@ -1,204 +0,0 @@
-import { FC, useState } from "react";
-import { useForm } from "react-hook-form";
-import Link from "next/link";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, getButtonStyling, setToast } from "@plane/ui";
-// components
-import {
- ConfirmDiscardModal,
- ControllerInput,
- TControllerInputFormField,
- CopyField,
- TCopyField,
-} from "components/common";
-// types
-import { IFormattedInstanceConfiguration, TInstanceOIDCAuthenticationConfigurationKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- config: IFormattedInstanceConfiguration;
-};
-
-type OIDCConfigFormValues = Record;
-
-export const InstanceOIDCConfigForm: FC = (props) => {
- const { config } = props;
- // states
- const [isDiscardChangesModalOpen, setIsDiscardChangesModalOpen] = useState(false);
- // store hooks
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- reset,
- formState: { errors, isDirty, isSubmitting },
- } = useForm({
- defaultValues: {
- OIDC_CLIENT_ID: config["OIDC_CLIENT_ID"],
- OIDC_CLIENT_SECRET: config["OIDC_CLIENT_SECRET"],
- OIDC_TOKEN_URL: config["OIDC_TOKEN_URL"],
- OIDC_USERINFO_URL: config["OIDC_USERINFO_URL"],
- OIDC_AUTHORIZE_URL: config["OIDC_AUTHORIZE_URL"],
- OIDC_LOGOUT_URL: config["OIDC_LOGOUT_URL"],
- },
- });
-
- const originURL = typeof window !== "undefined" ? window.location.origin : "";
-
- const oidcFormFields: TControllerInputFormField[] = [
- {
- key: "OIDC_CLIENT_ID",
- type: "text",
- label: "Client ID",
- description: "Your authentication provider's public identifier for the client.",
- placeholder: "abc123xyz789",
- error: Boolean(errors.OIDC_CLIENT_ID),
- required: true,
- },
- {
- key: "OIDC_CLIENT_SECRET",
- type: "password",
- label: "Client secret",
- description: "Secret key provided by your authentication provider for the client.",
- placeholder: "s3cr3tK3y123!",
- error: Boolean(errors.OIDC_CLIENT_SECRET),
- required: true,
- },
- {
- key: "OIDC_AUTHORIZE_URL",
- type: "text",
- label: "Authorize URL",
- description: "The URL for interacting with the resource owner to obtain an authorization grant.",
- placeholder: "https://example.com/",
- error: Boolean(errors.OIDC_AUTHORIZE_URL),
- required: true,
- },
- {
- key: "OIDC_TOKEN_URL",
- type: "text",
- label: "Token URL",
- description: "URL to fetch the access token from a grant or refresh token.",
- placeholder: "https://example.com/oauth/token",
- error: Boolean(errors.OIDC_TOKEN_URL),
- required: true,
- },
- {
- key: "OIDC_USERINFO_URL",
- type: "text",
- label: "UserInfo URL",
- description: "The URL to fetch user claims and information.",
- placeholder: "https://example.com/userinfo",
- error: Boolean(errors.OIDC_USERINFO_URL),
- required: true,
- },
- {
- key: "OIDC_LOGOUT_URL",
- type: "text",
- label: "Logout URL",
- description: "Add your OIDC logout URL here for seamless session management.",
- placeholder: "https://example.com/logout",
- error: Boolean(errors.OIDC_LOGOUT_URL),
- required: false,
- },
- ];
-
- const oidcCopyFields: TCopyField[] = [
- {
- key: "Callback_URI",
- label: "Callback URI",
- url: `${originURL}/auth/oidc/callback/`,
- description:
- "We will auto generate this. Paste this in the sign-in redirect URI section in your identity provider.",
- },
- {
- key: "Logout_URI",
- label: "Logout URI",
- url: `${originURL}/auth/oidc/logout/`,
- description: "We will auto-generate this. Paste this in sign-out redirect URI in your identity provider",
- },
- {
- key: "Origin_URI",
- label: "Origin URI",
- url: `${originURL}/auth/oidc/`,
- description: "We will auto-generate this. Add this as a trusted origin in your identity provider.",
- },
- ];
-
- const onSubmit = async (formData: OIDCConfigFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() => {
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "OIDC Configuration Settings updated successfully",
- });
- reset();
- })
- .catch((err) => console.error(err));
- };
-
- const handleGoBack = (e: React.MouseEvent) => {
- if (isDirty) {
- e.preventDefault();
- setIsDiscardChangesModalOpen(true);
- }
- };
-
- return (
- <>
- setIsDiscardChangesModalOpen(false)}
- />
-
-
-
-
Configuration
- {oidcFormFields.map((field) => (
-
- ))}
-
-
-
-
- Go back
-
-
-
-
-
-
-
Service provider details
- {oidcCopyFields.map((field) => (
-
- ))}
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/authentication/oidc/root.tsx b/god-mode/components/authentication/oidc/root.tsx
deleted file mode 100644
index 6bedf12584..0000000000
--- a/god-mode/components/authentication/oidc/root.tsx
+++ /dev/null
@@ -1,72 +0,0 @@
-"use client";
-
-import React from "react";
-import Link from "next/link";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { ToggleSwitch, getButtonStyling } from "@plane/ui";
-// icons
-import { Settings2 } from "lucide-react";
-// types
-import { TInstanceEnterpriseAuthenticationMethodKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- disabled: boolean;
- updateConfig: (
- key: TInstanceEnterpriseAuthenticationMethodKeys,
- value: string
- ) => void;
-};
-
-export const OIDCConfiguration: React.FC = observer((props) => {
- const { disabled, updateConfig } = props;
- // store
- const { formattedConfig } = useInstance();
- // derived values
- const enableOIDCConfig = formattedConfig?.IS_OIDC_ENABLED ?? "";
- const isOIDCConfigured =
- !!formattedConfig?.OIDC_CLIENT_ID && !!formattedConfig?.OIDC_CLIENT_SECRET;
-
- return (
- <>
- {isOIDCConfigured ? (
-
-
- Edit
-
- {
- Boolean(parseInt(enableOIDCConfig)) === true
- ? updateConfig("IS_OIDC_ENABLED", "0")
- : updateConfig("IS_OIDC_ENABLED", "1");
- }}
- size="sm"
- disabled={disabled}
- />
-
- ) : (
-
-
- Configure
-
- )}
- >
- );
-});
diff --git a/god-mode/components/authentication/password/index.ts b/god-mode/components/authentication/password/index.ts
deleted file mode 100644
index 50a9c47c01..0000000000
--- a/god-mode/components/authentication/password/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./root";
\ No newline at end of file
diff --git a/god-mode/components/authentication/password/root.tsx b/god-mode/components/authentication/password/root.tsx
deleted file mode 100644
index 0f15a9eb9b..0000000000
--- a/god-mode/components/authentication/password/root.tsx
+++ /dev/null
@@ -1,36 +0,0 @@
-"use client";
-
-import React from "react";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { ToggleSwitch } from "@plane/ui";
-// types
-import { TInstanceAuthenticationMethodKeys } from "@plane/types";
-
-type Props = {
- disabled: boolean;
- updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void;
-};
-
-export const PasswordLoginConfiguration: React.FC = observer((props) => {
- const { disabled, updateConfig } = props;
- // store
- const { formattedConfig } = useInstance();
- // derived values
- const enableEmailPassword = formattedConfig?.ENABLE_EMAIL_PASSWORD ?? "";
-
- return (
- {
- Boolean(parseInt(enableEmailPassword)) === true
- ? updateConfig("ENABLE_EMAIL_PASSWORD", "0")
- : updateConfig("ENABLE_EMAIL_PASSWORD", "1");
- }}
- size="sm"
- disabled={disabled}
- />
- );
-});
diff --git a/god-mode/components/authentication/saml/index.ts b/god-mode/components/authentication/saml/index.ts
deleted file mode 100644
index b46c0ff1a4..0000000000
--- a/god-mode/components/authentication/saml/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./root";
-export * from "./saml-config-form";
\ No newline at end of file
diff --git a/god-mode/components/authentication/saml/root.tsx b/god-mode/components/authentication/saml/root.tsx
deleted file mode 100644
index f5a02fcfa9..0000000000
--- a/god-mode/components/authentication/saml/root.tsx
+++ /dev/null
@@ -1,72 +0,0 @@
-"use client";
-
-import React from "react";
-import Link from "next/link";
-import { observer } from "mobx-react-lite";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { ToggleSwitch, getButtonStyling } from "@plane/ui";
-// icons
-import { Settings2 } from "lucide-react";
-// types
-import { TInstanceEnterpriseAuthenticationMethodKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- disabled: boolean;
- updateConfig: (
- key: TInstanceEnterpriseAuthenticationMethodKeys,
- value: string
- ) => void;
-};
-
-export const SAMLConfiguration: React.FC = observer((props) => {
- const { disabled, updateConfig } = props;
- // store
- const { formattedConfig } = useInstance();
- // derived values
- const enableSAMLConfig = formattedConfig?.IS_SAML_ENABLED ?? "";
- const isSAMLConfigured =
- !!formattedConfig?.SAML_ENTITY_ID && !!formattedConfig?.SAML_CERTIFICATE;
-
- return (
- <>
- {isSAMLConfigured ? (
-
-
- Edit
-
- {
- Boolean(parseInt(enableSAMLConfig)) === true
- ? updateConfig("IS_SAML_ENABLED", "0")
- : updateConfig("IS_SAML_ENABLED", "1");
- }}
- size="sm"
- disabled={disabled}
- />
-
- ) : (
-
-
- Configure
-
- )}
- >
- );
-});
diff --git a/god-mode/components/authentication/saml/saml-config-form.tsx b/god-mode/components/authentication/saml/saml-config-form.tsx
deleted file mode 100644
index 15ba4d6e93..0000000000
--- a/god-mode/components/authentication/saml/saml-config-form.tsx
+++ /dev/null
@@ -1,210 +0,0 @@
-import { FC, useState } from "react";
-import { Controller, useForm } from "react-hook-form";
-import Link from "next/link";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, TextArea, getButtonStyling, setToast } from "@plane/ui";
-// components
-import {
- ConfirmDiscardModal,
- ControllerInput,
- TControllerInputFormField,
- CopyField,
- TCopyField,
-} from "components/common";
-// types
-import { IFormattedInstanceConfiguration, TInstanceSAMLAuthenticationConfigurationKeys } from "@plane/types";
-// helpers
-import { cn } from "helpers/common.helper";
-
-type Props = {
- config: IFormattedInstanceConfiguration;
-};
-
-type SAMLConfigFormValues = Record;
-
-export const InstanceSAMLConfigForm: FC = (props) => {
- const { config } = props;
- // states
- const [isDiscardChangesModalOpen, setIsDiscardChangesModalOpen] = useState(false);
- // store hooks
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- reset,
- formState: { errors, isDirty, isSubmitting },
- } = useForm({
- defaultValues: {
- SAML_ENTITY_ID: config["SAML_ENTITY_ID"],
- SAML_SSO_URL: config["SAML_SSO_URL"],
- SAML_LOGOUT_URL: config["SAML_LOGOUT_URL"],
- SAML_CERTIFICATE: config["SAML_CERTIFICATE"],
- },
- });
-
- const originURL = typeof window !== "undefined" ? window.location.origin : "";
-
- const samlFormFields: TControllerInputFormField[] = [
- {
- key: "SAML_ENTITY_ID",
- type: "text",
- label: "Entity ID",
- description: "Unique identifier for your Identity Provider (IdP) entity.",
- placeholder: "70a44354520df8bd9bcd",
- error: Boolean(errors.SAML_ENTITY_ID),
- required: true,
- },
- {
- key: "SAML_SSO_URL",
- type: "text",
- label: "SSO URLs",
- description: "URL used for Single Sign-On (SSO) with your Identity Provider (IdP).",
- placeholder: "https://example.com/sso",
- error: Boolean(errors.SAML_SSO_URL),
- required: true,
- },
- {
- key: "SAML_LOGOUT_URL",
- type: "text",
- label: "Logout URL",
- description: "Add your SAML logout URL here for seamless session management.",
- placeholder: "https://example.com/logout",
- error: Boolean(errors.SAML_LOGOUT_URL),
- required: false,
- },
- ];
-
- const samlCopyFields: TCopyField[] = [
- {
- key: "Callback_URI",
- label: "Callback URI",
- url: `${originURL}/auth/saml/callback/`,
- description:
- "We will auto-generate this. Paste this in the single sign on callback url section of your identity provider.",
- },
- {
- key: "Metadata_Information",
- label: "Metadata Information",
- url: `${originURL}/auth/saml/metadata/`,
- description:
- "We will auto-generate this. Paste this into your audience URI or SP entity ID section of your identity provider.",
- },
- {
- key: "Logout_URI",
- label: "Logout URI",
- url: `${originURL}/auth/saml/logout/`,
- description: "We will auto-generate this. Add this as a trusted origin in your identity provider.",
- },
- ];
-
- const onSubmit = async (formData: SAMLConfigFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() => {
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "SAML Configuration Settings updated successfully",
- });
- reset();
- })
- .catch((err) => console.error(err));
- };
-
- const handleGoBack = (e: React.MouseEvent) => {
- if (isDirty) {
- e.preventDefault();
- setIsDiscardChangesModalOpen(true);
- }
- };
-
- return (
- <>
- setIsDiscardChangesModalOpen(false)}
- />
-
-
-
-
Configuration
- {samlFormFields.map((field) => (
-
- ))}
-
-
Certificate
-
(
-
- )}
- />
-
- Certificate used by your IdP for digital signature verification in SAML transactions.
-
-
-
-
-
-
- Go back
-
-
-
-
-
-
-
Service provider details
- {samlCopyFields.map((field) => (
-
- ))}
-
-
Name ID format
-
emailAddress
-
-
-
Attribute mapping
-
- - first_name to user.firstName
- - last_name to user.lastName
- - email to user.email
-
-
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/common/breadcrumb-link.tsx b/god-mode/components/common/breadcrumb-link.tsx
deleted file mode 100644
index dfa437231d..0000000000
--- a/god-mode/components/common/breadcrumb-link.tsx
+++ /dev/null
@@ -1,36 +0,0 @@
-import Link from "next/link";
-import { Tooltip } from "@plane/ui";
-
-type Props = {
- label?: string;
- href?: string;
- icon?: React.ReactNode | undefined;
-};
-
-export const BreadcrumbLink: React.FC = (props) => {
- const { href, label, icon } = props;
- return (
-
-
-
- {href ? (
-
- {icon && (
-
{icon}
- )}
-
{label}
-
- ) : (
-
- {icon &&
{icon}
}
-
{label}
-
- )}
-
-
-
- );
-};
diff --git a/god-mode/components/common/confirm-discard-modal.tsx b/god-mode/components/common/confirm-discard-modal.tsx
deleted file mode 100644
index 64e4d7a08b..0000000000
--- a/god-mode/components/common/confirm-discard-modal.tsx
+++ /dev/null
@@ -1,83 +0,0 @@
-import React from "react";
-import Link from "next/link";
-// headless ui
-import { Dialog, Transition } from "@headlessui/react";
-// ui
-import { Button, getButtonStyling } from "@plane/ui";
-
-type Props = {
- isOpen: boolean;
- handleClose: () => void;
- onDiscardHref: string;
-};
-
-export const ConfirmDiscardModal: React.FC = (props) => {
- const { isOpen, handleClose, onDiscardHref } = props;
-
- return (
-
-
-
- );
-};
diff --git a/god-mode/components/common/controller-input.tsx b/god-mode/components/common/controller-input.tsx
deleted file mode 100644
index a0990a0572..0000000000
--- a/god-mode/components/common/controller-input.tsx
+++ /dev/null
@@ -1,89 +0,0 @@
-"use client";
-
-import React, { useState } from "react";
-import { Controller, Control } from "react-hook-form";
-// ui
-import { Input } from "@plane/ui";
-// icons
-import { Eye, EyeOff } from "lucide-react";
-
-type Props = {
- control: Control;
- type: "text" | "password";
- name: string;
- label: string;
- description?: string | JSX.Element;
- placeholder: string;
- error: boolean;
- required: boolean;
-};
-
-export type TControllerInputFormField = {
- key: string;
- type: "text" | "password";
- label: string;
- description?: string | JSX.Element;
- placeholder: string;
- error: boolean;
- required: boolean;
-};
-
-export const ControllerInput: React.FC = (props) => {
- const {
- name,
- control,
- type,
- label,
- description,
- placeholder,
- error,
- required,
- } = props;
- // states
- const [showPassword, setShowPassword] = useState(false);
-
- return (
-
-
{label}
-
- (
-
- )}
- />
- {type === "password" &&
- (showPassword ? (
-
- ) : (
-
- ))}
-
- {description && (
-
{description}
- )}
-
- );
-};
diff --git a/god-mode/components/common/copy-field.tsx b/god-mode/components/common/copy-field.tsx
deleted file mode 100644
index d6368b6e9e..0000000000
--- a/god-mode/components/common/copy-field.tsx
+++ /dev/null
@@ -1,46 +0,0 @@
-"use client";
-
-import React from "react";
-// ui
-import { Button, TOAST_TYPE, setToast } from "@plane/ui";
-// icons
-import { Copy } from "lucide-react";
-
-type Props = {
- label: string;
- url: string;
- description: string | JSX.Element;
-};
-
-export type TCopyField = {
- key: string;
- label: string;
- url: string;
- description: string | JSX.Element;
-};
-
-export const CopyField: React.FC = (props) => {
- const { label, url, description } = props;
-
- return (
-
-
{label}
-
-
{description}
-
- );
-};
diff --git a/god-mode/components/common/index.ts b/god-mode/components/common/index.ts
deleted file mode 100644
index 22539e394f..0000000000
--- a/god-mode/components/common/index.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export * from "./breadcrumb-link";
-export * from "./confirm-discard-modal";
-export * from "./controller-input";
-export * from "./copy-field";
-export * from "./password-strength-meter";
diff --git a/god-mode/components/common/password-strength-meter.tsx b/god-mode/components/common/password-strength-meter.tsx
deleted file mode 100644
index 3c6699e06d..0000000000
--- a/god-mode/components/common/password-strength-meter.tsx
+++ /dev/null
@@ -1,97 +0,0 @@
-"use client";
-
-import zxcvbn from "zxcvbn";
-// helpers
-import { cn } from "@/helpers/common.helper";
-// icons
-import { CircleCheck } from "lucide-react";
-
-type Props = {
- password: string;
-};
-
-export const PasswordStrengthMeter: React.FC = (props: Props) => {
- const { password } = props;
-
- // bar colors
- const greyColor = "#F0F0F3";
- const redColor = "#DC3E42";
- const yellowColor = "#FFBA18";
- const greenColor = "#3E9B4F";
-
- const getPasswordStrength = () => {
- if (password.length === 0) return 0;
- if (password.length < 8) return 1;
-
- const result = zxcvbn(password);
- return result.score;
- };
-
- const renderStrengthBar = () => {
- const strength = getPasswordStrength();
- let bars = [];
- let text = "";
- let textColor = "";
-
- if (password.length === 0) {
- bars = [`bg-[${greyColor}]`, `bg-[${greyColor}]`, `bg-[${greyColor}]`];
- text = "Password requirements";
- } else if (password.length < 8) {
- bars = [`bg-[${redColor}]`, `bg-[${greyColor}]`, `bg-[${greyColor}]`];
- text = "Password is too short";
- textColor = `text-[${redColor}]`;
- } else if (strength < 3) {
- bars = [`bg-[${yellowColor}]`, `bg-[${yellowColor}]`, `bg-[${greyColor}]`];
- text = "Password is weak";
- textColor = `text-[${yellowColor}]`;
- } else {
- bars = [`bg-[${greenColor}]`, `bg-[${greenColor}]`, `bg-[${greenColor}]`];
- text = "Password is strong";
- textColor = `text-[${greenColor}]`;
- }
-
- return (
- <>
-
- {bars.map((color, index) => (
-
- ))}
-
- {text}
- >
- );
- };
-
- const renderPasswordCriteria = () => {
- const criteria = [
- { label: "Min 8 characters", isValid: password.length >= 8 },
- { label: "Min 1 upper-case letter", isValid: /[A-Z]/.test(password) },
- { label: "Min 1 number", isValid: /\d/.test(password) },
- { label: "Min 1 special character", isValid: /[!@#$%^&*]/.test(password) },
- ];
-
- return (
-
- {criteria.map((criterion, index) => (
-
-
- {criterion.label}
-
- ))}
-
- );
- };
-
- return (
-
- {renderStrengthBar()}
- {renderPasswordCriteria()}
-
- );
-};
diff --git a/god-mode/components/email/email-config-form.tsx b/god-mode/components/email/email-config-form.tsx
deleted file mode 100644
index a10d3bbad7..0000000000
--- a/god-mode/components/email/email-config-form.tsx
+++ /dev/null
@@ -1,182 +0,0 @@
-import { FC, useState } from "react";
-import { Controller, useForm } from "react-hook-form";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, ToggleSwitch, setToast } from "@plane/ui";
-// components
-import { ControllerInput, TControllerInputFormField } from "components/common";
-import { SendTestEmailModal } from "./send-test-email-modal";
-// types
-import { IFormattedInstanceConfiguration, TInstanceEmailConfigurationKeys } from "@plane/types";
-
-type IInstanceEmailForm = {
- config: IFormattedInstanceConfiguration;
-};
-
-type EmailFormValues = Record;
-
-export const InstanceEmailForm: FC = (props) => {
- const { config } = props;
- // states
- const [isSendTestEmailModalOpen, setIsSendTestEmailModalOpen] = useState(false);
- // store hooks
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- watch,
- control,
- formState: { errors, isSubmitting },
- } = useForm({
- defaultValues: {
- EMAIL_HOST: config["EMAIL_HOST"],
- EMAIL_PORT: config["EMAIL_PORT"],
- EMAIL_HOST_USER: config["EMAIL_HOST_USER"],
- EMAIL_HOST_PASSWORD: config["EMAIL_HOST_PASSWORD"],
- EMAIL_USE_TLS: config["EMAIL_USE_TLS"],
- // EMAIL_USE_SSL: config["EMAIL_USE_SSL"],
- EMAIL_FROM: config["EMAIL_FROM"],
- },
- });
-
- const emailFormFields: TControllerInputFormField[] = [
- {
- key: "EMAIL_HOST",
- type: "text",
- label: "Host",
- placeholder: "email.google.com",
- error: Boolean(errors.EMAIL_HOST),
- required: true,
- },
- {
- key: "EMAIL_PORT",
- type: "text",
- label: "Port",
- placeholder: "8080",
- error: Boolean(errors.EMAIL_PORT),
- required: true,
- },
- {
- key: "EMAIL_HOST_USER",
- type: "text",
- label: "Username",
- placeholder: "getitdone@projectplane.so",
- error: Boolean(errors.EMAIL_HOST_USER),
- required: true,
- },
- {
- key: "EMAIL_HOST_PASSWORD",
- type: "password",
- label: "Password",
- placeholder: "Password",
- error: Boolean(errors.EMAIL_HOST_PASSWORD),
- required: true,
- },
- {
- key: "EMAIL_FROM",
- type: "text",
- label: "From address",
- description:
- "This is the email address your users will see when getting emails from this instance. You will need to verify this address.",
- placeholder: "no-reply@projectplane.so",
- error: Boolean(errors.EMAIL_FROM),
- required: true,
- },
- ];
-
- const onSubmit = async (formData: EmailFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() =>
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "Email Settings updated successfully",
- })
- )
- .catch((err) => console.error(err));
- };
-
- return (
- <>
- setIsSendTestEmailModalOpen(false)} />
-
- {emailFormFields.map((field) => (
-
- ))}
-
-
-
-
-
- Turn TLS {Boolean(parseInt(watch("EMAIL_USE_TLS"))) ? "off" : "on"}
-
-
Use this if your email domain supports TLS.
-
-
- (
- {
- Boolean(parseInt(value)) === true ? onChange("0") : onChange("1");
- }}
- size="sm"
- />
- )}
- />
-
-
-
- {/*
-
-
- Turn SSL {Boolean(parseInt(watch("EMAIL_USE_SSL"))) ? "off" : "on"}
-
-
- Most email domains support SSL. Use this to secure comms between this instance and your users.
-
-
-
- (
- {
- Boolean(parseInt(value)) === true ? onChange("0") : onChange("1");
- }}
- size="sm"
- />
- )}
- />
-
-
*/}
-
-
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/email/index.ts b/god-mode/components/email/index.ts
deleted file mode 100644
index 6ad74f4e83..0000000000
--- a/god-mode/components/email/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./email-config-form";
-export * from "./send-test-email-modal";
diff --git a/god-mode/components/email/send-test-email-modal.tsx b/god-mode/components/email/send-test-email-modal.tsx
deleted file mode 100644
index 6e9f6d9d3c..0000000000
--- a/god-mode/components/email/send-test-email-modal.tsx
+++ /dev/null
@@ -1,135 +0,0 @@
-import React, { FC, useEffect, useState } from "react";
-import { Dialog, Transition } from "@headlessui/react";
-// ui
-import { Button, Input } from "@plane/ui";
-// services
-import { InstanceService } from "services/instance.service";
-
-type Props = {
- isOpen: boolean;
- handleClose: () => void;
-};
-
-enum ESendEmailSteps {
- SEND_EMAIL = "SEND_EMAIL",
- SUCCESS = "SUCCESS",
- FAILED = "FAILED",
-}
-
-const instanceService = new InstanceService();
-
-export const SendTestEmailModal: FC = (props) => {
- const { isOpen, handleClose } = props;
-
- // state
- const [receiverEmail, setReceiverEmail] = useState("");
- const [sendEmailStep, setSendEmailStep] = useState(ESendEmailSteps.SEND_EMAIL);
- const [isLoading, setIsLoading] = useState(false);
- const [error, setError] = useState("");
-
- // reset state
- const resetState = () => {
- setReceiverEmail("");
- setSendEmailStep(ESendEmailSteps.SEND_EMAIL);
- setIsLoading(false);
- setError("");
- };
-
- useEffect(() => {
- if (!isOpen) {
- resetState();
- }
- }, [isOpen]);
-
- const handleSubmit = async (e: React.MouseEvent) => {
- e.preventDefault();
-
- setIsLoading(true);
- await instanceService
- .sendTestEmail(receiverEmail)
- .then(() => {
- setSendEmailStep(ESendEmailSteps.SUCCESS);
- })
- .catch((error) => {
- setError(error?.message || "Failed to send email");
- setSendEmailStep(ESendEmailSteps.FAILED);
- })
- .finally(() => {
- setIsLoading(false);
- });
- };
-
- return (
-
-
-
- );
-};
diff --git a/god-mode/components/general/general-form.tsx b/god-mode/components/general/general-form.tsx
deleted file mode 100644
index cb1a117be2..0000000000
--- a/god-mode/components/general/general-form.tsx
+++ /dev/null
@@ -1,145 +0,0 @@
-import { FC } from "react";
-import { Controller, useForm } from "react-hook-form";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, Input, TOAST_TYPE, ToggleSwitch, setToast } from "@plane/ui";
-// components
-import { ControllerInput } from "components/common";
-// icons
-import { Telescope } from "lucide-react";
-// types
-import { IInstance, IInstanceAdmin } from "@plane/types";
-
-export interface IInstanceGeneralForm {
- instance: IInstance;
- instanceAdmins: IInstanceAdmin[];
-}
-
-export interface GeneralFormValues {
- instance_name: string;
- is_telemetry_enabled: boolean;
-}
-
-export const InstanceGeneralForm: FC = (props) => {
- const { instance, instanceAdmins } = props;
- // store hooks
- const { updateInstanceInfo } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- formState: { errors, isSubmitting },
- } = useForm({
- defaultValues: {
- instance_name: instance.instance_name,
- is_telemetry_enabled: instance.is_telemetry_enabled,
- },
- });
-
- const onSubmit = async (formData: GeneralFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceInfo(payload)
- .then(() =>
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "Settings updated successfully",
- })
- )
- .catch((err) => console.error(err));
- };
-
- return (
- <>
-
-
-
-
-
Email
-
-
-
-
-
Instance ID
-
-
-
- Telemetry
-
-
-
-
-
- Allow Plane to collect anonymous usage events
-
-
- We collect usage events without any PII to analyse and improve
- Plane.{" "}
-
- Know more.
-
-
-
-
-
- (
-
- )}
- />
-
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/general/index.ts b/god-mode/components/general/index.ts
deleted file mode 100644
index 18daed803c..0000000000
--- a/god-mode/components/general/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./general-form";
\ No newline at end of file
diff --git a/god-mode/components/image/image-config-form.tsx b/god-mode/components/image/image-config-form.tsx
deleted file mode 100644
index f1cfa037f0..0000000000
--- a/god-mode/components/image/image-config-form.tsx
+++ /dev/null
@@ -1,89 +0,0 @@
-import { FC } from "react";
-import { useForm } from "react-hook-form";
-// hooks
-import useInstance from "hooks/use-instance";
-// ui
-import { Button, TOAST_TYPE, setToast } from "@plane/ui";
-// components
-import { ControllerInput } from "components/common";
-// types
-import {
- IFormattedInstanceConfiguration,
- TInstanceImageConfigurationKeys,
-} from "@plane/types";
-
-type IInstanceImageConfigForm = {
- config: IFormattedInstanceConfiguration;
-};
-
-type ImageConfigFormValues = Record;
-
-export const InstanceImageConfigForm: FC = (
- props
-) => {
- const { config } = props;
- // store hooks
- const { updateInstanceConfigurations } = useInstance();
- // form data
- const {
- handleSubmit,
- control,
- formState: { errors, isSubmitting },
- } = useForm({
- defaultValues: {
- UNSPLASH_ACCESS_KEY: config["UNSPLASH_ACCESS_KEY"],
- },
- });
-
- const onSubmit = async (formData: ImageConfigFormValues) => {
- const payload: Partial = { ...formData };
-
- await updateInstanceConfigurations(payload)
- .then(() =>
- setToast({
- type: TOAST_TYPE.SUCCESS,
- title: "Success",
- message: "Image Configuration Settings updated successfully",
- })
- )
- .catch((err) => console.error(err));
- };
-
- return (
- <>
-
-
- You will find your access key in your Unsplash developer console.{" "}
-
- Learn more.
-
- >
- }
- placeholder="oXgq-sdfadsaeweqasdfasdf3234234rassd"
- error={Boolean(errors.UNSPLASH_ACCESS_KEY)}
- required
- />
-
-
-
-
- >
- );
-};
diff --git a/god-mode/components/image/index.ts b/god-mode/components/image/index.ts
deleted file mode 100644
index ad9b60a102..0000000000
--- a/god-mode/components/image/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./image-config-form";
\ No newline at end of file
diff --git a/god-mode/components/instance/index.ts b/god-mode/components/instance/index.ts
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/god-mode/components/instance/instance-not-ready.tsx b/god-mode/components/instance/instance-not-ready.tsx
deleted file mode 100644
index 3090634e3a..0000000000
--- a/god-mode/components/instance/instance-not-ready.tsx
+++ /dev/null
@@ -1,11 +0,0 @@
-import { FC, ReactNode } from "react";
-
-type TInstanceNotReady = {
- children: ReactNode;
-};
-
-export const InstanceNotReady: FC = (props) => {
- const {} = props;
-
- return SignIn Form
;
-};
diff --git a/god-mode/components/sidebar/help-section.tsx b/god-mode/components/sidebar/help-section.tsx
deleted file mode 100644
index 9d1d2bc2d9..0000000000
--- a/god-mode/components/sidebar/help-section.tsx
+++ /dev/null
@@ -1,135 +0,0 @@
-import { FC, useState, useRef } from "react";
-import { Transition } from "@headlessui/react";
-import Link from "next/link";
-import { FileText, HelpCircle, MoveLeft } from "lucide-react";
-// hooks
-import { useAppTheme } from "hooks/use-theme";
-// icons
-import { DiscordIcon, GithubIcon } from "@plane/ui";
-// assets
-import packageJson from "package.json";
-
-const helpOptions = [
- {
- name: "Documentation",
- href: "https://docs.plane.so/",
- Icon: FileText,
- },
- {
- name: "Join our Discord",
- href: "https://discord.com/invite/A92xrEGCge",
- Icon: DiscordIcon,
- },
- {
- name: "Report a bug",
- href: "https://github.com/makeplane/plane/issues/new/choose",
- Icon: GithubIcon,
- },
-];
-
-export const HelpSection: FC = () => {
- // states
- const [isNeedHelpOpen, setIsNeedHelpOpen] = useState(false);
- // store
- const { sidebarCollapsed, toggleSidebar } = useAppTheme();
- // refs
- const helpOptionsRef = useRef(null);
-
- return (
-
-
-
-
-
-
-
-
-
-
-
- {helpOptions.map(({ name, Icon, href }) => {
- if (href)
- return (
-
-
-
- );
- else
- return (
-
- );
- })}
-
-
- Version: v{packageJson.version}
-
-
-
-
-
- );
-};
diff --git a/god-mode/components/sidebar/index.ts b/god-mode/components/sidebar/index.ts
deleted file mode 100644
index 1a68cdffd8..0000000000
--- a/god-mode/components/sidebar/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-export * from "./help-section";
-export * from "./sidebar-menu";
-export * from "./sidebar-dropdown";
-export * from "./sidebar-menu-hamburger-toogle"
diff --git a/god-mode/components/sidebar/sidebar-dropdown.tsx b/god-mode/components/sidebar/sidebar-dropdown.tsx
deleted file mode 100644
index 38279efc80..0000000000
--- a/god-mode/components/sidebar/sidebar-dropdown.tsx
+++ /dev/null
@@ -1,126 +0,0 @@
-import { Fragment } from "react";
-import { useRouter } from "next/navigation";
-import { useTheme } from "next-themes";
-import { observer } from "mobx-react-lite";
-import { mutate } from "swr";
-// components
-import { Menu, Transition } from "@headlessui/react";
-// icons
-import { LogOut, UserCog2, Palette } from "lucide-react";
-// hooks
-import { useAppTheme } from "hooks/use-theme";
-import useUser from "hooks/use-user";
-// ui
-import { Avatar, TOAST_TYPE, setToast } from "@plane/ui";
-
-export const SidebarDropdown = observer(() => {
- // router
- const router = useRouter();
- // store hooks
- const { sidebarCollapsed } = useAppTheme();
- const { signOut, currentUser } = useUser();
- // hooks
- const { resolvedTheme, setTheme } = useTheme();
-
- const handleSignOut = async () => {
- await signOut()
- .then(() => {
- mutate("CURRENT_USER_DETAILS", null);
- setTheme("system");
- router.push("/");
- })
- .catch(() =>
- setToast({
- type: TOAST_TYPE.ERROR,
- title: "Error!",
- message: "Failed to sign out. Please try again.",
- })
- );
- };
-
- const handleThemeSwitch = () => {
- const newTheme = resolvedTheme === "dark" ? "light" : "dark";
- setTheme(newTheme);
- };
-
- return (
-
-
-
-
-
-
-
- {!sidebarCollapsed && (
-
-
- Instance admin
-
-
- )}
-
-
-
- {!sidebarCollapsed && currentUser && (
-
- )}
-
- );
-});
diff --git a/god-mode/components/sidebar/sidebar-menu-hamburger-toogle.tsx b/god-mode/components/sidebar/sidebar-menu-hamburger-toogle.tsx
deleted file mode 100644
index 5adfd7bcda..0000000000
--- a/god-mode/components/sidebar/sidebar-menu-hamburger-toogle.tsx
+++ /dev/null
@@ -1,21 +0,0 @@
-import { FC } from "react";
-import { observer } from "mobx-react";
-// hooks
-import { useAppTheme } from "hooks/use-theme";
-// icons
-import { Menu } from "lucide-react";
-
-export const SidebarHamburgerToggle: FC = observer(() => {
- const { toggleSidebar } = useAppTheme();
- return (
- toggleSidebar()}
- >
-
-
- );
-});
diff --git a/god-mode/components/sidebar/sidebar-menu.tsx b/god-mode/components/sidebar/sidebar-menu.tsx
deleted file mode 100644
index 40b2761e3b..0000000000
--- a/god-mode/components/sidebar/sidebar-menu.tsx
+++ /dev/null
@@ -1,111 +0,0 @@
-import Link from "next/link";
-import { usePathname } from "next/navigation";
-import { Image, BrainCog, Cog, Lock, Mail } from "lucide-react";
-// hooks
-import { useAppTheme } from "hooks/use-theme";
-// ui
-import { Tooltip } from "@plane/ui";
-import { observer } from "mobx-react-lite";
-
-const INSTANCE_ADMIN_LINKS = [
- {
- Icon: Cog,
- name: "General",
- description: "Identify your instances and get key details",
- href: `/`,
- highlight: (pathname: string) => pathname === "/",
- },
- {
- Icon: Mail,
- name: "Email",
- description: "Set up emails to your users",
- href: `/email`,
- highlight: (pathname: string) => pathname === "/email",
- },
- {
- Icon: Lock,
- name: "Authentication",
- description: "Configure authentication modes",
- href: `/authentication`,
- highlight: (pathname: string) => pathname.includes("/authentication"),
- },
- {
- Icon: BrainCog,
- name: "Artificial intelligence",
- description: "Configure your OpenAI creds",
- href: `/ai`,
- highlight: (pathname: string) => pathname === "/ai",
- },
- {
- Icon: Image,
- name: "Images in Plane",
- description: "Allow third-party image libraries",
- href: `/image`,
- highlight: (pathname: string) => pathname === "/image",
- },
-];
-
-export const SidebarMenu = observer(() => {
- // store hooks
- const { sidebarCollapsed, toggleSidebar } = useAppTheme();
- // router
- const pathName = usePathname();
-
- const handleItemClick = () => {
- if (window.innerWidth < 768) {
- toggleSidebar();
- }
- };
-
- return (
-
- {INSTANCE_ADMIN_LINKS.map((item, index) => {
- const isActive = item.highlight(pathName);
- return (
-
-
-
-
- {
}
- {!sidebarCollapsed && (
-
-
- {item.name}
-
-
- {item.description}
-
-
- )}
-
-
-
-
- );
- })}
-
- );
-});
diff --git a/god-mode/components/user-authentication-forms/index.ts b/god-mode/components/user-authentication-forms/index.ts
deleted file mode 100644
index fcf3e7c9a6..0000000000
--- a/god-mode/components/user-authentication-forms/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./sign-up";
-export * from "./sign-in";
diff --git a/god-mode/components/user-authentication-forms/sign-in.tsx b/god-mode/components/user-authentication-forms/sign-in.tsx
deleted file mode 100644
index 6a3976c233..0000000000
--- a/god-mode/components/user-authentication-forms/sign-in.tsx
+++ /dev/null
@@ -1,113 +0,0 @@
-import { FC, FormEvent, useEffect, useState } from "react";
-// services
-import { AuthService } from "@/services/auth.service";
-import { API_BASE_URL } from "@/helpers/common.helper";
-// ui
-import { Button, Input } from "@plane/ui";
-import { Eye, EyeOff } from "lucide-react";
-
-type TInstanceFormData = {
- email: string;
- password: string;
-};
-
-const defaultInstanceFromData: TInstanceFormData = {
- email: "",
- password: "",
-};
-
-// service initialization
-const authService = new AuthService();
-
-export const InstanceSignInForm: FC = (props) => {
- const {} = props;
- // state
- const [csrfToken, setCsrfToken] = useState("");
- const [showPassword, setShowPassword] = useState(false);
- const [instanceFormData, setInstanceFormData] = useState(defaultInstanceFromData);
- const handleFormChange = (key: keyof TInstanceFormData, value: string | boolean) =>
- setInstanceFormData((prev) => ({ ...prev, [key]: value }));
-
- useEffect(() => {
- authService.requestCSRFToken().then((data) => setCsrfToken(data.csrf_token));
- }, []);
-
- const handleFormSubmit = (event: FormEvent) => {
- console.log(event);
- // validating password
- event.preventDefault();
- };
-
- return (
-
-
-
-
Manage your Plane instance
-
Configure instance-wide settings to secure your instance
-
-
-
-
- );
-};
diff --git a/god-mode/components/user-authentication-forms/sign-up.tsx b/god-mode/components/user-authentication-forms/sign-up.tsx
deleted file mode 100644
index c0228113bd..0000000000
--- a/god-mode/components/user-authentication-forms/sign-up.tsx
+++ /dev/null
@@ -1,187 +0,0 @@
-import { FC, FormEvent, useEffect, useState } from "react";
-// services
-import { AuthService } from "@/services/auth.service";
-import { API_BASE_URL } from "@/helpers/common.helper";
-// ui
-import { Button, Checkbox, Input } from "@plane/ui";
-import { PasswordStrengthMeter } from "components/common";
-import { Eye, EyeOff } from "lucide-react";
-
-type TInstanceFormData = {
- first_name: string;
- last_name: string;
- email: string;
- company_name: string;
- password: string;
- is_telemetry_enabled: boolean;
-};
-
-const defaultInstanceFromData: TInstanceFormData = {
- first_name: "",
- last_name: "",
- email: "",
- company_name: "",
- password: "",
- is_telemetry_enabled: true,
-};
-
-// service initialization
-const authService = new AuthService();
-
-export const InstanceSignUpForm: FC = (props) => {
- const {} = props;
- // state
- const [csrfToken, setCsrfToken] = useState("");
- const [showPassword, setShowPassword] = useState(false);
- const [instanceFormData, setInstanceFormData] = useState(defaultInstanceFromData);
-
- const handleFormChange = (key: keyof TInstanceFormData, value: string | boolean) =>
- setInstanceFormData((prev) => ({ ...prev, [key]: value }));
-
- useEffect(() => {
- authService.requestCSRFToken().then((data) => setCsrfToken(data.csrf_token));
- }, []);
-
- const handleFormSubmit = (event: FormEvent) => {
- console.log(event);
- // validating password
- event.preventDefault();
- };
-
- return (
-
-
-
-
Setup your Plane Instance
-
Post setup you will be able to manage this Plane instance.
-
-
-
-
- );
-};
diff --git a/god-mode/constants/swr-config.ts b/god-mode/constants/swr-config.ts
deleted file mode 100644
index 38478fcea3..0000000000
--- a/god-mode/constants/swr-config.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-export const SWR_CONFIG = {
- refreshWhenHidden: false,
- revalidateIfStale: false,
- revalidateOnFocus: false,
- revalidateOnMount: true,
- refreshInterval: 600000,
- errorRetryCount: 3,
-};
diff --git a/god-mode/helpers/common.helper.ts b/god-mode/helpers/common.helper.ts
deleted file mode 100644
index 3bf03024bb..0000000000
--- a/god-mode/helpers/common.helper.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-import { clsx, type ClassValue } from "clsx";
-import { twMerge } from "tailwind-merge";
-
-export const API_BASE_URL = process.env.NEXT_PUBLIC_API_BASE_URL ? process.env.NEXT_PUBLIC_API_BASE_URL : "";
-
-export const cn = (...inputs: ClassValue[]) => twMerge(clsx(inputs));
-
-export const resolveGeneralTheme = (resolvedTheme: string | undefined) =>
- resolvedTheme?.includes("light") ? "light" : resolvedTheme?.includes("dark") ? "dark" : "system";
diff --git a/god-mode/hooks/use-instance.tsx b/god-mode/hooks/use-instance.tsx
deleted file mode 100644
index a3cbac80d4..0000000000
--- a/god-mode/hooks/use-instance.tsx
+++ /dev/null
@@ -1,14 +0,0 @@
-import { useContext } from "react";
-// mobx store
-import { InstanceContext } from "lib/instance-provider";
-// types
-import { IInstanceStore } from "store/instance.store";
-
-const useInstance = (): IInstanceStore => {
- const context = useContext(InstanceContext);
- if (context === undefined)
- throw new Error("useInstance must be used within InstanceProvider");
- return context;
-};
-
-export default useInstance;
diff --git a/god-mode/hooks/use-outside-click-detector.tsx b/god-mode/hooks/use-outside-click-detector.tsx
deleted file mode 100644
index 5331d11c88..0000000000
--- a/god-mode/hooks/use-outside-click-detector.tsx
+++ /dev/null
@@ -1,19 +0,0 @@
-import React, { useEffect } from "react";
-
-const useOutsideClickDetector = (ref: React.RefObject, callback: () => void) => {
- const handleClick = (event: MouseEvent) => {
- if (ref.current && !ref.current.contains(event.target as Node)) {
- callback();
- }
- };
-
- useEffect(() => {
- document.addEventListener("mousedown", handleClick);
-
- return () => {
- document.removeEventListener("mousedown", handleClick);
- };
- });
-};
-
-export default useOutsideClickDetector;
diff --git a/god-mode/hooks/use-theme.tsx b/god-mode/hooks/use-theme.tsx
deleted file mode 100644
index bcee73d5fb..0000000000
--- a/god-mode/hooks/use-theme.tsx
+++ /dev/null
@@ -1,14 +0,0 @@
-import { useContext } from "react";
-// mobx store
-import { ThemeContext } from "lib/theme-provider";
-// types
-import { IThemeStore } from "store/theme.store";
-
-export const useAppTheme = (): IThemeStore => {
- const context = useContext(ThemeContext);
- if (context === undefined)
- throw new Error("useTheme must be used within ThemeProvider");
- return context;
-};
-
-export default useAppTheme;
diff --git a/god-mode/hooks/use-user.tsx b/god-mode/hooks/use-user.tsx
deleted file mode 100644
index 56994f33a3..0000000000
--- a/god-mode/hooks/use-user.tsx
+++ /dev/null
@@ -1,14 +0,0 @@
-import { useContext } from "react";
-// mobx store
-import { UserContext } from "lib/user-provider";
-// types
-import { IUserStore } from "store/user.store";
-
-const useUser = (): IUserStore => {
- const context = useContext(UserContext);
- if (context === undefined)
- throw new Error("useUser must be used within UserProvider");
- return context;
-};
-
-export default useUser;
diff --git a/god-mode/layouts/default-layout.tsx b/god-mode/layouts/default-layout.tsx
deleted file mode 100644
index 088fabb37c..0000000000
--- a/god-mode/layouts/default-layout.tsx
+++ /dev/null
@@ -1,21 +0,0 @@
-import { FC, ReactNode } from "react";
-
-type TDefaultLayout = {
- children: ReactNode;
-};
-
-export const DefaultLayout: FC = (props) => {
- const { children } = props;
-
- return (
-
- );
-};
diff --git a/god-mode/layouts/index.ts b/god-mode/layouts/index.ts
deleted file mode 100644
index 3e9a6c2720..0000000000
--- a/god-mode/layouts/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./default-layout";
diff --git a/god-mode/lib/instance-provider.tsx b/god-mode/lib/instance-provider.tsx
deleted file mode 100644
index 9f19f2f553..0000000000
--- a/god-mode/lib/instance-provider.tsx
+++ /dev/null
@@ -1,29 +0,0 @@
-"use client";
-
-import { createContext } from "react";
-import { ThemeProvider as NextThemesProvider } from "next-themes";
-import type { ThemeProviderProps } from "next-themes/dist/types";
-// mobx store
-import { InstanceStore } from "store/instance.store";
-
-let instanceStore = new InstanceStore();
-
-export const InstanceContext = createContext(instanceStore);
-
-const initializeStore = () => {
- const store = instanceStore ?? new InstanceStore();
- if (typeof window === "undefined") return store;
- if (!instanceStore) instanceStore = store;
- return store;
-};
-
-export function InstanceProvider({ children, ...props }: ThemeProviderProps) {
- const store = initializeStore();
- return (
- <>
-
- {children}
-
- >
- );
-}
diff --git a/god-mode/lib/theme-provider.tsx b/god-mode/lib/theme-provider.tsx
deleted file mode 100644
index 77f1e87dbb..0000000000
--- a/god-mode/lib/theme-provider.tsx
+++ /dev/null
@@ -1,31 +0,0 @@
-"use client";
-
-import * as React from "react";
-import { ThemeProvider as NextThemesProvider } from "next-themes";
-import type { ThemeProviderProps } from "next-themes/dist/types";
-
-import { createContext } from "react";
-// mobx store
-import { ThemeStore } from "store/theme.store";
-
-let themeStore = new ThemeStore();
-
-export const ThemeContext = createContext(themeStore);
-
-const initializeStore = () => {
- const store = themeStore ?? new ThemeStore();
- if (typeof window === "undefined") return store;
- if (!themeStore) themeStore = store;
- return store;
-};
-
-export function ThemeProvider({ children, ...props }: ThemeProviderProps) {
- const store = initializeStore();
- return (
- <>
-
- {children}
-
- >
- );
-}
diff --git a/god-mode/lib/user-provider.tsx b/god-mode/lib/user-provider.tsx
deleted file mode 100644
index 78f3c075a0..0000000000
--- a/god-mode/lib/user-provider.tsx
+++ /dev/null
@@ -1,29 +0,0 @@
-"use client";
-
-import { createContext } from "react";
-import { ThemeProvider as NextThemesProvider } from "next-themes";
-import type { ThemeProviderProps } from "next-themes/dist/types";
-// mobx store
-import { UserStore } from "store/user.store";
-
-let userStore = new UserStore();
-
-export const UserContext = createContext(userStore);
-
-const initializeStore = () => {
- const store = userStore ?? new UserStore();
- if (typeof window === "undefined") return store;
- if (!userStore) userStore = store;
- return store;
-};
-
-export function UserProvider({ children, ...props }: ThemeProviderProps) {
- const store = initializeStore();
- return (
- <>
-
- {children}
-
- >
- );
-}
diff --git a/god-mode/lib/wrappers/app-wrapper.tsx b/god-mode/lib/wrappers/app-wrapper.tsx
deleted file mode 100644
index 9d12381193..0000000000
--- a/god-mode/lib/wrappers/app-wrapper.tsx
+++ /dev/null
@@ -1,46 +0,0 @@
-"use client";
-
-import { FC, ReactNode, useEffect } from "react";
-import { observer } from "mobx-react-lite";
-import { SWRConfig } from "swr";
-// hooks
-import useAppTheme from "hooks/use-theme";
-import useUser from "hooks/use-user";
-import { useTheme } from "next-themes";
-// ui
-import { Toast } from "@plane/ui";
-// constants
-import { SWR_CONFIG } from "constants/swr-config";
-// helpers
-import { resolveGeneralTheme } from "helpers/common.helper";
-
-interface IAppWrapper {
- children: ReactNode;
-}
-
-const AppWrapper: FC = observer(({ children }) => {
- // store hooks
- const { sidebarCollapsed, toggleSidebar } = useAppTheme();
- const { currentUser } = useUser();
- // themes
- const { resolvedTheme } = useTheme();
-
- /**
- * Sidebar collapsed fetching from local storage
- */
- useEffect(() => {
- const localValue = localStorage && localStorage.getItem("god_mode_sidebar_collapsed");
- const localBoolValue = localValue ? (localValue === "true" ? true : false) : false;
-
- if (localValue && sidebarCollapsed === undefined) toggleSidebar(localBoolValue);
- }, [sidebarCollapsed, currentUser, toggleSidebar]);
-
- return (
- <>
-
- {children}
- >
- );
-});
-
-export default AppWrapper;
diff --git a/god-mode/lib/wrappers/instance-wrapper.tsx b/god-mode/lib/wrappers/instance-wrapper.tsx
deleted file mode 100644
index 0ad169fee4..0000000000
--- a/god-mode/lib/wrappers/instance-wrapper.tsx
+++ /dev/null
@@ -1,49 +0,0 @@
-import { FC, ReactNode, useState } from "react";
-import { observer } from "mobx-react";
-import useSWR from "swr";
-// ui
-import { Spinner } from "@plane/ui";
-// components
-import { InstanceNotReady } from "@/components/instance";
-// hooks
-import { useInstance } from "@/hooks/store";
-
-type TInstanceWrapper = {
- children: ReactNode;
-};
-
-export const InstanceWrapper: FC = observer((props) => {
- const { children } = props;
- // store
- const { isLoading, instance, error, fetchInstanceInfo } = useInstance();
-
- useSWR("INSTANCE_INFORMATION", () => fetchInstanceInfo(), {
- revalidateOnFocus: false,
- });
-
- // loading state
- if (isLoading)
- return (
-
-
-
- );
-
- // something went wrong while in the request
- if (error && error?.status === "error")
- return (
-
- Something went wrong. please try again later
-
- );
-
- // checking if the instance is activated or not
- if (error && !error?.data?.is_activated) return ;
-
- // instance is not ready and setup is not done
- if (instance?.instance?.is_setup_done === false)
- // if (isGodModeEnabled) return ;
- return ;
-
- return <>{children}>;
-});
diff --git a/god-mode/lib/wrappers/user-auth-wrapper.tsx b/god-mode/lib/wrappers/user-auth-wrapper.tsx
deleted file mode 100644
index 023f6ec4a3..0000000000
--- a/god-mode/lib/wrappers/user-auth-wrapper.tsx
+++ /dev/null
@@ -1,61 +0,0 @@
-"use client";
-
-import { FC, ReactNode } from "react";
-// import { useRouter, usePathname } from "next/navigation";
-import { observer } from "mobx-react-lite";
-import useSWR from "swr";
-import useSWRImmutable from "swr/immutable";
-// hooks
-import useUser from "hooks/use-user";
-// ui
-import { Spinner } from "@plane/ui";
-
-export interface IUserAuthWrapper {
- children: ReactNode;
-}
-
-export const UserAuthWrapper: FC = observer((props) => {
- const { children } = props;
- // store hooks
- const {
- currentUser,
- currentUserLoader,
- currentUserError,
- fetchCurrentUser,
- fetchCurrentUserInstanceAdminStatus,
- } = useUser();
- // router
- // const router = useRouter();
- // const pathname = usePathname();
- // fetching user information
- useSWR("CURRENT_USER_DETAILS", () => fetchCurrentUser(), {
- shouldRetryOnError: false,
- });
- // fetching current user instance admin status
- useSWRImmutable(
- "CURRENT_USER_INSTANCE_ADMIN_STATUS",
- () => fetchCurrentUserInstanceAdminStatus(),
- {
- shouldRetryOnError: false,
- }
- );
-
- if (currentUserLoader && !currentUser && !currentUserError) {
- return (
-
- );
- }
-
- // TODO: Login page
- if (currentUserError) {
- // router.push(`/?next_path=${pathname}`);
- // return null;
- return Login Page
;
- }
-
- return <>{children}>;
-});
diff --git a/god-mode/next-env.d.ts b/god-mode/next-env.d.ts
deleted file mode 100644
index 4f11a03dc6..0000000000
--- a/god-mode/next-env.d.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-///
-///
-
-// NOTE: This file should not be edited
-// see https://nextjs.org/docs/basic-features/typescript for more information.
diff --git a/god-mode/next.config.js b/god-mode/next.config.js
deleted file mode 100644
index c55a0af01e..0000000000
--- a/god-mode/next.config.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/** @type {import('next').NextConfig} */
-const nextConfig = {
- reactStrictMode: false,
- swcMinify: true,
- output: "export",
- basePath: process.env.NEXT_PUBLIC_DEPLOY_WITH_NGINX === "1" ? "/god-mode" : "",
-};
-
-module.exports = nextConfig;
diff --git a/god-mode/package.json b/god-mode/package.json
deleted file mode 100644
index e41819399e..0000000000
--- a/god-mode/package.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "name": "god-mode",
- "version": "0.1.0",
- "private": true,
- "scripts": {
- "dev": "turbo run develop",
- "develop": "next dev --port 3333",
- "build": "next build",
- "preview": "next build && next start",
- "start": "next start",
- "lint": "next lint"
- },
- "dependencies": {
- "@plane/types": "*",
- "@plane/ui": "*",
- "@tailwindcss/typography": "^0.5.9",
- "autoprefixer": "10.4.14",
- "axios": "^1.6.7",
- "js-cookie": "^3.0.5",
- "lucide-react": "^0.356.0",
- "mobx": "^6.12.0",
- "mobx-react-lite": "^4.0.5",
- "next": "^14.1.0",
- "next-themes": "^0.2.1",
- "postcss": "8.4.23",
- "react": "^18.2.0",
- "react-dom": "^18.2.0",
- "react-hook-form": "^7.51.0",
- "swr": "^2.2.4",
- "tailwindcss": "3.3.2",
- "uuid": "^9.0.1",
- "zxcvbn": "^4.4.2"
- },
- "devDependencies": {
- "@types/js-cookie": "^3.0.6",
- "@types/node": "18.16.1",
- "@types/react": "^18.2.48",
- "@types/react-dom": "^18.2.18",
- "@types/uuid": "^9.0.8",
- "@types/zxcvbn": "^4.4.4",
- "eslint-config-custom": "*",
- "tailwind-config-custom": "*",
- "tsconfig": "*",
- "typescript": "^5.4.2"
- }
-}
diff --git a/god-mode/postcss.config.js b/god-mode/postcss.config.js
deleted file mode 100644
index 6887c82624..0000000000
--- a/god-mode/postcss.config.js
+++ /dev/null
@@ -1,8 +0,0 @@
-module.exports = {
- plugins: {
- "postcss-import": {},
- "tailwindcss/nesting": {},
- tailwindcss: {},
- autoprefixer: {},
- },
-};
diff --git a/god-mode/public/logos/github-black.png b/god-mode/public/logos/github-black.png
deleted file mode 100644
index 7a7a82474f..0000000000
Binary files a/god-mode/public/logos/github-black.png and /dev/null differ
diff --git a/god-mode/public/logos/github-white.png b/god-mode/public/logos/github-white.png
deleted file mode 100644
index dbb2b578cb..0000000000
Binary files a/god-mode/public/logos/github-white.png and /dev/null differ
diff --git a/god-mode/public/logos/google-logo.svg b/god-mode/public/logos/google-logo.svg
deleted file mode 100644
index 088288fa3f..0000000000
--- a/god-mode/public/logos/google-logo.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/god-mode/public/logos/oidc-logo.png b/god-mode/public/logos/oidc-logo.png
deleted file mode 100644
index 154fb9bbba..0000000000
Binary files a/god-mode/public/logos/oidc-logo.png and /dev/null differ
diff --git a/god-mode/public/logos/saml-logo.svg b/god-mode/public/logos/saml-logo.svg
deleted file mode 100644
index 36526fc217..0000000000
--- a/god-mode/public/logos/saml-logo.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/god-mode/public/logos/takeoff-icon-dark.svg b/god-mode/public/logos/takeoff-icon-dark.svg
deleted file mode 100644
index d3ef191197..0000000000
--- a/god-mode/public/logos/takeoff-icon-dark.svg
+++ /dev/null
@@ -1,35 +0,0 @@
-
diff --git a/god-mode/public/logos/takeoff-icon-light.svg b/god-mode/public/logos/takeoff-icon-light.svg
deleted file mode 100644
index 97cf43fe7a..0000000000
--- a/god-mode/public/logos/takeoff-icon-light.svg
+++ /dev/null
@@ -1,40 +0,0 @@
-
diff --git a/god-mode/services/api.service.ts b/god-mode/services/api.service.ts
deleted file mode 100644
index e87176b7f9..0000000000
--- a/god-mode/services/api.service.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-import axios, { AxiosInstance } from "axios";
-
-export abstract class APIService {
- protected baseURL: string;
- axiosInstance: AxiosInstance;
-
- constructor(baseURL: string) {
- this.baseURL = baseURL;
- this.axiosInstance = axios.create({
- baseURL,
- withCredentials: true,
- });
- }
-
- get(url: string, config = {}): Promise {
- return this.axiosInstance({
- method: "get",
- url,
- ...config,
- });
- }
-
- post(url: string, data = {}, config = {}): Promise {
- return this.axiosInstance({
- method: "post",
- url,
- data,
- ...config,
- });
- }
-
- put(url: string, data = {}, config = {}): Promise {
- return this.axiosInstance({
- method: "put",
- url,
- data,
- ...config,
- });
- }
-
- patch(url: string, data = {}, config = {}): Promise {
- return this.axiosInstance({
- method: "patch",
- url,
- data,
- ...config,
- });
- }
-
- delete(url: string, data?: any, config = {}): Promise {
- return this.axiosInstance({
- method: "delete",
- url,
- data: data,
- ...config,
- });
- }
-
- request(config = {}) {
- return axios(config);
- }
-}
diff --git a/god-mode/services/auth.service.ts b/god-mode/services/auth.service.ts
deleted file mode 100644
index 7f0159e8ad..0000000000
--- a/god-mode/services/auth.service.ts
+++ /dev/null
@@ -1,18 +0,0 @@
-// services
-import { APIService } from "services/api.service";
-// helpers
-import { API_BASE_URL } from "helpers/common.helper";
-
-export class AuthService extends APIService {
- constructor() {
- super(API_BASE_URL);
- }
-
- async requestCSRFToken(): Promise<{ csrf_token: string }> {
- return this.get("/auth/get-csrf-token/")
- .then((response) => response.data)
- .catch((error) => {
- throw error;
- });
- }
-}
diff --git a/god-mode/services/instance.service.ts b/god-mode/services/instance.service.ts
deleted file mode 100644
index 472bb40770..0000000000
--- a/god-mode/services/instance.service.ts
+++ /dev/null
@@ -1,61 +0,0 @@
-import { APIService } from "services/api.service";
-// types
-import type { IFormattedInstanceConfiguration, IInstance, IInstanceAdmin, IInstanceConfiguration } from "@plane/types";
-// helpers
-import { API_BASE_URL } from "helpers/common.helper";
-
-export class InstanceService extends APIService {
- constructor() {
- super(API_BASE_URL);
- }
-
- async getInstanceInfo(): Promise {
- return this.get("/api/instances/", { headers: {} })
- .then((response) => response.data)
- .catch((error) => {
- throw error;
- });
- }
-
- async getInstanceAdmins(): Promise {
- return this.get("/api/instances/admins/")
- .then((response) => response.data)
- .catch((error) => {
- throw error;
- });
- }
-
- async updateInstanceInfo(data: Partial): Promise {
- return this.patch("/api/instances/", data)
- .then((response) => response?.data)
- .catch((error) => {
- throw error?.response?.data;
- });
- }
-
- async getInstanceConfigurations() {
- return this.get("/api/instances/configurations/")
- .then((response) => response.data)
- .catch((error) => {
- throw error;
- });
- }
-
- async updateInstanceConfigurations(
- data: Partial
- ): Promise {
- return this.patch("/api/instances/configurations/", data)
- .then((response) => response?.data)
- .catch((error) => {
- throw error?.response?.data;
- });
- }
-
- async sendTestEmail(receiverEmail: string) {
- return this.post("/api/instances/email-credentials-check/", { receiver_email: receiverEmail })
- .then((response) => response?.data)
- .catch((error) => {
- throw error?.response?.data;
- });
- }
-}
diff --git a/god-mode/services/user.service.ts b/god-mode/services/user.service.ts
deleted file mode 100644
index 7684906f21..0000000000
--- a/god-mode/services/user.service.ts
+++ /dev/null
@@ -1,35 +0,0 @@
-// services
-import { APIService } from "services/api.service";
-// types
-import type { IUser, IInstanceAdminStatus } from "@plane/types";
-// helpers
-import { API_BASE_URL } from "helpers/common.helper";
-
-export class UserService extends APIService {
- constructor() {
- super(API_BASE_URL);
- }
-
- currentUserConfig() {
- return {
- url: `${this.baseURL}/api/users/me/`,
- headers: this.getHeaders(),
- };
- }
-
- async currentUser(): Promise {
- return this.get("/api/users/me/")
- .then((response) => response?.data)
- .catch((error) => {
- throw error?.response;
- });
- }
-
- async currentUserInstanceAdminStatus(): Promise {
- return this.get("/api/users/me/instance-admin/")
- .then((response) => response?.data)
- .catch((error) => {
- throw error?.response;
- });
- }
-}
diff --git a/god-mode/store/theme.store.ts b/god-mode/store/theme.store.ts
deleted file mode 100644
index 05c696a295..0000000000
--- a/god-mode/store/theme.store.ts
+++ /dev/null
@@ -1,206 +0,0 @@
-// mobx
-import { action, observable, makeObservable } from "mobx";
-
-type TRgb = { r: number; g: number; b: number };
-
-type TShades = {
- 10: TRgb;
- 20: TRgb;
- 30: TRgb;
- 40: TRgb;
- 50: TRgb;
- 60: TRgb;
- 70: TRgb;
- 80: TRgb;
- 90: TRgb;
- 100: TRgb;
- 200: TRgb;
- 300: TRgb;
- 400: TRgb;
- 500: TRgb;
- 600: TRgb;
- 700: TRgb;
- 800: TRgb;
- 900: TRgb;
-};
-
-export interface IThemeStore {
- // observables
- theme: string | undefined;
- sidebarCollapsed: boolean | undefined;
- // actions
- toggleSidebar: (collapsed?: boolean) => void;
- setTheme: (theme: any) => void;
-}
-
-export class ThemeStore implements IThemeStore {
- // observables
- sidebarCollapsed: boolean | undefined = undefined;
- theme: string | undefined = undefined;
- themePallette: any | undefined = undefined;
-
- constructor() {
- makeObservable(this, {
- // observable
- sidebarCollapsed: observable.ref,
- theme: observable.ref,
- // action
- toggleSidebar: action,
- setTheme: action,
- // computed
- });
- }
-
- /**
- * Toggle the sidebar collapsed state
- * @param collapsed
- */
- toggleSidebar = (collapsed?: boolean) => {
- if (collapsed === undefined) {
- this.sidebarCollapsed = !this.sidebarCollapsed;
- } else {
- this.sidebarCollapsed = collapsed;
- }
- localStorage.setItem(
- "god_mode_sidebar_collapsed",
- this.sidebarCollapsed.toString()
- );
- };
-
- /**
- * Sets the user theme and applies it to the platform
- * @param _theme
- */
- setTheme = async (_theme: { theme: any }) => {
- try {
- const currentTheme: string = _theme?.theme?.theme?.toString();
- // updating the local storage theme value
- localStorage.setItem("theme", currentTheme);
- // updating the mobx theme value
- this.theme = currentTheme;
- // applying the theme to platform if the selected theme is custom
- if (currentTheme === "custom" && this.themePallette) {
- this.applyTheme(
- this.themePallette?.theme?.palette !== ",,,,"
- ? this.themePallette?.theme?.palette
- : "#0d101b,#c5c5c5,#3f76ff,#0d101b,#c5c5c5",
- this.themePallette?.theme?.darkPalette
- );
- } else this.unsetCustomCssVariables();
- } catch (error) {
- console.error("setting user theme error", error);
- }
- };
-
- calculateShades = (hexValue: string): TShades => {
- const shades: Partial = {};
- const { r, g, b } = this.hexToRgb(hexValue);
-
- const convertHexToSpecificShade = (shade: number): TRgb => {
- if (shade <= 100) {
- const decimalValue = (100 - shade) / 100;
-
- const newR = Math.floor(r + (255 - r) * decimalValue);
- const newG = Math.floor(g + (255 - g) * decimalValue);
- const newB = Math.floor(b + (255 - b) * decimalValue);
-
- return {
- r: newR,
- g: newG,
- b: newB,
- };
- } else {
- const decimalValue = 1 - Math.ceil((shade - 100) / 100) / 10;
-
- const newR = Math.ceil(r * decimalValue);
- const newG = Math.ceil(g * decimalValue);
- const newB = Math.ceil(b * decimalValue);
-
- return {
- r: newR,
- g: newG,
- b: newB,
- };
- }
- };
-
- for (let i = 10; i <= 900; i >= 100 ? (i += 100) : (i += 10))
- shades[i as keyof TShades] = convertHexToSpecificShade(i);
-
- return shades as TShades;
- };
-
- unsetCustomCssVariables = () => {
- for (let i = 10; i <= 900; i >= 100 ? (i += 100) : (i += 10)) {
- const dom = document.querySelector("[data-theme='custom']");
- dom?.style.removeProperty(`--color-background-${i}`);
- dom?.style.removeProperty(`--color-text-${i}`);
- dom?.style.removeProperty(`--color-border-${i}`);
- dom?.style.removeProperty(`--color-primary-${i}`);
- dom?.style.removeProperty(`--color-sidebar-background-${i}`);
- dom?.style.removeProperty(`--color-sidebar-text-${i}`);
- dom?.style.removeProperty(`--color-sidebar-border-${i}`);
- dom?.style.removeProperty("--color-scheme");
- }
- };
-
- applyTheme = (palette: string, isDarkPalette: boolean) => {
- if (!palette) return;
- const dom = document?.querySelector("[data-theme='custom']");
- // palette: [bg, text, primary, sidebarBg, sidebarText]
- const values: string[] = palette.split(",");
- values.push(isDarkPalette ? "dark" : "light");
-
- const bgShades = this.calculateShades(values[0]);
- const textShades = this.calculateShades(values[1]);
- const primaryShades = this.calculateShades(values[2]);
- const sidebarBackgroundShades = this.calculateShades(values[3]);
- const sidebarTextShades = this.calculateShades(values[4]);
-
- for (let i = 10; i <= 900; i >= 100 ? (i += 100) : (i += 10)) {
- const shade = i as keyof TShades;
-
- const bgRgbValues = `${bgShades[shade].r}, ${bgShades[shade].g}, ${bgShades[shade].b}`;
- const textRgbValues = `${textShades[shade].r}, ${textShades[shade].g}, ${textShades[shade].b}`;
- const primaryRgbValues = `${primaryShades[shade].r}, ${primaryShades[shade].g}, ${primaryShades[shade].b}`;
- const sidebarBackgroundRgbValues = `${sidebarBackgroundShades[shade].r}, ${sidebarBackgroundShades[shade].g}, ${sidebarBackgroundShades[shade].b}`;
- const sidebarTextRgbValues = `${sidebarTextShades[shade].r}, ${sidebarTextShades[shade].g}, ${sidebarTextShades[shade].b}`;
-
- dom?.style.setProperty(`--color-background-${shade}`, bgRgbValues);
- dom?.style.setProperty(`--color-text-${shade}`, textRgbValues);
- dom?.style.setProperty(`--color-primary-${shade}`, primaryRgbValues);
- dom?.style.setProperty(
- `--color-sidebar-background-${shade}`,
- sidebarBackgroundRgbValues
- );
- dom?.style.setProperty(
- `--color-sidebar-text-${shade}`,
- sidebarTextRgbValues
- );
-
- if (i >= 100 && i <= 400) {
- const borderShade =
- i === 100 ? 70 : i === 200 ? 80 : i === 300 ? 90 : 100;
-
- dom?.style.setProperty(
- `--color-border-${shade}`,
- `${bgShades[borderShade].r}, ${bgShades[borderShade].g}, ${bgShades[borderShade].b}`
- );
- dom?.style.setProperty(
- `--color-sidebar-border-${shade}`,
- `${sidebarBackgroundShades[borderShade].r}, ${sidebarBackgroundShades[borderShade].g}, ${sidebarBackgroundShades[borderShade].b}`
- );
- }
- }
-
- dom?.style.setProperty("--color-scheme", values[5]);
- };
-
- hexToRgb = (hex: string): TRgb => {
- const r = parseInt(hex.slice(1, 3), 16);
- const g = parseInt(hex.slice(3, 5), 16);
- const b = parseInt(hex.slice(5, 7), 16);
-
- return { r, g, b };
- };
-}
diff --git a/god-mode/store/user.store.ts b/god-mode/store/user.store.ts
deleted file mode 100644
index 019291f784..0000000000
--- a/god-mode/store/user.store.ts
+++ /dev/null
@@ -1,100 +0,0 @@
-import { action, observable, runInAction, makeObservable } from "mobx";
-// services
-import { UserService } from "services/user.service";
-import { AuthService } from "services/auth.service";
-// interfaces
-import { IUser } from "@plane/types";
-
-export interface IUserStore {
- // states
- currentUserError: any | null;
- currentUserLoader: boolean;
- // observables
- isUserLoggedIn: boolean | null;
- currentUser: IUser | null;
- isUserInstanceAdmin: boolean | null;
- // fetch actions
- fetchCurrentUser: () => Promise;
- fetchCurrentUserInstanceAdminStatus: () => Promise;
-
- signOut: () => Promise;
-}
-
-export class UserStore implements IUserStore {
- // states
- currentUserError: any | null = null;
- currentUserLoader: boolean = false;
- // observables
- isUserLoggedIn: boolean | null = null;
- currentUser: IUser | null = null;
- isUserInstanceAdmin: boolean | null = null;
-
- // services
- userService;
- authService;
-
- constructor() {
- makeObservable(this, {
- // states
- currentUserError: observable.ref,
- currentUserLoader: observable.ref,
- // observable
- currentUser: observable,
- isUserInstanceAdmin: observable.ref,
- // action
- fetchCurrentUser: action,
- fetchCurrentUserInstanceAdminStatus: action,
- signOut: action,
- });
- this.userService = new UserService();
- this.authService = new AuthService();
- }
-
- /**
- * Fetches the current user
- * @returns Promise
- */
- fetchCurrentUser = async () => {
- try {
- this.currentUserLoader = true;
- const response = await this.userService.currentUser();
- runInAction(() => {
- this.isUserLoggedIn = true;
- this.currentUser = response;
- this.currentUserError = null;
- this.currentUserLoader = false;
- });
- return response;
- } catch (error) {
- runInAction(() => {
- this.currentUserLoader = false;
- this.currentUserError = error;
- });
- throw error;
- }
- };
-
- /**
- * Fetches the current user instance admin status
- * @returns Promise
- */
- fetchCurrentUserInstanceAdminStatus = async () =>
- await this.userService.currentUserInstanceAdminStatus().then((response) => {
- runInAction(() => {
- this.isUserInstanceAdmin = response.is_instance_admin;
- });
- return response.is_instance_admin;
- });
-
- /**
- * Signs out the current user
- * @returns Promise
- */
- signOut = async () =>
- await this.authService.signOut().then(() => {
- runInAction(() => {
- this.currentUser = null;
- this.isUserLoggedIn = false;
- });
- });
-}
diff --git a/god-mode/tailwind.config.js b/god-mode/tailwind.config.js
deleted file mode 100644
index 05bc93bdcd..0000000000
--- a/god-mode/tailwind.config.js
+++ /dev/null
@@ -1,5 +0,0 @@
-const sharedConfig = require("tailwind-config-custom/tailwind.config.js");
-
-module.exports = {
- presets: [sharedConfig],
-};
diff --git a/god-mode/tsconfig.json b/god-mode/tsconfig.json
deleted file mode 100644
index 5bc5a56844..0000000000
--- a/god-mode/tsconfig.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "extends": "tsconfig/nextjs.json",
- "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
- "exclude": ["node_modules"],
- "compilerOptions": {
- "baseUrl": ".",
- "jsx": "preserve",
- "esModuleInterop": true,
- "paths": {
- "@/*": ["*"]
- },
- "plugins": [
- {
- "name": "next"
- }
- ]
- }
-}
diff --git a/god-mode/yarn.lock b/god-mode/yarn.lock
deleted file mode 100644
index c2f5dce24d..0000000000
--- a/god-mode/yarn.lock
+++ /dev/null
@@ -1,2701 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@aashutoshrathi/word-wrap@^1.2.3":
- version "1.2.6"
- resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf"
- integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==
-
-"@alloc/quick-lru@^5.2.0":
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30"
- integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==
-
-"@babel/runtime@^7.23.2":
- version "7.23.9"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.9.tgz#47791a15e4603bb5f905bc0753801cf21d6345f7"
- integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==
- dependencies:
- regenerator-runtime "^0.14.0"
-
-"@eslint-community/eslint-utils@^4.2.0":
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
- integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
- dependencies:
- eslint-visitor-keys "^3.3.0"
-
-"@eslint-community/regexpp@^4.4.0":
- version "4.10.0"
- resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63"
- integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==
-
-"@eslint/eslintrc@^2.0.2":
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad"
- integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==
- dependencies:
- ajv "^6.12.4"
- debug "^4.3.2"
- espree "^9.6.0"
- globals "^13.19.0"
- ignore "^5.2.0"
- import-fresh "^3.2.1"
- js-yaml "^4.1.0"
- minimatch "^3.1.2"
- strip-json-comments "^3.1.1"
-
-"@eslint/js@8.39.0":
- version "8.39.0"
- resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.39.0.tgz#58b536bcc843f4cd1e02a7e6171da5c040f4d44b"
- integrity sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==
-
-"@humanwhocodes/config-array@^0.11.8":
- version "0.11.14"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b"
- integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==
- dependencies:
- "@humanwhocodes/object-schema" "^2.0.2"
- debug "^4.3.1"
- minimatch "^3.0.5"
-
-"@humanwhocodes/module-importer@^1.0.1":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
- integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
-
-"@humanwhocodes/object-schema@^2.0.2":
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz#d9fae00a2d5cb40f92cfe64b47ad749fbc38f917"
- integrity sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==
-
-"@isaacs/cliui@^8.0.2":
- version "8.0.2"
- resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
- integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
- dependencies:
- string-width "^5.1.2"
- string-width-cjs "npm:string-width@^4.2.0"
- strip-ansi "^7.0.1"
- strip-ansi-cjs "npm:strip-ansi@^6.0.1"
- wrap-ansi "^8.1.0"
- wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
-
-"@jridgewell/gen-mapping@^0.3.2":
- version "0.3.3"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098"
- integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
- dependencies:
- "@jridgewell/set-array" "^1.0.1"
- "@jridgewell/sourcemap-codec" "^1.4.10"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/resolve-uri@^3.1.0":
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721"
- integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==
-
-"@jridgewell/set-array@^1.0.1":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"
- integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
-
-"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14":
- version "1.4.15"
- resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
- integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
-
-"@jridgewell/trace-mapping@^0.3.9":
- version "0.3.22"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c"
- integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==
- dependencies:
- "@jridgewell/resolve-uri" "^3.1.0"
- "@jridgewell/sourcemap-codec" "^1.4.14"
-
-"@next/env@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/env/-/env-14.1.0.tgz#43d92ebb53bc0ae43dcc64fb4d418f8f17d7a341"
- integrity sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==
-
-"@next/eslint-plugin-next@13.3.1":
- version "13.3.1"
- resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-13.3.1.tgz#aa08601f1fec5e1ffbb5850761585734f110345a"
- integrity sha512-Hpd74UrYGF+bq9bBSRDXRsRfaWkPpcwjhvachy3sr/R/5fY6feC0T0s047pUthyqcaeNsqKOY1nUGQQJNm4WyA==
- dependencies:
- glob "7.1.7"
-
-"@next/swc-darwin-arm64@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz#70a57c87ab1ae5aa963a3ba0f4e59e18f4ecea39"
- integrity sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==
-
-"@next/swc-darwin-x64@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz#0863a22feae1540e83c249384b539069fef054e9"
- integrity sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==
-
-"@next/swc-linux-arm64-gnu@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz#893da533d3fce4aec7116fe772d4f9b95232423c"
- integrity sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==
-
-"@next/swc-linux-arm64-musl@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz#d81ddcf95916310b8b0e4ad32b637406564244c0"
- integrity sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==
-
-"@next/swc-linux-x64-gnu@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz#18967f100ec19938354332dcb0268393cbacf581"
- integrity sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==
-
-"@next/swc-linux-x64-musl@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz#77077cd4ba8dda8f349dc7ceb6230e68ee3293cf"
- integrity sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==
-
-"@next/swc-win32-arm64-msvc@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz#5f0b8cf955644104621e6d7cc923cad3a4c5365a"
- integrity sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==
-
-"@next/swc-win32-ia32-msvc@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz#21f4de1293ac5e5a168a412b139db5d3420a89d0"
- integrity sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==
-
-"@next/swc-win32-x64-msvc@14.1.0":
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz#e561fb330466d41807123d932b365cf3d33ceba2"
- integrity sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==
-
-"@nodelib/fs.scandir@2.1.5":
- version "2.1.5"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
- integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
- dependencies:
- "@nodelib/fs.stat" "2.0.5"
- run-parallel "^1.1.9"
-
-"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
- integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
-
-"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
- integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
- dependencies:
- "@nodelib/fs.scandir" "2.1.5"
- fastq "^1.6.0"
-
-"@pkgjs/parseargs@^0.11.0":
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
- integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
-
-"@rushstack/eslint-patch@^1.1.3":
- version "1.7.2"
- resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.7.2.tgz#2d4260033e199b3032a08b41348ac10de21c47e9"
- integrity sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==
-
-"@swc/helpers@0.5.2":
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.2.tgz#85ea0c76450b61ad7d10a37050289eded783c27d"
- integrity sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==
- dependencies:
- tslib "^2.4.0"
-
-"@tailwindcss/typography@^0.5.9":
- version "0.5.10"
- resolved "https://registry.yarnpkg.com/@tailwindcss/typography/-/typography-0.5.10.tgz#2abde4c6d5c797ab49cf47610830a301de4c1e0a"
- integrity sha512-Pe8BuPJQJd3FfRnm6H0ulKIGoMEQS+Vq01R6M5aCrFB/ccR/shT+0kXLjouGC1gFLm9hopTFN+DMP0pfwRWzPw==
- dependencies:
- lodash.castarray "^4.4.0"
- lodash.isplainobject "^4.0.6"
- lodash.merge "^4.6.2"
- postcss-selector-parser "6.0.10"
-
-"@types/json5@^0.0.29":
- version "0.0.29"
- resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
- integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==
-
-"@types/node@18.16.1":
- version "18.16.1"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.1.tgz#5db121e9c5352925bb1f1b892c4ae620e3526799"
- integrity sha512-DZxSZWXxFfOlx7k7Rv4LAyiMroaxa3Ly/7OOzZO8cBNho0YzAi4qlbrx8W27JGqG57IgR/6J7r+nOJWw6kcvZA==
-
-"@types/prop-types@*":
- version "15.7.11"
- resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563"
- integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==
-
-"@types/react-dom@^18.2.18":
- version "18.2.18"
- resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.18.tgz#16946e6cd43971256d874bc3d0a72074bb8571dd"
- integrity sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==
- dependencies:
- "@types/react" "*"
-
-"@types/react@*", "@types/react@^18.2.48":
- version "18.2.48"
- resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.48.tgz#11df5664642d0bd879c1f58bc1d37205b064e8f1"
- integrity sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==
- dependencies:
- "@types/prop-types" "*"
- "@types/scheduler" "*"
- csstype "^3.0.2"
-
-"@types/scheduler@*":
- version "0.16.8"
- resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff"
- integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==
-
-"@typescript-eslint/parser@^5.42.0":
- version "5.62.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7"
- integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==
- dependencies:
- "@typescript-eslint/scope-manager" "5.62.0"
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/typescript-estree" "5.62.0"
- debug "^4.3.4"
-
-"@typescript-eslint/scope-manager@5.62.0":
- version "5.62.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c"
- integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==
- dependencies:
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/visitor-keys" "5.62.0"
-
-"@typescript-eslint/types@5.62.0":
- version "5.62.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
- integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
-
-"@typescript-eslint/typescript-estree@5.62.0":
- version "5.62.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b"
- integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==
- dependencies:
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/visitor-keys" "5.62.0"
- debug "^4.3.4"
- globby "^11.1.0"
- is-glob "^4.0.3"
- semver "^7.3.7"
- tsutils "^3.21.0"
-
-"@typescript-eslint/visitor-keys@5.62.0":
- version "5.62.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e"
- integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==
- dependencies:
- "@typescript-eslint/types" "5.62.0"
- eslint-visitor-keys "^3.3.0"
-
-acorn-jsx@^5.3.2:
- version "5.3.2"
- resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
- integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
-
-acorn@^8.9.0:
- version "8.11.3"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a"
- integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==
-
-ajv@^6.10.0, ajv@^6.12.4:
- version "6.12.6"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
- integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
- dependencies:
- fast-deep-equal "^3.1.1"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.4.1"
- uri-js "^4.2.2"
-
-ansi-regex@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
- integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
-
-ansi-regex@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a"
- integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==
-
-ansi-styles@^4.0.0, ansi-styles@^4.1.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
- integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
- dependencies:
- color-convert "^2.0.1"
-
-ansi-styles@^6.1.0:
- version "6.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
- integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
-
-any-promise@^1.0.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
- integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==
-
-anymatch@~3.1.2:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
- integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
- dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
-
-arg@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c"
- integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==
-
-argparse@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
- integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
-
-aria-query@^5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e"
- integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==
- dependencies:
- dequal "^2.0.3"
-
-array-buffer-byte-length@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead"
- integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==
- dependencies:
- call-bind "^1.0.2"
- is-array-buffer "^3.0.1"
-
-array-includes@^3.1.6, array-includes@^3.1.7:
- version "3.1.7"
- resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda"
- integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- get-intrinsic "^1.2.1"
- is-string "^1.0.7"
-
-array-union@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
- integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
-
-array.prototype.findlastindex@^1.2.3:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz#b37598438f97b579166940814e2c0493a4f50207"
- integrity sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- es-shim-unscopables "^1.0.0"
- get-intrinsic "^1.2.1"
-
-array.prototype.flat@^1.3.1, array.prototype.flat@^1.3.2:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18"
- integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- es-shim-unscopables "^1.0.0"
-
-array.prototype.flatmap@^1.3.1, array.prototype.flatmap@^1.3.2:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527"
- integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- es-shim-unscopables "^1.0.0"
-
-array.prototype.tosorted@^1.1.1:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz#620eff7442503d66c799d95503f82b475745cefd"
- integrity sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- es-shim-unscopables "^1.0.0"
- get-intrinsic "^1.2.1"
-
-arraybuffer.prototype.slice@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz#98bd561953e3e74bb34938e77647179dfe6e9f12"
- integrity sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==
- dependencies:
- array-buffer-byte-length "^1.0.0"
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- get-intrinsic "^1.2.1"
- is-array-buffer "^3.0.2"
- is-shared-array-buffer "^1.0.2"
-
-ast-types-flow@^0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.8.tgz#0a85e1c92695769ac13a428bb653e7538bea27d6"
- integrity sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==
-
-asynciterator.prototype@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz#8c5df0514936cdd133604dfcc9d3fb93f09b2b62"
- integrity sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==
- dependencies:
- has-symbols "^1.0.3"
-
-autoprefixer@10.4.14:
- version "10.4.14"
- resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.14.tgz#e28d49902f8e759dd25b153264e862df2705f79d"
- integrity sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==
- dependencies:
- browserslist "^4.21.5"
- caniuse-lite "^1.0.30001464"
- fraction.js "^4.2.0"
- normalize-range "^0.1.2"
- picocolors "^1.0.0"
- postcss-value-parser "^4.2.0"
-
-available-typed-arrays@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"
- integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
-
-axe-core@=4.7.0:
- version "4.7.0"
- resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.0.tgz#34ba5a48a8b564f67e103f0aa5768d76e15bbbbf"
- integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==
-
-axobject-query@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-3.2.1.tgz#39c378a6e3b06ca679f29138151e45b2b32da62a"
- integrity sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==
- dependencies:
- dequal "^2.0.3"
-
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
-binary-extensions@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
- integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
-
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-brace-expansion@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"
- integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==
- dependencies:
- balanced-match "^1.0.0"
-
-braces@^3.0.2, braces@~3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
- integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
- dependencies:
- fill-range "^7.0.1"
-
-browserslist@^4.21.5:
- version "4.22.3"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6"
- integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==
- dependencies:
- caniuse-lite "^1.0.30001580"
- electron-to-chromium "^1.4.648"
- node-releases "^2.0.14"
- update-browserslist-db "^1.0.13"
-
-busboy@1.6.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893"
- integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==
- dependencies:
- streamsearch "^1.1.0"
-
-call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513"
- integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==
- dependencies:
- function-bind "^1.1.2"
- get-intrinsic "^1.2.1"
- set-function-length "^1.1.1"
-
-callsites@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
- integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
-
-camelcase-css@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5"
- integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==
-
-caniuse-lite@^1.0.30001464, caniuse-lite@^1.0.30001579, caniuse-lite@^1.0.30001580:
- version "1.0.30001581"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001581.tgz#0dfd4db9e94edbdca67d57348ebc070dece279f4"
- integrity sha512-whlTkwhqV2tUmP3oYhtNfaWGYHDdS3JYFQBKXxcUR9qqPWsRhFHhoISO2Xnl/g0xyKzht9mI1LZpiNWfMzHixQ==
-
-chalk@^4.0.0:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
- integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
- dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
-
-chokidar@^3.5.3:
- version "3.5.3"
- resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
- integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==
- dependencies:
- anymatch "~3.1.2"
- braces "~3.0.2"
- glob-parent "~5.1.2"
- is-binary-path "~2.1.0"
- is-glob "~4.0.1"
- normalize-path "~3.0.0"
- readdirp "~3.6.0"
- optionalDependencies:
- fsevents "~2.3.2"
-
-client-only@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1"
- integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==
-
-color-convert@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
- integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
- dependencies:
- color-name "~1.1.4"
-
-color-name@~1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
-
-commander@^4.0.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
- integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-
-cross-spawn@^7.0.0, cross-spawn@^7.0.2:
- version "7.0.3"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
- integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
- dependencies:
- path-key "^3.1.0"
- shebang-command "^2.0.0"
- which "^2.0.1"
-
-cssesc@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
- integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
-
-csstype@^3.0.2:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81"
- integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
-
-damerau-levenshtein@^1.0.8:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7"
- integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==
-
-debug@^3.2.7:
- version "3.2.7"
- resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a"
- integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==
- dependencies:
- ms "^2.1.1"
-
-debug@^4.3.1, debug@^4.3.2, debug@^4.3.4:
- version "4.3.4"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
- integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
- dependencies:
- ms "2.1.2"
-
-deep-is@^0.1.3:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
- integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
-
-define-data-property@^1.0.1, define-data-property@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3"
- integrity sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==
- dependencies:
- get-intrinsic "^1.2.1"
- gopd "^1.0.1"
- has-property-descriptors "^1.0.0"
-
-define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
- integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
- dependencies:
- define-data-property "^1.0.1"
- has-property-descriptors "^1.0.0"
- object-keys "^1.1.1"
-
-dequal@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
- integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
-
-didyoumean@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037"
- integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==
-
-dir-glob@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
- integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
- dependencies:
- path-type "^4.0.0"
-
-dlv@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
- integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==
-
-doctrine@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
- integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==
- dependencies:
- esutils "^2.0.2"
-
-doctrine@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
- integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
- dependencies:
- esutils "^2.0.2"
-
-eastasianwidth@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
- integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
-
-electron-to-chromium@^1.4.648:
- version "1.4.650"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.650.tgz#b38ef9de16991b9f7b924246770576ab91ab3d64"
- integrity sha512-sYSQhJCJa4aGA1wYol5cMQgekDBlbVfTRavlGZVr3WZpDdOPcp6a6xUnFfrt8TqZhsBYYbDxJZCjGfHuGupCRQ==
-
-emoji-regex@^8.0.0:
- version "8.0.0"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
- integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
-
-emoji-regex@^9.2.2:
- version "9.2.2"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
- integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
-
-enhanced-resolve@^5.12.0:
- version "5.15.0"
- resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35"
- integrity sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==
- dependencies:
- graceful-fs "^4.2.4"
- tapable "^2.2.0"
-
-es-abstract@^1.22.1:
- version "1.22.3"
- resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.3.tgz#48e79f5573198de6dee3589195727f4f74bc4f32"
- integrity sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==
- dependencies:
- array-buffer-byte-length "^1.0.0"
- arraybuffer.prototype.slice "^1.0.2"
- available-typed-arrays "^1.0.5"
- call-bind "^1.0.5"
- es-set-tostringtag "^2.0.1"
- es-to-primitive "^1.2.1"
- function.prototype.name "^1.1.6"
- get-intrinsic "^1.2.2"
- get-symbol-description "^1.0.0"
- globalthis "^1.0.3"
- gopd "^1.0.1"
- has-property-descriptors "^1.0.0"
- has-proto "^1.0.1"
- has-symbols "^1.0.3"
- hasown "^2.0.0"
- internal-slot "^1.0.5"
- is-array-buffer "^3.0.2"
- is-callable "^1.2.7"
- is-negative-zero "^2.0.2"
- is-regex "^1.1.4"
- is-shared-array-buffer "^1.0.2"
- is-string "^1.0.7"
- is-typed-array "^1.1.12"
- is-weakref "^1.0.2"
- object-inspect "^1.13.1"
- object-keys "^1.1.1"
- object.assign "^4.1.4"
- regexp.prototype.flags "^1.5.1"
- safe-array-concat "^1.0.1"
- safe-regex-test "^1.0.0"
- string.prototype.trim "^1.2.8"
- string.prototype.trimend "^1.0.7"
- string.prototype.trimstart "^1.0.7"
- typed-array-buffer "^1.0.0"
- typed-array-byte-length "^1.0.0"
- typed-array-byte-offset "^1.0.0"
- typed-array-length "^1.0.4"
- unbox-primitive "^1.0.2"
- which-typed-array "^1.1.13"
-
-es-iterator-helpers@^1.0.12, es-iterator-helpers@^1.0.15:
- version "1.0.15"
- resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz#bd81d275ac766431d19305923707c3efd9f1ae40"
- integrity sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==
- dependencies:
- asynciterator.prototype "^1.0.0"
- call-bind "^1.0.2"
- define-properties "^1.2.1"
- es-abstract "^1.22.1"
- es-set-tostringtag "^2.0.1"
- function-bind "^1.1.1"
- get-intrinsic "^1.2.1"
- globalthis "^1.0.3"
- has-property-descriptors "^1.0.0"
- has-proto "^1.0.1"
- has-symbols "^1.0.3"
- internal-slot "^1.0.5"
- iterator.prototype "^1.1.2"
- safe-array-concat "^1.0.1"
-
-es-set-tostringtag@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9"
- integrity sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==
- dependencies:
- get-intrinsic "^1.2.2"
- has-tostringtag "^1.0.0"
- hasown "^2.0.0"
-
-es-shim-unscopables@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763"
- integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==
- dependencies:
- hasown "^2.0.0"
-
-es-to-primitive@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
- integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
- dependencies:
- is-callable "^1.1.4"
- is-date-object "^1.0.1"
- is-symbol "^1.0.2"
-
-escalade@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
- integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
-
-escape-string-regexp@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
- integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
-
-eslint-config-next@13.3.1:
- version "13.3.1"
- resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-13.3.1.tgz#a4441b9b8a708383e9444492c21bab0099851d90"
- integrity sha512-DieA5djybeE3Q0IqnDXihmhgRSp44x1ywWBBpVRA9pSx+m5Icj8hFclx7ffXlAvb9MMLN6cgj/hqJ4lka/QmvA==
- dependencies:
- "@next/eslint-plugin-next" "13.3.1"
- "@rushstack/eslint-patch" "^1.1.3"
- "@typescript-eslint/parser" "^5.42.0"
- eslint-import-resolver-node "^0.3.6"
- eslint-import-resolver-typescript "^3.5.2"
- eslint-plugin-import "^2.26.0"
- eslint-plugin-jsx-a11y "^6.5.1"
- eslint-plugin-react "^7.31.7"
- eslint-plugin-react-hooks "^4.5.0"
-
-eslint-import-resolver-node@^0.3.6, eslint-import-resolver-node@^0.3.9:
- version "0.3.9"
- resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac"
- integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==
- dependencies:
- debug "^3.2.7"
- is-core-module "^2.13.0"
- resolve "^1.22.4"
-
-eslint-import-resolver-typescript@^3.5.2:
- version "3.6.1"
- resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz#7b983680edd3f1c5bce1a5829ae0bc2d57fe9efa"
- integrity sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==
- dependencies:
- debug "^4.3.4"
- enhanced-resolve "^5.12.0"
- eslint-module-utils "^2.7.4"
- fast-glob "^3.3.1"
- get-tsconfig "^4.5.0"
- is-core-module "^2.11.0"
- is-glob "^4.0.3"
-
-eslint-module-utils@^2.7.4, eslint-module-utils@^2.8.0:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz#e439fee65fc33f6bba630ff621efc38ec0375c49"
- integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==
- dependencies:
- debug "^3.2.7"
-
-eslint-plugin-import@^2.26.0:
- version "2.29.1"
- resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643"
- integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==
- dependencies:
- array-includes "^3.1.7"
- array.prototype.findlastindex "^1.2.3"
- array.prototype.flat "^1.3.2"
- array.prototype.flatmap "^1.3.2"
- debug "^3.2.7"
- doctrine "^2.1.0"
- eslint-import-resolver-node "^0.3.9"
- eslint-module-utils "^2.8.0"
- hasown "^2.0.0"
- is-core-module "^2.13.1"
- is-glob "^4.0.3"
- minimatch "^3.1.2"
- object.fromentries "^2.0.7"
- object.groupby "^1.0.1"
- object.values "^1.1.7"
- semver "^6.3.1"
- tsconfig-paths "^3.15.0"
-
-eslint-plugin-jsx-a11y@^6.5.1:
- version "6.8.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz#2fa9c701d44fcd722b7c771ec322432857fcbad2"
- integrity sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==
- dependencies:
- "@babel/runtime" "^7.23.2"
- aria-query "^5.3.0"
- array-includes "^3.1.7"
- array.prototype.flatmap "^1.3.2"
- ast-types-flow "^0.0.8"
- axe-core "=4.7.0"
- axobject-query "^3.2.1"
- damerau-levenshtein "^1.0.8"
- emoji-regex "^9.2.2"
- es-iterator-helpers "^1.0.15"
- hasown "^2.0.0"
- jsx-ast-utils "^3.3.5"
- language-tags "^1.0.9"
- minimatch "^3.1.2"
- object.entries "^1.1.7"
- object.fromentries "^2.0.7"
-
-eslint-plugin-react-hooks@^4.5.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3"
- integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==
-
-eslint-plugin-react@^7.31.7:
- version "7.33.2"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz#69ee09443ffc583927eafe86ffebb470ee737608"
- integrity sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==
- dependencies:
- array-includes "^3.1.6"
- array.prototype.flatmap "^1.3.1"
- array.prototype.tosorted "^1.1.1"
- doctrine "^2.1.0"
- es-iterator-helpers "^1.0.12"
- estraverse "^5.3.0"
- jsx-ast-utils "^2.4.1 || ^3.0.0"
- minimatch "^3.1.2"
- object.entries "^1.1.6"
- object.fromentries "^2.0.6"
- object.hasown "^1.1.2"
- object.values "^1.1.6"
- prop-types "^15.8.1"
- resolve "^2.0.0-next.4"
- semver "^6.3.1"
- string.prototype.matchall "^4.0.8"
-
-eslint-scope@^7.2.0:
- version "7.2.2"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
- integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^5.2.0"
-
-eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.0, eslint-visitor-keys@^3.4.1:
- version "3.4.3"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
- integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
-
-eslint@8.39.0:
- version "8.39.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.39.0.tgz#7fd20a295ef92d43809e914b70c39fd5a23cf3f1"
- integrity sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==
- dependencies:
- "@eslint-community/eslint-utils" "^4.2.0"
- "@eslint-community/regexpp" "^4.4.0"
- "@eslint/eslintrc" "^2.0.2"
- "@eslint/js" "8.39.0"
- "@humanwhocodes/config-array" "^0.11.8"
- "@humanwhocodes/module-importer" "^1.0.1"
- "@nodelib/fs.walk" "^1.2.8"
- ajv "^6.10.0"
- chalk "^4.0.0"
- cross-spawn "^7.0.2"
- debug "^4.3.2"
- doctrine "^3.0.0"
- escape-string-regexp "^4.0.0"
- eslint-scope "^7.2.0"
- eslint-visitor-keys "^3.4.0"
- espree "^9.5.1"
- esquery "^1.4.2"
- esutils "^2.0.2"
- fast-deep-equal "^3.1.3"
- file-entry-cache "^6.0.1"
- find-up "^5.0.0"
- glob-parent "^6.0.2"
- globals "^13.19.0"
- grapheme-splitter "^1.0.4"
- ignore "^5.2.0"
- import-fresh "^3.0.0"
- imurmurhash "^0.1.4"
- is-glob "^4.0.0"
- is-path-inside "^3.0.3"
- js-sdsl "^4.1.4"
- js-yaml "^4.1.0"
- json-stable-stringify-without-jsonify "^1.0.1"
- levn "^0.4.1"
- lodash.merge "^4.6.2"
- minimatch "^3.1.2"
- natural-compare "^1.4.0"
- optionator "^0.9.1"
- strip-ansi "^6.0.1"
- strip-json-comments "^3.1.0"
- text-table "^0.2.0"
-
-espree@^9.5.1, espree@^9.6.0:
- version "9.6.1"
- resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
- integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
- dependencies:
- acorn "^8.9.0"
- acorn-jsx "^5.3.2"
- eslint-visitor-keys "^3.4.1"
-
-esquery@^1.4.2:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b"
- integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==
- dependencies:
- estraverse "^5.1.0"
-
-esrecurse@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
- integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
- dependencies:
- estraverse "^5.2.0"
-
-estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
- integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
-
-esutils@^2.0.2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
- integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-
-fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
- integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
-
-fast-glob@^3.2.12, fast-glob@^3.2.9, fast-glob@^3.3.1:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
- integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==
- dependencies:
- "@nodelib/fs.stat" "^2.0.2"
- "@nodelib/fs.walk" "^1.2.3"
- glob-parent "^5.1.2"
- merge2 "^1.3.0"
- micromatch "^4.0.4"
-
-fast-json-stable-stringify@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fast-levenshtein@^2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
- integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
-
-fastq@^1.6.0:
- version "1.17.0"
- resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03"
- integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==
- dependencies:
- reusify "^1.0.4"
-
-file-entry-cache@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
- integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
- dependencies:
- flat-cache "^3.0.4"
-
-fill-range@^7.0.1:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
- integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
- dependencies:
- to-regex-range "^5.0.1"
-
-find-up@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
- integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
- dependencies:
- locate-path "^6.0.0"
- path-exists "^4.0.0"
-
-flat-cache@^3.0.4:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee"
- integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==
- dependencies:
- flatted "^3.2.9"
- keyv "^4.5.3"
- rimraf "^3.0.2"
-
-flatted@^3.2.9:
- version "3.2.9"
- resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf"
- integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==
-
-for-each@^0.3.3:
- version "0.3.3"
- resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
- integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==
- dependencies:
- is-callable "^1.1.3"
-
-foreground-child@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d"
- integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==
- dependencies:
- cross-spawn "^7.0.0"
- signal-exit "^4.0.1"
-
-fraction.js@^4.2.0:
- version "4.3.7"
- resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7"
- integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
-
-fsevents@~2.3.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
- integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
-
-function-bind@^1.1.1, function-bind@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
- integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-
-function.prototype.name@^1.1.5, function.prototype.name@^1.1.6:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd"
- integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- functions-have-names "^1.2.3"
-
-functions-have-names@^1.2.3:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"
- integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
-
-get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz#281b7622971123e1ef4b3c90fd7539306da93f3b"
- integrity sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==
- dependencies:
- function-bind "^1.1.2"
- has-proto "^1.0.1"
- has-symbols "^1.0.3"
- hasown "^2.0.0"
-
-get-symbol-description@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6"
- integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==
- dependencies:
- call-bind "^1.0.2"
- get-intrinsic "^1.1.1"
-
-get-tsconfig@^4.5.0:
- version "4.7.2"
- resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.2.tgz#0dcd6fb330391d46332f4c6c1bf89a6514c2ddce"
- integrity sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==
- dependencies:
- resolve-pkg-maps "^1.0.0"
-
-glob-parent@^5.1.2, glob-parent@~5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
- integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
- dependencies:
- is-glob "^4.0.1"
-
-glob-parent@^6.0.2:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
- integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
- dependencies:
- is-glob "^4.0.3"
-
-glob@7.1.7:
- version "7.1.7"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
- integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@^10.3.10:
- version "10.3.10"
- resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b"
- integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==
- dependencies:
- foreground-child "^3.1.0"
- jackspeak "^2.3.5"
- minimatch "^9.0.1"
- minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
- path-scurry "^1.10.1"
-
-glob@^7.1.3:
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
- integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.1.1"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-globals@^13.19.0:
- version "13.24.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171"
- integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==
- dependencies:
- type-fest "^0.20.2"
-
-globalthis@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf"
- integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==
- dependencies:
- define-properties "^1.1.3"
-
-globby@^11.1.0:
- version "11.1.0"
- resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
- integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
- dependencies:
- array-union "^2.1.0"
- dir-glob "^3.0.1"
- fast-glob "^3.2.9"
- ignore "^5.2.0"
- merge2 "^1.4.1"
- slash "^3.0.0"
-
-gopd@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c"
- integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==
- dependencies:
- get-intrinsic "^1.1.3"
-
-graceful-fs@^4.2.11, graceful-fs@^4.2.4:
- version "4.2.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
- integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
-
-grapheme-splitter@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e"
- integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==
-
-has-bigints@^1.0.1, has-bigints@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
- integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==
-
-has-flag@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
- integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
-
-has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340"
- integrity sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==
- dependencies:
- get-intrinsic "^1.2.2"
-
-has-proto@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0"
- integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==
-
-has-symbols@^1.0.2, has-symbols@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
- integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
-
-has-tostringtag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
- integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==
- dependencies:
- has-symbols "^1.0.2"
-
-hasown@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c"
- integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==
- dependencies:
- function-bind "^1.1.2"
-
-ignore@^5.2.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78"
- integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==
-
-import-fresh@^3.0.0, import-fresh@^3.2.1:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
- integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
- dependencies:
- parent-module "^1.0.0"
- resolve-from "^4.0.0"
-
-imurmurhash@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
- integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-internal-slot@^1.0.5:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.6.tgz#37e756098c4911c5e912b8edbf71ed3aa116f930"
- integrity sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==
- dependencies:
- get-intrinsic "^1.2.2"
- hasown "^2.0.0"
- side-channel "^1.0.4"
-
-is-array-buffer@^3.0.1, is-array-buffer@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe"
- integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==
- dependencies:
- call-bind "^1.0.2"
- get-intrinsic "^1.2.0"
- is-typed-array "^1.1.10"
-
-is-async-function@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646"
- integrity sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==
- dependencies:
- has-tostringtag "^1.0.0"
-
-is-bigint@^1.0.1:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3"
- integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==
- dependencies:
- has-bigints "^1.0.1"
-
-is-binary-path@~2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
- integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
- dependencies:
- binary-extensions "^2.0.0"
-
-is-boolean-object@^1.1.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"
- integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==
- dependencies:
- call-bind "^1.0.2"
- has-tostringtag "^1.0.0"
-
-is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:
- version "1.2.7"
- resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
- integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
-
-is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1:
- version "2.13.1"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384"
- integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==
- dependencies:
- hasown "^2.0.0"
-
-is-date-object@^1.0.1, is-date-object@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"
- integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==
- dependencies:
- has-tostringtag "^1.0.0"
-
-is-extglob@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
- integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
-
-is-finalizationregistry@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz#c8749b65f17c133313e661b1289b95ad3dbd62e6"
- integrity sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==
- dependencies:
- call-bind "^1.0.2"
-
-is-fullwidth-code-point@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
- integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
-
-is-generator-function@^1.0.10:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"
- integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==
- dependencies:
- has-tostringtag "^1.0.0"
-
-is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
- integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
- dependencies:
- is-extglob "^2.1.1"
-
-is-map@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127"
- integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==
-
-is-negative-zero@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"
- integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
-
-is-number-object@^1.0.4:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc"
- integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==
- dependencies:
- has-tostringtag "^1.0.0"
-
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-
-is-path-inside@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
- integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
-
-is-regex@^1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958"
- integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==
- dependencies:
- call-bind "^1.0.2"
- has-tostringtag "^1.0.0"
-
-is-set@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec"
- integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==
-
-is-shared-array-buffer@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79"
- integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==
- dependencies:
- call-bind "^1.0.2"
-
-is-string@^1.0.5, is-string@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd"
- integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==
- dependencies:
- has-tostringtag "^1.0.0"
-
-is-symbol@^1.0.2, is-symbol@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c"
- integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==
- dependencies:
- has-symbols "^1.0.2"
-
-is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9:
- version "1.1.12"
- resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a"
- integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==
- dependencies:
- which-typed-array "^1.1.11"
-
-is-weakmap@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2"
- integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==
-
-is-weakref@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
- integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
- dependencies:
- call-bind "^1.0.2"
-
-is-weakset@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d"
- integrity sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==
- dependencies:
- call-bind "^1.0.2"
- get-intrinsic "^1.1.1"
-
-isarray@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723"
- integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
-
-iterator.prototype@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.2.tgz#5e29c8924f01916cb9335f1ff80619dcff22b0c0"
- integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==
- dependencies:
- define-properties "^1.2.1"
- get-intrinsic "^1.2.1"
- has-symbols "^1.0.3"
- reflect.getprototypeof "^1.0.4"
- set-function-name "^2.0.1"
-
-jackspeak@^2.3.5:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8"
- integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==
- dependencies:
- "@isaacs/cliui" "^8.0.2"
- optionalDependencies:
- "@pkgjs/parseargs" "^0.11.0"
-
-jiti@^1.18.2:
- version "1.21.0"
- resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d"
- integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==
-
-js-sdsl@^4.1.4:
- version "4.4.2"
- resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.4.2.tgz#2e3c031b1f47d3aca8b775532e3ebb0818e7f847"
- integrity sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==
-
-"js-tokens@^3.0.0 || ^4.0.0":
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
- integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-
-js-yaml@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
- integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
- dependencies:
- argparse "^2.0.1"
-
-json-buffer@3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
- integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json-stable-stringify-without-jsonify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
- integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
-
-json5@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593"
- integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==
- dependencies:
- minimist "^1.2.0"
-
-"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.5:
- version "3.3.5"
- resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a"
- integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==
- dependencies:
- array-includes "^3.1.6"
- array.prototype.flat "^1.3.1"
- object.assign "^4.1.4"
- object.values "^1.1.6"
-
-keyv@^4.5.3:
- version "4.5.4"
- resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93"
- integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
- dependencies:
- json-buffer "3.0.1"
-
-language-subtag-registry@^0.3.20:
- version "0.3.22"
- resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz#2e1500861b2e457eba7e7ae86877cbd08fa1fd1d"
- integrity sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==
-
-language-tags@^1.0.9:
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/language-tags/-/language-tags-1.0.9.tgz#1ffdcd0ec0fafb4b1be7f8b11f306ad0f9c08777"
- integrity sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==
- dependencies:
- language-subtag-registry "^0.3.20"
-
-levn@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
- integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
- dependencies:
- prelude-ls "^1.2.1"
- type-check "~0.4.0"
-
-lilconfig@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52"
- integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==
-
-lilconfig@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.0.0.tgz#f8067feb033b5b74dab4602a5f5029420be749bc"
- integrity sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==
-
-lines-and-columns@^1.1.6:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
- integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
-
-locate-path@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
- integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
- dependencies:
- p-locate "^5.0.0"
-
-lodash.castarray@^4.4.0:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/lodash.castarray/-/lodash.castarray-4.4.0.tgz#c02513515e309daddd4c24c60cfddcf5976d9115"
- integrity sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==
-
-lodash.isplainobject@^4.0.6:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
- integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==
-
-lodash.merge@^4.6.2:
- version "4.6.2"
- resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
- integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
-
-loose-envify@^1.1.0, loose-envify@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
- integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
- dependencies:
- js-tokens "^3.0.0 || ^4.0.0"
-
-lru-cache@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
- integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
- dependencies:
- yallist "^4.0.0"
-
-"lru-cache@^9.1.1 || ^10.0.0":
- version "10.2.0"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3"
- integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==
-
-merge2@^1.3.0, merge2@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
- integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
-
-micromatch@^4.0.4, micromatch@^4.0.5:
- version "4.0.5"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
- integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
- dependencies:
- braces "^3.0.2"
- picomatch "^2.3.1"
-
-minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
- integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
- dependencies:
- brace-expansion "^1.1.7"
-
-minimatch@^9.0.1:
- version "9.0.3"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825"
- integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==
- dependencies:
- brace-expansion "^2.0.1"
-
-minimist@^1.2.0, minimist@^1.2.6:
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
- integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
-
-"minipass@^5.0.0 || ^6.0.2 || ^7.0.0":
- version "7.0.4"
- resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c"
- integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==
-
-mobx-react-lite@^4.0.5:
- version "4.0.5"
- resolved "https://registry.yarnpkg.com/mobx-react-lite/-/mobx-react-lite-4.0.5.tgz#e2cb98f813e118917bcc463638f5bf6ea053a67b"
- integrity sha512-StfB2wxE8imKj1f6T8WWPf4lVMx3cYH9Iy60bbKXEs21+HQ4tvvfIBZfSmMXgQAefi8xYEwQIz4GN9s0d2h7dg==
- dependencies:
- use-sync-external-store "^1.2.0"
-
-mobx@^6.12.0:
- version "6.12.0"
- resolved "https://registry.yarnpkg.com/mobx/-/mobx-6.12.0.tgz#72b2685ca5af031aaa49e77a4d76ed67fcbf9135"
- integrity sha512-Mn6CN6meXEnMa0a5u6a5+RKrqRedHBhZGd15AWLk9O6uFY4KYHzImdt8JI8WODo1bjTSRnwXhJox+FCUZhCKCQ==
-
-ms@2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
- integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
-
-ms@^2.1.1:
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
- integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-
-mz@^2.7.0:
- version "2.7.0"
- resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
- integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
- dependencies:
- any-promise "^1.0.0"
- object-assign "^4.0.1"
- thenify-all "^1.0.0"
-
-nanoid@^3.3.6, nanoid@^3.3.7:
- version "3.3.7"
- resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8"
- integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
-
-natural-compare@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
- integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
-
-next-themes@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/next-themes/-/next-themes-0.2.1.tgz#0c9f128e847979daf6c67f70b38e6b6567856e45"
- integrity sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==
-
-next@^14.1.0:
- version "14.1.0"
- resolved "https://registry.yarnpkg.com/next/-/next-14.1.0.tgz#b31c0261ff9caa6b4a17c5af019ed77387174b69"
- integrity sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==
- dependencies:
- "@next/env" "14.1.0"
- "@swc/helpers" "0.5.2"
- busboy "1.6.0"
- caniuse-lite "^1.0.30001579"
- graceful-fs "^4.2.11"
- postcss "8.4.31"
- styled-jsx "5.1.1"
- optionalDependencies:
- "@next/swc-darwin-arm64" "14.1.0"
- "@next/swc-darwin-x64" "14.1.0"
- "@next/swc-linux-arm64-gnu" "14.1.0"
- "@next/swc-linux-arm64-musl" "14.1.0"
- "@next/swc-linux-x64-gnu" "14.1.0"
- "@next/swc-linux-x64-musl" "14.1.0"
- "@next/swc-win32-arm64-msvc" "14.1.0"
- "@next/swc-win32-ia32-msvc" "14.1.0"
- "@next/swc-win32-x64-msvc" "14.1.0"
-
-node-releases@^2.0.14:
- version "2.0.14"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b"
- integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==
-
-normalize-path@^3.0.0, normalize-path@~3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
- integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-
-normalize-range@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
- integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==
-
-object-assign@^4.0.1, object-assign@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
-
-object-hash@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9"
- integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==
-
-object-inspect@^1.13.1, object-inspect@^1.9.0:
- version "1.13.1"
- resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2"
- integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==
-
-object-keys@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
- integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
-
-object.assign@^4.1.4:
- version "4.1.5"
- resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0"
- integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==
- dependencies:
- call-bind "^1.0.5"
- define-properties "^1.2.1"
- has-symbols "^1.0.3"
- object-keys "^1.1.1"
-
-object.entries@^1.1.6, object.entries@^1.1.7:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.7.tgz#2b47760e2a2e3a752f39dd874655c61a7f03c131"
- integrity sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-object.fromentries@^2.0.6, object.fromentries@^2.0.7:
- version "2.0.7"
- resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.7.tgz#71e95f441e9a0ea6baf682ecaaf37fa2a8d7e616"
- integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-object.groupby@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.1.tgz#d41d9f3c8d6c778d9cbac86b4ee9f5af103152ee"
- integrity sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- get-intrinsic "^1.2.1"
-
-object.hasown@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.3.tgz#6a5f2897bb4d3668b8e79364f98ccf971bda55ae"
- integrity sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==
- dependencies:
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-object.values@^1.1.6, object.values@^1.1.7:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a"
- integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
- dependencies:
- wrappy "1"
-
-optionator@^0.9.1:
- version "0.9.3"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64"
- integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==
- dependencies:
- "@aashutoshrathi/word-wrap" "^1.2.3"
- deep-is "^0.1.3"
- fast-levenshtein "^2.0.6"
- levn "^0.4.1"
- prelude-ls "^1.2.1"
- type-check "^0.4.0"
-
-p-limit@^3.0.2:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
- integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
- dependencies:
- yocto-queue "^0.1.0"
-
-p-locate@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
- integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
- dependencies:
- p-limit "^3.0.2"
-
-parent-module@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
- integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
- dependencies:
- callsites "^3.0.0"
-
-path-exists@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
- integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
-
-path-key@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
- integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
-
-path-parse@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-path-scurry@^1.10.1:
- version "1.10.1"
- resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698"
- integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==
- dependencies:
- lru-cache "^9.1.1 || ^10.0.0"
- minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
-
-path-type@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
- integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
-
-picocolors@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
- integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
-
-picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
- integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
-
-pify@^2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
- integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
-
-pirates@^4.0.1:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9"
- integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==
-
-postcss-import@^15.1.0:
- version "15.1.0"
- resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70"
- integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==
- dependencies:
- postcss-value-parser "^4.0.0"
- read-cache "^1.0.0"
- resolve "^1.1.7"
-
-postcss-js@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2"
- integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==
- dependencies:
- camelcase-css "^2.0.1"
-
-postcss-load-config@^4.0.1:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-4.0.2.tgz#7159dcf626118d33e299f485d6afe4aff7c4a3e3"
- integrity sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==
- dependencies:
- lilconfig "^3.0.0"
- yaml "^2.3.4"
-
-postcss-nested@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.0.1.tgz#f83dc9846ca16d2f4fa864f16e9d9f7d0961662c"
- integrity sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==
- dependencies:
- postcss-selector-parser "^6.0.11"
-
-postcss-selector-parser@6.0.10:
- version "6.0.10"
- resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d"
- integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==
- dependencies:
- cssesc "^3.0.0"
- util-deprecate "^1.0.2"
-
-postcss-selector-parser@^6.0.11:
- version "6.0.15"
- resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz#11cc2b21eebc0b99ea374ffb9887174855a01535"
- integrity sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==
- dependencies:
- cssesc "^3.0.0"
- util-deprecate "^1.0.2"
-
-postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
- integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
-
-postcss@8.4.23:
- version "8.4.23"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.23.tgz#df0aee9ac7c5e53e1075c24a3613496f9e6552ab"
- integrity sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==
- dependencies:
- nanoid "^3.3.6"
- picocolors "^1.0.0"
- source-map-js "^1.0.2"
-
-postcss@8.4.31:
- version "8.4.31"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d"
- integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==
- dependencies:
- nanoid "^3.3.6"
- picocolors "^1.0.0"
- source-map-js "^1.0.2"
-
-postcss@^8.4.23:
- version "8.4.33"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.33.tgz#1378e859c9f69bf6f638b990a0212f43e2aaa742"
- integrity sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==
- dependencies:
- nanoid "^3.3.7"
- picocolors "^1.0.0"
- source-map-js "^1.0.2"
-
-prelude-ls@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
- integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
-
-prop-types@^15.8.1:
- version "15.8.1"
- resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
- integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
- dependencies:
- loose-envify "^1.4.0"
- object-assign "^4.1.1"
- react-is "^16.13.1"
-
-punycode@^2.1.0:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
- integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
-
-queue-microtask@^1.2.2:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
- integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
-
-react-dom@^18.2.0:
- version "18.2.0"
- resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d"
- integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
- dependencies:
- loose-envify "^1.1.0"
- scheduler "^0.23.0"
-
-react-is@^16.13.1:
- version "16.13.1"
- resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
- integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
-
-react@^18.2.0:
- version "18.2.0"
- resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
- integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
- dependencies:
- loose-envify "^1.1.0"
-
-read-cache@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
- integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==
- dependencies:
- pify "^2.3.0"
-
-readdirp@~3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
- integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
- dependencies:
- picomatch "^2.2.1"
-
-reflect.getprototypeof@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz#aaccbf41aca3821b87bb71d9dcbc7ad0ba50a3f3"
- integrity sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- get-intrinsic "^1.2.1"
- globalthis "^1.0.3"
- which-builtin-type "^1.1.3"
-
-regenerator-runtime@^0.14.0:
- version "0.14.1"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
- integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
-
-regexp.prototype.flags@^1.5.0, regexp.prototype.flags@^1.5.1:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e"
- integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- set-function-name "^2.0.0"
-
-resolve-from@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
- integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
-
-resolve-pkg-maps@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f"
- integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==
-
-resolve@^1.1.7, resolve@^1.22.2, resolve@^1.22.4:
- version "1.22.8"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
- integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
- dependencies:
- is-core-module "^2.13.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-resolve@^2.0.0-next.4:
- version "2.0.0-next.5"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.5.tgz#6b0ec3107e671e52b68cd068ef327173b90dc03c"
- integrity sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==
- dependencies:
- is-core-module "^2.13.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-reusify@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
- integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-
-rimraf@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
- integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
- dependencies:
- glob "^7.1.3"
-
-run-parallel@^1.1.9:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
- integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
- dependencies:
- queue-microtask "^1.2.2"
-
-safe-array-concat@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.0.tgz#8d0cae9cb806d6d1c06e08ab13d847293ebe0692"
- integrity sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==
- dependencies:
- call-bind "^1.0.5"
- get-intrinsic "^1.2.2"
- has-symbols "^1.0.3"
- isarray "^2.0.5"
-
-safe-regex-test@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.2.tgz#3ba32bdb3ea35f940ee87e5087c60ee786c3f6c5"
- integrity sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==
- dependencies:
- call-bind "^1.0.5"
- get-intrinsic "^1.2.2"
- is-regex "^1.1.4"
-
-scheduler@^0.23.0:
- version "0.23.0"
- resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe"
- integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==
- dependencies:
- loose-envify "^1.1.0"
-
-semver@^6.3.1:
- version "6.3.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
- integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
-
-semver@^7.3.7:
- version "7.5.4"
- resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
- integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
- dependencies:
- lru-cache "^6.0.0"
-
-set-function-length@^1.1.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.0.tgz#2f81dc6c16c7059bda5ab7c82c11f03a515ed8e1"
- integrity sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==
- dependencies:
- define-data-property "^1.1.1"
- function-bind "^1.1.2"
- get-intrinsic "^1.2.2"
- gopd "^1.0.1"
- has-property-descriptors "^1.0.1"
-
-set-function-name@^2.0.0, set-function-name@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a"
- integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==
- dependencies:
- define-data-property "^1.0.1"
- functions-have-names "^1.2.3"
- has-property-descriptors "^1.0.0"
-
-shebang-command@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
- integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
- dependencies:
- shebang-regex "^3.0.0"
-
-shebang-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
- integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
-
-side-channel@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
- integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
- dependencies:
- call-bind "^1.0.0"
- get-intrinsic "^1.0.2"
- object-inspect "^1.9.0"
-
-signal-exit@^4.0.1:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
- integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
-
-slash@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
- integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
-
-source-map-js@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
- integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
-
-streamsearch@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
- integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
-
-"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0:
- name string-width-cjs
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
- dependencies:
- emoji-regex "^8.0.0"
- is-fullwidth-code-point "^3.0.0"
- strip-ansi "^6.0.1"
-
-string-width@^5.0.1, string-width@^5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
- integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
- dependencies:
- eastasianwidth "^0.2.0"
- emoji-regex "^9.2.2"
- strip-ansi "^7.0.1"
-
-string.prototype.matchall@^4.0.8:
- version "4.0.10"
- resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz#a1553eb532221d4180c51581d6072cd65d1ee100"
- integrity sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- get-intrinsic "^1.2.1"
- has-symbols "^1.0.3"
- internal-slot "^1.0.5"
- regexp.prototype.flags "^1.5.0"
- set-function-name "^2.0.0"
- side-channel "^1.0.4"
-
-string.prototype.trim@^1.2.8:
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd"
- integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-string.prototype.trimend@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e"
- integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-string.prototype.trimstart@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298"
- integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
-
-"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-ansi@^7.0.1:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
- integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
- dependencies:
- ansi-regex "^6.0.1"
-
-strip-bom@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
- integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==
-
-strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
- integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
-
-styled-jsx@5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f"
- integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==
- dependencies:
- client-only "0.0.1"
-
-sucrase@^3.32.0:
- version "3.35.0"
- resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263"
- integrity sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==
- dependencies:
- "@jridgewell/gen-mapping" "^0.3.2"
- commander "^4.0.0"
- glob "^10.3.10"
- lines-and-columns "^1.1.6"
- mz "^2.7.0"
- pirates "^4.0.1"
- ts-interface-checker "^0.1.9"
-
-supports-color@^7.1.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
- integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
- dependencies:
- has-flag "^4.0.0"
-
-supports-preserve-symlinks-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
- integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-
-tailwindcss@3.3.2:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.3.2.tgz#2f9e35d715fdf0bbf674d90147a0684d7054a2d3"
- integrity sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==
- dependencies:
- "@alloc/quick-lru" "^5.2.0"
- arg "^5.0.2"
- chokidar "^3.5.3"
- didyoumean "^1.2.2"
- dlv "^1.1.3"
- fast-glob "^3.2.12"
- glob-parent "^6.0.2"
- is-glob "^4.0.3"
- jiti "^1.18.2"
- lilconfig "^2.1.0"
- micromatch "^4.0.5"
- normalize-path "^3.0.0"
- object-hash "^3.0.0"
- picocolors "^1.0.0"
- postcss "^8.4.23"
- postcss-import "^15.1.0"
- postcss-js "^4.0.1"
- postcss-load-config "^4.0.1"
- postcss-nested "^6.0.1"
- postcss-selector-parser "^6.0.11"
- postcss-value-parser "^4.2.0"
- resolve "^1.22.2"
- sucrase "^3.32.0"
-
-tapable@^2.2.0:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0"
- integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
-
-text-table@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
- integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
-
-thenify-all@^1.0.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
- integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==
- dependencies:
- thenify ">= 3.1.0 < 4"
-
-"thenify@>= 3.1.0 < 4":
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f"
- integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==
- dependencies:
- any-promise "^1.0.0"
-
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
- dependencies:
- is-number "^7.0.0"
-
-ts-interface-checker@^0.1.9:
- version "0.1.13"
- resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699"
- integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==
-
-tsconfig-paths@^3.15.0:
- version "3.15.0"
- resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4"
- integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==
- dependencies:
- "@types/json5" "^0.0.29"
- json5 "^1.0.2"
- minimist "^1.2.6"
- strip-bom "^3.0.0"
-
-tslib@^1.8.1:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
- integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
-
-tslib@^2.4.0:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae"
- integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
-
-tsutils@^3.21.0:
- version "3.21.0"
- resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
- integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==
- dependencies:
- tslib "^1.8.1"
-
-type-check@^0.4.0, type-check@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
- integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
- dependencies:
- prelude-ls "^1.2.1"
-
-type-fest@^0.20.2:
- version "0.20.2"
- resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
- integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
-
-typed-array-buffer@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60"
- integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==
- dependencies:
- call-bind "^1.0.2"
- get-intrinsic "^1.2.1"
- is-typed-array "^1.1.10"
-
-typed-array-byte-length@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0"
- integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==
- dependencies:
- call-bind "^1.0.2"
- for-each "^0.3.3"
- has-proto "^1.0.1"
- is-typed-array "^1.1.10"
-
-typed-array-byte-offset@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz#cbbe89b51fdef9cd6aaf07ad4707340abbc4ea0b"
- integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==
- dependencies:
- available-typed-arrays "^1.0.5"
- call-bind "^1.0.2"
- for-each "^0.3.3"
- has-proto "^1.0.1"
- is-typed-array "^1.1.10"
-
-typed-array-length@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb"
- integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==
- dependencies:
- call-bind "^1.0.2"
- for-each "^0.3.3"
- is-typed-array "^1.1.9"
-
-typescript@5.0.4:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b"
- integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==
-
-unbox-primitive@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"
- integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==
- dependencies:
- call-bind "^1.0.2"
- has-bigints "^1.0.2"
- has-symbols "^1.0.3"
- which-boxed-primitive "^1.0.2"
-
-update-browserslist-db@^1.0.13:
- version "1.0.13"
- resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4"
- integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==
- dependencies:
- escalade "^3.1.1"
- picocolors "^1.0.0"
-
-uri-js@^4.2.2:
- version "4.4.1"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
- integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
- dependencies:
- punycode "^2.1.0"
-
-use-sync-external-store@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a"
- integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==
-
-util-deprecate@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
-
-which-boxed-primitive@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
- integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==
- dependencies:
- is-bigint "^1.0.1"
- is-boolean-object "^1.1.0"
- is-number-object "^1.0.4"
- is-string "^1.0.5"
- is-symbol "^1.0.3"
-
-which-builtin-type@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.1.3.tgz#b1b8443707cc58b6e9bf98d32110ff0c2cbd029b"
- integrity sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==
- dependencies:
- function.prototype.name "^1.1.5"
- has-tostringtag "^1.0.0"
- is-async-function "^2.0.0"
- is-date-object "^1.0.5"
- is-finalizationregistry "^1.0.2"
- is-generator-function "^1.0.10"
- is-regex "^1.1.4"
- is-weakref "^1.0.2"
- isarray "^2.0.5"
- which-boxed-primitive "^1.0.2"
- which-collection "^1.0.1"
- which-typed-array "^1.1.9"
-
-which-collection@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906"
- integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==
- dependencies:
- is-map "^2.0.1"
- is-set "^2.0.1"
- is-weakmap "^2.0.1"
- is-weakset "^2.0.1"
-
-which-typed-array@^1.1.11, which-typed-array@^1.1.13, which-typed-array@^1.1.9:
- version "1.1.13"
- resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36"
- integrity sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==
- dependencies:
- available-typed-arrays "^1.0.5"
- call-bind "^1.0.4"
- for-each "^0.3.3"
- gopd "^1.0.1"
- has-tostringtag "^1.0.0"
-
-which@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
- integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
- dependencies:
- isexe "^2.0.0"
-
-"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
- integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
- dependencies:
- ansi-styles "^4.0.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
-
-wrap-ansi@^8.1.0:
- version "8.1.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
- integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
- dependencies:
- ansi-styles "^6.1.0"
- string-width "^5.0.1"
- strip-ansi "^7.0.1"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
-
-yallist@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
- integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
-
-yaml@^2.3.4:
- version "2.3.4"
- resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.4.tgz#53fc1d514be80aabf386dc6001eb29bf3b7523b2"
- integrity sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==
-
-yocto-queue@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
- integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==