diff options
| author | codeTorso <[email protected]> | 2024-08-12 04:36:54 +0530 |
|---|---|---|
| committer | codeTorso <[email protected]> | 2024-08-12 04:36:54 +0530 |
| commit | 28f8149c342ecbbff278521127903f66fc545d67 (patch) | |
| tree | 77655e10def6c64f640540d93267c0e3712628a4 | |
| parent | why is this novel shit broke (diff) | |
| download | supermemory-28f8149c342ecbbff278521127903f66fc545d67.tar.xz supermemory-28f8149c342ecbbff278521127903f66fc545d67.zip | |
alert when deleting space
| -rw-r--r-- | apps/web/app/(dash)/(memories)/content.tsx | 118 | ||||
| -rw-r--r-- | apps/web/app/(dash)/layout.tsx | 2 | ||||
| -rw-r--r-- | apps/web/app/(dash)/menu.tsx | 14 | ||||
| -rw-r--r-- | package.json | 9 | ||||
| -rw-r--r-- | packages/ui/shadcn/alert-dialog.tsx | 141 | ||||
| -rw-r--r-- | packages/ui/shadcn/button.tsx | 2 | ||||
| -rw-r--r-- | pnpm-lock.yaml | 103 |
7 files changed, 239 insertions, 150 deletions
diff --git a/apps/web/app/(dash)/(memories)/content.tsx b/apps/web/app/(dash)/(memories)/content.tsx index 6e2659cb..5d81e823 100644 --- a/apps/web/app/(dash)/(memories)/content.tsx +++ b/apps/web/app/(dash)/(memories)/content.tsx @@ -1,7 +1,7 @@ "use client"; import { Content, StoredSpace } from "@repo/db/schema"; -import { MemoriesIcon, NextIcon, SearchIcon, UrlIcon } from "@repo/ui/icons"; +import { MemoriesIcon, NextIcon, UrlIcon } from "@repo/ui/icons"; import { ArrowLeftIcon, MenuIcon, @@ -37,20 +37,22 @@ import { toast } from "sonner"; import { Input } from "@repo/ui/shadcn/input"; import { motion } from "framer-motion"; import { useSearchParams } from "next/navigation"; +import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger } from "@repo/ui/shadcn/alert-dialog"; + +type TMemoriesPage = { + memoriesAndSpaces: { memories: Content[]; spaces: StoredSpace[] }; + title?: string; + currentSpace?: StoredSpace; + usersWithAccess?: string[]; +}; export function MemoriesPage({ memoriesAndSpaces, title = "Your Memories", currentSpace, usersWithAccess, -}: { - memoriesAndSpaces: { memories: Content[]; spaces: StoredSpace[] }; - title?: string; - currentSpace?: StoredSpace; - usersWithAccess?: string[]; -}) { +}: TMemoriesPage) { const searchParams = useSearchParams(); - const tab = searchParams.get("tab"); const initialFilter = useMemo(() => { @@ -64,7 +66,6 @@ export function MemoriesPage({ const [filter, setFilter] = useState(initialFilter); const [spaces, setSpaces] = useState<StoredSpace[]>(memoriesAndSpaces.spaces); - // to delete a space const handleDeleteSpace = async (id: number) => { const response = await deleteSpace(id); @@ -72,7 +73,7 @@ export function MemoriesPage({ setSpaces(spaces.filter((space) => space.id !== id)); toast.success("Space deleted"); } else { - toast.error("Failed to delete space"); + toast.error("Failed to delete the space"); } }; @@ -96,25 +97,22 @@ export function MemoriesPage({ URL.revokeObjectURL(url); }; - // Sort Both memories and spaces by their savedAt and createdAt dates respectfully. - // The output should be just one single list of items - // And it will look something like { item: "memory" | "space", date: Date, data: Content | StoredSpace } const sortedItems = useMemo(() => { - // Merge the lists + // merge spaces & memories to { item: "memory" | "space", date: Date, data: Content | StoredSpace } const unifiedItems = [ ...memoriesAndSpaces.memories.map((memory) => ({ item: "memory", - date: new Date(memory.savedAt), // Assuming savedAt is a string date + date: new Date(memory.savedAt), data: memory, })), ...spaces.map((space) => ({ item: "space", - date: new Date(space.createdAt), // Assuming createdAt is a string date + date: new Date(space.createdAt), data: space, })), ].map((item) => ({ ...item, - date: Number(item.date), // Convert the date to a number + date: Number(item.date), })); // Sort the merged list @@ -142,28 +140,22 @@ export function MemoriesPage({ }, [memoriesAndSpaces.memories, spaces, filter]); return ( - <div - key={`${memoriesAndSpaces.memories.length + memoriesAndSpaces.spaces.length}`} - className="px-2 md:px-32 py-36 h-full flex mx-auto w-full flex-col gap-6" - > - {currentSpace && ( - <Link href={"/memories"} className="flex gap-2 items-center"> - <ArrowLeftIcon className="w-3 h-3" /> Back to all memories - </Link> - )} + <div className="px-2 md:px-32 py-36 h-full flex mx-auto w-full flex-col gap-6"> + <div className="space-y-2"> + {currentSpace && ( + <Link href={"/memories"}> + <Button className="px-0 text-gray-300" variant="link"> + <ArrowLeftIcon className="w-3 h-3" /> Back to all memories + </Button> + </Link> + )} + <h2 className="text-white w-full text-3xl text-left font-semibold"> + {title} + </h2> + </div> - <h2 className="text-white w-full text-3xl text-left font-semibold"> - {title} - </h2> {currentSpace && ( <div className="flex flex-col gap-2"> - <div className="flex gap-4 items-center"> - Space - <div className="flex items-center gap-2 bg-secondary p-2 rounded-xl"> - <Image src={MemoriesIcon} alt="Spaces icon" className="w-3 h-3" /> - <span className="text-[#fff]">{currentSpace.name}</span> - </div> - </div> {usersWithAccess && usersWithAccess.length > 0 && ( <div className="flex gap-4 items-center"> @@ -202,7 +194,11 @@ export function MemoriesPage({ }} className="flex gap-2 max-w-xl mt-2" > - <Input name="email" placeholder="Add user by email" /> + <Input + className="focus-visible:ring-0 border-[1px]" + name="email" + placeholder="Add user by email" + /> <Button variant="secondary">Add</Button> </form> </div> @@ -218,7 +214,7 @@ export function MemoriesPage({ /> <button onClick={handleExport} - className={`transition px-6 py-2 rounded-xl hover:text-[#369DFD]" text-[#B3BCC5] bg-secondary hover:bg-secondary hover:text-[#76a3cc]`} + className={`transition px-4 py-2 rounded-lg text-[#B3BCC5] bg-secondary hover:bg-secondary hover:text-[#76a3cc]`} > JSON Export </button> @@ -235,7 +231,7 @@ export function MemoriesPage({ {sortedItems.map((item) => { if (item.item === "memory") { return ( - <LinkComponent + <MemoryComponent type={(item.data as Content).type ?? "note"} content={(item.data as Content).content} title={(item.data as Content).title ?? "Untitled"} @@ -256,7 +252,7 @@ export function MemoriesPage({ if (item.item === "space") { return ( - <TabComponent + <SpaceComponent title={(item.data as StoredSpace).name} description={`${(item.data as StoredSpace).numItems} memories`} id={(item.data as StoredSpace).id} @@ -272,7 +268,7 @@ export function MemoriesPage({ ); } -function TabComponent({ +function SpaceComponent({ title, description, id, @@ -284,7 +280,7 @@ function TabComponent({ handleDeleteSpace: (id: number) => void; }) { return ( - <div className="flex group flex-col gap-4 bg-[#161f2a]/30 backdrop-blur-md border-2 border-border w-full rounded-xl p-4"> + <div className="flex group flex-col gap-4 bg-[#161f2a]/25 backdrop-blur-md border-[1px] shadow-md border-border w-full rounded-xl p-4"> <div className="flex items-center gap-2 text-xs"> <Image alt="Spaces icon" src={MemoriesIcon} className="size-3" /> Space </div> @@ -296,7 +292,7 @@ function TabComponent({ > <div> <div className="h-12 w-12 flex justify-center items-center rounded-md"> - {title.slice(0, 2).toUpperCase()} {id} + {title.slice(0, 2).toUpperCase()}{id} </div> </div> <div className="grow px-2"> @@ -308,17 +304,15 @@ function TabComponent({ </div> </Link> <div className="absolute z-40 right-3 top-3 opacity-0 group-hover:opacity-100 hover:text-red-600"> - <TrashIcon - onClick={() => handleDeleteSpace(id)} - className="w-4 cursor-pointer" - /> + + <SpaceDeleteAlert onClick={()=> {handleDeleteSpace(id)}} /> </div> </div> </div> ); } -function LinkComponent({ +function MemoryComponent({ type, content, title, @@ -445,12 +439,12 @@ function Filters({ filterMethods: string[]; }) { return ( - <div className="flex gap-4 flex-wrap"> + <div className="flex gap-3 flex-wrap"> {filterMethods.map((i) => { return ( <button onClick={() => setFilter(i)} - className={`transition px-6 py-2 rounded-xl bg-border ${i === filter ? " text-[#369DFD]" : "text-[#B3BCC5] bg-secondary hover:bg-secondary hover:text-[#76a3cc]"}`} + className={`transition px-4 py-2 shadow-md rounded-lg bg-border ${i === filter ? " text-[#369DFD]" : "text-[#B3BCC5] bg-secondary drop-shadow-md hover:bg-secondary hover:text-[#76a3cc]"}`} > {i} </button> @@ -460,4 +454,26 @@ function Filters({ ); } -export default MemoriesPage; +function SpaceDeleteAlert({onClick}: {onClick: ()=> void}){ + return ( + <AlertDialog> + <AlertDialogTrigger> <TrashIcon + className="w-4 cursor-pointer" + /></AlertDialogTrigger> + <AlertDialogContent> + <AlertDialogHeader> + <AlertDialogTitle>Are you absolutely sure?</AlertDialogTitle> + <AlertDialogDescription> + This is irreversible. This will delete the space and all memories inside it. + </AlertDialogDescription> + </AlertDialogHeader> + <AlertDialogFooter> + <AlertDialogCancel>Cancel</AlertDialogCancel> + <AlertDialogAction onClick={onClick}>Delete</AlertDialogAction> + </AlertDialogFooter> + </AlertDialogContent> +</AlertDialog> + ) +} + +export default MemoriesPage;
\ No newline at end of file diff --git a/apps/web/app/(dash)/layout.tsx b/apps/web/app/(dash)/layout.tsx index c6174945..348263f0 100644 --- a/apps/web/app/(dash)/layout.tsx +++ b/apps/web/app/(dash)/layout.tsx @@ -26,7 +26,7 @@ async function Layout({ children }: { children: React.ReactNode }) { <Header /> </div> - <div className="relative flex justify-center z-40 pointer-events-none"> + <div className="relative flex justify-center z-[45] pointer-events-none"> <div className="absolute -z-10 left-0 top-[10%] h-32 w-[90%] overflow-x-hidden bg-[rgb(54,157,253)] bg-opacity-100 md:bg-opacity-70 blur-[337.4px]" style={{ transform: "rotate(-30deg)" }} diff --git a/apps/web/app/(dash)/menu.tsx b/apps/web/app/(dash)/menu.tsx index 51e97108..3124bdeb 100644 --- a/apps/web/app/(dash)/menu.tsx +++ b/apps/web/app/(dash)/menu.tsx @@ -66,11 +66,11 @@ function Menu() { <> {/* Desktop Menu */} <Dialog open={dialogOpen} onOpenChange={setDialogOpen}> - <div className="hidden lg:flex fixed h-screen pb-20 w-full p-4 items-center justify-start top-0 left-0 pointer-events-none z-[39]"> + <div className="hidden lg:flex fixed h-screen w-full p-4 items-center top-0 left-0 pointer-events-none z-[39]"> <div className="pointer-events-auto group flex w-14 text-foreground-menu text-[15px] font-medium flex-col items-start gap-6 overflow-hidden rounded-[28px] border-2 border-border bg-secondary px-3 py-4 duration-200 hover:w-40 z-[99999]"> <div className="border-b border-border pb-4 w-full"> <DialogTrigger - className={`flex w-full text-white brightness-75 hover:brightness-125 focus:brightness-125 cursor-pointer items-center gap-3 px-1 duration-200 justify-start`} + className="flex w-full text-white brightness-75 hover:brightness-125 focus:brightness-125 cursor-pointer items-center gap-3 px-1 duration-200 justify-start" > <Image src={AddIcon} @@ -86,14 +86,9 @@ function Menu() { </div> {menuItems.map((item) => ( <Link - aria-disabled={item.disabled} - href={item.disabled ? "#" : item.url} + href={item.url} key={item.url} - className={`flex w-full ${ - item.disabled - ? "cursor-not-allowed opacity-30" - : "text-white brightness-75 hover:brightness-125 cursor-pointer" - } items-center gap-3 px-1 duration-200 hover:scale-105 active:scale-90 justify-start`} + className="flex w-full items-center gap-3 px-1 duration-200 hover:scale-105 active:scale-90 justify-start text-white brightness-75 hover:brightness-125 cursor-pointer" > <Image src={item.icon} @@ -297,6 +292,7 @@ function DialogContentMenu({setDialogClose}: {setDialogClose: ()=> void}){ <div> <Label htmlFor="name">Resource (URL or content)</Label> <Textarea + autoFocus className={`bg-[#2F353C] text-[#DBDEE1] max-h-[35vh] overflow-auto focus-visible:ring-0 border-none focus-visible:ring-offset-0 mt-2 ${/^https?:\/\/\S+$/i.test(content) && "text-[#1D9BF0] underline underline-offset-2"}`} id="content" name="content" diff --git a/package.json b/package.json index 21900aa3..e24f636a 100644 --- a/package.json +++ b/package.json @@ -11,12 +11,12 @@ }, "devDependencies": { "@clack/prompts": "^0.7.0", + "@repo/db": "*", "@repo/eslint-config": "*", "@repo/shared-types": "*", "@repo/tailwind-config": "*", "@repo/typescript-config": "*", "@repo/ui": "*", - "@repo/db": "*", "lint-staged": "^15.2.5", "prettier": "^3.3.3", "rxjs": "^7.8.1", @@ -45,6 +45,7 @@ "@million/lint": "^1.0.0-rc.81", "@mozilla/readability": "^0.5.0", "@radix-ui/react-accordion": "^1.1.2", + "@radix-ui/react-alert-dialog": "^1.1.1", "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-label": "^2.0.2", @@ -67,6 +68,8 @@ "cheerio": "^1.0.0-rc.12", "compromise": "^14.13.0", "crypto-browserify": "^3.12.0", + "drizzle-kit": "0.21.2", + "drizzle-orm": "0.30.0", "eslint-config-turbo": "^2.0.6", "framer-motion": "^11.2.6", "geist": "^1.3.0", @@ -100,9 +103,7 @@ "turndown": "^7.2.0", "uploadthing": "^6.10.4", "vaul": "^0.9.1", - "zod": "^3.23.8", - "drizzle-kit": "0.21.2", - "drizzle-orm": "0.30.0" + "zod": "^3.23.8" }, "trustedDependencies": [ "core-js-pure", diff --git a/packages/ui/shadcn/alert-dialog.tsx b/packages/ui/shadcn/alert-dialog.tsx new file mode 100644 index 00000000..fcde38f2 --- /dev/null +++ b/packages/ui/shadcn/alert-dialog.tsx @@ -0,0 +1,141 @@ +"use client" + +import * as React from "react" +import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog" + +import { cn } from "@repo/ui/lib/utils"; +import { buttonVariants } from "@repo/ui/shadcn/button"; + +const AlertDialog = AlertDialogPrimitive.Root + +const AlertDialogTrigger = AlertDialogPrimitive.Trigger + +const AlertDialogPortal = AlertDialogPrimitive.Portal + +const AlertDialogOverlay = React.forwardRef< + React.ElementRef<typeof AlertDialogPrimitive.Overlay>, + React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Overlay> +>(({ className, ...props }, ref) => ( + <AlertDialogPrimitive.Overlay + className={cn( + "fixed inset-0 z-[41] bg-black/20 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", + className + )} + {...props} + ref={ref} + /> +)) +AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName + +const AlertDialogContent = React.forwardRef< + React.ElementRef<typeof AlertDialogPrimitive.Content>, + React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content> +>(({ className, ...props }, ref) => ( + <AlertDialogPortal> + <AlertDialogOverlay /> + <AlertDialogPrimitive.Content + ref={ref} + className={cn( + "fixed left-[50%] top-[50%] z-[41] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border-border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg", + className + )} + {...props} + /> + </AlertDialogPortal> +)) +AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName + +const AlertDialogHeader = ({ + className, + ...props +}: React.HTMLAttributes<HTMLDivElement>) => ( + <div + className={cn( + "flex flex-col space-y-2 text-center sm:text-left", + className + )} + {...props} + /> +) +AlertDialogHeader.displayName = "AlertDialogHeader" + +const AlertDialogFooter = ({ + className, + ...props +}: React.HTMLAttributes<HTMLDivElement>) => ( + <div + className={cn( + "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", + className + )} + {...props} + /> +) +AlertDialogFooter.displayName = "AlertDialogFooter" + +const AlertDialogTitle = React.forwardRef< + React.ElementRef<typeof AlertDialogPrimitive.Title>, + React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title> +>(({ className, ...props }, ref) => ( + <AlertDialogPrimitive.Title + ref={ref} + className={cn("text-lg font-semibold", className)} + {...props} + /> +)) +AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName + +const AlertDialogDescription = React.forwardRef< + React.ElementRef<typeof AlertDialogPrimitive.Description>, + React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description> +>(({ className, ...props }, ref) => ( + <AlertDialogPrimitive.Description + ref={ref} + className={cn("text-sm text-muted-foreground", className)} + {...props} + /> +)) +AlertDialogDescription.displayName = + AlertDialogPrimitive.Description.displayName + +const AlertDialogAction = React.forwardRef< + React.ElementRef<typeof AlertDialogPrimitive.Action>, + React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action> +>(({ className, ...props }, ref) => ( + <AlertDialogPrimitive.Action + ref={ref} + className={cn(buttonVariants({variant: "destructive"}), className)} + {...props} + /> +)) +AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName + +const AlertDialogCancel = React.forwardRef< + React.ElementRef<typeof AlertDialogPrimitive.Cancel>, + React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel> +>(({ className, ...props }, ref) => ( + <AlertDialogPrimitive.Cancel + ref={ref} + className={cn( + buttonVariants({ variant: "secondary" }), + "mt-2 sm:mt-0", + className + )} + {...props} + /> +)) +AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName + +export { + AlertDialog, + AlertDialogPortal, + AlertDialogOverlay, + AlertDialogTrigger, + AlertDialogContent, + AlertDialogHeader, + AlertDialogFooter, + AlertDialogTitle, + AlertDialogDescription, + AlertDialogAction, + AlertDialogCancel, +} diff --git a/packages/ui/shadcn/button.tsx b/packages/ui/shadcn/button.tsx index 1b2a852e..a4ed345f 100644 --- a/packages/ui/shadcn/button.tsx +++ b/packages/ui/shadcn/button.tsx @@ -11,7 +11,7 @@ const buttonVariants = cva( variant: { default: "bg-primary text-primary-foreground hover:bg-primary/90", destructive: - "bg-destructive text-destructive-foreground hover:bg-destructive/90", + "bg-destructive text-destructive-foreground hover:bg-destructive/50", outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground", secondary: diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f9da1fd3..59eb1a27 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -28,7 +28,7 @@ importers: version: 3.620.0 '@babel/plugin-transform-runtime': specifier: ^7.24.7 - version: 7.24.7(@babel/[email protected]) + version: 7.24.7(@babel/[email protected]) '@cloudflare/puppeteer': specifier: ^0.0.11 version: 0.0.11 @@ -59,6 +59,9 @@ importers: '@radix-ui/react-accordion': specifier: ^1.1.2 version: 1.2.0(@types/[email protected])(@types/[email protected])([email protected]([email protected]))([email protected]) + '@radix-ui/react-alert-dialog': + specifier: ^1.1.1 + version: 1.1.1(@types/[email protected])(@types/[email protected])([email protected]([email protected]))([email protected]) '@radix-ui/react-dropdown-menu': specifier: ^2.1.1 version: 2.1.1(@types/[email protected])(@types/[email protected])([email protected]([email protected]))([email protected]) @@ -139,7 +142,7 @@ importers: geist: specifier: ^1.3.0 - version: 1.3.1([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected])) + version: 1.3.1([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected])) google-auth-library: specifier: ^9.11.0 version: 9.11.0([email protected]) @@ -169,7 +172,7 @@ importers: version: 0.1.10([email protected]) next-auth: specifier: ^5.0.0-beta.18 - version: 5.0.0-beta.19([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]) + version: 5.0.0-beta.19([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]) next-themes: specifier: ^0.3.0 @@ -226,7 +229,7 @@ importers: version: 7.2.0 uploadthing: specifier: ^6.10.4 - version: 6.13.2([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]([email protected](@types/[email protected])([email protected]))) + version: 6.13.2([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]([email protected](@types/[email protected])([email protected]))) vaul: specifier: ^0.9.1 version: 0.9.1(@types/[email protected])(@types/[email protected])([email protected]([email protected]))([email protected]) @@ -13346,6 +13349,7 @@ packages: resolution: {integrity: sha512-p4DJa6OldXWd6M9zRl0H6vB9lkrmqYFkRQ2xEiNdBFp9U0LhsGO7hsBscVEyH9H2/3eZZt8c97NB2FD9U2NJ+Q==} + deprecated: It is not compatible with newer versions of GA starting with v4, as long as you are using GAv3 it should be ok, but the package is not longer being maintained resolution: {integrity: sha512-utNEWG+uOfXdaZmvhshrh7KzhDu/1iMHyQOV6Aqup8Mm78D286ugu5k9MFD9SzBT5TcwgwSORVvInaXWbvKz9Q==} @@ -14395,17 +14399,6 @@ snapshots: regexpu-core: 5.3.2 semver: 6.3.1 - '@babel/[email protected](@babel/[email protected])': - dependencies: - '@babel/core': 7.24.6 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-plugin-utils': 7.24.8 - debug: 4.3.6 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - '@babel/[email protected](@babel/[email protected])': dependencies: '@babel/core': 7.24.9 @@ -15001,14 +14994,14 @@ snapshots: '@babel/core': 7.24.9 '@babel/helper-plugin-utils': 7.24.8 - '@babel/[email protected](@babel/[email protected])': + '@babel/[email protected](@babel/[email protected])': dependencies: - '@babel/core': 7.24.6 + '@babel/core': 7.24.9 '@babel/helper-module-imports': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 - babel-plugin-polyfill-corejs2: 0.4.11(@babel/[email protected]) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/[email protected]) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/[email protected]) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/[email protected]) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/[email protected]) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/[email protected]) semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -20085,15 +20078,6 @@ snapshots: schema-utils: 4.2.0 webpack: 5.92.1([email protected])([email protected]) - [email protected](@babel/[email protected]): - dependencies: - '@babel/compat-data': 7.25.0 - '@babel/core': 7.24.6 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/[email protected]) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - [email protected](@babel/[email protected]): dependencies: '@babel/compat-data': 7.25.0 @@ -20103,14 +20087,6 @@ snapshots: transitivePeerDependencies: - supports-color - [email protected](@babel/[email protected]): - dependencies: - '@babel/core': 7.24.6 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/[email protected]) - core-js-compat: 3.37.1 - transitivePeerDependencies: - - supports-color - [email protected](@babel/[email protected]): dependencies: '@babel/core': 7.24.9 @@ -20119,13 +20095,6 @@ snapshots: transitivePeerDependencies: - supports-color - [email protected](@babel/[email protected]): - dependencies: - '@babel/core': 7.24.6 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/[email protected]) - transitivePeerDependencies: - - supports-color - [email protected](@babel/[email protected]): dependencies: '@babel/core': 7.24.9 @@ -22670,9 +22639,9 @@ snapshots: - encoding - supports-color - [email protected]([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected])): + [email protected]([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected])): dependencies: - next: 14.2.5(@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]) + next: 14.2.5(@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]) @@ -25070,10 +25039,10 @@ snapshots: dependencies: react: 18.3.1 - [email protected]([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]): + [email protected]([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]): dependencies: '@auth/core': 0.32.0 - next: 14.2.5(@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]) + next: 14.2.5(@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]) react: 18.3.1 [email protected](@babel/[email protected])([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]([email protected])): @@ -25101,33 +25070,6 @@ snapshots: - [email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]): - dependencies: - '@next/env': 14.2.5 - '@swc/helpers': 0.5.5 - busboy: 1.6.0 - caniuse-lite: 1.0.30001643 - graceful-fs: 4.2.11 - postcss: 8.4.31 - react: 18.3.1 - react-dom: 18.3.1([email protected]) - styled-jsx: 5.1.1(@babel/[email protected])([email protected]) - optionalDependencies: - '@next/swc-darwin-arm64': 14.2.5 - '@next/swc-darwin-x64': 14.2.5 - '@next/swc-linux-arm64-gnu': 14.2.5 - '@next/swc-linux-arm64-musl': 14.2.5 - '@next/swc-linux-x64-gnu': 14.2.5 - '@next/swc-linux-x64-musl': 14.2.5 - '@next/swc-win32-arm64-msvc': 14.2.5 - '@next/swc-win32-ia32-msvc': 14.2.5 - '@next/swc-win32-x64-msvc': 14.2.5 - '@opentelemetry/api': 1.9.0 - sass: 1.77.8 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - [email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]): dependencies: '@next/env': 14.2.5 @@ -27698,13 +27640,6 @@ snapshots: dependencies: inline-style-parser: 0.2.3 - dependencies: - client-only: 0.0.1 - react: 18.3.1 - optionalDependencies: - '@babel/core': 7.24.6 - dependencies: client-only: 0.0.1 @@ -28545,7 +28480,7 @@ snapshots: transitivePeerDependencies: - encoding - [email protected]([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]([email protected](@types/[email protected])([email protected]))): + [email protected]([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]))([email protected]([email protected](@types/[email protected])([email protected]))): dependencies: '@effect/schema': 0.68.12([email protected]) '@uploadthing/mime-types': 0.2.10 @@ -28555,7 +28490,7 @@ snapshots: std-env: 3.7.0 optionalDependencies: express: 4.19.2 - next: 14.2.5(@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]) + next: 14.2.5(@babel/[email protected])(@opentelemetry/[email protected])([email protected]([email protected]))([email protected])([email protected]) |