seedkit_assets 0.2.0
seedkit_assets: ^0.2.0 copied to clipboard
Общие типы ресурсов и генератор для пакетов SeedKit Flutter
seedkit_assets #
seedkit_assets содержит общий runtime API для ассетов SeedKit и команду генерации итогового assets.gen.dart в приложении.
Пакет решает проблему разных SvgGenImage/AssetGenImage в нескольких пакетах: сгенерированный файл приложения после обработки импортирует типы из package:seedkit_assets/seedkit_assets.dart, поэтому seedkit_ui и приложение работают с одним и тем же Dart-типом.
Запустите генерацию из корня приложения:
dart run seedkit_assets:generate
Команда:
- добавляет ассеты SeedKit-зависимостей в генерацию без копирования файлов в приложение;
- для ассетов пакетов генерирует ключи Flutter вида
packages/seedkit_ui/assets/...; - добавляет короткие accessors по имени файла, например
Assets.arrow; - при совпадении имени файла ассет приложения имеет приоритет над ассетом пакета;
- поддерживает локальные и pub-зависимости, если пакет объявляет ассеты в своем
pubspec.yaml; - генерирует результат в
lib/core/generated/assets; - генерирует
assets.gen.dartдля изображений, SVG и файлов ассетов; - генерирует
fonts.gen.dart, если вassets/fonts/найдены.ttfили.otf; - заменяет локальные типы FlutterGen на типы из
seedkit_assets.
После генерации приложение может передавать ассеты в виджеты проекта:
import 'package:project_test/core/generated/assets/assets.gen.dart';
CheckboxWidget(selectedIcon: Assets.icons.check);
Ассеты зависимостей доступны по короткому имени файла без namespace пакета:
CheckboxWidget(selectedIcon: Assets.arrow);
Для runtime-подключения шрифтов Flutter все равно должна видеть секцию flutter.fonts в pubspec.yaml приложения. fonts.gen.dart дает константы семейств, но не заменяет регистрацию шрифтов в Flutter.