Add dashbook

This will hopefully make development easier as the different screens can
be worked on more easily. This isn't perfect as the providers don't
work, but it's a start.
This commit is contained in:
Vishesh Handa
2021-05-07 12:55:01 +02:00
parent 9035fef844
commit be0edd018e
4 changed files with 75 additions and 6 deletions

View File

@ -37,7 +37,7 @@ class AppRoute {
static const Purchase = '/purchase';
static const PurchaseThank = '/purchase_thank_you';
var all = [
static const all = [
OnBoarding,
AllFolders,
AllTags,
@ -82,7 +82,7 @@ class AppRouter {
route == AppRoute.FileSystem) {
return PageRouteBuilder(
settings: routeSettings,
pageBuilder: (_, __, ___) => _screenForRoute(
pageBuilder: (_, __, ___) => screenForRoute(
route,
repository,
settings,
@ -98,7 +98,7 @@ class AppRouter {
return MaterialPageRoute(
settings: routeSettings,
builder: (context) => _screenForRoute(
builder: (context) => screenForRoute(
route,
repository,
settings,
@ -109,7 +109,7 @@ class AppRouter {
);
}
Widget _screenForRoute(
Widget screenForRoute(
String route,
GitJournalRepo repository,
Settings settings,
@ -178,7 +178,7 @@ class AppRouter {
);
}
assert(false, "Not found named route in _screenForRoute");
assert(false, "Not found named route in screenForRoute");
return null;
}
}

54
lib/main_dashbook.dart Normal file
View File

@ -0,0 +1,54 @@
// @dart=2.9
import 'package:flutter/material.dart';
import 'package:dashbook/dashbook.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:path_provider/path_provider.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:gitjournal/app_router.dart';
import 'package:gitjournal/app_settings.dart';
import 'package:gitjournal/repository_manager.dart';
import 'package:gitjournal/utils/logger.dart';
void main() async {
//TestWidgetsFlutterBinding.ensureInitialized();
WidgetsFlutterBinding.ensureInitialized();
final dashbook = Dashbook();
await EasyLocalization.ensureInitialized();
// SharedPreferences.setMockInitialValues({});
var pref = await SharedPreferences.getInstance();
AppSettings.instance.load(pref);
var appSettings = AppSettings.instance;
Log.i("AppSetting ${appSettings.toMap()}");
final gitBaseDirectory = (await getTemporaryDirectory()).path;
final cacheDir = (await getTemporaryDirectory()).path;
var repoManager = RepositoryManager(
gitBaseDir: gitBaseDirectory,
cacheDir: cacheDir,
pref: pref,
);
await repoManager.buildActiveRepository();
var repo = repoManager.currentRepo;
var settings = repo.settings;
var appRouter = AppRouter(settings: settings, appSettings: appSettings);
for (var routeName in AppRoute.all) {
dashbook.storiesOf(routeName).decorator(CenterDecorator()).add('all',
(context) {
return appRouter.screenForRoute(
routeName, repo, settings, null, null, () {});
});
}
runApp(dashbook);
}

View File

@ -283,6 +283,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
dashbook:
dependency: "direct main"
description:
name: dashbook
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.2"
device_info:
dependency: "direct main"
description:
@ -472,6 +479,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.1"
flutter_colorpicker:
dependency: transitive
description:
name: flutter_colorpicker
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.0"
flutter_email_sender:
dependency: "direct main"
description:

View File

@ -3,7 +3,7 @@ description: A Note Taking App Built on top of Git
version: 1.76.0+10
environment:
sdk: '>=2.12.0 <3.0.0'
sdk: ">=2.12.0 <3.0.0"
flutter: ">=2.0.3"
publish_to: none
@ -28,6 +28,7 @@ dependencies:
# cryptography: ^1.4.1
# cryptography_flutter: ^1.0.0
crypton: ^2.0.1
dashbook: ^0.1.2
device_info: ^2.0.0
dots_indicator: ^2.0.0
easy_localization: ^3.0.0