fluro/lib/src/common.dart

55 lines
1.0 KiB
Dart
Raw Normal View History

2017-05-04 15:33:40 -04:00
/*
2017-05-14 01:01:02 -04:00
* fluro
2017-05-04 15:33:40 -04:00
* A Posse Production
* http://goposse.com
* Copyright (c) 2018 Posse Productions LLC. All rights reserved.
2017-05-04 15:33:40 -04:00
* See LICENSE for distribution and usage details.
*/
2018-07-27 21:15:51 -04:00
import 'package:flutter/widgets.dart';
2017-04-25 03:24:14 -04:00
///
enum HandlerType {
route,
function,
}
2017-04-25 03:24:14 -04:00
///
class Handler {
Handler({this.type = HandlerType.route, this.handlerFunc});
final HandlerType type;
final HandlerFunc handlerFunc;
}
///
typedef Route<T> RouteCreator<T>(
RouteSettings route, Map<String, List<String>> parameters);
///
typedef Widget HandlerFunc(
BuildContext context, Map<String, List<String>> parameters);
2017-04-25 03:24:14 -04:00
///
class AppRoute {
String route;
dynamic handler;
2017-05-04 15:27:32 -04:00
AppRoute(this.route, this.handler);
}
enum RouteMatchType {
visual,
nonVisual,
noMatch,
}
///
class RouteMatch {
RouteMatch(
{this.matchType = RouteMatchType.noMatch,
this.route,
this.errorMessage = "Unable to match route. Please check the logs."});
final Route<dynamic> route;
final RouteMatchType matchType;
final String errorMessage;
}