From 77950e48c76f4a3b29d01831d43039caba29888a Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期二, 18 十一月 2025 14:12:42 +0800
Subject: [PATCH] 修改
---
app/components/base/dialog/index.tsx | 49 +++++++++++++++++++++++++++----------------------
1 files changed, 27 insertions(+), 22 deletions(-)
diff --git a/app/components/base/dialog/index.tsx b/app/components/base/dialog/index.tsx
index 6eae3bc..f439067 100644
--- a/app/components/base/dialog/index.tsx
+++ b/app/components/base/dialog/index.tsx
@@ -1,6 +1,6 @@
import { Fragment, useCallback } from 'react'
import type { ElementType, ReactNode } from 'react'
-import { Dialog, DialogPanel, DialogTitle, Transition, TransitionChild } from '@headlessui/react'
+import { Dialog, Transition } from '@headlessui/react'
import classNames from '@/utils/classnames'
// https://headlessui.com/react/dialog
@@ -34,32 +34,37 @@
return (
<Transition appear show={show} as={Fragment}>
<Dialog as="div" className="relative z-40" onClose={close}>
- <TransitionChild>
- <div className={classNames(
- 'fixed inset-0 bg-background-overlay-backdrop backdrop-blur-[6px]',
- 'duration-300 ease-in data-[closed]:opacity-0',
- 'data-[enter]:opacity-100',
- 'data-[leave]:opacity-0',
- )} />
- </TransitionChild>
+ <Transition.Child
+ as={Fragment}
+ enter="ease-out duration-300"
+ enterFrom="opacity-0"
+ enterTo="opacity-100"
+ leave="ease-in duration-200"
+ leaveFrom="opacity-100"
+ leaveTo="opacity-0"
+ >
+ <div className="fixed inset-0 bg-black bg-opacity-25" />
+ </Transition.Child>
<div className="fixed inset-0 overflow-y-auto">
- <div className="flex min-h-full items-center justify-center">
- <TransitionChild>
- <DialogPanel className={classNames(
- 'w-full max-w-[800px] p-6 overflow-hidden transition-all transform bg-components-panel-bg border-[0.5px] border-components-panel-border shadow-xl rounded-2xl',
- 'duration-100 ease-in data-[closed]:opacity-0 data-[closed]:scale-95',
- 'data-[enter]:opacity-100 data-[enter]:scale-100',
- 'data-[leave]:opacity-0 data-[enter]:scale-95',
- className,
- )}>
+ <div className="flex items-center justify-center min-h-full">
+ <Transition.Child
+ as={Fragment}
+ enter="ease-out duration-300"
+ enterFrom="opacity-0 scale-95"
+ enterTo="opacity-100 scale-100"
+ leave="ease-in duration-200"
+ leaveFrom="opacity-100 scale-100"
+ leaveTo="opacity-0 scale-95"
+ >
+ <Dialog.Panel className={classNames('w-full max-w-[800px] p-6 overflow-hidden transition-all transform bg-components-panel-bg border-[0.5px] border-components-panel-border shadow-xl rounded-2xl', className)}>
{Boolean(title) && (
- <DialogTitle
+ <Dialog.Title
as={titleAs || 'h3'}
className={classNames('pr-8 pb-3 title-2xl-semi-bold text-text-primary', titleClassName)}
>
{title}
- </DialogTitle>
+ </Dialog.Title>
)}
<div className={classNames(bodyClassName)}>
{children}
@@ -69,8 +74,8 @@
{footer}
</div>
)}
- </DialogPanel>
- </TransitionChild>
+ </Dialog.Panel>
+ </Transition.Child>
</div>
</div>
</Dialog>
--
Gitblit v1.8.0