MissingExtensionAlert.tsx 911 B

123456789101112131415161718192021222324252627
  1. import { useState } from 'react'
  2. import { Button } from 'ui'
  3. import { EnableExtensionModal } from '@/components/interfaces/Database/Extensions/EnableExtensionModal'
  4. import { DatabaseExtension } from '@/data/database-extensions/database-extensions-query'
  5. export const MissingExtensionAlert = ({ extension }: { extension: DatabaseExtension }) => {
  6. const [showEnableExtensionModal, setShowEnableExtensionModal] = useState(false)
  7. const extensionInstalled = !!extension?.installed_version
  8. if (!extensionInstalled) {
  9. return (
  10. <>
  11. <Button type="primary" className="w-min" onClick={() => setShowEnableExtensionModal(true)}>
  12. Enable {extension.name}
  13. </Button>
  14. <EnableExtensionModal
  15. visible={showEnableExtensionModal}
  16. extension={extension}
  17. onCancel={() => setShowEnableExtensionModal(false)}
  18. />
  19. </>
  20. )
  21. }
  22. return null
  23. }