| 
                        12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 | 
                        - import { memo } from 'react'
 - import { useTranslation } from 'react-i18next'
 - import { MiniMap } from 'reactflow'
 - import {
 -   useNodesReadOnly,
 -   useWorkflow,
 - } from '../hooks'
 - import ZoomInOut from './zoom-in-out'
 - import { OrganizeGrid } from '@/app/components/base/icons/src/vender/line/layout'
 - import TooltipPlus from '@/app/components/base/tooltip-plus'
 - 
 - const Operator = () => {
 -   const { t } = useTranslation()
 -   const { handleLayout } = useWorkflow()
 -   const {
 -     nodesReadOnly,
 -     getNodesReadOnly,
 -   } = useNodesReadOnly()
 - 
 -   const goLayout = () => {
 -     if (getNodesReadOnly())
 -       return
 -     handleLayout()
 -   }
 - 
 -   return (
 -     <div className={`
 -       absolute left-6 bottom-6 z-[9]
 -     `}>
 -       <MiniMap
 -         style={{
 -           width: 128,
 -           height: 80,
 -         }}
 -         className='!static !m-0 !w-[128px] !h-[80px] !border-[0.5px] !border-black/[0.08] !rounded-lg !shadow-lg'
 -       />
 -       <div className='flex items-center mt-1 p-0.5 rounded-lg border-[0.5px] border-gray-100 bg-white shadow-lg text-gray-500'>
 -         <ZoomInOut />
 -         <TooltipPlus popupContent={t('workflow.panel.organizeBlocks')}>
 -           <div
 -             className={`
 -               ml-[1px] flex items-center justify-center w-8 h-8 cursor-pointer hover:bg-black/5 rounded-lg
 -               ${nodesReadOnly && '!cursor-not-allowed opacity-50'}
 -             `}
 -             onClick={goLayout}
 -           >
 -             <OrganizeGrid className='w-4 h-4' />
 -           </div>
 -         </TooltipPlus>
 -       </div>
 -     </div>
 -   )
 - }
 - 
 - export default memo(Operator)
 
 
  |