build static method

ThemeManager build({
  1. required String assetDir,
  2. required String layoutType,
  3. required String lang,
  4. String? path,
  5. String? dir,
})

Implementation

static ThemeManager build({
  required String assetDir,
  required String layoutType,
  required String lang,
  String? path,
  String? dir,
}) {
  final inner = assetDir;
  final themeDir = dir != null && _isDirectory(dir) ? dir : null;
  final loader = _makeLoader(inner, layoutType, themeDir, path);
  final i18n = _makeStringRes(inner, themeDir, lang);
  final env = Environment(
    loader: loader,
    filters: <String, Function>{
      'safe': (f) => f,
      'dump': (f) => f,
      't': (id) => i18n[id],
    },
  );
  final builtinFilters = Map.of(env.filters);
  env.filters.clear();
  return ThemeManager._(
    layoutType,
    inner,
    _JinjaTemplate(env),
    builtinFilters,
    themeDir,
  );
}