diff --git a/.gitignore b/.gitignore
index dee655cc..de32d459 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
build/
.flutter-plugins
+*.log
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 00000000..15a15b21
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Dart_Packages.xml b/.idea/libraries/Dart_Packages.xml
new file mode 100644
index 00000000..f1b09bc3
--- /dev/null
+++ b/.idea/libraries/Dart_Packages.xml
@@ -0,0 +1,276 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Flutter_Plugins.xml b/.idea/libraries/Flutter_Plugins.xml
new file mode 100644
index 00000000..d77058ba
--- /dev/null
+++ b/.idea/libraries/Flutter_Plugins.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 00000000..6695719f
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 5b3388cc..77727bcd 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -1,36 +1,291 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+ compilesdk
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
-
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1550346843292
+
+
+ 1550346843292
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Android
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Android API 28 Platform
+
+
+
+
+
+
+
+
+
+
+
+ dungeon_paper_android
+
+
+
+
+
+
+
+
+
+
+
+
+ Flutter Plugins
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android.zip b/android.zip
new file mode 100644
index 00000000..e6b66c5c
Binary files /dev/null and b/android.zip differ
diff --git a/android/.idea/caches/build_file_checksums.ser b/android/.idea/caches/build_file_checksums.ser
new file mode 100644
index 00000000..ea202ae3
Binary files /dev/null and b/android/.idea/caches/build_file_checksums.ser differ
diff --git a/android/.idea/caches/gradle_models.ser b/android/.idea/caches/gradle_models.ser
new file mode 100644
index 00000000..f0e5b34a
Binary files /dev/null and b/android/.idea/caches/gradle_models.ser differ
diff --git a/android/.idea/compiler.xml b/android/.idea/compiler.xml
new file mode 100644
index 00000000..40ed9378
--- /dev/null
+++ b/android/.idea/compiler.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/.idea/encodings.xml b/android/.idea/encodings.xml
new file mode 100644
index 00000000..15a15b21
--- /dev/null
+++ b/android/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/android/.idea/gradle.xml b/android/.idea/gradle.xml
new file mode 100644
index 00000000..2996d531
--- /dev/null
+++ b/android/.idea/gradle.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/.idea/misc.xml b/android/.idea/misc.xml
new file mode 100644
index 00000000..7bfef59d
--- /dev/null
+++ b/android/.idea/misc.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/.idea/modules.xml b/android/.idea/modules.xml
new file mode 100644
index 00000000..132c0cae
--- /dev/null
+++ b/android/.idea/modules.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/.idea/runConfigurations.xml b/android/.idea/runConfigurations.xml
new file mode 100644
index 00000000..7f68460d
--- /dev/null
+++ b/android/.idea/runConfigurations.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/.idea/vcs.xml b/android/.idea/vcs.xml
new file mode 100644
index 00000000..6c0b8635
--- /dev/null
+++ b/android/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 4a00a118..2462edb0 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -15,20 +15,20 @@ apply plugin: 'com.android.application'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
- compileSdkVersion 27
+ compileSdkVersion 28
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
- // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "app.dungeonpaper"
- minSdkVersion 21
- targetSdkVersion 27
+ minSdkVersion 28
+ compileSdkVersion 28
+ targetSdkVersion 28
versionCode 1
versionName "1.0"
- testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+ testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
@@ -59,9 +59,17 @@ flutter {
}
dependencies {
- testImplementation 'junit:junit:4.12'
- androidTestImplementation 'com.android.support.test:runner:1.0.1'
- androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
+ testImplementation('junit:junit:4.12') {
+ // com.google.common.util.concurrent.ListenableFuture
+ exclude group: 'com.google.guava', module:'guava'
+ }
+ implementation 'com.google.firebase:firebase-core:16.0.7'
+ implementation 'com.google.firebase:firebase-firestore:18.0.1'
+ implementation 'com.google.firebase:firebase-auth:16.1.0'
+ implementation 'androidx.appcompat:appcompat:1.1.0-alpha02'
+ implementation 'androidx.legacy:legacy-support-v4:1.0.0'
+ androidTestImplementation 'androidx.test:runner:1.1.1'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}
apply plugin: 'com.google.gms.google-services'
diff --git a/android/build.gradle b/android/build.gradle
index ae1fe01b..64054301 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -5,8 +5,8 @@ buildscript {
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.0.1'
- classpath 'com.google.gms:google-services:3.2.1'
+ classpath 'com.android.tools.build:gradle:3.4.0-beta04'
+ classpath 'com.google.gms:google-services:4.2.0'
}
}
diff --git a/android/gradle.properties b/android/gradle.properties
index 8bd86f68..94adc3a3 100644
--- a/android/gradle.properties
+++ b/android/gradle.properties
@@ -1 +1,3 @@
org.gradle.jvmargs=-Xmx1536M
+android.useAndroidX=true
+android.enableJetifier=true
diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties
index aa901e1e..cd721751 100644
--- a/android/gradle/wrapper/gradle-wrapper.properties
+++ b/android/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Fri Jun 23 08:50:38 CEST 2017
+#Sat Feb 16 22:11:11 IST 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
diff --git a/dungeon_paper.iml b/dungeon_paper.iml
index e5c83719..2ad91f9b 100644
--- a/dungeon_paper.iml
+++ b/dungeon_paper.iml
@@ -9,6 +9,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/db/base.dart b/lib/db/base.dart
index 62b7e773..1dd54a5d 100644
--- a/lib/db/base.dart
+++ b/lib/db/base.dart
@@ -15,7 +15,7 @@ abstract class DbBase {
this.propertyMapping: const {},
this.listProperties: const [],
}) {
- _map = map != null ? map : Map();
+ _map = map != null ? Map.from(map) : Map();
defaultData.forEach((key, val) {
if (!_map.containsKey(key) || _map[key] == null) {
@@ -72,5 +72,5 @@ abstract class DbBase {
List getList(String key) =>
List.from(get(key, []));
- get map => _map;
+ get map => Map.from(_map);
}
diff --git a/lib/db/character.dart b/lib/db/character.dart
index b23a4aa0..9bb8a6d0 100644
--- a/lib/db/character.dart
+++ b/lib/db/character.dart
@@ -4,6 +4,7 @@ import 'package:dungeon_paper/db/character_types.dart';
import 'package:dungeon_paper/db/notes.dart';
import 'package:dungeon_paper/db/user.dart';
import 'package:dungeon_paper/redux/actions/character_actions.dart';
+import 'package:dungeon_paper/redux/actions/user_actions.dart';
import 'package:dungeon_paper/redux/stores/stores.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'base.dart';
@@ -90,6 +91,24 @@ Future setCurrentCharacterById(String documentId) async {
return dbCharacter;
}
+Future