import { MultipleCodeBlock } from 'ui-patterns/MultipleCodeBlock' import type { StepContentProps } from '@/components/interfaces/ConnectSheet/Connect.types' const ContentFile = ({ projectKeys }: StepContentProps) => { const files = [ { name: 'lib/main.dart', language: 'dart', code: ` import 'package:flutter/material.dart'; import 'package:briven_flutter/briven_flutter.dart'; Future main() async { await Briven.initialize( url: '${projectKeys.apiUrl ?? 'your-project-url'}', anonKey: '${projectKeys.publishableKey ?? ''}', ); runApp(MyApp()); } `, }, { name: 'lib/main.dart (app)', language: 'dart', code: ` class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return const MaterialApp( title: 'Todos', home: HomePage(), ); } } class HomePage extends StatefulWidget { const HomePage({super.key}); @override State createState() => _HomePageState(); } class _HomePageState extends State { final _future = Briven.instance.client .from('todos') .select(); @override Widget build(BuildContext context) { return Scaffold( body: FutureBuilder( future: _future, builder: (context, snapshot) { if (!snapshot.hasData) { return const Center(child: CircularProgressIndicator()); } final todos = snapshot.data!; return ListView.builder( itemCount: todos.length, itemBuilder: ((context, index) { final todo = todos[index]; return ListTile( title: Text(todo['name']), ); }), ); }, ), ); } } `, }, ] return } export default ContentFile