feat(debug): Добавить экраны отладки для плагинов

This commit is contained in:
Artem Barkalov
2025-06-23 01:03:38 +03:00
parent fb92795b67
commit 9b5f80e7d9
21 changed files with 605 additions and 30 deletions

View File

@@ -2,3 +2,4 @@ library;
export 'src/i_path_provider.dart';
export 'src/i_secure_storage.dart';
export 'src/i_url_launcher.dart';

View File

@@ -1,9 +1,11 @@
/// Класс для описания интерфейса сервиса
/// для получения пути хранения файлов
/// Класс для описания интерфейса сервиса для получения пути хранения файлов
abstract interface class IPathProvider {
/// Наименования интерфейса
static const name = 'IPathProvider';
/// Получение имени имплементации
String get nameImpl;
/// Получение path на внутренне хранилище приложения
Future<String?> getAppDocumentsDirectoryPath();
}

View File

@@ -1,4 +1,4 @@
/// Класс интерфейса для работы с защищенным хранилищем
/// Класс для описания интерфейса для работы с защищенным хранилищем
abstract interface class ISecureStorage {
/// Описывает обязательные параметры имплементаций
///
@@ -6,14 +6,17 @@ abstract interface class ISecureStorage {
/// - [secretKey] - секретный ключ для шифрования данных
const ISecureStorage._({required this.secretKey});
/// Наименования интерфейса
static const name = 'ISecureStorage';
/// Получение имени имплементации
String get nameImpl;
/// Секретный ключ для шифрования данных
/// Нужен, если надо передать ключ в реализацию
/// например, в Aurora
final String? secretKey;
/// Наименования интерфейса
static const name = 'ISecureStorage';
/// Метод для получения значения из защищенного хранилища
///
/// Принимает:
@@ -41,6 +44,4 @@ abstract interface class ISecureStorage {
/// Принимает:
/// - [key] - ключ
Future<bool> containsKey(String key);
String get nameImpl;
}

View File

@@ -0,0 +1,18 @@
/// Класс для описания интерфейса сервиса для запуска URL
abstract interface class IUrlLauncher {
/// Наименования интерфейса
static const name = 'IUrlLauncher';
/// Получение имени имплементации
String get nameImpl;
/// Метод для проверки возможности запуска ссылки
///
/// - [url] - ссылка для проверки
Future<bool> canLaunchUrl(Uri url);
/// Метод для запуска ссылки
///
/// - [url] - ссылка для запуска
Future<bool> launchUrl(Uri url);
}