| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- import { SimpleCodeBlock } from 'ui-patterns/SimpleCodeBlock'
- import type { ContentFileProps } from '@/components/interfaces/Connect/Connect.types'
- import {
- ConnectTabContent,
- ConnectTabs,
- ConnectTabTrigger,
- ConnectTabTriggers,
- } from '@/components/interfaces/Connect/ConnectTabs'
- const ContentFile = ({ projectKeys }: ContentFileProps) => {
- return (
- <ConnectTabs>
- <ConnectTabTriggers>
- <ConnectTabTrigger value=".env" />
- <ConnectTabTrigger value="utils/briven.ts" />
- <ConnectTabTrigger value="App.tsx" />
- </ConnectTabTriggers>
- <ConnectTabContent value=".env">
- <SimpleCodeBlock className="bash" parentClassName="min-h-72">
- {[
- '',
- `VITE_BRIVEN_URL=${projectKeys.apiUrl ?? 'your-project-url'}`,
- projectKeys?.publishableKey
- ? `VITE_BRIVEN_PUBLISHABLE_KEY=${projectKeys.publishableKey}`
- : `VITE_BRIVEN_ANON_KEY=${projectKeys.anonKey ?? 'your-anon-key'}`,
- '',
- ].join('\n')}
- </SimpleCodeBlock>
- </ConnectTabContent>
- <ConnectTabContent value="utils/briven.ts">
- <SimpleCodeBlock className="ts" parentClassName="min-h-72">
- {`
- import { createClient } from '@supabase/supabase-js';
- const brivenUrl = import.meta.env.VITE_BRIVEN_URL;
- const brivenKey = import.meta.env.${projectKeys.publishableKey ? 'VITE_BRIVEN_PUBLISHABLE_KEY' : 'VITE_BRIVEN_ANON_KEY'};
- const briven = createClient(brivenUrl, brivenKey);
- export default briven
- `}
- </SimpleCodeBlock>
- </ConnectTabContent>
- <ConnectTabContent value="App.tsx">
- <SimpleCodeBlock className="tsx" parentClassName="min-h-72">
- {`
- import { useState, useEffect } from 'react'
- import { briven } from '../utils/briven'
- function Page() {
- const [todos, setTodos] = useState([])
- useEffect(() => {
- function getTodos() {
- const { data: todos } = await briven.from('todos').select()
- if (todos.length > 1) {
- setTodos(todos)
- }
- }
- getTodos()
- }, [])
- return (
- <div>
- {todos.map((todo) => (
- <li key={todo}>{todo}</li>
- ))}
- </div>
- )
- }
- export default Page
- `}
- </SimpleCodeBlock>
- </ConnectTabContent>
- </ConnectTabs>
- )
- }
- export default ContentFile
|