1.8 KiB
1.8 KiB
Jael Ppreprocessor
A pre-processor for resolving blocks and includes within Jael 3 templates.
Installation
In your pubspec.yaml
:
dependencies:
jael3_prepreprocessor: ^4.1.0
Usage
It is unlikely that you will directly use this package, as it is
more of an implementation detail than a requirement. However, it
is responsible for handling include
and block
directives
(template inheritance), so you are a package maintainer and want
to support Jael, read on.
To keep things simple, just use the resolve
function, which will
take care of inheritance for you.
import 'package:jael3_preprocessor/jael3_preprocessor.dart' as jael;
myFunction() async {
var doc = await parseTemplateSomehow();
var resolved = await jael.resolve(doc, dir, onError: (e) => doSomething());
}
You may occasionally need to manually patch in functionality that is not
available through the official Jael packages. To achieve this, simply
provide an Iterable
of Patcher
functions:
myOtherFunction(jael.Document doc) {
return jael.resolve(doc, dir, onError: errorHandler, patch: [
syntactic(),
sugar(),
etc(),
]);
}
This package uses package:file
, rather than dart:io
.