angel_jael@2.0.0
This commit is contained in:
parent
644722dc69
commit
d99aa932a9
8 changed files with 33 additions and 24 deletions
|
@ -1,3 +1,7 @@
|
|||
# 2.0.0
|
||||
* Angel 2 and Dart 2 updates.
|
||||
* Default to `.jael` instead of `.jl`.
|
||||
|
||||
# 1.0.3
|
||||
* Update for annoying map casting bug.
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@ main() async {
|
|||
jael(fileSystem.directory('views')),
|
||||
);
|
||||
|
||||
// Render the contents of views/index.jl
|
||||
// Render the contents of views/index.jael
|
||||
app.get('/', (res) => res.render('index', {'title': 'ESKETTIT'}));
|
||||
|
||||
app.use(() => throw new AngelHttpException.notFound());
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
import 'dart:convert';
|
||||
import 'package:angel_framework/angel_framework.dart';
|
||||
import 'package:angel_framework/http.dart';
|
||||
import 'package:angel_jael/angel_jael.dart';
|
||||
import 'package:dart2_constant/convert.dart';
|
||||
import 'package:file/local.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
|
||||
main() async {
|
||||
var app = new Angel()..lazyParseBodies = true;
|
||||
var app = new Angel();
|
||||
var http = new AngelHttp(app);
|
||||
var fileSystem = const LocalFileSystem();
|
||||
|
||||
|
@ -13,11 +14,13 @@ main() async {
|
|||
jael(fileSystem.directory('views')),
|
||||
);
|
||||
|
||||
app.get('/',
|
||||
(res) => res.render('index', {'title': 'Sample App', 'message': null}));
|
||||
app.get(
|
||||
'/',
|
||||
(req, res) =>
|
||||
res.render('index', {'title': 'Sample App', 'message': null}));
|
||||
|
||||
app.post('/', (RequestContext req, res) async {
|
||||
var body = await req.lazyBody();
|
||||
var body = await req.parseBody();
|
||||
print('Body: $body');
|
||||
var msg = body['message'] ?? '<unknown>';
|
||||
return await res.render('index', {
|
||||
|
@ -27,7 +30,7 @@ main() async {
|
|||
});
|
||||
});
|
||||
|
||||
app.use(() => throw new AngelHttpException.notFound());
|
||||
app.fallback((req, res) => throw new AngelHttpException.notFound());
|
||||
|
||||
app.logger = new Logger('angel')
|
||||
..onRecord.listen((rec) {
|
||||
|
@ -36,6 +39,6 @@ main() async {
|
|||
if (rec.stackTrace != null) print(rec.stackTrace);
|
||||
});
|
||||
|
||||
var server = await http.startServer(null, 3000);
|
||||
var server = await http.startServer('127.0.0.1', 3000);
|
||||
print('Listening at http://${server.address.address}:${server.port}');
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ AngelConfigurer jael(Directory viewsDirectory,
|
|||
bool asDSX: false,
|
||||
CodeBuffer createBuffer()}) {
|
||||
var cache = <String, Document>{};
|
||||
fileExtension ??= '.jl';
|
||||
fileExtension ??= '.jael';
|
||||
createBuffer ??= () => new CodeBuffer();
|
||||
|
||||
return (Angel app) async {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
name: angel_jael
|
||||
version: 2.0.0
|
||||
description: Angel support for the Jael templating engine.
|
||||
description: Angel support for the Jael templating engine, similar to Blade or Liquid.
|
||||
author: Tobe O <thosakwe@gmail.com>
|
||||
homepage: https://github.com/angel-dart/jael/tree/master/jael
|
||||
environment:
|
||||
|
@ -9,9 +9,10 @@ dependencies:
|
|||
angel_framework: ^2.0.0-alpha
|
||||
code_buffer: ^1.0.0
|
||||
file: ^5.0.0
|
||||
jael: ^1.0.0-alpha
|
||||
jael_preprocessor: ^1.0.0-alpha
|
||||
jael: ^2.0.0
|
||||
jael_preprocessor: ^2.0.0
|
||||
symbol_table: ^2.0.0
|
||||
dev_dependencies:
|
||||
angel_test: ^2.0.0-alpha
|
||||
html:
|
||||
test: ^1.0.0
|
||||
|
|
|
@ -2,6 +2,7 @@ import 'package:angel_framework/angel_framework.dart';
|
|||
import 'package:angel_jael/angel_jael.dart';
|
||||
import 'package:angel_test/angel_test.dart';
|
||||
import 'package:file/memory.dart';
|
||||
import 'package:html/parser.dart' as html;
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
|
@ -19,7 +20,7 @@ main() {
|
|||
var fileSystem = new MemoryFileSystem();
|
||||
var viewsDirectory = fileSystem.directory('views')..createSync();
|
||||
|
||||
viewsDirectory.childFile('layout.jl').writeAsStringSync('''
|
||||
viewsDirectory.childFile('layout.jael').writeAsStringSync('''
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
|
@ -33,13 +34,14 @@ main() {
|
|||
</html>
|
||||
''');
|
||||
|
||||
viewsDirectory.childFile('github.jl').writeAsStringSync('''
|
||||
<extend src="layout.jl">
|
||||
viewsDirectory.childFile('github.jael').writeAsStringSync('''
|
||||
<extend src="layout.jael">
|
||||
<block name="content">{{username}}</block>
|
||||
</extend>
|
||||
''');
|
||||
|
||||
app.get('/github/:username', (String username, ResponseContext res) {
|
||||
app.get('/github/:username', (req, res) {
|
||||
var username = req.params['username'];
|
||||
return res.render('github', {'username': username});
|
||||
});
|
||||
|
||||
|
@ -47,7 +49,7 @@ main() {
|
|||
jael(viewsDirectory),
|
||||
);
|
||||
|
||||
app.use(() => throw new AngelHttpException.notFound());
|
||||
app.fallback((req, res) => throw new AngelHttpException.notFound());
|
||||
|
||||
app.logger = new Logger('angel')
|
||||
..onRecord.listen((rec) {
|
||||
|
@ -62,11 +64,10 @@ main() {
|
|||
test('can render', () async {
|
||||
var response = await client.get('/github/thosakwe');
|
||||
print('Body:\n${response.body}');
|
||||
|
||||
expect(
|
||||
response,
|
||||
hasBody('''
|
||||
<!DOCTYPE html>
|
||||
html.parse(response.body).outerHtml,
|
||||
html
|
||||
.parse('''
|
||||
<html>
|
||||
<head>
|
||||
<title>
|
||||
|
@ -76,8 +77,8 @@ main() {
|
|||
<body>
|
||||
thosakwe
|
||||
</body>
|
||||
</html>
|
||||
'''
|
||||
.trim()));
|
||||
</html>'''
|
||||
.trim())
|
||||
.outerHtml);
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue