import 'package:conduit/conduit.dart';
import 'package:conduit/managed_auth.dart';
class AppChannel extends ApplicationChannel {
final dataModel = ManagedDataModel.fromCurrentMirrorSystem();
final psc = PostgreSQLPersistentStore(
context = new ManagedContext(dataModel, psc);
final delegate = new ManagedAuthDelegate<User>(context);
authServer = new AuthServer(delegate);
Controller get entryPoint {
final router = new Router();
router.route("/auth/token").link(() => AuthController(authServer));
router.route("/auth/code").link(() => AuthCodeController(authServer, delegate: this));
Future<String> render(AuthCodeController forController, Uri requestUri, String responseType, String clientID,
String state, String scope) async {
<form action="${requestUri.path}" method="POST">
<input type="hidden" name="state" value="$state">
<input type="hidden" name="client_id" value="$clientID">
<input type="hidden" name="response_type" value="$responseType">
<label for="username">User Name</label>
<input type="text" class="form-control" name="username" placeholder="Please enter your user name">
<label for="password">Password</label>
<input type="password" class="form-control" name="password" placeholder="Please enter your password">
<button type="submit" class="btn btn-success">Login</button>