| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | 'use client'import type { FC } from 'react'import React from 'react'import type { Plugin } from '../../../types'import Card from '../../../card'import Checkbox from '@/app/components/base/checkbox'import useGetIcon from '../../base/use-get-icon'import { MARKETPLACE_API_PREFIX } from '@/config'import Version from '../../base/version'import type { VersionProps } from '../../../types'type Props = {  checked: boolean  onCheckedChange: (plugin: Plugin) => void  payload: Plugin  isFromMarketPlace?: boolean  versionInfo: VersionProps}const LoadedItem: FC<Props> = ({  checked,  onCheckedChange,  payload,  isFromMarketPlace,  versionInfo: particleVersionInfo,}) => {  const { getIconUrl } = useGetIcon()  const versionInfo = {    ...particleVersionInfo,    toInstallVersion: payload.version,  }  return (    <div className='flex items-center space-x-2'>      <Checkbox        className='shrink-0'        checked={checked}        onCheck={() => onCheckedChange(payload)}      />      <Card        className='grow'        payload={{          ...payload,          icon: isFromMarketPlace ? `${MARKETPLACE_API_PREFIX}/plugins/${payload.org}/${payload.name}/icon` : getIconUrl(payload.icon),        }}        titleLeft={payload.version ? <Version {...versionInfo} /> : null}      />    </div>  )}export default React.memo(LoadedItem)
 |