| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | 'use client'import { memo } from 'react'import {  PortalToFollowElem,  PortalToFollowElemContent,  PortalToFollowElemTrigger,} from '@/app/components/base/portal-to-follow-elem'import SettingContent from '@/app/components/base/features/new-feature-panel/file-upload/setting-content'import type { OnFeaturesChange } from '@/app/components/base/features/types'type FileUploadSettingsProps = {  open: boolean  onOpen: (state: any) => void  onChange?: OnFeaturesChange  disabled?: boolean  children?: React.ReactNode  imageUpload?: boolean}const FileUploadSettings = ({  open,  onOpen,  onChange,  disabled,  children,  imageUpload,}: FileUploadSettingsProps) => {  return (    <PortalToFollowElem      open={open}      onOpenChange={onOpen}      placement='left'      offset={{        mainAxis: 32,      }}    >      <PortalToFollowElemTrigger className='flex' onClick={() => !disabled && onOpen((open: boolean) => !open)}>        {children}      </PortalToFollowElemTrigger>      <PortalToFollowElemContent style={{ zIndex: 50 }}>        <div className='w-[360px] p-4 bg-components-panel-bg rounded-2xl border-[0.5px] border-components-panel-border shadow-2xl'>          <SettingContent            imageUpload={imageUpload}            onClose={() => onOpen(false)}            onChange={(v) => {              onChange?.(v)              onOpen(false)            }} />        </div>      </PortalToFollowElemContent>    </PortalToFollowElem>  )}export default memo(FileUploadSettings)
 |