Initial commit

This commit is contained in:
vjrj 2018-06-29 00:57:21 +02:00
parent e46f792c49
commit 85cff9dba8
20 changed files with 663 additions and 0 deletions

View file

@ -0,0 +1,17 @@
import 'dart:async' show Future;
import 'dart:convert' show json;
import 'package:flutter/services.dart' show rootBundle;
class SecretLoader {
final String secretPath;
SecretLoader({this.secretPath});
Future<Map<String, dynamic>> load() {
rootBundle.loadString(secretPath, cache: false);
return rootBundle.loadStructuredData<Map<String, dynamic>>(this.secretPath,
(jsonStr) async {
return json.decode(jsonStr);
});
}
}

11
lib/utils/utils.dart Normal file
View file

@ -0,0 +1,11 @@
import 'package:flutter/material.dart';
bool notNull(Object o) => o != null;
// What is the best way to optionally include a widget in a list of children
// https://github.com/flutter/flutter/issues/3783
List<Widget> listWithoutNulls(List<Widget> children) =>
children.where(notNull).toList();
ellipse(String s,[ int end = 4]) => s != null ? s.substring(0, end) + '...' : null;