diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/key-created-success-dialog.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/key-created-success-dialog.tsx index 73e06b4ee7..a554a001c2 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/key-created-success-dialog.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/key-created-success-dialog.tsx @@ -2,9 +2,8 @@ import { ConfirmPopover } from "@/components/confirmation-popover"; import { Dialog, DialogContent } from "@/components/ui/dialog"; -import { toast } from "@/components/ui/toaster"; import { ArrowRight, Check, CircleInfo, Key2, Plus } from "@unkey/icons"; -import { Button, Code, CopyButton, InfoTooltip, VisibleButton } from "@unkey/ui"; +import { Button, Code, CopyButton, InfoTooltip, VisibleButton, toast } from "@unkey/ui"; import { useRouter } from "next/navigation"; import { useEffect, useRef, useState } from "react"; import { UNNAMED_KEY } from "../create-key.constants"; diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/metadata-setup.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/metadata-setup.tsx index 954ad49d0c..b1e3a20a14 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/metadata-setup.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/metadata-setup.tsx @@ -1,7 +1,6 @@ "use client"; -import { toast } from "@/components/ui/toaster"; import { Code } from "@unkey/icons"; -import { Button, FormTextarea } from "@unkey/ui"; +import { Button, FormTextarea, toast } from "@unkey/ui"; import { useFormContext, useWatch } from "react-hook-form"; import type { MetadataFormValues } from "../create-key.schema"; import { ProtectionSwitch } from "./protection-switch"; diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/secret-key.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/secret-key.tsx index 2f4d86aab6..e8a7a4e215 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/secret-key.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/components/secret-key.tsx @@ -29,7 +29,7 @@ export const SecretKey = ({ className, )} > -
+
@@ -39,7 +39,7 @@ export const SecretKey = ({ {displayValue}

-
+
setIsVisible(visible)} diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-identity.ts b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-identity.ts index 96f241d152..221a9fbef7 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-identity.ts +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-identity.ts @@ -1,5 +1,5 @@ -import { toast } from "@/components/ui/toaster"; import { trpc } from "@/lib/trpc/client"; +import { toast } from "@unkey/ui"; export const useCreateIdentity = ( onSuccess?: (data: { identityId: string; externalId: string }) => void, diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-key.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-key.tsx index 21973901b9..d7a161383d 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-key.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-create-key.tsx @@ -1,5 +1,5 @@ -import { toast } from "@/components/ui/toaster"; import { trpc } from "@/lib/trpc/client"; +import { toast } from "@unkey/ui"; export const useCreateKey = ( onSuccess: (data: { diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-fetch-identities/index.ts b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-fetch-identities/index.ts index ef9990c3e1..9be752e9a9 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-fetch-identities/index.ts +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/hooks/use-fetch-identities/index.ts @@ -1,7 +1,7 @@ "use client"; -import { toast } from "@/components/ui/toaster"; import { trpc } from "@/lib/trpc/client"; +import { toast } from "@unkey/ui"; import { useMemo } from "react"; const MAX_IDENTITY_FETCH_LIMIT = 10; diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/index.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/index.tsx index ff1d893416..f01f3a101e 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/index.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_components/create-key/index.tsx @@ -14,10 +14,10 @@ import { NavigableDialogHeader, NavigableDialogNav, NavigableDialogRoot, + toast, } from "@unkey/ui"; import { type FC, useEffect, useState } from "react"; import { FormProvider } from "react-hook-form"; -import { toast } from "sonner"; import { KeyCreatedSuccessDialog } from "./components/key-created-success-dialog"; import { SectionLabel } from "./components/section-label"; import { type DialogSectionName, SECTIONS } from "./create-key.constants"; diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/controls/components/logs-search/index.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/controls/components/logs-search/index.tsx index 33be9d80e9..327c30b8bc 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/controls/components/logs-search/index.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/controls/components/logs-search/index.tsx @@ -1,7 +1,5 @@ -import { toast } from "@/components/ui/toaster"; import { trpc } from "@/lib/trpc/client"; -import { LLMSearch } from "@unkey/ui"; -import { transformStructuredOutputToFilters } from "@unkey/ui"; +import { LLMSearch, toast, transformStructuredOutputToFilters } from "@unkey/ui"; import { useFilters } from "../../../../hooks/use-filters"; export const LogsSearch = ({ apiId }: { apiId: string }) => { diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx index 9c711beabb..a6598c5d20 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx @@ -1,8 +1,6 @@ import { formatNumber } from "@/lib/fmt"; import { cn } from "@/lib/utils"; -import { Clone } from "@unkey/icons"; -import { Button, Card, CardContent } from "@unkey/ui"; -import { toast } from "sonner"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; import { formatOutcomeName, getOutcomeColor } from "../../../../../utils"; export const OutcomeDistributionSection = ({ @@ -16,20 +14,10 @@ export const OutcomeDistributionSection = ({ return null; } - const handleClick = () => { - const formattedContent = outcomeEntries + const getTextToCopy = () => { + return outcomeEntries .map(([outcome, count]) => `${formatOutcomeName(outcome)}: ${count}`) .join("\n"); - - navigator.clipboard - .writeText(formattedContent) - .then(() => { - toast.success("Outcomes copied to clipboard"); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); }; return ( @@ -59,15 +47,14 @@ export const OutcomeDistributionSection = ({
))}
- + />
diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx index d271de7db6..034ea29893 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx @@ -1,7 +1,6 @@ "use client"; -import { toast } from "@/components/ui/toaster"; -import { Clone } from "@unkey/icons"; -import { Button, Card, CardContent } from "@unkey/ui"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; +import React from "react"; export const LogSection = ({ details, @@ -10,16 +9,79 @@ export const LogSection = ({ details: Record | string; title: string; }) => { - const handleClick = () => { - navigator.clipboard - .writeText(JSON.stringify(details)) - .then(() => { - toast.success(`${title} copied to clipboard`); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); + // Helper function to get the text to copy + const getTextToCopy = () => { + let textToCopy: string; + + if (typeof details === "string") { + textToCopy = details; + } else { + // Extract text content from React components + textToCopy = Object.entries(details) + .map(([key, value]) => { + if (value === null || value === undefined) { + return key; + } + // If it's a React element, try to extract text content + if (typeof value === "object" && value !== null && "props" in value) { + return `${key}: ${extractTextFromReactElement(value)}`; + } + return `${key}: ${value}`; + }) + .join("\n"); + } + return textToCopy; + }; + + // Helper function to extract text from React elements + // This is used to extract text from React elements like TimestampInfo and Link components + const extractTextFromReactElement = (element: React.ReactNode): string => { + if (typeof element === "string" || typeof element === "number") { + return String(element); + } + + if (element === null || element === undefined) { + return ""; + } + + // Handle React elements + if (React.isValidElement(element)) { + const reactElement = element as React.ReactElement<{ + value?: string | Date | number; + children?: React.ReactNode; + href?: string; + title?: string; + }>; + + // For TimestampInfo and similar components, check for a 'value' prop first + if (reactElement.props.value) { + // If value is a date/timestamp, format it appropriately + if (reactElement.props.value instanceof Date) { + return reactElement.props.value.toISOString(); + } + return String(reactElement.props.value); + } + + // Then check for children + if (reactElement.props.children) { + if (typeof reactElement.props.children === "string") { + return reactElement.props.children; + } + if (Array.isArray(reactElement.props.children)) { + return reactElement.props.children + .map((child: React.ReactNode) => extractTextFromReactElement(child)) + .join(""); + } + return extractTextFromReactElement(reactElement.props.children); + } + + // For Link components, check for href or title + if (reactElement.props.href || reactElement.props.title) { + return reactElement.props.title || reactElement.props.href || ""; + } + } + + return String(element); }; return ( @@ -45,15 +107,15 @@ export const LogSection = ({ }) : details} - + /> diff --git a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx index 7b84457810..4aa6f78362 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx @@ -1,6 +1,4 @@ -import { toast } from "@/components/ui/toaster"; -import { Clone } from "@unkey/icons"; -import { Button, Card, CardContent } from "@unkey/ui"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; type Role = { name: string; @@ -12,19 +10,6 @@ type RolesSectionProps = { }; export const RolesSection: React.FC = ({ roles }) => { - const handleCopy = (role: Role) => { - const content = `${role.name}${role.description ? `\n${role.description}` : ""}`; - navigator.clipboard - .writeText(content) - .then(() => { - toast.success(`Role ${role.name} copied to clipboard`); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - if (!roles || roles.length === 0) { return (
@@ -58,15 +43,14 @@ export const RolesSection: React.FC = ({ roles }) => { ) : (
No description
)} - + /> ))} @@ -85,40 +69,6 @@ type PermissionsSectionProps = { }; export const PermissionsSection = ({ permissions }: PermissionsSectionProps) => { - const handleCopy = (permission: Permission) => { - const content = `${permission.name}${ - permission.description ? `\n${permission.description}` : "" - }`; - navigator.clipboard - .writeText(content) - .then(() => { - toast.success(`Permission ${permission.name} copied to clipboard`); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - - const handleCopyAll = () => { - const content = permissions - .map( - (permission) => - `${permission.name}${permission.description ? `\n${permission.description}` : ""}`, - ) - .join("\n\n"); - - navigator.clipboard - .writeText(content) - .then(() => { - toast.success("All permissions copied to clipboard"); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - if (!permissions || permissions.length === 0) { return (
@@ -141,15 +91,18 @@ export const PermissionsSection = ({ permissions }: PermissionsSectionProps) => Permissions ({permissions.length}) {permissions.length > 1 && ( - + /> )}
@@ -167,15 +120,13 @@ export const PermissionsSection = ({ permissions }: PermissionsSectionProps) => ) : (
No description
)} - + /> ))} diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/controls/components/logs-search/index.tsx b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/controls/components/logs-search/index.tsx index 529ca6eefc..fb94da345f 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/controls/components/logs-search/index.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/controls/components/logs-search/index.tsx @@ -1,7 +1,5 @@ -import { toast } from "@/components/ui/toaster"; import { trpc } from "@/lib/trpc/client"; -import { LLMSearch } from "@unkey/ui"; -import { transformStructuredOutputToFilters } from "@unkey/ui"; +import { LLMSearch, toast, transformStructuredOutputToFilters } from "@unkey/ui"; import type { KeyDetailsFilterValue } from "../../../../filters.schema"; import { useFilters } from "../../../../hooks/use-filters"; diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/table/components/log-details/index.tsx b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/table/components/log-details/index.tsx index afb3b841d1..a1edaa1651 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/table/components/log-details/index.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/table/components/log-details/index.tsx @@ -7,8 +7,8 @@ import { LogHeader } from "@/app/(app)/logs/components/table/log-details/compone import { LogSection } from "@/app/(app)/logs/components/table/log-details/components/log-section"; import { DEFAULT_DRAGGABLE_WIDTH } from "@/app/(app)/logs/constants"; import { safeParseJson } from "@/app/(app)/logs/utils"; -import { toast } from "@/components/ui/toaster"; import type { KeyDetailsLog } from "@unkey/clickhouse/src/verifications"; +import { toast } from "@unkey/ui"; import { useFetchRequestDetails } from "./components/hooks/use-logs-query"; const createPanelStyle = (distanceToTop: number) => ({ diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/controls/components/logs-search/index.tsx b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/controls/components/logs-search/index.tsx index f1f7a8a3cf..05f12c029d 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/controls/components/logs-search/index.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/controls/components/logs-search/index.tsx @@ -1,7 +1,6 @@ -import { toast } from "@/components/ui/toaster"; import { trpc } from "@/lib/trpc/client"; -import { LLMSearch } from "@unkey/ui"; -import { transformStructuredOutputToFilters } from "@unkey/ui"; +import { LLMSearch, toast, transformStructuredOutputToFilters } from "@unkey/ui"; + import { useFilters } from "../../../../hooks/use-filters"; export const LogsSearch = ({ keyspaceId }: { keyspaceId: string }) => { diff --git a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/table/components/hidden-value.tsx b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/table/components/hidden-value.tsx index 69bb2722fa..94242854b9 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/table/components/hidden-value.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/_components/components/table/components/hidden-value.tsx @@ -1,6 +1,6 @@ -import { toast } from "@/components/ui/toaster"; import { cn } from "@/lib/utils"; import { CircleLock } from "@unkey/icons"; +import { toast } from "@unkey/ui"; export const HiddenValueCell = ({ value, diff --git a/apps/dashboard/app/(app)/apis/[apiId]/settings/components/copy-api-id.tsx b/apps/dashboard/app/(app)/apis/[apiId]/settings/components/copy-api-id.tsx index 1062f70219..b3c731497c 100644 --- a/apps/dashboard/app/(app)/apis/[apiId]/settings/components/copy-api-id.tsx +++ b/apps/dashboard/app/(app)/apis/[apiId]/settings/components/copy-api-id.tsx @@ -1,6 +1,4 @@ -import { toast } from "@/components/ui/toaster"; -import { Clone } from "@unkey/icons"; -import { Input, SettingCard } from "@unkey/ui"; +import { CopyButton, SettingCard } from "@unkey/ui"; export const CopyApiId = ({ apiId }: { apiId: string }) => { return ( @@ -12,26 +10,14 @@ export const CopyApiId = ({ apiId }: { apiId: string }) => { border="bottom" contentWidth="w-full lg:w-[420px] justify-end items-center" > -
- { - navigator.clipboard.writeText(apiId); - toast.success("Copied to clipboard", { - description: apiId, - }); - }} - > - - - } - /> + {/* TODO: make this a Code component in UI for CopyKeys with optional hidden button like in Code.*/} +
+
{apiId}
+
); diff --git a/apps/dashboard/app/(app)/audit/components/table/log-details/components/log-section.tsx b/apps/dashboard/app/(app)/audit/components/table/log-details/components/log-section.tsx index 4d8b5db791..ff56a874cb 100644 --- a/apps/dashboard/app/(app)/audit/components/table/log-details/components/log-section.tsx +++ b/apps/dashboard/app/(app)/audit/components/table/log-details/components/log-section.tsx @@ -1,6 +1,4 @@ -import { toast } from "@/components/ui/toaster"; -import { Button, Card, CardContent } from "@unkey/ui"; -import { Copy } from "lucide-react"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; export const LogSection = ({ details, @@ -9,18 +7,6 @@ export const LogSection = ({ details: string | string[]; title: string; }) => { - const handleClick = () => { - navigator.clipboard - .writeText(getFormattedContent(details)) - .then(() => { - toast.success(`${title} copied to clipboard`); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - return (
@@ -42,14 +28,14 @@ export const LogSection = ({ }) : details} - + />
diff --git a/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-meta.tsx b/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-meta.tsx index fa4792d352..b7a60b3bef 100644 --- a/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-meta.tsx +++ b/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-meta.tsx @@ -1,34 +1,20 @@ -import { toast } from "@/components/ui/toaster"; -import { Button, Card, CardContent } from "@unkey/ui"; -import { Copy } from "lucide-react"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; export const LogMetaSection = ({ content }: { content: string }) => { - const handleClick = () => { - navigator.clipboard - .writeText(content) - .then(() => { - toast.success("Meta copied to clipboard"); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - return (
Meta
{content ?? ""} 
- + />
diff --git a/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-section.tsx b/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-section.tsx index 7316b5f21f..276934956d 100644 --- a/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-section.tsx +++ b/apps/dashboard/app/(app)/logs/components/table/log-details/components/log-section.tsx @@ -1,6 +1,4 @@ -import { toast } from "@/components/ui/toaster"; -import { Button, Card, CardContent } from "@unkey/ui"; -import { Copy } from "lucide-react"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; export const LogSection = ({ details, @@ -9,18 +7,6 @@ export const LogSection = ({ details: string | string[]; title: string; }) => { - const handleClick = () => { - navigator.clipboard - .writeText(getFormattedContent(details)) - .then(() => { - toast.success(`${title} copied to clipboard`); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - return (
@@ -42,14 +28,14 @@ export const LogSection = ({ }) : details} - + />
diff --git a/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-meta.tsx b/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-meta.tsx index fa4792d352..b7a60b3bef 100644 --- a/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-meta.tsx +++ b/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-meta.tsx @@ -1,34 +1,20 @@ -import { toast } from "@/components/ui/toaster"; -import { Button, Card, CardContent } from "@unkey/ui"; -import { Copy } from "lucide-react"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; export const LogMetaSection = ({ content }: { content: string }) => { - const handleClick = () => { - navigator.clipboard - .writeText(content) - .then(() => { - toast.success("Meta copied to clipboard"); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - return (
Meta
{content ?? ""} 
- + />
diff --git a/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-section.tsx b/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-section.tsx index 7316b5f21f..276934956d 100644 --- a/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-section.tsx +++ b/apps/dashboard/app/(app)/ratelimits/[namespaceId]/logs/components/table/log-details/components/log-section.tsx @@ -1,6 +1,4 @@ -import { toast } from "@/components/ui/toaster"; -import { Button, Card, CardContent } from "@unkey/ui"; -import { Copy } from "lucide-react"; +import { Card, CardContent, CopyButton } from "@unkey/ui"; export const LogSection = ({ details, @@ -9,18 +7,6 @@ export const LogSection = ({ details: string | string[]; title: string; }) => { - const handleClick = () => { - navigator.clipboard - .writeText(getFormattedContent(details)) - .then(() => { - toast.success(`${title} copied to clipboard`); - }) - .catch((error) => { - console.error("Failed to copy to clipboard:", error); - toast.error("Failed to copy to clipboard"); - }); - }; - return (
@@ -42,14 +28,14 @@ export const LogSection = ({ }) : details} - + />
diff --git a/apps/dashboard/app/(app)/settings/general/copy-workspace-id.tsx b/apps/dashboard/app/(app)/settings/general/copy-workspace-id.tsx index 65474b4d0f..ac6e186c74 100644 --- a/apps/dashboard/app/(app)/settings/general/copy-workspace-id.tsx +++ b/apps/dashboard/app/(app)/settings/general/copy-workspace-id.tsx @@ -1,8 +1,5 @@ "use client"; - -import { toast } from "@/components/ui/toaster"; -import { Clone } from "@unkey/icons"; -import { Input, SettingCard } from "@unkey/ui"; +import { CopyButton, SettingCard } from "@unkey/ui"; export const CopyWorkspaceId = ({ workspaceId }: { workspaceId: string }) => { return ( @@ -13,25 +10,14 @@ export const CopyWorkspaceId = ({ workspaceId }: { workspaceId: string }) => { contentWidth="w-full lg:w-[420px] justify-end items-end" >
- { - navigator.clipboard.writeText(workspaceId); - toast.success("Copied to clipboard", { - description: workspaceId, - }); - }} - > - - +
+ > +
{workspaceId}
+ +
); diff --git a/apps/dashboard/app/(app)/settings/workspace-navbar.tsx b/apps/dashboard/app/(app)/settings/workspace-navbar.tsx index bd5ed01fa8..5378423479 100644 --- a/apps/dashboard/app/(app)/settings/workspace-navbar.tsx +++ b/apps/dashboard/app/(app)/settings/workspace-navbar.tsx @@ -1,9 +1,10 @@ "use client"; import { QuickNavPopover } from "@/components/navbar-popover"; +import { CopyableIDButton } from "@/components/navigation/copyable-id-button"; import { Navbar } from "@/components/navigation/navbar"; import { ChevronExpandY, Gear } from "@unkey/icons"; -import { Badge, Button, CopyButton } from "@unkey/ui"; +import { Button } from "@unkey/ui"; import Link from "next/link"; const settingsNavbar = [ @@ -66,16 +67,7 @@ export const WorkspaceNavbar = ({ - {activePage.href === "general" && ( - - {workspace.id} - - - )} + {activePage.href === "general" && } {activePage.href === "root-keys" && ( diff --git a/apps/dashboard/app/layout.tsx b/apps/dashboard/app/layout.tsx index 6b51ee94a7..15e2a42af8 100644 --- a/apps/dashboard/app/layout.tsx +++ b/apps/dashboard/app/layout.tsx @@ -1,6 +1,6 @@ import { CommandMenu } from "@/components/dashboard/command-menu"; -import { Toaster } from "@/components/ui/toaster"; import { PHProvider, PostHogPageview } from "@/providers/PostHogProvider"; +import { Toaster } from "@unkey/ui"; import "@/styles/tailwind/tailwind.css"; import "@unkey/ui/css"; @@ -56,9 +56,9 @@ export default function RootLayout({ - + {children} diff --git a/apps/dashboard/components/ui/toaster.tsx b/apps/dashboard/components/ui/toaster.tsx index 5c3e291840..b7264a880e 100644 --- a/apps/dashboard/components/ui/toaster.tsx +++ b/apps/dashboard/components/ui/toaster.tsx @@ -1,5 +1,6 @@ "use client"; import { useTheme } from "next-themes"; +import type * as React from "react"; import { Toaster as Sonner, toast } from "sonner"; type ToasterProps = React.ComponentProps; diff --git a/apps/docs/docs.json b/apps/docs/docs.json index c85d1319d7..c87aef2f15 100644 --- a/apps/docs/docs.json +++ b/apps/docs/docs.json @@ -86,10 +86,7 @@ { "group": "Identities", "icon": "fingerprint", - "pages": [ - "concepts/identities/overview", - "concepts/identities/ratelimits" - ] + "pages": ["concepts/identities/overview", "concepts/identities/ratelimits"] } ] }, @@ -382,9 +379,7 @@ }, { "group": "Migrations", - "pages": [ - "libraries/ts/sdk/migrations/migrate-to-unkey" - ] + "pages": ["libraries/ts/sdk/migrations/migrate-to-unkey"] }, { "group": "Permissions", diff --git a/apps/engineering/content/design/components/buttons/copy-button.mdx b/apps/engineering/content/design/components/buttons/copy-button.mdx index 03f71300f7..6b0a304390 100644 --- a/apps/engineering/content/design/components/buttons/copy-button.mdx +++ b/apps/engineering/content/design/components/buttons/copy-button.mdx @@ -43,6 +43,7 @@ Different usage patterns and variants of the CopyButton component. - **Analytics Support**: Optional src prop for tracking - **Event Prevention**: Prevents event propagation to parent elements - **TypeScript Support**: Full TypeScript support with proper typing +- **Toast Message Support**: Optional toastMessage prop (default is "Copied to clipboard") ## Props @@ -50,6 +51,7 @@ Different usage patterns and variants of the CopyButton component. |------|------|---------|-------------| | `value` | `string` | **Required** | The text content to be copied to clipboard | | `src` | `string?` | `undefined` | Optional source identifier for analytics tracking | +| `toastMessage` | `string?` | `undefined` | Custom toast message to show when copied successfully | | `variant` | `ButtonVariant` | `"outline"` | Button variant (outline, ghost, primary, etc.) | | `className` | `string?` | `undefined` | Additional CSS classes to apply to the button | diff --git a/internal/ui/src/components/buttons/copy-button.tsx b/internal/ui/src/components/buttons/copy-button.tsx index 2304ebd853..1ab92444b8 100644 --- a/internal/ui/src/components/buttons/copy-button.tsx +++ b/internal/ui/src/components/buttons/copy-button.tsx @@ -2,6 +2,7 @@ import { TaskChecked, TaskUnchecked } from "@unkey/icons"; import * as React from "react"; import { cn } from "../../lib/utils"; +import { toast } from "../toaster"; import { Button, type ButtonProps } from "./button"; type CopyButtonProps = ButtonProps & { @@ -13,6 +14,10 @@ type CopyButtonProps = ButtonProps & { * Source component for analytics */ src?: string; + /** + * toast message to show when copied + */ + toastMessage?: string; }; async function copyToClipboardWithMeta(value: string, _meta?: Record) { @@ -20,7 +25,7 @@ async function copyToClipboardWithMeta(value: string, _meta?: Record( - ({ value, src, variant = "outline", className, onClick, ...props }, ref) => { + ({ value, src, variant = "outline", className, toastMessage, ...props }, ref) => { const [copied, setCopied] = React.useState(false); React.useEffect(() => { @@ -45,9 +50,18 @@ export const CopyButton = React.forwardRef( onClick={(e) => { if (!e.defaultPrevented) { e.stopPropagation(); // Prevent triggering parent button click - copyToClipboardWithMeta(value, { - component: src, - }); + try { + copyToClipboardWithMeta(value, { + component: src, + }); + toast.success("Copied to clipboard", { + description: toastMessage, + }); + } catch (e) { + toast.error("Failed to copy to clipboard", { + description: e instanceof Error ? e.message : "Unknown error", + }); + } setCopied(true); } }} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a3b08953e4..93866f5457 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -872,7 +872,7 @@ importers: version: 18.3.1 react-email: specifier: 2.1.1 - version: 2.1.1(eslint@9.30.0) + version: 2.1.1(eslint@9.30.1) resend: specifier: ^4.4.0 version: 4.4.0(react-dom@18.3.1)(react@18.3.1) @@ -948,7 +948,7 @@ importers: version: 0.4.6(react-dom@18.3.1)(react@18.3.1) nuqs: specifier: ^1.17.6 - version: 1.17.6(next@14.2.25) + version: 1.17.6(next@14.2.30) react: specifier: ^18.2.0 version: 18.3.1 @@ -1585,7 +1585,7 @@ packages: ajv: 8.17.1 ajv-errors: 3.0.0(ajv@8.17.1) ajv-formats: 2.1.1(ajv@8.17.1) - avsc: 5.7.7 + avsc: 5.7.8 js-yaml: 4.1.0 jsonpath-plus: 10.3.0 node-fetch: 2.6.7 @@ -1630,23 +1630,23 @@ packages: engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.27.7 + '@babel/types': 7.28.0 dev: false - /@babel/parser@7.27.7: - resolution: {integrity: sha512-qnzXzDXdr/po3bOTbTIQZ7+TxNKxpkN5IifVLXS+r7qwynkZfPyjZfE7hCXbo7IoO9TNcSyibgONsf2HauUd3Q==} + /@babel/parser@7.28.0: + resolution: {integrity: sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.27.7 + '@babel/types': 7.28.0 dev: false /@babel/runtime@7.27.6: resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} engines: {node: '>=6.9.0'} - /@babel/types@7.27.7: - resolution: {integrity: sha512-8OLQgDScAOHXnAz2cV+RfzzNMipuLVBz2biuAJFMV9bfkNf393je3VM8CLkjQodW5+iWsSJdSgSWT6rsZoXHPw==} + /@babel/types@7.28.0: + resolution: {integrity: sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.27.1 @@ -2263,8 +2263,8 @@ packages: - supports-color dev: true - /@emnapi/runtime@1.4.3: - resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==} + /@emnapi/runtime@1.4.4: + resolution: {integrity: sha512-hHyapA4A3gPaDCNfiqyZUStTMqIkKRshqPIuDOXv1hcBnD4U3l8cP0T1HMCfGRxQ6V64TGCcoswChANyOAwbQg==} requiresBuild: true dependencies: tslib: 2.8.1 @@ -2343,8 +2343,8 @@ packages: requiresBuild: true optional: true - /@esbuild/aix-ppc64@0.25.5: - resolution: {integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==} + /@esbuild/aix-ppc64@0.25.6: + resolution: {integrity: sha512-ShbM/3XxwuxjFiuVBHA+d3j5dyac0aEVVq1oluIDf71hUw0aRF59dV/efUsIwFnR6m8JNM2FjZOzmaZ8yG61kw==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] @@ -2404,8 +2404,8 @@ packages: requiresBuild: true optional: true - /@esbuild/android-arm64@0.25.5: - resolution: {integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==} + /@esbuild/android-arm64@0.25.6: + resolution: {integrity: sha512-hd5zdUarsK6strW+3Wxi5qWws+rJhCCbMiC9QZyzoxfk5uHRIE8T287giQxzVpEvCwuJ9Qjg6bEjcRJcgfLqoA==} engines: {node: '>=18'} cpu: [arm64] os: [android] @@ -2465,8 +2465,8 @@ packages: requiresBuild: true optional: true - /@esbuild/android-arm@0.25.5: - resolution: {integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==} + /@esbuild/android-arm@0.25.6: + resolution: {integrity: sha512-S8ToEOVfg++AU/bHwdksHNnyLyVM+eMVAOf6yRKFitnwnbwwPNqKr3srzFRe7nzV69RQKb5DgchIX5pt3L53xg==} engines: {node: '>=18'} cpu: [arm] os: [android] @@ -2526,8 +2526,8 @@ packages: requiresBuild: true optional: true - /@esbuild/android-x64@0.25.5: - resolution: {integrity: sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==} + /@esbuild/android-x64@0.25.6: + resolution: {integrity: sha512-0Z7KpHSr3VBIO9A/1wcT3NTy7EB4oNC4upJ5ye3R7taCc2GUdeynSLArnon5G8scPwaU866d3H4BCrE5xLW25A==} engines: {node: '>=18'} cpu: [x64] os: [android] @@ -2587,8 +2587,8 @@ packages: requiresBuild: true optional: true - /@esbuild/darwin-arm64@0.25.5: - resolution: {integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==} + /@esbuild/darwin-arm64@0.25.6: + resolution: {integrity: sha512-FFCssz3XBavjxcFxKsGy2DYK5VSvJqa6y5HXljKzhRZ87LvEi13brPrf/wdyl/BbpbMKJNOr1Sd0jtW4Ge1pAA==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] @@ -2648,8 +2648,8 @@ packages: requiresBuild: true optional: true - /@esbuild/darwin-x64@0.25.5: - resolution: {integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==} + /@esbuild/darwin-x64@0.25.6: + resolution: {integrity: sha512-GfXs5kry/TkGM2vKqK2oyiLFygJRqKVhawu3+DOCk7OxLy/6jYkWXhlHwOoTb0WqGnWGAS7sooxbZowy+pK9Yg==} engines: {node: '>=18'} cpu: [x64] os: [darwin] @@ -2709,8 +2709,8 @@ packages: requiresBuild: true optional: true - /@esbuild/freebsd-arm64@0.25.5: - resolution: {integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==} + /@esbuild/freebsd-arm64@0.25.6: + resolution: {integrity: sha512-aoLF2c3OvDn2XDTRvn8hN6DRzVVpDlj2B/F66clWd/FHLiHaG3aVZjxQX2DYphA5y/evbdGvC6Us13tvyt4pWg==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] @@ -2770,8 +2770,8 @@ packages: requiresBuild: true optional: true - /@esbuild/freebsd-x64@0.25.5: - resolution: {integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==} + /@esbuild/freebsd-x64@0.25.6: + resolution: {integrity: sha512-2SkqTjTSo2dYi/jzFbU9Plt1vk0+nNg8YC8rOXXea+iA3hfNJWebKYPs3xnOUf9+ZWhKAaxnQNUf2X9LOpeiMQ==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] @@ -2831,8 +2831,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-arm64@0.25.5: - resolution: {integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==} + /@esbuild/linux-arm64@0.25.6: + resolution: {integrity: sha512-b967hU0gqKd9Drsh/UuAm21Khpoh6mPBSgz8mKRq4P5mVK8bpA+hQzmm/ZwGVULSNBzKdZPQBRT3+WuVavcWsQ==} engines: {node: '>=18'} cpu: [arm64] os: [linux] @@ -2892,8 +2892,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-arm@0.25.5: - resolution: {integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==} + /@esbuild/linux-arm@0.25.6: + resolution: {integrity: sha512-SZHQlzvqv4Du5PrKE2faN0qlbsaW/3QQfUUc6yO2EjFcA83xnwm91UbEEVx4ApZ9Z5oG8Bxz4qPE+HFwtVcfyw==} engines: {node: '>=18'} cpu: [arm] os: [linux] @@ -2953,8 +2953,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-ia32@0.25.5: - resolution: {integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==} + /@esbuild/linux-ia32@0.25.6: + resolution: {integrity: sha512-aHWdQ2AAltRkLPOsKdi3xv0mZ8fUGPdlKEjIEhxCPm5yKEThcUjHpWB1idN74lfXGnZ5SULQSgtr5Qos5B0bPw==} engines: {node: '>=18'} cpu: [ia32] os: [linux] @@ -3014,8 +3014,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-loong64@0.25.5: - resolution: {integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==} + /@esbuild/linux-loong64@0.25.6: + resolution: {integrity: sha512-VgKCsHdXRSQ7E1+QXGdRPlQ/e08bN6WMQb27/TMfV+vPjjTImuT9PmLXupRlC90S1JeNNW5lzkAEO/McKeJ2yg==} engines: {node: '>=18'} cpu: [loong64] os: [linux] @@ -3075,8 +3075,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-mips64el@0.25.5: - resolution: {integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==} + /@esbuild/linux-mips64el@0.25.6: + resolution: {integrity: sha512-WViNlpivRKT9/py3kCmkHnn44GkGXVdXfdc4drNmRl15zVQ2+D2uFwdlGh6IuK5AAnGTo2qPB1Djppj+t78rzw==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] @@ -3136,8 +3136,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-ppc64@0.25.5: - resolution: {integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==} + /@esbuild/linux-ppc64@0.25.6: + resolution: {integrity: sha512-wyYKZ9NTdmAMb5730I38lBqVu6cKl4ZfYXIs31Baf8aoOtB4xSGi3THmDYt4BTFHk7/EcVixkOV2uZfwU3Q2Jw==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] @@ -3197,8 +3197,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-riscv64@0.25.5: - resolution: {integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==} + /@esbuild/linux-riscv64@0.25.6: + resolution: {integrity: sha512-KZh7bAGGcrinEj4qzilJ4hqTY3Dg2U82c8bv+e1xqNqZCrCyc+TL9AUEn5WGKDzm3CfC5RODE/qc96OcbIe33w==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] @@ -3258,8 +3258,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-s390x@0.25.5: - resolution: {integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==} + /@esbuild/linux-s390x@0.25.6: + resolution: {integrity: sha512-9N1LsTwAuE9oj6lHMyyAM+ucxGiVnEqUdp4v7IaMmrwb06ZTEVCIs3oPPplVsnjPfyjmxwHxHMF8b6vzUVAUGw==} engines: {node: '>=18'} cpu: [s390x] os: [linux] @@ -3319,8 +3319,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-x64@0.25.5: - resolution: {integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==} + /@esbuild/linux-x64@0.25.6: + resolution: {integrity: sha512-A6bJB41b4lKFWRKNrWoP2LHsjVzNiaurf7wyj/XtFNTsnPuxwEBWHLty+ZE0dWBKuSK1fvKgrKaNjBS7qbFKig==} engines: {node: '>=18'} cpu: [x64] os: [linux] @@ -3336,8 +3336,8 @@ packages: requiresBuild: true optional: true - /@esbuild/netbsd-arm64@0.25.5: - resolution: {integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==} + /@esbuild/netbsd-arm64@0.25.6: + resolution: {integrity: sha512-IjA+DcwoVpjEvyxZddDqBY+uJ2Snc6duLpjmkXm/v4xuS3H+3FkLZlDm9ZsAbF9rsfP3zeA0/ArNDORZgrxR/Q==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] @@ -3397,8 +3397,8 @@ packages: requiresBuild: true optional: true - /@esbuild/netbsd-x64@0.25.5: - resolution: {integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==} + /@esbuild/netbsd-x64@0.25.6: + resolution: {integrity: sha512-dUXuZr5WenIDlMHdMkvDc1FAu4xdWixTCRgP7RQLBOkkGgwuuzaGSYcOpW4jFxzpzL1ejb8yF620UxAqnBrR9g==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] @@ -3423,8 +3423,8 @@ packages: requiresBuild: true optional: true - /@esbuild/openbsd-arm64@0.25.5: - resolution: {integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==} + /@esbuild/openbsd-arm64@0.25.6: + resolution: {integrity: sha512-l8ZCvXP0tbTJ3iaqdNf3pjaOSd5ex/e6/omLIQCVBLmHTlfXW3zAxQ4fnDmPLOB1x9xrcSi/xtCWFwCZRIaEwg==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] @@ -3484,8 +3484,8 @@ packages: requiresBuild: true optional: true - /@esbuild/openbsd-x64@0.25.5: - resolution: {integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==} + /@esbuild/openbsd-x64@0.25.6: + resolution: {integrity: sha512-hKrmDa0aOFOr71KQ/19JC7az1P0GWtCN1t2ahYAf4O007DHZt/dW8ym5+CUdJhQ/qkZmI1HAF8KkJbEFtCL7gw==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] @@ -3493,6 +3493,15 @@ packages: dev: true optional: true + /@esbuild/openharmony-arm64@0.25.6: + resolution: {integrity: sha512-+SqBcAWoB1fYKmpWoQP4pGtx+pUUC//RNYhFdbcSA16617cchuryuhOCRpPsjCblKukAckWsV+aQ3UKT/RMPcA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + requiresBuild: true + dev: true + optional: true + /@esbuild/sunos-x64@0.18.20: resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} engines: {node: '>=12'} @@ -3545,8 +3554,8 @@ packages: requiresBuild: true optional: true - /@esbuild/sunos-x64@0.25.5: - resolution: {integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==} + /@esbuild/sunos-x64@0.25.6: + resolution: {integrity: sha512-dyCGxv1/Br7MiSC42qinGL8KkG4kX0pEsdb0+TKhmJZgCUDBGmyo1/ArCjNGiOLiIAgdbWgmWgib4HoCi5t7kA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] @@ -3606,8 +3615,8 @@ packages: requiresBuild: true optional: true - /@esbuild/win32-arm64@0.25.5: - resolution: {integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==} + /@esbuild/win32-arm64@0.25.6: + resolution: {integrity: sha512-42QOgcZeZOvXfsCBJF5Afw73t4veOId//XD3i+/9gSkhSV6Gk3VPlWncctI+JcOyERv85FUo7RxuxGy+z8A43Q==} engines: {node: '>=18'} cpu: [arm64] os: [win32] @@ -3667,8 +3676,8 @@ packages: requiresBuild: true optional: true - /@esbuild/win32-ia32@0.25.5: - resolution: {integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==} + /@esbuild/win32-ia32@0.25.6: + resolution: {integrity: sha512-4AWhgXmDuYN7rJI6ORB+uU9DHLq/erBbuMoAuB4VWJTu5KtCgcKYPynF0YI1VkBNuEfjNlLrFr9KZPJzrtLkrQ==} engines: {node: '>=18'} cpu: [ia32] os: [win32] @@ -3728,8 +3737,8 @@ packages: requiresBuild: true optional: true - /@esbuild/win32-x64@0.25.5: - resolution: {integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==} + /@esbuild/win32-x64@0.25.6: + resolution: {integrity: sha512-NgJPHHbEpLQgDH2MjQu90pzW/5vvXIZ7KOnPyNBm92A6WgZ/7b6fJyUBjoumLqeOQQGqY2QjQxRo97ah4Sj0cA==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -3737,13 +3746,13 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.7.0(eslint@9.30.0): + /@eslint-community/eslint-utils@4.7.0(eslint@9.30.1): resolution: {integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 9.30.0 + eslint: 9.30.1 eslint-visitor-keys: 3.4.3 dev: false @@ -3799,8 +3808,8 @@ packages: - supports-color dev: false - /@eslint/js@9.30.0: - resolution: {integrity: sha512-Wzw3wQwPvc9sHM+NjakWTcPx11mbZyiYHuwWa/QfZ7cIRX7WK54PSk7bdyXDaoaopUcMatv1zaQvOAAO8hCdww==} + /@eslint/js@9.30.1: + resolution: {integrity: sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dev: false @@ -4251,7 +4260,7 @@ packages: cpu: [wasm32] requiresBuild: true dependencies: - '@emnapi/runtime': 1.4.3 + '@emnapi/runtime': 1.4.4 optional: true /@img/sharp-wasm32@0.33.5: @@ -4260,7 +4269,7 @@ packages: cpu: [wasm32] requiresBuild: true dependencies: - '@emnapi/runtime': 1.4.3 + '@emnapi/runtime': 1.4.4 dev: true optional: true @@ -4315,8 +4324,8 @@ packages: yoctocolors-cjs: 2.1.2 dev: true - /@inquirer/confirm@5.1.12(@types/node@20.14.9): - resolution: {integrity: sha512-dpq+ielV9/bqgXRUbNH//KsY6WEw9DrGPmipkpmgC1Y46cwuBTNx7PXFWTjc3MQ+urcc0QxoVHcMI0FW4Ok0hg==} + /@inquirer/confirm@5.1.13(@types/node@20.14.9): + resolution: {integrity: sha512-EkCtvp67ICIVVzjsquUiVSd+V5HRGOGQfsqA4E4vMWhYnB7InUL0pa0TIWt1i+OfP16Gkds8CdIu6yGZwOM1Yw==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -4324,7 +4333,7 @@ packages: '@types/node': optional: true dependencies: - '@inquirer/core': 10.1.13(@types/node@20.14.9) + '@inquirer/core': 10.1.14(@types/node@20.14.9) '@inquirer/type': 3.0.7(@types/node@20.14.9) '@types/node': 20.14.9 dev: true @@ -4343,8 +4352,8 @@ packages: '@types/node': 22.14.0 dev: true - /@inquirer/core@10.1.13(@types/node@20.14.9): - resolution: {integrity: sha512-1viSxebkYN2nJULlzCxES6G9/stgHSepZ9LqqfdIGPHj5OHhiBUXVS0a6R0bEC2A+VL4D9w6QB66ebCr6HGllA==} + /@inquirer/core@10.1.14(@types/node@20.14.9): + resolution: {integrity: sha512-Ma+ZpOJPewtIYl6HZHZckeX1STvDnHTCB2GVINNUlSEn2Am6LddWwfPkIGY0IUFVjUUrr/93XlBwTK6mfLjf0A==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -4363,26 +4372,6 @@ packages: yoctocolors-cjs: 2.1.2 dev: true - /@inquirer/core@10.1.13(@types/node@22.14.0): - resolution: {integrity: sha512-1viSxebkYN2nJULlzCxES6G9/stgHSepZ9LqqfdIGPHj5OHhiBUXVS0a6R0bEC2A+VL4D9w6QB66ebCr6HGllA==} - engines: {node: '>=18'} - peerDependencies: - '@types/node': '>=18' - peerDependenciesMeta: - '@types/node': - optional: true - dependencies: - '@inquirer/figures': 1.0.12 - '@inquirer/type': 3.0.7(@types/node@22.14.0) - '@types/node': 22.14.0 - ansi-escapes: 4.3.2 - cli-width: 4.1.0 - mute-stream: 2.0.0 - signal-exit: 4.1.0 - wrap-ansi: 6.2.0 - yoctocolors-cjs: 2.1.2 - dev: true - /@inquirer/core@10.1.14(@types/node@22.14.0): resolution: {integrity: sha512-Ma+ZpOJPewtIYl6HZHZckeX1STvDnHTCB2GVINNUlSEn2Am6LddWwfPkIGY0IUFVjUUrr/93XlBwTK6mfLjf0A==} engines: {node: '>=18'} @@ -4612,55 +4601,37 @@ packages: '@sinclair/typebox': 0.27.8 dev: true - /@jridgewell/gen-mapping@0.3.11: - resolution: {integrity: sha512-C512c1ytBTio4MrpWKlJpyFHT6+qfFL8SZ58zBzJ1OOzUEjHeF1BtjY2fH7n4x/g2OV/KiiMLAivOp1DXmiMMw==} - dependencies: - '@jridgewell/sourcemap-codec': 1.5.3 - '@jridgewell/trace-mapping': 0.3.28 - /@jridgewell/gen-mapping@0.3.12: resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==} dependencies: '@jridgewell/sourcemap-codec': 1.5.4 '@jridgewell/trace-mapping': 0.3.29 - dev: false /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - /@jridgewell/source-map@0.3.9: - resolution: {integrity: sha512-amBU75CKOOkcQLfyM6J+DnWwz41yTsWI7o8MQ003LwUIWb4NYX/evAblTx1oBBYJySqL/zHPxHXDw5ewpQaUFw==} + /@jridgewell/source-map@0.3.10: + resolution: {integrity: sha512-0pPkgz9dY+bijgistcTTJ5mR+ocqRXLuhXHYdzoMmmoJ2C9S46RCm2GMUbatPEUK9Yjy26IrAy8D/M00lLkv+Q==} dependencies: - '@jridgewell/gen-mapping': 0.3.11 - '@jridgewell/trace-mapping': 0.3.28 + '@jridgewell/gen-mapping': 0.3.12 + '@jridgewell/trace-mapping': 0.3.29 dev: false - /@jridgewell/sourcemap-codec@1.5.3: - resolution: {integrity: sha512-AiR5uKpFxP3PjO4R19kQGIMwxyRyPuXmKEEy301V1C0+1rVjS94EZQXf1QKZYN8Q0YM+estSPhmx5JwNftv6nw==} - /@jridgewell/sourcemap-codec@1.5.4: resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==} - dev: false - - /@jridgewell/trace-mapping@0.3.28: - resolution: {integrity: sha512-KNNHHwW3EIp4EDYOvYFGyIFfx36R2dNJYH4knnZlF8T5jdbD5Wx8xmSaQ2gP9URkJ04LGEtlcCtwArKcmFcwKw==} - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.3 /@jridgewell/trace-mapping@0.3.29: resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.4 - dev: false /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.3 + '@jridgewell/sourcemap-codec': 1.5.4 dev: true /@js-sdsl/ordered-map@4.4.2: @@ -4914,7 +4885,7 @@ packages: chalk: 5.4.1 detect-port: 1.6.1 fs-extra: 11.3.0 - inquirer: 12.6.3(@types/node@22.14.0) + inquirer: 12.7.0(@types/node@22.14.0) js-yaml: 4.1.0 ora: 6.3.1 yargs: 17.7.2 @@ -5187,6 +5158,10 @@ packages: resolution: {integrity: sha512-JnzQ2cExDeG7FxJwqAksZ3aqVJrHjFwZQAEJ9gQZSoEhIow7SNoKZzju/AwQ+PLIR4NY8V0rhcVozx/2izDO0w==} dev: false + /@next/env@14.2.30: + resolution: {integrity: sha512-KBiBKrDY6kxTQWGzKjQB7QirL3PiiOkV7KW98leHFjtVRKtft76Ra5qSA/SL75xT44dp6hOcqiiJ6iievLOYug==} + dev: false + /@next/swc-darwin-arm64@14.1.0: resolution: {integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==} engines: {node: '>= 10'} @@ -5213,6 +5188,15 @@ packages: dev: false optional: true + /@next/swc-darwin-arm64@14.2.30: + resolution: {integrity: sha512-EAqfOTb3bTGh9+ewpO/jC59uACadRHM6TSA9DdxJB/6gxOpyV+zrbqeXiFTDy9uV6bmipFDkfpAskeaDcO+7/g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + /@next/swc-darwin-x64@14.1.0: resolution: {integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==} engines: {node: '>= 10'} @@ -5239,6 +5223,15 @@ packages: dev: false optional: true + /@next/swc-darwin-x64@14.2.30: + resolution: {integrity: sha512-TyO7Wz1IKE2kGv8dwQ0bmPL3s44EKVencOqwIY69myoS3rdpO1NPg5xPM5ymKu7nfX4oYJrpMxv8G9iqLsnL4A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + /@next/swc-linux-arm64-gnu@14.1.0: resolution: {integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==} engines: {node: '>= 10'} @@ -5265,6 +5258,15 @@ packages: dev: false optional: true + /@next/swc-linux-arm64-gnu@14.2.30: + resolution: {integrity: sha512-I5lg1fgPJ7I5dk6mr3qCH1hJYKJu1FsfKSiTKoYwcuUf53HWTrEkwmMI0t5ojFKeA6Vu+SfT2zVy5NS0QLXV4Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + /@next/swc-linux-arm64-musl@14.1.0: resolution: {integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==} engines: {node: '>= 10'} @@ -5291,6 +5293,15 @@ packages: dev: false optional: true + /@next/swc-linux-arm64-musl@14.2.30: + resolution: {integrity: sha512-8GkNA+sLclQyxgzCDs2/2GSwBc92QLMrmYAmoP2xehe5MUKBLB2cgo34Yu242L1siSkwQkiV4YLdCnjwc/Micw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + /@next/swc-linux-x64-gnu@14.1.0: resolution: {integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==} engines: {node: '>= 10'} @@ -5317,6 +5328,15 @@ packages: dev: false optional: true + /@next/swc-linux-x64-gnu@14.2.30: + resolution: {integrity: sha512-8Ly7okjssLuBoe8qaRCcjGtcMsv79hwzn/63wNeIkzJVFVX06h5S737XNr7DZwlsbTBDOyI6qbL2BJB5n6TV/w==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + /@next/swc-linux-x64-musl@14.1.0: resolution: {integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==} engines: {node: '>= 10'} @@ -5343,6 +5363,15 @@ packages: dev: false optional: true + /@next/swc-linux-x64-musl@14.2.30: + resolution: {integrity: sha512-dBmV1lLNeX4mR7uI7KNVHsGQU+OgTG5RGFPi3tBJpsKPvOPtg9poyav/BYWrB3GPQL4dW5YGGgalwZ79WukbKQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + /@next/swc-win32-arm64-msvc@14.1.0: resolution: {integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==} engines: {node: '>= 10'} @@ -5369,6 +5398,15 @@ packages: dev: false optional: true + /@next/swc-win32-arm64-msvc@14.2.30: + resolution: {integrity: sha512-6MMHi2Qc1Gkq+4YLXAgbYslE1f9zMGBikKMdmQRHXjkGPot1JY3n5/Qrbg40Uvbi8//wYnydPnyvNhI1DMUW1g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + /@next/swc-win32-ia32-msvc@14.1.0: resolution: {integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==} engines: {node: '>= 10'} @@ -5395,6 +5433,15 @@ packages: dev: false optional: true + /@next/swc-win32-ia32-msvc@14.2.30: + resolution: {integrity: sha512-pVZMnFok5qEX4RT59mK2hEVtJX+XFfak+/rjHpyFh7juiT52r177bfFKhnlafm0UOSldhXjj32b+LZIOdswGTg==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + /@next/swc-win32-x64-msvc@14.1.0: resolution: {integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==} engines: {node: '>= 10'} @@ -5421,6 +5468,15 @@ packages: dev: false optional: true + /@next/swc-win32-x64-msvc@14.2.30: + resolution: {integrity: sha512-4KCo8hMZXMjpTzs3HOqOGYYwAXymXIy7PEPAXNEcEOyKqkjiDlECumrWziy+JEF0Oi4ILHGxzgQ3YiMGG2t/Lg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -5545,8 +5601,8 @@ packages: - typescript dev: true - /@oclif/core@4.4.0: - resolution: {integrity: sha512-wH5g3SLmbRutnr7UzQBSozRFEAZ7U9YGB/wFuBRr0ZghTgv5DE+KQaf6ZtU7iFb9pvkvoVRnT5XheNAtbjRDaQ==} + /@oclif/core@4.5.0: + resolution: {integrity: sha512-UYWyDFNKFyzgXVXO0DHfOvJ/8qpw4yPYe7fOHausDEVU44qjDr90ZnfYTljZPK8dhgMggxiZs9n+TFajnXRp7g==} engines: {node: '>=18.0.0'} dependencies: ansi-escapes: 4.3.2 @@ -5599,7 +5655,7 @@ packages: resolution: {integrity: sha512-p30fo3JPtbOqTJOX9A/8qKV/14XWt8xFgG/goVfIkuKBAO+cdY78ag8pYatlpzsYzJhO27X1MFn0WkkPWo36Ww==} engines: {node: '>=18.0.0'} dependencies: - '@oclif/core': 4.4.0 + '@oclif/core': 4.5.0 ansis: 3.17.0 debug: 4.4.1(supports-color@8.1.1) npm: 10.9.3 @@ -6236,11 +6292,75 @@ packages: engines: {node: '>=14'} dev: true - /@orama/orama@3.1.9: - resolution: {integrity: sha512-UXQYvN0DYl5EMOXX3O0Rwke+0R0Pd7PW/hOVwgpPd6KKJPb3RP74m3PEbEFjdTzZVLUW81o7herYXD2h4PVcGQ==} + /@orama/orama@3.1.10: + resolution: {integrity: sha512-YNou2xlCIgPhMDe1TBEmp1wsAPFCL7Fd11rct7YfXYYiNAVBNL2rWoEydJRDJFVmqgt0l6mzSg35sDQ3i8yfKQ==} engines: {node: '>= 20.0.0'} dev: false + /@oxlint/darwin-arm64@1.6.0: + resolution: {integrity: sha512-m3wyqBh1TOHjpr/dXeIZY7OoX+MQazb+bMHQdDtwUvefrafUx+5YHRvulYh1sZSQ449nQ3nk3qj5qj535vZRjg==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@oxlint/darwin-x64@1.6.0: + resolution: {integrity: sha512-75fJfF/9xNypr7cnOYoZBhfmG1yP7ex3pUOeYGakmtZRffO9z1i1quLYhjZsmaDXsAIZ3drMhenYHMmFKS3SRg==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@oxlint/linux-arm64-gnu@1.6.0: + resolution: {integrity: sha512-YhXGf0FXa72bEt4F7eTVKx5X3zWpbAOPnaA/dZ6/g8tGhw1m9IFjrabVHFjzcx3dQny4MgA59EhyElkDvpUe8A==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@oxlint/linux-arm64-musl@1.6.0: + resolution: {integrity: sha512-T3JDhx8mjGjvh5INsPZJrlKHmZsecgDYvtvussKRdkc1Nnn7WC+jH9sh5qlmYvwzvmetlPVNezAoNvmGO9vtMg==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@oxlint/linux-x64-gnu@1.6.0: + resolution: {integrity: sha512-Dx7ghtAl8aXBdqofJpi338At6lkeCtTfoinTYQXd9/TEJx+f+zCGNlQO6nJz3ydJBX48FDuOFKkNC+lUlWrd8w==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@oxlint/linux-x64-musl@1.6.0: + resolution: {integrity: sha512-7KvMGdWmAZtAtg6IjoEJHKxTXdAcrHnUnqfgs0JpXst7trquV2mxBeRZusQXwxpu4HCSomKMvJfsp1qKaqSFDg==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@oxlint/win32-arm64@1.6.0: + resolution: {integrity: sha512-iSGC9RwX+dl7o5KFr5aH7Gq3nFbkq/3Gda6mxNPMvNkWrgXdIyiINxpyD8hJu566M+QSv1wEAu934BZotFDyoQ==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@oxlint/win32-x64@1.6.0: + resolution: {integrity: sha512-jOj3L/gfLc0IwgOTkZMiZ5c673i/hbAmidlaylT0gE6H18hln9HxPgp5GCf4E4y6mwEJlW8QC5hQi221+9otdA==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@peculiar/asn1-schema@2.3.15: resolution: {integrity: sha512-QPeD8UA8axQREpgR5UTAfu2mqQmm97oUqahDtNdBcfj3qAnoXzFdQW+aNf/tD2WVXF8Fhmftxoj0eMIT++gX2w==} dependencies: @@ -9005,160 +9125,160 @@ packages: engines: {node: '>= 10'} dev: false - /@rollup/rollup-android-arm-eabi@4.44.1: - resolution: {integrity: sha512-JAcBr1+fgqx20m7Fwe1DxPUl/hPkee6jA6Pl7n1v2EFiktAHenTaXl5aIFjUIEsfn9w3HE4gK1lEgNGMzBDs1w==} + /@rollup/rollup-android-arm-eabi@4.44.2: + resolution: {integrity: sha512-g0dF8P1e2QYPOj1gu7s/3LVP6kze9A7m6x0BZ9iTdXK8N5c2V7cpBKHV3/9A4Zd8xxavdhK0t4PnqjkqVmUc9Q==} cpu: [arm] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-android-arm64@4.44.1: - resolution: {integrity: sha512-RurZetXqTu4p+G0ChbnkwBuAtwAbIwJkycw1n6GvlGlBuS4u5qlr5opix8cBAYFJgaY05TWtM+LaoFggUmbZEQ==} + /@rollup/rollup-android-arm64@4.44.2: + resolution: {integrity: sha512-Yt5MKrOosSbSaAK5Y4J+vSiID57sOvpBNBR6K7xAaQvk3MkcNVV0f9fE20T+41WYN8hDn6SGFlFrKudtx4EoxA==} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-arm64@4.44.1: - resolution: {integrity: sha512-fM/xPesi7g2M7chk37LOnmnSTHLG/v2ggWqKj3CCA1rMA4mm5KVBT1fNoswbo1JhPuNNZrVwpTvlCVggv8A2zg==} + /@rollup/rollup-darwin-arm64@4.44.2: + resolution: {integrity: sha512-EsnFot9ZieM35YNA26nhbLTJBHD0jTwWpPwmRVDzjylQT6gkar+zenfb8mHxWpRrbn+WytRRjE0WKsfaxBkVUA==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-x64@4.44.1: - resolution: {integrity: sha512-gDnWk57urJrkrHQ2WVx9TSVTH7lSlU7E3AFqiko+bgjlh78aJ88/3nycMax52VIVjIm3ObXnDL2H00e/xzoipw==} + /@rollup/rollup-darwin-x64@4.44.2: + resolution: {integrity: sha512-dv/t1t1RkCvJdWWxQ2lWOO+b7cMsVw5YFaS04oHpZRWehI1h0fV1gF4wgGCTyQHHjJDfbNpwOi6PXEafRBBezw==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-freebsd-arm64@4.44.1: - resolution: {integrity: sha512-wnFQmJ/zPThM5zEGcnDcCJeYJgtSLjh1d//WuHzhf6zT3Md1BvvhJnWoy+HECKu2bMxaIcfWiu3bJgx6z4g2XA==} + /@rollup/rollup-freebsd-arm64@4.44.2: + resolution: {integrity: sha512-W4tt4BLorKND4qeHElxDoim0+BsprFTwb+vriVQnFFtT/P6v/xO5I99xvYnVzKWrK6j7Hb0yp3x7V5LUbaeOMg==} cpu: [arm64] os: [freebsd] requiresBuild: true dev: true optional: true - /@rollup/rollup-freebsd-x64@4.44.1: - resolution: {integrity: sha512-uBmIxoJ4493YATvU2c0upGz87f99e3wop7TJgOA/bXMFd2SvKCI7xkxY/5k50bv7J6dw1SXT4MQBQSLn8Bb/Uw==} + /@rollup/rollup-freebsd-x64@4.44.2: + resolution: {integrity: sha512-tdT1PHopokkuBVyHjvYehnIe20fxibxFCEhQP/96MDSOcyjM/shlTkZZLOufV3qO6/FQOSiJTBebhVc12JyPTA==} cpu: [x64] os: [freebsd] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.44.1: - resolution: {integrity: sha512-n0edDmSHlXFhrlmTK7XBuwKlG5MbS7yleS1cQ9nn4kIeW+dJH+ExqNgQ0RrFRew8Y+0V/x6C5IjsHrJmiHtkxQ==} + /@rollup/rollup-linux-arm-gnueabihf@4.44.2: + resolution: {integrity: sha512-+xmiDGGaSfIIOXMzkhJ++Oa0Gwvl9oXUeIiwarsdRXSe27HUIvjbSIpPxvnNsRebsNdUo7uAiQVgBD1hVriwSQ==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-musleabihf@4.44.1: - resolution: {integrity: sha512-8WVUPy3FtAsKSpyk21kV52HCxB+me6YkbkFHATzC2Yd3yuqHwy2lbFL4alJOLXKljoRw08Zk8/xEj89cLQ/4Nw==} + /@rollup/rollup-linux-arm-musleabihf@4.44.2: + resolution: {integrity: sha512-bDHvhzOfORk3wt8yxIra8N4k/N0MnKInCW5OGZaeDYa/hMrdPaJzo7CSkjKZqX4JFUWjUGm88lI6QJLCM7lDrA==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.44.1: - resolution: {integrity: sha512-yuktAOaeOgorWDeFJggjuCkMGeITfqvPgkIXhDqsfKX8J3jGyxdDZgBV/2kj/2DyPaLiX6bPdjJDTu9RB8lUPQ==} + /@rollup/rollup-linux-arm64-gnu@4.44.2: + resolution: {integrity: sha512-NMsDEsDiYghTbeZWEGnNi4F0hSbGnsuOG+VnNvxkKg0IGDvFh7UVpM/14mnMwxRxUf9AdAVJgHPvKXf6FpMB7A==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.44.1: - resolution: {integrity: sha512-W+GBM4ifET1Plw8pdVaecwUgxmiH23CfAUj32u8knq0JPFyK4weRy6H7ooxYFD19YxBulL0Ktsflg5XS7+7u9g==} + /@rollup/rollup-linux-arm64-musl@4.44.2: + resolution: {integrity: sha512-lb5bxXnxXglVq+7imxykIp5xMq+idehfl+wOgiiix0191av84OqbjUED+PRC5OA8eFJYj5xAGcpAZ0pF2MnW+A==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-loongarch64-gnu@4.44.1: - resolution: {integrity: sha512-1zqnUEMWp9WrGVuVak6jWTl4fEtrVKfZY7CvcBmUUpxAJ7WcSowPSAWIKa/0o5mBL/Ij50SIf9tuirGx63Ovew==} + /@rollup/rollup-linux-loongarch64-gnu@4.44.2: + resolution: {integrity: sha512-Yl5Rdpf9pIc4GW1PmkUGHdMtbx0fBLE1//SxDmuf3X0dUC57+zMepow2LK0V21661cjXdTn8hO2tXDdAWAqE5g==} cpu: [loong64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-powerpc64le-gnu@4.44.1: - resolution: {integrity: sha512-Rl3JKaRu0LHIx7ExBAAnf0JcOQetQffaw34T8vLlg9b1IhzcBgaIdnvEbbsZq9uZp3uAH+JkHd20Nwn0h9zPjA==} + /@rollup/rollup-linux-powerpc64le-gnu@4.44.2: + resolution: {integrity: sha512-03vUDH+w55s680YYryyr78jsO1RWU9ocRMaeV2vMniJJW/6HhoTBwyyiiTPVHNWLnhsnwcQ0oH3S9JSBEKuyqw==} cpu: [ppc64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.44.1: - resolution: {integrity: sha512-j5akelU3snyL6K3N/iX7otLBIl347fGwmd95U5gS/7z6T4ftK288jKq3A5lcFKcx7wwzb5rgNvAg3ZbV4BqUSw==} + /@rollup/rollup-linux-riscv64-gnu@4.44.2: + resolution: {integrity: sha512-iYtAqBg5eEMG4dEfVlkqo05xMOk6y/JXIToRca2bAWuqjrJYJlx/I7+Z+4hSrsWU8GdJDFPL4ktV3dy4yBSrzg==} cpu: [riscv64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-riscv64-musl@4.44.1: - resolution: {integrity: sha512-ppn5llVGgrZw7yxbIm8TTvtj1EoPgYUAbfw0uDjIOzzoqlZlZrLJ/KuiE7uf5EpTpCTrNt1EdtzF0naMm0wGYg==} + /@rollup/rollup-linux-riscv64-musl@4.44.2: + resolution: {integrity: sha512-e6vEbgaaqz2yEHqtkPXa28fFuBGmUJ0N2dOJK8YUfijejInt9gfCSA7YDdJ4nYlv67JfP3+PSWFX4IVw/xRIPg==} cpu: [riscv64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-s390x-gnu@4.44.1: - resolution: {integrity: sha512-Hu6hEdix0oxtUma99jSP7xbvjkUM/ycke/AQQ4EC5g7jNRLLIwjcNwaUy95ZKBJJwg1ZowsclNnjYqzN4zwkAw==} + /@rollup/rollup-linux-s390x-gnu@4.44.2: + resolution: {integrity: sha512-evFOtkmVdY3udE+0QKrV5wBx7bKI0iHz5yEVx5WqDJkxp9YQefy4Mpx3RajIVcM6o7jxTvVd/qpC1IXUhGc1Mw==} cpu: [s390x] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-gnu@4.44.1: - resolution: {integrity: sha512-EtnsrmZGomz9WxK1bR5079zee3+7a+AdFlghyd6VbAjgRJDbTANJ9dcPIPAi76uG05micpEL+gPGmAKYTschQw==} + /@rollup/rollup-linux-x64-gnu@4.44.2: + resolution: {integrity: sha512-/bXb0bEsWMyEkIsUL2Yt5nFB5naLAwyOWMEviQfQY1x3l5WsLKgvZf66TM7UTfED6erckUVUJQ/jJ1FSpm3pRQ==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-musl@4.44.1: - resolution: {integrity: sha512-iAS4p+J1az6Usn0f8xhgL4PaU878KEtutP4hqw52I4IO6AGoyOkHCxcc4bqufv1tQLdDWFx8lR9YlwxKuv3/3g==} + /@rollup/rollup-linux-x64-musl@4.44.2: + resolution: {integrity: sha512-3D3OB1vSSBXmkGEZR27uiMRNiwN08/RVAcBKwhUYPaiZ8bcvdeEwWPvbnXvvXHY+A/7xluzcN+kaiOFNiOZwWg==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.44.1: - resolution: {integrity: sha512-NtSJVKcXwcqozOl+FwI41OH3OApDyLk3kqTJgx8+gp6On9ZEt5mYhIsKNPGuaZr3p9T6NWPKGU/03Vw4CNU9qg==} + /@rollup/rollup-win32-arm64-msvc@4.44.2: + resolution: {integrity: sha512-VfU0fsMK+rwdK8mwODqYeM2hDrF2WiHaSmCBrS7gColkQft95/8tphyzv2EupVxn3iE0FI78wzffoULH1G+dkw==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.44.1: - resolution: {integrity: sha512-JYA3qvCOLXSsnTR3oiyGws1Dm0YTuxAAeaYGVlGpUsHqloPcFjPg+X0Fj2qODGLNwQOAcCiQmHub/V007kiH5A==} + /@rollup/rollup-win32-ia32-msvc@4.44.2: + resolution: {integrity: sha512-+qMUrkbUurpE6DVRjiJCNGZBGo9xM4Y0FXU5cjgudWqIBWbcLkjE3XprJUsOFgC6xjBClwVa9k6O3A7K3vxb5Q==} cpu: [ia32] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-x64-msvc@4.44.1: - resolution: {integrity: sha512-J8o22LuF0kTe7m+8PvW9wk3/bRq5+mRo5Dqo6+vXb7otCm3TPhYOJqOaQtGU9YMWQSL3krMnoOxMr0+9E6F3Ug==} + /@rollup/rollup-win32-x64-msvc@4.44.2: + resolution: {integrity: sha512-3+QZROYfJ25PDcxFF66UEk8jGWigHJeecZILvkPkyQN7oc5BvFo4YEXFkOs154j3FTMp9mn9Ky8RCOwastduEA==} cpu: [x64] os: [win32] requiresBuild: true @@ -9893,7 +10013,7 @@ packages: /@types/accepts@1.3.7: resolution: {integrity: sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ==} dependencies: - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: false /@types/aria-query@5.0.4: @@ -9904,7 +10024,7 @@ packages: resolution: {integrity: sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==} dependencies: '@types/connect': 3.4.38 - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: false /@types/cli-progress@3.11.6: @@ -9916,7 +10036,7 @@ packages: /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: false /@types/content-disposition@0.5.9: @@ -9926,7 +10046,7 @@ packages: /@types/conventional-commits-parser@5.0.1: resolution: {integrity: sha512-7uz5EHdzz2TqoMfV7ee61Egf5y6NkcO4FB/1iCCQnbeiI1F3xzv3vK5dBCXUCLQgGYS+mUeigK1iKQzvED+QnQ==} dependencies: - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: true optional: true @@ -9948,7 +10068,7 @@ packages: '@types/connect': 3.4.38 '@types/express': 4.17.23 '@types/keygrip': 1.0.6 - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: false /@types/cors@2.8.19: @@ -10057,7 +10177,7 @@ packages: /@types/express-serve-static-core@4.19.6: resolution: {integrity: sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==} dependencies: - '@types/node': 20.14.9 + '@types/node': 22.14.0 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 0.17.5 @@ -10116,7 +10236,7 @@ packages: '@types/http-errors': 2.0.5 '@types/keygrip': 1.0.6 '@types/koa-compose': 3.2.8 - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: false /@types/mdast@4.0.4: @@ -10154,8 +10274,8 @@ packages: resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} dev: false - /@types/node@18.19.113: - resolution: {integrity: sha512-TmSTE9vyebJ9vSEiU+P+0Sp4F5tMgjiEOZaQUW6wA3ODvi6uBgkHQ+EsIu0pbiKvf9QHEvyRCiaz03rV0b+IaA==} + /@types/node@18.19.117: + resolution: {integrity: sha512-hcxGs9TfQGghOM8atpRT+bBMUX7V8WosdYt98bQ59wUToJck55eCOlemJ+0FpOZOQw5ff7LSi9+IO56KvYEFyQ==} dependencies: undici-types: 5.26.5 @@ -10205,14 +10325,14 @@ packages: resolution: {integrity: sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w==} dependencies: '@types/mime': 1.3.5 - '@types/node': 20.14.9 + '@types/node': 22.14.0 dev: false /@types/serve-static@1.15.8: resolution: {integrity: sha512-roei0UY3LhpOJvjbIP6ZZFngyLKl5dskOtDhxY5THRSpO+ZI+nzJ+m5yUMzGrp89YRa7lvknKkMYjqQFGwA7Sg==} dependencies: '@types/http-errors': 2.0.5 - '@types/node': 20.14.9 + '@types/node': 22.14.0 '@types/send': 0.17.5 dev: false @@ -10236,7 +10356,7 @@ packages: /@types/ssh2@1.15.5: resolution: {integrity: sha512-N1ASjp/nXH3ovBHddRJpli4ozpk6UdDYIX4RJWFa9L1YKnzdhTlVmiGHm4DZnj/jLbqZpes4aeR30EFGQtvhQQ==} dependencies: - '@types/node': 18.19.113 + '@types/node': 18.19.117 dev: true /@types/statuses@2.0.6: @@ -10262,7 +10382,7 @@ packages: dependencies: '@types/node': 20.14.9 tapable: 2.2.2 - webpack: 5.99.9(@swc/core@1.3.101)(esbuild@0.19.11) + webpack: 5.100.0(@swc/core@1.3.101)(esbuild@0.19.11) transitivePeerDependencies: - '@swc/core' - esbuild @@ -10383,7 +10503,7 @@ packages: dependencies: '@vitest/spy': 3.1.4 '@vitest/utils': 3.1.4 - chai: 5.2.0 + chai: 5.2.1 tinyrainbow: 2.0.0 dev: true @@ -10538,7 +10658,7 @@ packages: /@vue/compiler-core@3.5.17: resolution: {integrity: sha512-Xe+AittLbAyV0pabcN7cP7/BenRBNcteM4aSDCtRvGw0d9OL+HG1u/XHLY/kt1q4fyMeZYXyIYrsHuPSiDPosA==} dependencies: - '@babel/parser': 7.27.7 + '@babel/parser': 7.28.0 '@vue/shared': 3.5.17 entities: 4.5.0 estree-walker: 2.0.2 @@ -10555,7 +10675,7 @@ packages: /@vue/compiler-sfc@3.5.17: resolution: {integrity: sha512-rQQxbRJMgTqwRugtjw0cnyQv9cP4/4BxWfTdRBkqsTfLOHWykLzbOc3C4GGzAmdMDxhzU/1Ija5bTjMVrddqww==} dependencies: - '@babel/parser': 7.27.7 + '@babel/parser': 7.28.0 '@vue/compiler-core': 3.5.17 '@vue/compiler-dom': 3.5.17 '@vue/compiler-ssr': 3.5.17 @@ -10763,6 +10883,15 @@ packages: acorn: 8.15.0 dev: true + /acorn-import-phases@1.0.3(acorn@8.15.0): + resolution: {integrity: sha512-jtKLnfoOzm28PazuQ4dVBcE9Jeo6ha1GAJvq3N0LlNOszmTfx+wSycBehn+FN0RnyeR77IBxN/qVYMw0Rlj0Xw==} + engines: {node: '>=10.13.0'} + peerDependencies: + acorn: ^8.14.0 + dependencies: + acorn: 8.15.0 + dev: false + /acorn-jsx@5.3.2(acorn@8.15.0): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -10814,8 +10943,8 @@ packages: engines: {node: '>=12.0'} dev: true - /agent-base@7.1.3: - resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} + /agent-base@7.1.4: + resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} dev: true @@ -11230,7 +11359,7 @@ packages: postcss: ^8.1.0 dependencies: browserslist: 4.25.1 - caniuse-lite: 1.0.30001726 + caniuse-lite: 1.0.30001727 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -11246,7 +11375,7 @@ packages: postcss: ^8.1.0 dependencies: browserslist: 4.25.1 - caniuse-lite: 1.0.30001726 + caniuse-lite: 1.0.30001727 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -11262,7 +11391,7 @@ packages: postcss: ^8.1.0 dependencies: browserslist: 4.25.1 - caniuse-lite: 1.0.30001726 + caniuse-lite: 1.0.30001727 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -11276,8 +11405,8 @@ packages: dependencies: possible-typed-array-names: 1.1.0 - /avsc@5.7.7: - resolution: {integrity: sha512-9cYNccliXZDByFsFliVwk5GvTq058Fj513CiR4E60ndDwmuXzTJEp/Bp8FyuRmGyYupLjHLs+JA9/CBoVS4/NQ==} + /avsc@5.7.8: + resolution: {integrity: sha512-6SyyCw6XzdiNrkJ3UF9dIj0cVexNQAGxwjZ69CRgEneBxdDKjjc2IdfEJD11iP4BfwQWrL8HwR04bx/Y3uUNEA==} engines: {node: '>=0.11'} dev: true @@ -11317,7 +11446,7 @@ packages: resolution: {integrity: sha512-fdRxJkQ9MUSEi4jH2DcV3FAPFktk0wefilxrwNyUuWpoWawQGN7G7cB+fOYTtFfI6XNkFgwqJ/D3G18BoJJ/jg==} engines: {node: '>= 10.0.0'} dependencies: - '@babel/types': 7.27.7 + '@babel/types': 7.28.0 dev: false /bail@2.0.2: @@ -11326,13 +11455,13 @@ packages: /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - /bare-events@2.5.4: - resolution: {integrity: sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==} + /bare-events@2.6.0: + resolution: {integrity: sha512-EKZ5BTXYExaNqi3I3f9RtEsaI/xBSGjE0XZCZilPzFAV/goswFHuPd9jEZlPIZ/iNZJwDSao9qRiScySz7MbQg==} dev: true optional: true - /bare-fs@4.1.5: - resolution: {integrity: sha512-1zccWBMypln0jEE05LzZt+V/8y8AQsQQqxtklqaIyg5nu6OAYFhZxPXinJTSG+kU5qyNmeLgcn9AW7eHiCHVLA==} + /bare-fs@4.1.6: + resolution: {integrity: sha512-25RsLF33BqooOEFNdMcEhMpJy8EoR88zSMrnOQOaM3USnOK2VmaJ1uaQEwPA6AQjrv1lXChScosN6CzbwbO9OQ==} engines: {bare: '>=1.16.0'} requiresBuild: true peerDependencies: @@ -11341,9 +11470,9 @@ packages: bare-buffer: optional: true dependencies: - bare-events: 2.5.4 + bare-events: 2.6.0 bare-path: 3.0.0 - bare-stream: 2.6.5(bare-events@2.5.4) + bare-stream: 2.6.5(bare-events@2.6.0) dev: true optional: true @@ -11360,7 +11489,7 @@ packages: dev: true optional: true - /bare-stream@2.6.5(bare-events@2.5.4): + /bare-stream@2.6.5(bare-events@2.6.0): resolution: {integrity: sha512-jSmxKJNJmHySi6hC42zlZnq00rga4jjxcgNZjY9N5WlOe/iOoGRtdwGsHzQv2RlH2KOYMwGUXhf2zXd32BA9RA==} peerDependencies: bare-buffer: '*' @@ -11371,7 +11500,7 @@ packages: bare-events: optional: true dependencies: - bare-events: 2.5.4 + bare-events: 2.6.0 streamx: 2.22.1 dev: true optional: true @@ -11490,8 +11619,8 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001726 - electron-to-chromium: 1.5.178 + caniuse-lite: 1.0.30001727 + electron-to-chromium: 1.5.181 node-releases: 2.0.19 update-browserslist-db: 1.1.3(browserslist@4.25.1) @@ -11629,8 +11758,8 @@ packages: resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} dev: false - /caniuse-lite@1.0.30001726: - resolution: {integrity: sha512-VQAUIUzBiZ/UnlM28fSp2CRF3ivUn1BWEvxMcVTNwpw91Py1pGbPIyIKtd+tzct9C3ouceCVdGAXxZOpZAsgdw==} + /caniuse-lite@1.0.30001727: + resolution: {integrity: sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==} /cardinal@2.1.1: resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} @@ -11664,9 +11793,9 @@ packages: type-detect: 4.1.0 dev: true - /chai@5.2.0: - resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} - engines: {node: '>=12'} + /chai@5.2.1: + resolution: {integrity: sha512-5nFxhUrX0PqtyogoYOA8IPswy5sZFTOsBFl/9bNsmDLgsxYTzSZQJDPppDnZPTQbzSEm0hqGjWPzRemQCYbD6A==} + engines: {node: '>=18'} dependencies: assertion-error: 2.0.1 check-error: 2.1.1 @@ -12220,8 +12349,8 @@ packages: is-what: 4.1.16 dev: false - /core-js@3.43.0: - resolution: {integrity: sha512-N6wEbTTZSYOY2rYAn85CuvWWkCK6QweMn7/4Nr3w+gDBeBhk/x4EJeY6FPo4QzDoJZxVTv8U7CMvgWk6pOHHqA==} + /core-js@3.44.0: + resolution: {integrity: sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==} requiresBuild: true dev: false @@ -12273,7 +12402,7 @@ packages: requiresBuild: true dependencies: buildcheck: 0.0.6 - nan: 2.22.2 + nan: 2.23.0 dev: true optional: true @@ -12561,8 +12690,8 @@ packages: resolution: {integrity: sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==} dev: false - /decimal.js@10.5.0: - resolution: {integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==} + /decimal.js@10.6.0: + resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==} dev: true /decode-named-character-reference@1.2.0: @@ -12598,7 +12727,7 @@ packages: dependencies: is-arguments: 1.2.0 is-date-object: 1.1.0 - is-regex: 1.2.1 + is-regex: 1.1.4 object-is: 1.1.6 object-keys: 1.1.1 regexp.prototype.flags: 1.5.4 @@ -13049,8 +13178,8 @@ packages: jake: 10.9.2 dev: true - /electron-to-chromium@1.5.178: - resolution: {integrity: sha512-wObbz/ar3Bc6e4X5vf0iO8xTN8YAjN/tgiAOJLr7yjYFtP9wAjq8Mb5h0yn6kResir+VYx2DXBj9NNobs0ETSA==} + /electron-to-chromium@1.5.181: + resolution: {integrity: sha512-+ISMj8OIQ+0qEeDj14Rt8WwcTOiqHyAB+5bnK1K7xNNLjBJ4hRCQfUkw8RWtcLbfBzDwc15ZnKH0c7SNOfwiyA==} /emoji-regex-xs@1.0.0: resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} @@ -13504,37 +13633,38 @@ packages: '@esbuild/win32-ia32': 0.24.2 '@esbuild/win32-x64': 0.24.2 - /esbuild@0.25.5: - resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==} + /esbuild@0.25.6: + resolution: {integrity: sha512-GVuzuUwtdsghE3ocJ9Bs8PNoF13HNQ5TXbEi2AhvVb8xU1Iwt9Fos9FEamfoee+u/TOsn7GUWc04lz46n2bbTg==} engines: {node: '>=18'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/aix-ppc64': 0.25.5 - '@esbuild/android-arm': 0.25.5 - '@esbuild/android-arm64': 0.25.5 - '@esbuild/android-x64': 0.25.5 - '@esbuild/darwin-arm64': 0.25.5 - '@esbuild/darwin-x64': 0.25.5 - '@esbuild/freebsd-arm64': 0.25.5 - '@esbuild/freebsd-x64': 0.25.5 - '@esbuild/linux-arm': 0.25.5 - '@esbuild/linux-arm64': 0.25.5 - '@esbuild/linux-ia32': 0.25.5 - '@esbuild/linux-loong64': 0.25.5 - '@esbuild/linux-mips64el': 0.25.5 - '@esbuild/linux-ppc64': 0.25.5 - '@esbuild/linux-riscv64': 0.25.5 - '@esbuild/linux-s390x': 0.25.5 - '@esbuild/linux-x64': 0.25.5 - '@esbuild/netbsd-arm64': 0.25.5 - '@esbuild/netbsd-x64': 0.25.5 - '@esbuild/openbsd-arm64': 0.25.5 - '@esbuild/openbsd-x64': 0.25.5 - '@esbuild/sunos-x64': 0.25.5 - '@esbuild/win32-arm64': 0.25.5 - '@esbuild/win32-ia32': 0.25.5 - '@esbuild/win32-x64': 0.25.5 + '@esbuild/aix-ppc64': 0.25.6 + '@esbuild/android-arm': 0.25.6 + '@esbuild/android-arm64': 0.25.6 + '@esbuild/android-x64': 0.25.6 + '@esbuild/darwin-arm64': 0.25.6 + '@esbuild/darwin-x64': 0.25.6 + '@esbuild/freebsd-arm64': 0.25.6 + '@esbuild/freebsd-x64': 0.25.6 + '@esbuild/linux-arm': 0.25.6 + '@esbuild/linux-arm64': 0.25.6 + '@esbuild/linux-ia32': 0.25.6 + '@esbuild/linux-loong64': 0.25.6 + '@esbuild/linux-mips64el': 0.25.6 + '@esbuild/linux-ppc64': 0.25.6 + '@esbuild/linux-riscv64': 0.25.6 + '@esbuild/linux-s390x': 0.25.6 + '@esbuild/linux-x64': 0.25.6 + '@esbuild/netbsd-arm64': 0.25.6 + '@esbuild/netbsd-x64': 0.25.6 + '@esbuild/openbsd-arm64': 0.25.6 + '@esbuild/openbsd-x64': 0.25.6 + '@esbuild/openharmony-arm64': 0.25.6 + '@esbuild/sunos-x64': 0.25.6 + '@esbuild/win32-arm64': 0.25.6 + '@esbuild/win32-ia32': 0.25.6 + '@esbuild/win32-x64': 0.25.6 dev: true /escalade@3.2.0: @@ -13568,31 +13698,31 @@ packages: source-map: 0.6.1 dev: true - /eslint-config-prettier@9.0.0(eslint@9.30.0): + /eslint-config-prettier@9.0.0(eslint@9.30.1): resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 9.30.0 + eslint: 9.30.1 dev: false - /eslint-config-turbo@1.10.12(eslint@9.30.0): + /eslint-config-turbo@1.10.12(eslint@9.30.1): resolution: {integrity: sha512-z3jfh+D7UGYlzMWGh+Kqz++hf8LOE96q3o5R8X4HTjmxaBWlLAWG+0Ounr38h+JLR2TJno0hU9zfzoPNkR9BdA==} peerDependencies: eslint: '>6.6.0' dependencies: - eslint: 9.30.0 - eslint-plugin-turbo: 1.10.12(eslint@9.30.0) + eslint: 9.30.1 + eslint-plugin-turbo: 1.10.12(eslint@9.30.1) dev: false - /eslint-plugin-turbo@1.10.12(eslint@9.30.0): + /eslint-plugin-turbo@1.10.12(eslint@9.30.1): resolution: {integrity: sha512-uNbdj+ohZaYo4tFJ6dStRXu2FZigwulR1b3URPXe0Q8YaE7thuekKNP+54CHtZPH9Zey9dmDx5btAQl9mfzGOw==} peerDependencies: eslint: '>6.6.0' dependencies: dotenv: 16.0.3 - eslint: 9.30.0 + eslint: 9.30.1 dev: false /eslint-scope@5.1.1: @@ -13620,8 +13750,8 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dev: false - /eslint@9.30.0: - resolution: {integrity: sha512-iN/SiPxmQu6EVkf+m1qpBxzUhE12YqFLOSySuOyVLJLEF9nzTf+h/1AJYc1JWzCnktggeNrjvQGLngDzXirU6g==} + /eslint@9.30.1: + resolution: {integrity: sha512-zmxXPNMOXmwm9E0yQLi5uqXHs7uq2UIiqEKo3Gq+3fwo1XrJ+hijAZImyF7hclW3E6oHz43Yk3RP8at6OTKflQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -13630,13 +13760,13 @@ packages: jiti: optional: true dependencies: - '@eslint-community/eslint-utils': 4.7.0(eslint@9.30.0) + '@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.21.0 '@eslint/config-helpers': 0.3.0 '@eslint/core': 0.14.0 '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.30.0 + '@eslint/js': 9.30.1 '@eslint/plugin-kit': 0.3.3 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 @@ -13858,8 +13988,8 @@ packages: homedir-polyfill: 1.0.3 dev: true - /expect-type@1.2.1: - resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} + /expect-type@1.2.2: + resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} engines: {node: '>=12.0.0'} dev: true @@ -14382,7 +14512,7 @@ packages: optional: true dependencies: '@formatjs/intl-localematcher': 0.5.10 - '@orama/orama': 3.1.9 + '@orama/orama': 3.1.10 '@shikijs/rehype': 1.29.2 github-slugger: 2.0.0 hast-util-to-estree: 3.1.3 @@ -14424,7 +14554,7 @@ packages: optional: true dependencies: '@formatjs/intl-localematcher': 0.5.10 - '@orama/orama': 3.1.9 + '@orama/orama': 3.1.10 '@shikijs/rehype': 1.29.2 github-slugger: 2.0.0 hast-util-to-estree: 3.1.3 @@ -14490,7 +14620,7 @@ packages: openapi-sampler: 1.6.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.59.0(react@18.3.1) + react-hook-form: 7.60.0(react@18.3.1) remark: 15.0.1 remark-rehype: 11.1.2 shiki: 1.29.2 @@ -14763,8 +14893,8 @@ packages: resolve-pkg-maps: 1.0.0 dev: true - /get-uri@6.0.4: - resolution: {integrity: sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==} + /get-uri@6.0.5: + resolution: {integrity: sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==} engines: {node: '>= 14'} dependencies: basic-ftp: 5.0.5 @@ -15320,7 +15450,7 @@ packages: resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} dependencies: - agent-base: 7.1.3 + agent-base: 7.1.4 debug: 4.4.1(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -15338,7 +15468,7 @@ packages: resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} engines: {node: '>= 14'} dependencies: - agent-base: 7.1.3 + agent-base: 7.1.4 debug: 4.4.1(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -15479,8 +15609,8 @@ packages: react-dom: 18.3.1(react@18.3.1) dev: false - /inquirer@12.6.3(@types/node@22.14.0): - resolution: {integrity: sha512-eX9beYAjr1MqYsIjx1vAheXsRk1jbZRvHLcBu5nA9wX0rXR1IfCZLnVLp4Ym4mrhqmh7AuANwcdtgQ291fZDfQ==} + /inquirer@12.7.0(@types/node@22.14.0): + resolution: {integrity: sha512-KKFRc++IONSyE2UYw9CJ1V0IWx5yQKomwB+pp3cWomWs+v2+ZsG11G2OVfAjFS6WWCppKw+RfKmpqGfSzD5QBQ==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -15488,13 +15618,13 @@ packages: '@types/node': optional: true dependencies: - '@inquirer/core': 10.1.13(@types/node@22.14.0) + '@inquirer/core': 10.1.14(@types/node@22.14.0) '@inquirer/prompts': 7.6.0(@types/node@22.14.0) '@inquirer/type': 3.0.7(@types/node@22.14.0) '@types/node': 22.14.0 ansi-escapes: 4.3.2 mute-stream: 2.0.0 - run-async: 3.0.0 + run-async: 4.0.4 rxjs: 7.8.2 dev: true @@ -16075,7 +16205,7 @@ packages: dependencies: cssstyle: 4.6.0 data-urls: 5.0.0 - decimal.js: 10.5.0 + decimal.js: 10.6.0 form-data: 4.0.3 html-encoding-sniffer: 4.0.0 http-proxy-agent: 7.0.2 @@ -16548,7 +16678,7 @@ packages: /magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} dependencies: - '@jridgewell/sourcemap-codec': 1.5.3 + '@jridgewell/sourcemap-codec': 1.5.4 /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} @@ -17295,7 +17425,6 @@ packages: /minipass@6.0.2: resolution: {integrity: sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==} engines: {node: '>=16 || 14 >=14.17'} - dev: true /minipass@7.1.2: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} @@ -17449,7 +17578,7 @@ packages: '@bundled-es-modules/cookie': 2.0.1 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 5.1.12(@types/node@20.14.9) + '@inquirer/confirm': 5.1.13(@types/node@20.14.9) '@mswjs/interceptors': 0.38.7 '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 @@ -17510,8 +17639,8 @@ packages: dependencies: lru-cache: 7.18.3 - /nan@2.22.2: - resolution: {integrity: sha512-DANghxFkS1plDdRsX0X9pm0Z6SJNN6gBdtXfanwoZ8hooC5gosGFSBGRYHUVPz1asKA/kMRqDRdHrluZ61SpBQ==} + /nan@2.23.0: + resolution: {integrity: sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==} dev: true optional: true @@ -17613,7 +17742,7 @@ packages: '@next/env': 14.1.0 '@swc/helpers': 0.5.2 busboy: 1.6.0 - caniuse-lite: 1.0.30001726 + caniuse-lite: 1.0.30001727 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 @@ -17655,7 +17784,7 @@ packages: '@next/env': 14.2.15 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001726 + caniuse-lite: 1.0.30001727 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 @@ -17696,7 +17825,7 @@ packages: '@next/env': 14.2.25 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001726 + caniuse-lite: 1.0.30001727 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 @@ -17717,6 +17846,48 @@ packages: - babel-plugin-macros dev: false + /next@14.2.30(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-+COdu6HQrHHFQ1S/8BBsCag61jZacmvbuL2avHvQFbWa2Ox7bE+d8FyNgxRLjXQ5wtPyQwEmk85js/AuaG2Sbg==} + engines: {node: '>=18.17.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.41.2 + react: ^18.2.0 + react-dom: ^18.2.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + sass: + optional: true + dependencies: + '@next/env': 14.2.30 + '@swc/helpers': 0.5.5 + busboy: 1.6.0 + caniuse-lite: 1.0.30001727 + graceful-fs: 4.2.11 + postcss: 8.4.31 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + styled-jsx: 5.1.1(react@18.3.1) + optionalDependencies: + '@next/swc-darwin-arm64': 14.2.30 + '@next/swc-darwin-x64': 14.2.30 + '@next/swc-linux-arm64-gnu': 14.2.30 + '@next/swc-linux-arm64-musl': 14.2.30 + '@next/swc-linux-x64-gnu': 14.2.30 + '@next/swc-linux-x64-musl': 14.2.30 + '@next/swc-win32-arm64-msvc': 14.2.30 + '@next/swc-win32-ia32-msvc': 14.2.30 + '@next/swc-win32-x64-msvc': 14.2.30 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + dev: false + /nimma@0.2.3: resolution: {integrity: sha512-1ZOI8J+1PKKGceo/5CT5GfQOG6H8I2BencSK06YarZ2wXwH37BSSUWldqJmMJYA5JfqDqffxDXynt6f11AyKcA==} engines: {node: ^12.20 || >=14.13} @@ -17925,6 +18096,15 @@ packages: next: 14.2.25(react-dom@18.3.1)(react@18.3.1) dev: false + /nuqs@1.17.6(next@14.2.30): + resolution: {integrity: sha512-mbQKLo+4h9ZsCg9u4WcitBqVhP2XG2PrPc0sUN0IEHL3nUKjxHT2h3tqd1Wo1gkkGxan5uVpnJ9NP51y2j7vgg==} + peerDependencies: + next: '>=13.4 <14.0.2 || ^14.0.3' + dependencies: + mitt: 3.0.1 + next: 14.2.30(react-dom@18.3.1)(react@18.3.1) + dev: false + /nwsapi@2.2.20: resolution: {integrity: sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==} dev: true @@ -18051,7 +18231,7 @@ packages: zod: optional: true dependencies: - '@types/node': 18.19.113 + '@types/node': 18.19.117 '@types/node-fetch': 2.6.12 abort-controller: 3.0.0 agentkeepalive: 4.6.0 @@ -18155,6 +18335,21 @@ packages: object-keys: 1.1.1 safe-push-apply: 1.0.0 + /oxlint@1.6.0: + resolution: {integrity: sha512-jtaD65PqzIa1udvSxxscTKBxYKuZoFXyKGLiU1Qjo1ulq3uv/fQDtoV1yey1FrQZrQjACGPi1Widsy1TucC7Jg==} + engines: {node: '>=8.*'} + hasBin: true + optionalDependencies: + '@oxlint/darwin-arm64': 1.6.0 + '@oxlint/darwin-x64': 1.6.0 + '@oxlint/linux-arm64-gnu': 1.6.0 + '@oxlint/linux-arm64-musl': 1.6.0 + '@oxlint/linux-x64-gnu': 1.6.0 + '@oxlint/linux-x64-musl': 1.6.0 + '@oxlint/win32-arm64': 1.6.0 + '@oxlint/win32-x64': 1.6.0 + dev: true + /p-any@4.0.0: resolution: {integrity: sha512-S/B50s+pAVe0wmEZHmBs/9yJXeZ5KhHzOsgKzt0hRdgkoR3DxW9ts46fcsWi/r3VnzsnkKS7q4uimze+zjdryw==} engines: {node: '>=12.20'} @@ -18272,9 +18467,9 @@ packages: engines: {node: '>= 14'} dependencies: '@tootallnate/quickjs-emscripten': 0.23.0 - agent-base: 7.1.3 + agent-base: 7.1.4 debug: 4.4.1(supports-color@8.1.1) - get-uri: 6.0.4 + get-uri: 6.0.5 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 pac-resolver: 7.0.1 @@ -18424,7 +18619,7 @@ packages: engines: {node: '>=16 || 14 >=14.18'} dependencies: lru-cache: 10.4.3 - minipass: 7.1.2 + minipass: 6.0.2 /path-to-regexp@0.1.12: resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} @@ -18655,7 +18850,7 @@ packages: /posthog-js@1.179.0: resolution: {integrity: sha512-TLmDA3oDdjZfOaNCueXBdlWD+kTzBGvz2QpOY/zdzljbazXXl25xzXBINLIC7IxIS2gNAfCDRuOUosSZALOyUQ==} dependencies: - core-js: 3.43.0 + core-js: 3.44.0 fflate: 0.4.8 preact: 10.26.9 web-vitals: 4.2.4 @@ -18696,7 +18891,6 @@ packages: resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==} engines: {node: '>=14'} hasBin: true - dev: false /pretty-format@27.5.1: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} @@ -18833,7 +19027,7 @@ packages: resolution: {integrity: sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==} engines: {node: '>= 14'} dependencies: - agent-base: 7.1.3 + agent-base: 7.1.4 debug: 4.4.1(supports-color@8.1.1) http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 @@ -19026,7 +19220,7 @@ packages: react-is: 18.1.0 dev: false - /react-email@2.1.1(eslint@9.30.0): + /react-email@2.1.1(eslint@9.30.1): resolution: {integrity: sha512-09oMVl/jN0/Re0bT0sEqYjyyFSCN/Tg0YmzjC9wfYpnMx02Apk40XXitySDfUBMR9EgTdr6T4lYknACqiLK3mg==} engines: {node: '>=18.0.0'} hasBin: true @@ -19052,8 +19246,8 @@ packages: commander: 11.1.0 debounce: 2.0.0 esbuild: 0.19.11 - eslint-config-prettier: 9.0.0(eslint@9.30.0) - eslint-config-turbo: 1.10.12(eslint@9.30.0) + eslint-config-prettier: 9.0.0(eslint@9.30.1) + eslint-config-turbo: 1.10.12(eslint@9.30.1) framer-motion: 10.17.4(react-dom@18.3.1)(react@18.3.1) glob: 10.3.4 log-symbols: 4.1.0 @@ -19108,8 +19302,8 @@ packages: react: 18.3.1 dev: false - /react-hook-form@7.59.0(react@18.3.1): - resolution: {integrity: sha512-kmkek2/8grqarTJExFNjy+RXDIP8yM+QTl3QL6m6Q8b2bih4ltmiXxH7T9n+yXNK477xPh5yZT/6vD8sYGzJTA==} + /react-hook-form@7.60.0(react@18.3.1): + resolution: {integrity: sha512-SBrYOvMbDB7cV8ZfNpaiLcgjH/a1c7aK0lK+aNigpf4xWLO8q+o4tcvVurv3c4EOyzn/3dCsYt4GKD42VvJ/+A==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 @@ -19775,33 +19969,33 @@ packages: source-map-support: 0.3.3 dev: false - /rollup@4.44.1: - resolution: {integrity: sha512-x8H8aPvD+xbl0Do8oez5f5o8eMS3trfCghc4HhLAnCkj7Vl0d1JWGs0UF/D886zLW2rOj2QymV/JcSSsw+XDNg==} + /rollup@4.44.2: + resolution: {integrity: sha512-PVoapzTwSEcelaWGth3uR66u7ZRo6qhPHc0f2uRO9fX6XDVNrIiGYS0Pj9+R8yIIYSD/mCx2b16Ws9itljKSPg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: '@types/estree': 1.0.8 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.44.1 - '@rollup/rollup-android-arm64': 4.44.1 - '@rollup/rollup-darwin-arm64': 4.44.1 - '@rollup/rollup-darwin-x64': 4.44.1 - '@rollup/rollup-freebsd-arm64': 4.44.1 - '@rollup/rollup-freebsd-x64': 4.44.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.44.1 - '@rollup/rollup-linux-arm-musleabihf': 4.44.1 - '@rollup/rollup-linux-arm64-gnu': 4.44.1 - '@rollup/rollup-linux-arm64-musl': 4.44.1 - '@rollup/rollup-linux-loongarch64-gnu': 4.44.1 - '@rollup/rollup-linux-powerpc64le-gnu': 4.44.1 - '@rollup/rollup-linux-riscv64-gnu': 4.44.1 - '@rollup/rollup-linux-riscv64-musl': 4.44.1 - '@rollup/rollup-linux-s390x-gnu': 4.44.1 - '@rollup/rollup-linux-x64-gnu': 4.44.1 - '@rollup/rollup-linux-x64-musl': 4.44.1 - '@rollup/rollup-win32-arm64-msvc': 4.44.1 - '@rollup/rollup-win32-ia32-msvc': 4.44.1 - '@rollup/rollup-win32-x64-msvc': 4.44.1 + '@rollup/rollup-android-arm-eabi': 4.44.2 + '@rollup/rollup-android-arm64': 4.44.2 + '@rollup/rollup-darwin-arm64': 4.44.2 + '@rollup/rollup-darwin-x64': 4.44.2 + '@rollup/rollup-freebsd-arm64': 4.44.2 + '@rollup/rollup-freebsd-x64': 4.44.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.44.2 + '@rollup/rollup-linux-arm-musleabihf': 4.44.2 + '@rollup/rollup-linux-arm64-gnu': 4.44.2 + '@rollup/rollup-linux-arm64-musl': 4.44.2 + '@rollup/rollup-linux-loongarch64-gnu': 4.44.2 + '@rollup/rollup-linux-powerpc64le-gnu': 4.44.2 + '@rollup/rollup-linux-riscv64-gnu': 4.44.2 + '@rollup/rollup-linux-riscv64-musl': 4.44.2 + '@rollup/rollup-linux-s390x-gnu': 4.44.2 + '@rollup/rollup-linux-x64-gnu': 4.44.2 + '@rollup/rollup-linux-x64-musl': 4.44.2 + '@rollup/rollup-win32-arm64-msvc': 4.44.2 + '@rollup/rollup-win32-ia32-msvc': 4.44.2 + '@rollup/rollup-win32-x64-msvc': 4.44.2 fsevents: 2.3.3 dev: true @@ -19814,9 +20008,12 @@ packages: engines: {node: '>=0.12.0'} dev: true - /run-async@3.0.0: - resolution: {integrity: sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==} + /run-async@4.0.4: + resolution: {integrity: sha512-2cgeRHnV11lSXBEhq7sN7a5UVjTKm9JTb9x8ApIT//16D7QL96AgnNeWSGoB4gIHc0iYw/Ha0Z+waBaCYZVNhg==} engines: {node: '>=0.12.0'} + dependencies: + oxlint: 1.6.0 + prettier: 3.6.2 dev: true /run-parallel@1.2.0: @@ -20347,7 +20544,7 @@ packages: resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==} engines: {node: '>= 14'} dependencies: - agent-base: 7.1.3 + agent-base: 7.1.4 debug: 4.4.1(supports-color@8.1.1) socks: 2.8.5 transitivePeerDependencies: @@ -20506,7 +20703,7 @@ packages: bcrypt-pbkdf: 1.0.2 optionalDependencies: cpu-features: 0.0.10 - nan: 2.22.2 + nan: 2.23.0 dev: true /sswr@2.0.0(svelte@4.2.20): @@ -20583,7 +20780,7 @@ packages: fast-fifo: 1.3.2 text-decoder: 1.2.3 optionalDependencies: - bare-events: 2.5.4 + bare-events: 2.6.0 dev: true /strict-event-emitter@0.5.1: @@ -20761,7 +20958,7 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true dependencies: - '@jridgewell/gen-mapping': 0.3.11 + '@jridgewell/gen-mapping': 0.3.12 commander: 4.1.1 glob: 10.4.5 lines-and-columns: 1.2.4 @@ -21013,7 +21210,7 @@ packages: pump: 3.0.3 tar-stream: 3.1.7 optionalDependencies: - bare-fs: 4.1.5 + bare-fs: 4.1.6 bare-path: 3.0.0 transitivePeerDependencies: - bare-buffer @@ -21067,7 +21264,7 @@ packages: engines: {node: '>=8'} dev: true - /terser-webpack-plugin@5.3.14(@swc/core@1.3.101)(esbuild@0.19.11)(webpack@5.99.9): + /terser-webpack-plugin@5.3.14(@swc/core@1.3.101)(esbuild@0.19.11)(webpack@5.100.0): resolution: {integrity: sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -21083,14 +21280,14 @@ packages: uglify-js: optional: true dependencies: - '@jridgewell/trace-mapping': 0.3.28 + '@jridgewell/trace-mapping': 0.3.29 '@swc/core': 1.3.101 esbuild: 0.19.11 jest-worker: 27.5.1 schema-utils: 4.3.2 serialize-javascript: 6.0.2 terser: 5.43.1 - webpack: 5.99.9(@swc/core@1.3.101)(esbuild@0.19.11) + webpack: 5.100.0(@swc/core@1.3.101)(esbuild@0.19.11) dev: false /terser@5.43.1: @@ -21098,7 +21295,7 @@ packages: engines: {node: '>=10'} hasBin: true dependencies: - '@jridgewell/source-map': 0.3.9 + '@jridgewell/source-map': 0.3.10 acorn: 8.15.0 commander: 2.20.3 source-map-support: 0.5.21 @@ -21414,7 +21611,7 @@ packages: joycon: 3.1.1 postcss-load-config: 4.0.2(postcss@8.5.6) resolve-from: 5.0.0 - rollup: 4.44.1 + rollup: 4.44.2 source-map: 0.8.0-beta.0 sucrase: 3.35.0 tree-kill: 1.2.2 @@ -21453,7 +21650,7 @@ packages: joycon: 3.1.1 postcss-load-config: 4.0.2(postcss@8.5.6) resolve-from: 5.0.0 - rollup: 4.44.1 + rollup: 4.44.2 source-map: 0.8.0-beta.0 sucrase: 3.35.0 tree-kill: 1.2.2 @@ -22181,7 +22378,7 @@ packages: '@types/node': 20.14.9 esbuild: 0.21.5 postcss: 8.5.6 - rollup: 4.44.1 + rollup: 4.44.2 optionalDependencies: fsevents: 2.3.3 dev: true @@ -22220,7 +22417,7 @@ packages: '@types/node': 22.14.0 esbuild: 0.21.5 postcss: 8.5.6 - rollup: 4.44.1 + rollup: 4.44.2 optionalDependencies: fsevents: 2.3.3 dev: true @@ -22266,11 +22463,11 @@ packages: optional: true dependencies: '@types/node': 22.14.0 - esbuild: 0.25.5 + esbuild: 0.25.6 fdir: 6.4.6(picomatch@4.0.2) picomatch: 4.0.2 postcss: 8.5.6 - rollup: 4.44.1 + rollup: 4.44.2 tinyglobby: 0.2.14 optionalDependencies: fsevents: 2.3.3 @@ -22488,9 +22685,9 @@ packages: '@vitest/spy': 3.1.4 '@vitest/ui': 1.6.1(vitest@3.1.4) '@vitest/utils': 3.1.4 - chai: 5.2.0 + chai: 5.2.1 debug: 4.4.1(supports-color@8.1.1) - expect-type: 1.2.1 + expect-type: 1.2.2 magic-string: 0.30.17 pathe: 2.0.3 std-env: 3.9.0 @@ -22606,8 +22803,8 @@ packages: engines: {node: '>=10.13.0'} dev: false - /webpack@5.99.9(@swc/core@1.3.101)(esbuild@0.19.11): - resolution: {integrity: sha512-brOPwM3JnmOa+7kd3NsmOUOwbDAj8FT9xDsG3IW0MgbN9yZV7Oi/s/+MNQ/EcSMqw7qfoRyXPoeEWT8zLVdVGg==} + /webpack@5.100.0(@swc/core@1.3.101)(esbuild@0.19.11): + resolution: {integrity: sha512-H8yBSBTk+BqxrINJnnRzaxU94SVP2bjd7WmA+PfCphoIdDpeQMJ77pq9/4I7xjLq38cB1bNKfzYPZu8pB3zKtg==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -22623,6 +22820,7 @@ packages: '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.15.0 + acorn-import-phases: 1.0.3(acorn@8.15.0) browserslist: 4.25.1 chrome-trace-event: 1.0.4 enhanced-resolve: 5.18.2 @@ -22637,7 +22835,7 @@ packages: neo-async: 2.6.2 schema-utils: 4.3.2 tapable: 2.2.2 - terser-webpack-plugin: 5.3.14(@swc/core@1.3.101)(esbuild@0.19.11)(webpack@5.99.9) + terser-webpack-plugin: 5.3.14(@swc/core@1.3.101)(esbuild@0.19.11)(webpack@5.100.0) watchpack: 2.4.4 webpack-sources: 3.3.3 transitivePeerDependencies: