Skip to content

Commit 0d92cbc

Browse files
Feature/serialization (#31)
* Migrate to json_serializable * Updates after PR * Sort imports
1 parent afaa929 commit 0d92cbc

File tree

7 files changed

+273
-124
lines changed

7 files changed

+273
-124
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## 1.3.0
2+
3+
- Set room's `lastMessages`. Thanks @mashegoindustries for reporting!
4+
- Align version with https://pub.dev/packages/flutter_chat_ui.
5+
- Update dependencies
6+
17
## 1.1.4
28

39
- Add an option to send metadata

example/ios/Podfile.lock

Lines changed: 165 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,45 @@ PODS:
8383
- abseil/base/throw_delegate (0.20200225.0):
8484
- abseil/base/config
8585
- abseil/base/raw_logging_internal
86+
- abseil/container/common (0.20200225.0):
87+
- abseil/meta/type_traits
88+
- abseil/types/optional
8689
- abseil/container/compressed_tuple (0.20200225.0):
8790
- abseil/utility/utility
91+
- abseil/container/container_memory (0.20200225.0):
92+
- abseil/memory/memory
93+
- abseil/utility/utility
94+
- abseil/container/fixed_array (0.20200225.0):
95+
- abseil/algorithm/algorithm
96+
- abseil/base/core_headers
97+
- abseil/base/dynamic_annotations
98+
- abseil/base/throw_delegate
99+
- abseil/container/compressed_tuple
100+
- abseil/memory/memory
101+
- abseil/container/flat_hash_map (0.20200225.0):
102+
- abseil/algorithm/container
103+
- abseil/container/container_memory
104+
- abseil/container/hash_function_defaults
105+
- abseil/container/raw_hash_map
106+
- abseil/memory/memory
107+
- abseil/container/hash_function_defaults (0.20200225.0):
108+
- abseil/base/config
109+
- abseil/hash/hash
110+
- abseil/strings/strings
111+
- abseil/container/hash_policy_traits (0.20200225.0):
112+
- abseil/meta/type_traits
113+
- abseil/container/hashtable_debug_hooks (0.20200225.0):
114+
- abseil/base/config
115+
- abseil/container/hashtablez_sampler (0.20200225.0):
116+
- abseil/base/base
117+
- abseil/base/core_headers
118+
- abseil/base/exponential_biased
119+
- abseil/container/have_sse
120+
- abseil/debugging/stacktrace
121+
- abseil/memory/memory
122+
- abseil/synchronization/synchronization
123+
- abseil/utility/utility
124+
- abseil/container/have_sse (0.20200225.0)
88125
- abseil/container/inlined_vector (0.20200225.0):
89126
- abseil/algorithm/algorithm
90127
- abseil/base/core_headers
@@ -97,6 +134,70 @@ PODS:
97134
- abseil/memory/memory
98135
- abseil/meta/type_traits
99136
- abseil/types/span
137+
- abseil/container/layout (0.20200225.0):
138+
- abseil/base/core_headers
139+
- abseil/meta/type_traits
140+
- abseil/strings/strings
141+
- abseil/types/span
142+
- abseil/utility/utility
143+
- abseil/container/raw_hash_map (0.20200225.0):
144+
- abseil/base/throw_delegate
145+
- abseil/container/container_memory
146+
- abseil/container/raw_hash_set
147+
- abseil/container/raw_hash_set (0.20200225.0):
148+
- abseil/base/bits
149+
- abseil/base/config
150+
- abseil/base/core_headers
151+
- abseil/base/endian
152+
- abseil/container/common
153+
- abseil/container/compressed_tuple
154+
- abseil/container/container_memory
155+
- abseil/container/hash_policy_traits
156+
- abseil/container/hashtable_debug_hooks
157+
- abseil/container/hashtablez_sampler
158+
- abseil/container/have_sse
159+
- abseil/container/layout
160+
- abseil/memory/memory
161+
- abseil/meta/type_traits
162+
- abseil/utility/utility
163+
- abseil/debugging/debugging_internal (0.20200225.0):
164+
- abseil/base/config
165+
- abseil/base/core_headers
166+
- abseil/base/dynamic_annotations
167+
- abseil/base/errno_saver
168+
- abseil/base/raw_logging_internal
169+
- abseil/debugging/demangle_internal (0.20200225.0):
170+
- abseil/base/base
171+
- abseil/base/config
172+
- abseil/base/core_headers
173+
- abseil/debugging/stacktrace (0.20200225.0):
174+
- abseil/base/config
175+
- abseil/base/core_headers
176+
- abseil/debugging/debugging_internal
177+
- abseil/debugging/symbolize (0.20200225.0):
178+
- abseil/base/base
179+
- abseil/base/config
180+
- abseil/base/core_headers
181+
- abseil/base/dynamic_annotations
182+
- abseil/base/malloc_internal
183+
- abseil/base/raw_logging_internal
184+
- abseil/debugging/debugging_internal
185+
- abseil/debugging/demangle_internal
186+
- abseil/hash/city (0.20200225.0):
187+
- abseil/base/config
188+
- abseil/base/core_headers
189+
- abseil/base/endian
190+
- abseil/hash/hash (0.20200225.0):
191+
- abseil/base/core_headers
192+
- abseil/base/endian
193+
- abseil/container/fixed_array
194+
- abseil/hash/city
195+
- abseil/meta/type_traits
196+
- abseil/numeric/int128
197+
- abseil/strings/strings
198+
- abseil/types/optional
199+
- abseil/types/variant
200+
- abseil/utility/utility
100201
- abseil/memory (0.20200225.0):
101202
- abseil/memory/memory (= 0.20200225.0)
102203
- abseil/memory/memory (0.20200225.0):
@@ -136,6 +237,31 @@ PODS:
136237
- abseil/meta/type_traits
137238
- abseil/numeric/int128
138239
- abseil/strings/internal
240+
- abseil/synchronization/graphcycles_internal (0.20200225.0):
241+
- abseil/base/base
242+
- abseil/base/base_internal
243+
- abseil/base/config
244+
- abseil/base/core_headers
245+
- abseil/base/malloc_internal
246+
- abseil/base/raw_logging_internal
247+
- abseil/synchronization/kernel_timeout_internal (0.20200225.0):
248+
- abseil/base/core_headers
249+
- abseil/base/raw_logging_internal
250+
- abseil/time/time
251+
- abseil/synchronization/synchronization (0.20200225.0):
252+
- abseil/base/atomic_hook
253+
- abseil/base/base
254+
- abseil/base/base_internal
255+
- abseil/base/config
256+
- abseil/base/core_headers
257+
- abseil/base/dynamic_annotations
258+
- abseil/base/malloc_internal
259+
- abseil/base/raw_logging_internal
260+
- abseil/debugging/stacktrace
261+
- abseil/debugging/symbolize
262+
- abseil/synchronization/graphcycles_internal
263+
- abseil/synchronization/kernel_timeout_internal
264+
- abseil/time/time
139265
- abseil/time (0.20200225.0):
140266
- abseil/time/internal (= 0.20200225.0)
141267
- abseil/time/time (= 0.20200225.0)
@@ -218,8 +344,8 @@ PODS:
218344
- BoringSSL-GRPC/Implementation (0.0.7):
219345
- BoringSSL-GRPC/Interface (= 0.0.7)
220346
- BoringSSL-GRPC/Interface (0.0.7)
221-
- cloud_firestore (2.4.0):
222-
- Firebase/Firestore (= 8.3.0)
347+
- cloud_firestore (2.5.1):
348+
- Firebase/Firestore (= 8.6.0)
223349
- firebase_core
224350
- Flutter
225351
- DKImagePickerController/Core (4.3.2):
@@ -256,45 +382,46 @@ PODS:
256382
- file_picker (0.0.1):
257383
- DKImagePickerController/PhotoGallery
258384
- Flutter
259-
- Firebase/Auth (8.3.0):
385+
- Firebase/Auth (8.6.0):
260386
- Firebase/CoreOnly
261-
- FirebaseAuth (~> 8.3.0)
262-
- Firebase/CoreOnly (8.3.0):
263-
- FirebaseCore (= 8.3.0)
264-
- Firebase/Firestore (8.3.0):
387+
- FirebaseAuth (~> 8.6.0)
388+
- Firebase/CoreOnly (8.6.0):
389+
- FirebaseCore (= 8.6.0)
390+
- Firebase/Firestore (8.6.0):
265391
- Firebase/CoreOnly
266-
- FirebaseFirestore (~> 8.3.0)
267-
- Firebase/Storage (8.3.0):
392+
- FirebaseFirestore (~> 8.6.0)
393+
- Firebase/Storage (8.6.0):
268394
- Firebase/CoreOnly
269-
- FirebaseStorage (~> 8.3.0)
270-
- firebase_auth (3.0.1):
271-
- Firebase/Auth (= 8.3.0)
395+
- FirebaseStorage (~> 8.6.0)
396+
- firebase_auth (3.1.0):
397+
- Firebase/Auth (= 8.6.0)
272398
- firebase_core
273399
- Flutter
274-
- firebase_core (1.4.0):
275-
- Firebase/CoreOnly (= 8.3.0)
400+
- firebase_core (1.6.0):
401+
- Firebase/CoreOnly (= 8.6.0)
276402
- Flutter
277-
- firebase_storage (10.0.1):
278-
- Firebase/Storage (= 8.3.0)
403+
- firebase_storage (10.0.3):
404+
- Firebase/Storage (= 8.6.0)
279405
- firebase_core
280406
- Flutter
281-
- FirebaseAuth (8.3.0):
407+
- FirebaseAuth (8.6.0):
282408
- FirebaseCore (~> 8.0)
283409
- GoogleUtilities/AppDelegateSwizzler (~> 7.4)
284410
- GoogleUtilities/Environment (~> 7.4)
285411
- GTMSessionFetcher/Core (~> 1.5)
286-
- FirebaseCore (8.3.0):
412+
- FirebaseCore (8.6.0):
287413
- FirebaseCoreDiagnostics (~> 8.0)
288414
- GoogleUtilities/Environment (~> 7.4)
289415
- GoogleUtilities/Logger (~> 7.4)
290-
- FirebaseCoreDiagnostics (8.4.0):
416+
- FirebaseCoreDiagnostics (8.6.0):
291417
- GoogleDataTransport (~> 9.0)
292418
- GoogleUtilities/Environment (~> 7.4)
293419
- GoogleUtilities/Logger (~> 7.4)
294420
- nanopb (~> 2.30908.0)
295-
- FirebaseFirestore (8.3.0):
421+
- FirebaseFirestore (8.6.0):
296422
- abseil/algorithm (= 0.20200225.0)
297423
- abseil/base (= 0.20200225.0)
424+
- abseil/container/flat_hash_map (= 0.20200225.0)
298425
- abseil/memory (= 0.20200225.0)
299426
- abseil/meta (= 0.20200225.0)
300427
- abseil/strings/strings (= 0.20200225.0)
@@ -304,28 +431,28 @@ PODS:
304431
- "gRPC-C++ (~> 1.28.0)"
305432
- leveldb-library (~> 1.22)
306433
- nanopb (~> 2.30908.0)
307-
- FirebaseStorage (8.3.0):
434+
- FirebaseStorage (8.6.0):
308435
- FirebaseCore (~> 8.0)
309436
- GTMSessionFetcher/Core (~> 1.5)
310437
- Flutter (1.0.0)
311438
- GoogleDataTransport (9.1.0):
312439
- GoogleUtilities/Environment (~> 7.2)
313440
- nanopb (~> 2.30908.0)
314441
- PromisesObjC (< 3.0, >= 1.2)
315-
- GoogleUtilities/AppDelegateSwizzler (7.5.0):
442+
- GoogleUtilities/AppDelegateSwizzler (7.5.1):
316443
- GoogleUtilities/Environment
317444
- GoogleUtilities/Logger
318445
- GoogleUtilities/Network
319-
- GoogleUtilities/Environment (7.5.0):
446+
- GoogleUtilities/Environment (7.5.1):
320447
- PromisesObjC (< 3.0, >= 1.2)
321-
- GoogleUtilities/Logger (7.5.0):
448+
- GoogleUtilities/Logger (7.5.1):
322449
- GoogleUtilities/Environment
323-
- GoogleUtilities/Network (7.5.0):
450+
- GoogleUtilities/Network (7.5.1):
324451
- GoogleUtilities/Logger
325452
- "GoogleUtilities/NSData+zlib"
326453
- GoogleUtilities/Reachability
327-
- "GoogleUtilities/NSData+zlib (7.5.0)"
328-
- GoogleUtilities/Reachability (7.5.0):
454+
- "GoogleUtilities/NSData+zlib (7.5.1)"
455+
- GoogleUtilities/Reachability (7.5.1):
329456
- GoogleUtilities/Logger
330457
- "gRPC-C++ (1.28.2)":
331458
- "gRPC-C++/Implementation (= 1.28.2)"
@@ -432,22 +559,22 @@ EXTERNAL SOURCES:
432559
SPEC CHECKSUMS:
433560
abseil: 6c8eb7892aefa08d929b39f9bb108e5367e3228f
434561
BoringSSL-GRPC: 8edf627ee524575e2f8d19d56f068b448eea3879
435-
cloud_firestore: d6c77e2b33f00576fed2b070fec1be58d7e5f276
562+
cloud_firestore: 3280837bd2fdec18489ef93699527df4af4f177d
436563
DKImagePickerController: b5eb7f7a388e4643264105d648d01f727110fc3d
437564
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
438565
file_picker: 3e6c3790de664ccf9b882732d9db5eaf6b8d4eb1
439-
Firebase: 817b9171d0d51dccc458b94a5e8edff6b1dd323d
440-
firebase_auth: 3b08d67bda60758347d15584fd0a7a4cf5f6496f
441-
firebase_core: 72374607c8c6f5a0adc0559e5c5bf57deda975e3
442-
firebase_storage: 0569941c22a1362f682ebef93755d8916601d22f
443-
FirebaseAuth: fd12c82de44e7ad3b821610c387b8251f03aa0f9
444-
FirebaseCore: a6dba751680d7033b9d3831e1cfc95ead0605118
445-
FirebaseCoreDiagnostics: cad03be1904b975f845e632f2720c3337da27faf
446-
FirebaseFirestore: f4f42828c6d82f6945575611c23dd343e0e7d0aa
447-
FirebaseStorage: ff380720c204593d98c3e5482e62ccfbb522f0c5
566+
Firebase: 21ac9f28b09a8bdfc005f34c984fca84e7e8786d
567+
firebase_auth: 2dfa8e886191c24ddcf4da34463d47b72e6d19dc
568+
firebase_core: c21ac09a8d23afd3594b56ed786bad12e5266bba
569+
firebase_storage: 75fc62b16cfbb268ea4e90729be5729e3dc38b1e
570+
FirebaseAuth: 223adeeb2262b417532e89bf06a960e3a0a1e9e4
571+
FirebaseCore: 620b677f70f5470a8e59cb77f3ddc666f6f09785
572+
FirebaseCoreDiagnostics: 3721920bde3a9a6d5aa093c1d25e9d3e47f694af
573+
FirebaseFirestore: 7b8bd72aff4d3ad91498343e81fdbaa994ce8abe
574+
FirebaseStorage: 2765944230981e63f8bd2938d9d5819158b7c34c
448575
Flutter: 434fef37c0980e73bb6479ef766c45957d4b510c
449576
GoogleDataTransport: 85fd18ff3019bb85d3f2c551d04c481dedf71fc9
450-
GoogleUtilities: eea970f4a389963963bffe8d8fabe43540678b9c
577+
GoogleUtilities: 3df19e3c24f7bbc291d8b5809aa6b0d41e642437
451578
"gRPC-C++": 13d8ccef97d5c3c441b7e3c529ef28ebee86fad2
452579
gRPC-Core: 4afa11bfbedf7cdecd04de535a9e046893404ed5
453580
GTMSessionFetcher: 36689134877faeb055b27dfa4ccc9ceaa42e029e

example/lib/chat.dart

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import 'dart:io';
2-
import 'package:flutter/material.dart';
32
import 'package:file_picker/file_picker.dart';
43
import 'package:firebase_storage/firebase_storage.dart';
4+
import 'package:flutter/material.dart';
55
import 'package:flutter_chat_types/flutter_chat_types.dart' as types;
66
import 'package:flutter_chat_ui/flutter_chat_ui.dart';
77
import 'package:flutter_firebase_chat_core/flutter_firebase_chat_core.dart';
@@ -201,15 +201,18 @@ class _ChatPageState extends State<ChatPage> {
201201
initialData: const [],
202202
stream: FirebaseChatCore.instance.messages(snapshot.data!),
203203
builder: (context, snapshot) {
204-
return Chat(
205-
isAttachmentUploading: _isAttachmentUploading,
206-
messages: snapshot.data ?? [],
207-
onAttachmentPressed: _handleAtachmentPressed,
208-
onMessageTap: _handleMessageTap,
209-
onPreviewDataFetched: _handlePreviewDataFetched,
210-
onSendPressed: _handleSendPressed,
211-
user: types.User(
212-
id: FirebaseChatCore.instance.firebaseUser?.uid ?? '',
204+
return SafeArea(
205+
bottom: false,
206+
child: Chat(
207+
isAttachmentUploading: _isAttachmentUploading,
208+
messages: snapshot.data ?? [],
209+
onAttachmentPressed: _handleAtachmentPressed,
210+
onMessageTap: _handleMessageTap,
211+
onPreviewDataFetched: _handlePreviewDataFetched,
212+
onSendPressed: _handleSendPressed,
213+
user: types.User(
214+
id: FirebaseChatCore.instance.firebaseUser?.uid ?? '',
215+
),
213216
),
214217
);
215218
},

example/pubspec.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ dependencies:
3232
file_picker: ^4.0.0
3333
firebase_auth: ^3.0.1
3434
firebase_core: ^1.4.0
35-
firebase_storage: ^10.0.1
36-
flutter_chat_ui: ^1.1.9
35+
firebase_storage: ^10.0.3
36+
flutter_chat_ui: ^1.3.0
3737
flutter_firebase_chat_core:
3838
path: ../
3939
http: ^0.13.3
40-
image_picker: ^0.8.3+2
40+
image_picker: ^0.8.3+3
4141
mime: ^1.0.0
4242
open_file: ^3.2.1
4343
path_provider: ^2.0.2

0 commit comments

Comments
 (0)