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 ( {` export const environment = { brivenUrl: '${projectKeys.apiUrl ?? 'your-project-url'}', brivenKey: '${projectKeys.publishableKey ?? ''}', }; `} {` import { Injectable } from '@angular/core'; import { createClient, BrivenClient } from '@supabase/supabase-js'; import { environment } from '../environments/environment'; @Injectable({ providedIn: 'root', }) export class BrivenService { private briven: BrivenClient; constructor() { this.briven = createClient( environment.brivenUrl, environment.brivenKey ); } getTodos() { return this.briven.from('todos').select('*'); } } `} {` import { Component, OnInit } from '@angular/core'; import { BrivenService } from './briven.service'; @Component({ selector: 'app-root', templateUrl: 'app.component.html', styleUrls: ['app.component.scss'], }) export class AppComponent implements OnInit { todos: any[] = []; constructor(private brivenService: BrivenService) {} async ngOnInit() { await this.loadTodos(); } async loadTodos() { const { data, error } = await this.brivenService.getTodos(); if (error) { console.error('Error fetching todos:', error); } else { this.todos = data; } } } `} {` Todo List {{ todo.title }} `} {` import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { BrowserModule } from '@angular/platform-browser'; import { RouterModule } from '@angular/router'; import { IonicModule } from '@ionic/angular'; import { AppComponent } from './app.component'; import { BrivenService } from './briven.service'; @NgModule({ imports: [ BrowserModule, FormsModule, RouterModule.forRoot([]), IonicModule.forRoot({ mode: 'ios' }), ], declarations: [AppComponent], providers: [BrivenService], bootstrap: [AppComponent], }) export class AppModule {} `} ) } export default ContentFile