- 'use client'
 - import type { FC } from 'react'
 - import React, { useCallback, useState } from 'react'
 - import { InstallStep } from '../../types'
 - import Install from './steps/install'
 - import Installed from './steps/installed'
 - import type { Dependency, InstallStatusResponse, Plugin } from '../../types'
 - 
 - type Props = {
 -   step: InstallStep
 -   onStepChange: (step: InstallStep) => void,
 -   onStartToInstall: () => void
 -   setIsInstalling: (isInstalling: boolean) => void
 -   allPlugins: Dependency[]
 -   onClose: () => void
 -   isFromMarketPlace?: boolean
 - }
 - 
 - const ReadyToInstall: FC<Props> = ({
 -   step,
 -   onStepChange,
 -   onStartToInstall,
 -   setIsInstalling,
 -   allPlugins,
 -   onClose,
 -   isFromMarketPlace,
 - }) => {
 -   const [installedPlugins, setInstalledPlugins] = useState<Plugin[]>([])
 -   const [installStatus, setInstallStatus] = useState<InstallStatusResponse[]>([])
 -   const handleInstalled = useCallback((plugins: Plugin[], installStatus: InstallStatusResponse[]) => {
 -     setInstallStatus(installStatus)
 -     setInstalledPlugins(plugins)
 -     onStepChange(InstallStep.installed)
 -     setIsInstalling(false)
 -   }, [onStepChange, setIsInstalling])
 -   return (
 -     <>
 -       {step === InstallStep.readyToInstall && (
 -         <Install
 -           allPlugins={allPlugins}
 -           onCancel={onClose}
 -           onStartToInstall={onStartToInstall}
 -           onInstalled={handleInstalled}
 -           isFromMarketPlace={isFromMarketPlace}
 -         />
 -       )}
 -       {step === InstallStep.installed && (
 -         <Installed
 -           list={installedPlugins}
 -           installStatus={installStatus}
 -           onCancel={onClose}
 -         />
 -       )}
 -     </>
 -   )
 - }
 - export default React.memo(ReadyToInstall)
 
 
  |