content.tsx 945 B

123456789101112131415161718192021222324252627282930313233343536
  1. import { CodeBlock } from 'ui-patterns/CodeBlock'
  2. import type { StepContentProps } from '@/components/interfaces/ConnectSheet/Connect.types'
  3. const ORM_INSTALL_COMMANDS: Record<string, string[]> = {
  4. prisma: ['npm install prisma --save-dev', 'npx prisma init'],
  5. drizzle: ['npm install drizzle-orm', 'npm install drizzle-kit --save-dev'],
  6. }
  7. function OrmInstallContent({ state }: StepContentProps) {
  8. const ormKey = String(state.orm ?? '')
  9. const commands = ORM_INSTALL_COMMANDS[ormKey]
  10. if (!commands?.length) {
  11. return null
  12. }
  13. return (
  14. <div className="flex flex-col gap-2">
  15. {commands.map((cmd, index) => (
  16. <CodeBlock
  17. key={index}
  18. className="[&_code]:text-foreground"
  19. wrapperClassName="lg:col-span-2"
  20. value={cmd}
  21. hideLineNumbers
  22. language="bash"
  23. >
  24. {cmd}
  25. </CodeBlock>
  26. ))}
  27. </div>
  28. )
  29. }
  30. export default OrmInstallContent