|
15 | 15 | // ignore_for_file: non_constant_identifier_names, avoid_print
|
16 | 16 |
|
17 | 17 | import 'dart:math';
|
| 18 | +import 'dart:typed_data'; |
18 | 19 |
|
19 | 20 | import 'package:cloud_firestore/cloud_firestore.dart';
|
20 | 21 | import 'package:firebase_snippets_app/model/firestore_add_data_custom_objects_snippet.dart';
|
21 | 22 | import 'package:firebase_snippets_app/model/restaurant.dart';
|
22 | 23 | import 'package:firebase_snippets_app/snippets/snippet_base.dart';
|
| 24 | +import 'package:http/http.dart' as http; |
23 | 25 |
|
24 | 26 | class FirestoreSnippets extends DocSnippet {
|
25 | 27 | @override
|
@@ -102,9 +104,26 @@ class FirestoreSnippets extends DocSnippet {
|
102 | 104 | // [END data_model_sub_collections]
|
103 | 105 | }
|
104 | 106 |
|
105 |
| - void dataBundles_loadingClientBundles() { |
| 107 | + void dataBundles_loadingClientBundles() async { |
106 | 108 | // [START data_bundles_loading_client_bundles]
|
107 |
| - // TODO - currently in scratch file |
| 109 | + // Get a bundle from a server |
| 110 | + final url = Uri.https('example.com', '/create-bundle'); |
| 111 | + final response = await http.get(url); |
| 112 | + String string = response.body; |
| 113 | + final buffer = Uint8List.fromList(string.codeUnits); |
| 114 | + |
| 115 | + // Load a bundle from a buffer |
| 116 | + LoadBundleTask task = FirebaseFirestore.instance.loadBundle(buffer); |
| 117 | + await task.stream.toList(); |
| 118 | + |
| 119 | + // Use the cached named query |
| 120 | + final results = await FirebaseFirestore.instance.namedQueryGet( |
| 121 | + "example-query", |
| 122 | + options: const GetOptions( |
| 123 | + source: Source.cache, |
| 124 | + ), |
| 125 | + ); |
| 126 | + |
108 | 127 | // [END data_bundles_loading_client_bundles]
|
109 | 128 | }
|
110 | 129 |
|
@@ -823,25 +842,18 @@ class FirestoreSnippets extends DocSnippet {
|
823 | 842 |
|
824 | 843 | void filterQuery_or() {
|
825 | 844 | // [START firestore_query_filter_or]
|
826 |
| - var query = db.collection("cities") |
827 |
| - .where( |
828 |
| - Filter.or( |
829 |
| - Filter("capital", isEqualTo: true), |
830 |
| - Filter("population", isGreaterThan: 1000000) |
831 |
| - )); |
| 845 | + var query = db.collection("cities").where(Filter.or( |
| 846 | + Filter("capital", isEqualTo: true), |
| 847 | + Filter("population", isGreaterThan: 1000000))); |
832 | 848 | // [END firestore_query_filter_or]
|
833 | 849 | }
|
834 | 850 |
|
835 | 851 | void filterQuery_or2() {
|
836 | 852 | // [START firestore_query_filter_or_compound]
|
837 |
| - var query = db.collection("cities") |
838 |
| - .where( |
839 |
| - Filter.and( |
840 |
| - Filter("state", isEqualTo: "CA"), |
841 |
| - Filter.or( |
842 |
| - Filter("capital", isEqualTo: true), |
843 |
| - Filter("population", isGreaterThan: 1000000) |
844 |
| - ))); |
| 853 | + var query = db.collection("cities").where(Filter.and( |
| 854 | + Filter("state", isEqualTo: "CA"), |
| 855 | + Filter.or(Filter("capital", isEqualTo: true), |
| 856 | + Filter("population", isGreaterThan: 1000000)))); |
845 | 857 | // [END firestore_query_filter_or_compound]
|
846 | 858 | }
|
847 | 859 |
|
@@ -951,7 +963,8 @@ class FirestoreSnippets extends DocSnippet {
|
951 | 963 | final next = db
|
952 | 964 | .collection("cities")
|
953 | 965 | .orderBy("population")
|
954 |
| - .startAfterDocument(lastVisible).limit(25); |
| 966 | + .startAfterDocument(lastVisible) |
| 967 | + .limit(25); |
955 | 968 |
|
956 | 969 | // Use the query for pagination
|
957 | 970 | // ...
|
|
0 commit comments