diff --git a/lib/messaging/boost_message_channel.dart b/lib/messaging/boost_message_channel.dart deleted file mode 100755 index e95e55b50d986a2c59ef879e30e0919c09dee9e9..0000000000000000000000000000000000000000 --- a/lib/messaging/boost_message_channel.dart +++ /dev/null @@ -1,145 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2019 Alibaba Group - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -import 'dart:async'; -import 'package:flutter/services.dart'; - -typedef Future<dynamic> EventListener(String name , Map arguments); - -class BoostMessageChannel { - - static MethodChannel methodChannel; - - static Map<String,List<EventListener>> _lists = Map(); - - static void sendEvent(String name , Map arguments){ - - if(name == null) { - return; - } - - if(arguments == null){ - arguments = Map(); - } - - Map msg = Map(); - msg["name"] = name; - msg["arguments"] = arguments; - methodChannel.invokeMethod("__event__",msg); - } - - static Function addEventListener(String name , EventListener listener){ - if(name == null || listener == null){ - return (){}; - } - - List<EventListener> list = _lists[name]; - if(list == null){ - list = List(); - _lists[name] = list; - } - - list.add(listener); - - return (){ - list.remove(listener); - }; - } - - static Future<dynamic> handleEventCall(MethodCall call){ - if(call.method != "__event__"){ - return Future<dynamic>((){}); - } - - String name = call.arguments["name"]; - Map arg = call.arguments["arguments"]; - List<EventListener> list = _lists[name]; - if(list != null){ - for(EventListener l in list){ - l(name,arg); - } - } - - return Future<dynamic>((){}); - } - - - - static Future<bool> onShownContainerChanged(String newName,String oldName,Map params) { - Map<String,dynamic> properties = new Map<String,dynamic>(); - properties["newName"]=newName; - properties["oldName"]=oldName; - properties["params"]=params; - return methodChannel.invokeMethod('onShownContainerChanged',properties).then<bool>((value){ - return (value); - }); - } - static Future<bool> onFlutterPageResult(String uniqueId,String key,Map resultData,Map params) { - Map<String,dynamic> properties = new Map<String,dynamic>(); - properties["uniqueId"]=uniqueId; - properties["key"]=key; - properties["resultData"]=resultData; - properties["params"]=params; - return methodChannel.invokeMethod('onFlutterPageResult',properties).then<bool>((value){ - return (value); - }); - } - static Future<Map> pageOnStart(Map params) async { - Map<String,dynamic> properties = new Map<String,dynamic>(); - properties["params"]=params; - try { - return await methodChannel.invokeMethod('pageOnStart',properties).then<Map>((value){ - return value as Map; - }); - } catch (e) { - print('Page on start exception'); - return Future<Map>((){}); - } - } - - static Future<Map<dynamic,dynamic>> openPage(String url,Map urlParams, Map exts) { - Map<String,dynamic> properties = new Map<String,dynamic>(); - properties["url"]=url; - properties["urlParams"]=urlParams; - properties["exts"]=exts; - return methodChannel.invokeMethod('openPage',properties).then<Map<dynamic,dynamic>>((value){ - return (value); - }); - } - - static Future<bool> closePage(String uniqueId,{Map<dynamic,dynamic> result,Map<dynamic,dynamic> exts}) { - Map<String,dynamic> properties = new Map<String,dynamic>(); - properties["uniqueId"]=uniqueId; - if(result != null){ - properties["result"]=result; - } - if(exts != null) { - properties["exts"] = exts; - } - return methodChannel.invokeMethod('closePage',properties).then<bool>((value){ - return value; - }); - } - - } \ No newline at end of file diff --git a/lib/router/router.dart b/lib/router/router.dart deleted file mode 100755 index 37d40a59479ca32d9be43eeedb8f88103e869b28..0000000000000000000000000000000000000000 --- a/lib/router/router.dart +++ /dev/null @@ -1,71 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2019 Alibaba Group - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ -import 'dart:async'; - -import 'package:flutter_boost/container/boost_container.dart'; -import 'package:flutter_boost/flutter_boost.dart'; -import 'package:flutter_boost/messaging/boost_message_channel.dart'; - -class Router { - - - Future<Map<dynamic,dynamic>> open(String url,{Map<dynamic,dynamic> urlParams,Map<dynamic,dynamic> exts}){ - return BoostMessageChannel.openPage(url,urlParams, exts); - } - - Future<bool> close(String id,{Map<dynamic,dynamic> result,Map<dynamic,dynamic> exts}){ - return BoostMessageChannel.closePage(id,result:result,exts: exts); - } - - - //Close currentPage page. - Future<bool> closeCurPage(Map params) { - BoostContainerSettings settings; - - final BoostContainerState container = - FlutterBoost.containerManager.onstageContainer; - - if (container != null) { - settings = container.settings; - } else { - settings = FlutterBoost.containerManager.onstageSettings; - } - - if (settings == null) { - return Future<bool>(() { - return false; - }); - } - - bool animated = true; - if (params.containsKey("animated")) { - animated = params["animated"] as bool; - } - - Map<String,dynamic> exts = Map(); - exts["animated"] = animated; - - return BoostMessageChannel.closePage(settings.uniqueId,result: {} ,exts: exts); - } -}