index.tsx 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. 'use client'
  2. import { useTranslation } from 'react-i18next'
  3. import { RiCloseLine } from '@remixicon/react'
  4. import NewAppDialog from './newAppDialog'
  5. import AppList, { PageType } from '@/app/components/explore/app-list'
  6. type CreateAppDialogProps = {
  7. show: boolean
  8. onSuccess: () => void
  9. onClose: () => void
  10. }
  11. const CreateAppTemplateDialog = ({ show, onSuccess, onClose }: CreateAppDialogProps) => {
  12. const { t } = useTranslation()
  13. return (
  14. <NewAppDialog
  15. className='flex'
  16. show={show}
  17. onClose={() => {}}
  18. >
  19. {/* template list */}
  20. <div className='grow flex flex-col h-full bg-gray-100'>
  21. <div className='shrink-0 pl-8 pr-6 pt-6 pb-3 bg-gray-100 rounded-se-xl text-xl leading-[30px] font-semibold text-gray-900 z-10'>{t('app.newApp.startFromTemplate')}</div>
  22. <AppList onSuccess={() => {
  23. onSuccess()
  24. onClose()
  25. }} pageType={PageType.CREATE} />
  26. </div>
  27. <div className='absolute right-6 top-6 p-2 cursor-pointer z-20' onClick={onClose}>
  28. <RiCloseLine className='w-4 h-4 text-gray-500' />
  29. </div>
  30. </NewAppDialog>
  31. )
  32. }
  33. export default CreateAppTemplateDialog