fireflow 0.1.8 fireflow: ^0.1.8 copied to clipboard
This package is designed for FlutterFlow app to provide enhanced features.
import 'package:example/firebase_options.dart';
import 'key.dart';
import 'package:example/router.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:fireflow/fireflow.dart';
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:supabase_flutter/supabase_flutter.dart';
import 'package:go_router/go_router.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
await Supabase.initialize(
url: 'https://crhqrbyjksnyqdrpqedr.supabase.co',
anonKey: supabaseAnonKey,
);
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
void initState() {
super.initState();
SchedulerBinding.instance.addPostFrameCallback((timeStamp) {
AppService.instance.init(
context: router.routerDelegate.navigatorKey.currentContext!,
debug: true,
displayError: true,
noOfRecentPosts: 4,
supabase: SupabaseOptions(
usersPublicData: 'users_public_data',
posts: 'posts',
comments: 'comments',
postsAndComments: 'posts_and_comments',
),
messaging: MessagingOptions(
foreground: true,
background: true,
onTap: (String initialPageName, Map<String, String> parameterData) {
dog('on message tap: $initialPageName, Map<String, String> $parameterData');
AppService.instance.context
.pushNamed(initialPageName, queryParams: parameterData);
},
),
);
});
}
@override
Widget build(BuildContext context) {
return MaterialApp.router(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
routerConfig: router,
locale: null,
localizationsDelegates: const [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: const [
Locale('en'),
Locale('ko'),
],
);
}
}