From 2c7c3cb5a5ccf1b8bd7e0c024718d14c2c91424a Mon Sep 17 00:00:00 2001 From: yulingtianxia Date: Sat, 1 Jun 2019 00:06:11 +0800 Subject: [PATCH] Fix Commit: 6ed26e16964f2c316427cde02936a650a76f4159 --- README.md | 7 - example/assets/parse.png | Bin 125704 -> 0 bytes example/ios/Runner.xcodeproj/project.pbxproj | 2 - example/lib/data/model/diet_plan.dart | 4 +- example/lib/pages/decision_page.dart | 97 ------- example/lib/pages/home_page.dart | 133 ---------- example/lib/pages/login_page.dart | 245 ------------------ example/pubspec.yaml | 4 +- .../repository/repository_mock_utils.dart | 2 +- lib/parse_server_sdk.dart | 37 ++- .../parse_shared_preferences_corestore.dart | 68 ----- 11 files changed, 35 insertions(+), 564 deletions(-) delete mode 100644 example/assets/parse.png delete mode 100644 example/lib/pages/decision_page.dart delete mode 100644 example/lib/pages/home_page.dart delete mode 100644 example/lib/pages/login_page.dart delete mode 100644 lib/src/data/parse_shared_preferences_corestore.dart diff --git a/README.md b/README.md index e199c25ae..66405aff8 100644 --- a/README.md +++ b/README.md @@ -25,14 +25,7 @@ Parse().initialize( ApplicationConstants.keyApplicationId, ApplicationConstants.keyParseServerUrl); ``` -if you want to use secure storage also that's allow using sdk on desktop application -```dart - Parse().initialize(keyParseApplicationId, keyParseServerUrl, - masterKey: keyParseMasterKey, - debug: true, - coreStore: CoreStoreImp.getInstance()); -``` It's possible to add other params, such as ... ```dart diff --git a/example/assets/parse.png b/example/assets/parse.png deleted file mode 100644 index fc7e48dd684b41ac0f292b678ec94f5c4eabd2d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125704 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%0Aj4frbvsED*) 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 S$}~f}Qo5ujpYx~b-~R_V3>*Le diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index ca2c16c33..d815bf063 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -44,11 +44,9 @@ 24DF2572E6AEEB9F7CE180C9 /* libPods-Runner.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Runner.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 3B80C3931E831B6300D905FE /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/App.framework; sourceTree = ""; }; - 5804EFBD11740E02FC51BC3E /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 96499D95196B10F296043703 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 9740EEBA1CF902C7004384FC /* Flutter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Flutter.framework; path = Flutter/Flutter.framework; sourceTree = ""; }; diff --git a/example/lib/data/model/diet_plan.dart b/example/lib/data/model/diet_plan.dart index d58f111a9..8819d6189 100644 --- a/example/lib/data/model/diet_plan.dart +++ b/example/lib/data/model/diet_plan.dart @@ -32,6 +32,6 @@ class DietPlan extends ParseObject implements ParseCloneable { num get fat => get(keyFat); set fat(num fat) => set(keyFat, fat); - bool get status => get(keyStatus); - set status(bool status) => set(keyStatus, status); + int get status => get(keyStatus); + set status(int status) => set(keyStatus, status); } diff --git a/example/lib/pages/decision_page.dart b/example/lib/pages/decision_page.dart deleted file mode 100644 index 2875a3131..000000000 --- a/example/lib/pages/decision_page.dart +++ /dev/null @@ -1,97 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_plugin_example/data/repositories/diet_plan/provider_api_diet_plan.dart'; -import 'package:flutter_plugin_example/domain/constants/application_constants.dart'; -import 'package:parse_server_sdk/parse_server_sdk.dart'; - -import 'home_page.dart'; -import 'login_page.dart'; - -class DecisionPage extends StatefulWidget { - @override - _DecisionPageState createState() => _DecisionPageState(); -} - -class _DecisionPageState extends State { - String _parseServerState = 'Checking Parse Server...'; - - @override - void initState() { - super.initState(); - WidgetsBinding.instance.addPostFrameCallback((_) { - _initParse(); - }); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - body: Center( - child: Container( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - _showLogo(), - const SizedBox( - height: 20, - ), - Center( - child: Text(_parseServerState), - ), - ], - ), - ), - ), - ); - } - - Widget _showLogo() { - return Hero( - tag: 'hero', - child: Padding( - padding: const EdgeInsets.fromLTRB(0.0, 70.0, 0.0, 0.0), - child: CircleAvatar( - backgroundColor: Colors.transparent, - radius: 48.0, - child: Image.asset('assets/parse.png'), - ), - ), - ); - } - - Future _initParse() async { - try { - Parse().initialize(keyParseApplicationId, keyParseServerUrl, - masterKey: keyParseMasterKey, debug: true); - final ParseResponse response = await Parse().healthCheck(); - if (response.success) { - final ParseUser user = await ParseUser.currentUser(); - if (user != null) { - _redirectToPage(context, HomePage(DietPlanProviderApi())); - } else { - _redirectToPage(context, LoginPage()); - } - } else { - setState(() { - _parseServerState = - 'Parse Server Not avaiable\n due to ${response.error.toString()}'; - }); - } - } catch (e) { - setState(() { - _parseServerState = e.toString(); - }); - } - } - - Future _redirectToPage(BuildContext context, Widget page) async { - final MaterialPageRoute newRoute = - MaterialPageRoute(builder: (BuildContext context) => page); - - bool nav = await Navigator.of(context) - .pushAndRemoveUntil(newRoute, ModalRoute.withName('/')); - if (nav == true) { - _initParse(); - } - } -} diff --git a/example/lib/pages/home_page.dart b/example/lib/pages/home_page.dart deleted file mode 100644 index 21578b102..000000000 --- a/example/lib/pages/home_page.dart +++ /dev/null @@ -1,133 +0,0 @@ -import 'dart:convert'; -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_plugin_example/data/base/api_response.dart'; -import 'package:flutter_plugin_example/data/model/diet_plan.dart'; -import 'package:flutter_plugin_example/data/repositories/diet_plan/contract_provider_diet_plan.dart'; -import 'package:parse_server_sdk/parse_server_sdk.dart'; - -class HomePage extends StatefulWidget { - HomePage(this._dietPlanProvider); - final DietPlanProviderContract _dietPlanProvider; - - @override - _HomePageState createState() => _HomePageState(); -} - -class _HomePageState extends State { - List randomDietPlans = []; - - @override - void initState() { - super.initState(); - final List json = const JsonDecoder().convert(dietPlansToAdd); - for (final Map element in json) { - final DietPlan dietPlan = DietPlan().fromJson(element); - randomDietPlans.add(dietPlan); - } - } - - @override - Widget build(BuildContext context) { - return WillPopScope( - onWillPop: () async => false, - child: Scaffold( - appBar: AppBar( - automaticallyImplyLeading: false, - title: const Text('Parse Server demo'), - actions: [ - FlatButton( - child: Text('Logout', - style: TextStyle(fontSize: 17.0, color: Colors.white)), - onPressed: () async { - final ParseUser user = await ParseUser.currentUser(); - user.logout(deleteLocalUserData: true); - Navigator.pop(context, true); - }) - ], - ), - body: _showDietList(), - floatingActionButton: FloatingActionButton( - onPressed: () async { - DietPlan dietPlan = - randomDietPlans[Random().nextInt(randomDietPlans.length - 1)]; - ParseUser user = await ParseUser.currentUser(); - dietPlan.set('user', user); - await widget._dietPlanProvider.add(dietPlan); - setState(() {}); - }, - tooltip: 'Add Diet Plans', - child: const Icon(Icons.add), - )), - ); - } - - Widget _showDietList() { - return FutureBuilder( - future: widget._dietPlanProvider.getAll(), - builder: (BuildContext context, AsyncSnapshot snapshot) { - if (snapshot.hasData) { - if (snapshot.data.success) { - if (snapshot.data.results == null || - snapshot.data.results.isEmpty) { - return Center( - child: const Text('No Data'), - ); - } - } - return ListView.builder( - shrinkWrap: true, - itemCount: snapshot.data.results.length, - itemBuilder: (BuildContext context, int index) { - DietPlan dietPlan = snapshot.data.results[index]; - String id = dietPlan.objectId; - String name = dietPlan.name; - String description = dietPlan.description; - bool status = dietPlan.status; - return Dismissible( - key: Key(id), - background: Container(color: Colors.red), - onDismissed: (direction) async { - widget._dietPlanProvider.remove(dietPlan); - }, - child: ListTile( - title: Text( - name, - style: TextStyle(fontSize: 20.0), - ), - subtitle: Text(description), - trailing: IconButton( - icon: status - ? const Icon( - Icons.done_outline, - color: Colors.green, - size: 20.0, - ) - : const Icon(Icons.done, - color: Colors.grey, size: 20.0), - onPressed: () async { - dietPlan.status = !dietPlan.status; - await dietPlan.save(); - setState(() {}); - }), - ), - ); - }); - } else { - return Center( - child: const Text('No Data'), - ); - } - }); - } - - String dietPlansToAdd = - '[{"className":"Diet_Plans","Name":"Textbook","Description":"For an active lifestyle and a straight forward macro plan, we suggest this plan.","Fat":25,"Carbs":50,"Protein":25,"Status":false},' - '{"className":"Diet_Plans","Name":"Body Builder","Description":"Default Body Builders Diet","Fat":20,"Carbs":40,"Protein":40,"Status":true},' - '{"className":"Diet_Plans","Name":"Zone Diet","Description":"Popular with CrossFit users. Zone Diet targets similar macros.","Fat":30,"Carbs":40,"Protein":30,"Status":true},' - '{"className":"Diet_Plans","Name":"Low Fat","Description":"Low fat diet.","Fat":15,"Carbs":60,"Protein":25,"Status":false},' - '{"className":"Diet_Plans","Name":"Low Carb","Description":"Low Carb diet, main focus on quality fats and protein.","Fat":35,"Carbs":25,"Protein":40,"Status":true},' - '{"className":"Diet_Plans","Name":"Paleo","Description":"Paleo diet.","Fat":60,"Carbs":25,"Protein":10,"Status":false},' - '{"className":"Diet_Plans","Name":"Ketogenic","Description":"High quality fats, low carbs.","Fat":65,"Carbs":5,"Protein":30,"Status":true}]'; -} diff --git a/example/lib/pages/login_page.dart b/example/lib/pages/login_page.dart deleted file mode 100644 index e02824fd8..000000000 --- a/example/lib/pages/login_page.dart +++ /dev/null @@ -1,245 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_plugin_example/data/model/user.dart'; -import 'package:parse_server_sdk/parse_server_sdk.dart'; - -enum FormMode { LOGIN, SIGNUP } - -class LoginPage extends StatefulWidget { - @override - _LoginPageState createState() => _LoginPageState(); -} - -class _LoginPageState extends State { - final _formKey = GlobalKey(); - - String _email; - String _password; - String _errorMessage; - - // Initial form is login form - FormMode _formMode = FormMode.LOGIN; - bool _isLoading; - - // Check if form is valid before perform login or signup - bool _validateAndSave() { - final form = _formKey.currentState; - if (form.validate()) { - form.save(); - return true; - } - return false; - } - - // Perform login or signup - Future _validateAndSubmit() async { - setState(() { - _errorMessage = ""; - _isLoading = true; - }); - if (_validateAndSave()) { - User user = User(_email, _password, _email); - - ParseResponse response; - try { - if (_formMode == FormMode.LOGIN) { - response = await user.login(); - print('Signed in'); - } else { - response = await user.signUp(); - print('Signed up user:'); - } - setState(() { - _isLoading = false; - }); - if (response.success) { - if (_formMode == FormMode.LOGIN) { - Navigator.pop(context, true); - } - } else { - setState(() { - _isLoading = false; - _errorMessage = response.error.toString(); - }); - } - } catch (e) { - print('Error: $e'); - setState(() { - _isLoading = false; - _errorMessage = e.message; - }); - } - } - } - - @override - void initState() { - _errorMessage = ""; - _isLoading = false; - super.initState(); - } - - void _changeFormToSignUp() { - _formKey.currentState.reset(); - _errorMessage = ""; - setState(() { - _formMode = FormMode.SIGNUP; - }); - } - - void _changeFormToLogin() { - _formKey.currentState.reset(); - _errorMessage = ""; - setState(() { - _formMode = FormMode.LOGIN; - }); - } - - @override - Widget build(BuildContext context) { - return WillPopScope( - onWillPop: () async => false, - child: Scaffold( - appBar: AppBar( - automaticallyImplyLeading: false, - title: const Text('Parse Server demo'), - ), - body: Stack( - children: [ - _showBody(), - _showCircularProgress(), - ], - )), - ); - } - - Widget _showCircularProgress() { - if (_isLoading) { - return Center(child: const CircularProgressIndicator()); - } - return Container( - height: 0.0, - width: 0.0, - ); - } - - Widget _showBody() { - return Container( - padding: const EdgeInsets.all(16.0), - child: Form( - key: _formKey, - child: ListView( - shrinkWrap: true, - children: [ - _showLogo(), - _showEmailInput(), - _showPasswordInput(), - _showPrimaryButton(), - _showSecondaryButton(), - _showErrorMessage(), - ], - ), - )); - } - - Widget _showErrorMessage() { - if (_errorMessage.isNotEmpty && _errorMessage != null) { - return Text( - _errorMessage, - style: TextStyle( - fontSize: 13.0, - color: Colors.red, - height: 1.0, - fontWeight: FontWeight.w300), - ); - } else { - return Container( - height: 0.0, - ); - } - } - - Widget _showLogo() { - return Hero( - tag: 'hero', - child: Padding( - padding: const EdgeInsets.fromLTRB(0.0, 70.0, 0.0, 0.0), - child: CircleAvatar( - backgroundColor: Colors.transparent, - radius: 48.0, - child: Image.asset('assets/parse.png'), - ), - ), - ); - } - - Widget _showEmailInput() { - return Padding( - padding: const EdgeInsets.fromLTRB(0.0, 100.0, 0.0, 0.0), - child: TextFormField( - maxLines: 1, - keyboardType: TextInputType.emailAddress, - autofocus: false, - decoration: InputDecoration( - hintText: 'Email', - icon: const Icon( - Icons.mail, - color: Colors.grey, - )), - validator: (value) => value.isEmpty ? 'Email can\'t be empty' : null, - onSaved: (value) => _email = value, - ), - ); - } - - Widget _showPasswordInput() { - return Padding( - padding: const EdgeInsets.fromLTRB(0.0, 15.0, 0.0, 0.0), - child: TextFormField( - maxLines: 1, - obscureText: true, - autofocus: false, - decoration: InputDecoration( - hintText: 'Password', - icon: const Icon( - Icons.lock, - color: Colors.grey, - )), - validator: (value) => value.isEmpty ? 'Password can\'t be empty' : null, - onSaved: (value) => _password = value, - ), - ); - } - - Widget _showSecondaryButton() { - return FlatButton( - child: _formMode == FormMode.LOGIN - ? Text('Create an account', - style: TextStyle(fontSize: 18.0, fontWeight: FontWeight.w300)) - : Text('Have an account? Sign in', - style: TextStyle(fontSize: 18.0, fontWeight: FontWeight.w300)), - onPressed: _formMode == FormMode.LOGIN - ? _changeFormToSignUp - : _changeFormToLogin, - ); - } - - Widget _showPrimaryButton() { - return Padding( - padding: const EdgeInsets.fromLTRB(0.0, 45.0, 0.0, 0.0), - child: SizedBox( - height: 40.0, - child: RaisedButton( - elevation: 5.0, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30.0)), - color: Colors.blue, - child: _formMode == FormMode.LOGIN - ? Text('Login', - style: TextStyle(fontSize: 20.0, color: Colors.white)) - : Text('Create account', - style: TextStyle(fontSize: 20.0, color: Colors.white)), - onPressed: _validateAndSubmit, - ), - )); - } -} diff --git a/example/pubspec.yaml b/example/pubspec.yaml index e1bfed68f..ca94b4900 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -31,9 +31,9 @@ flutter: uses-material-design: true # To add assets to your application, add an assets section, like this: - assets: + # assets: # - images/a_dot_burr.jpeg - - assets/parse.png + # - images/a_dot_ham.jpeg # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.io/assets-and-images/#resolution-aware. diff --git a/example/test/data/repository/repository_mock_utils.dart b/example/test/data/repository/repository_mock_utils.dart index 469be11a8..7d3a9e9ff 100644 --- a/example/test/data/repository/repository_mock_utils.dart +++ b/example/test/data/repository/repository_mock_utils.dart @@ -35,7 +35,7 @@ DietPlan getDummyDietPlan() { ..protein = 40 ..carbs = 40 ..fat = 20 - ..status = false; + ..status = 0; } Future deleteFromApi(List results) async { diff --git a/lib/parse_server_sdk.dart b/lib/parse_server_sdk.dart index b52dbe5b5..dc057537a 100644 --- a/lib/parse_server_sdk.dart +++ b/lib/parse_server_sdk.dart @@ -18,40 +18,63 @@ import 'package:web_socket_channel/io.dart'; import 'package:xxtea/xxtea.dart'; part 'package:parse_server_sdk/src/objects/response/parse_response_utils.dart'; + part 'package:parse_server_sdk/src/objects/response/parse_error_response.dart'; + part 'package:parse_server_sdk/src/objects/response/parse_exception_response.dart'; + part 'package:parse_server_sdk/src/objects/response/parse_response_builder.dart'; -part 'package:parse_server_sdk/src/objects/response/parse_response_utils.dart'; + part 'package:parse_server_sdk/src/objects/response/parse_success_no_results.dart'; + part 'src/base/parse_constants.dart'; -part 'src/data/core_store.dart'; -part 'src/data/core_store_impl.dart'; + part 'src/data/parse_core_data.dart'; -part 'src/data/parse_shared_preferences_corestore.dart'; -part 'src/data/xxtea_codec.dart'; + part 'src/enums/parse_enum_api_rq.dart'; + part 'src/network/parse_http_client.dart'; + part 'src/network/parse_live_query.dart'; + part 'src/network/parse_query.dart'; -part 'src/objects/parse_acl.dart'; + part 'src/objects/parse_base.dart'; + part 'src/objects/parse_cloneable.dart'; + part 'src/objects/parse_config.dart'; + part 'src/objects/parse_error.dart'; + part 'src/objects/parse_file.dart'; + part 'src/objects/parse_function.dart'; + part 'src/objects/parse_geo_point.dart'; + part 'src/objects/parse_installation.dart'; + part 'src/objects/parse_object.dart'; + part 'src/objects/parse_relation.dart'; + part 'src/objects/parse_response.dart'; + part 'src/objects/parse_session.dart'; + part 'src/objects/parse_user.dart'; -part 'src/utils/parse_date_format.dart'; + +part 'src/objects/parse_acl.dart'; + part 'src/utils/parse_decoder.dart'; + part 'src/utils/parse_encoder.dart'; + part 'src/utils/parse_file_extensions.dart'; + part 'src/utils/parse_logger.dart'; + part 'src/utils/parse_utils.dart'; part 'src/utils/parse_date_format.dart'; diff --git a/lib/src/data/parse_shared_preferences_corestore.dart b/lib/src/data/parse_shared_preferences_corestore.dart deleted file mode 100644 index 2f50b4a80..000000000 --- a/lib/src/data/parse_shared_preferences_corestore.dart +++ /dev/null @@ -1,68 +0,0 @@ -part of flutter_parse_sdk; - -class SharedPreferencesCoreStore implements CoreStore { - SharedPreferencesCoreStore(FutureOr sharedPreference) - : _sharedPreferencesFuture = Future.value(sharedPreference); - - Future _sharedPreferencesFuture; - - @override - Future clear() async { - final SharedPreferences sharedPreferences = await _sharedPreferencesFuture; - final bool result = await sharedPreferences.clear(); - return result; - } - - @override - Future get(String key) => - _sharedPreferencesFuture.then((shared) => shared.get(key)); - - @override - Future getBool(String key) => - _sharedPreferencesFuture.then((shared) => shared.getBool(key)); - - @override - Future getDouble(String key) => - _sharedPreferencesFuture.then((shared) => shared.getDouble(key)); - - @override - Future getInt(String key) => - _sharedPreferencesFuture.then((shared) => shared.getInt(key)); - - @override - Future getString(String key) => - _sharedPreferencesFuture.then((shared) => shared.getString(key)); - - @override - Future> getStringList(String key) => - _sharedPreferencesFuture.then((shared) => shared.getStringList(key)); - - @override - Future remove(String key) => - _sharedPreferencesFuture.then((shared) => shared.remove(key)); - - @override - Future setBool(String key, bool value) => - _sharedPreferencesFuture.then((shared) => shared.setBool(key, value)); - - @override - Future setDouble(String key, double value) => - _sharedPreferencesFuture.then((shared) => shared.setDouble(key, value)); - - @override - Future setInt(String key, int value) => - _sharedPreferencesFuture.then((shared) => shared.setInt(key, value)); - - @override - Future setString(String key, String value) => - _sharedPreferencesFuture.then((shared) => shared.setString(key, value)); - - @override - Future setStringList(String key, List values) => - _sharedPreferencesFuture - .then((shared) => shared.setStringList(key, values)); - - @override - Future containsKey(String key) => - _sharedPreferencesFuture.then((shared) => shared.containsKey(key)); -}