import 'dart:async'; import 'package:flutter/material.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/shared/providers/api.provider.dart'; import 'package:immich_mobile/shared/services/api.service.dart'; import 'package:openapi/api.dart'; final assetServiceProvider = Provider( (ref) => AssetService( ref.watch(apiServiceProvider), ), ); class AssetService { final ApiService _apiService; AssetService(this._apiService); Future?> getAllAsset() async { try { return await _apiService.assetApi.getAllAssets(); } catch (e) { debugPrint("Error [getAllAsset] ${e.toString()}"); return null; } } Future getAssetById(String assetId) async { try { return await _apiService.assetApi.getAssetById(assetId); } catch (e) { debugPrint("Error [getAssetById] ${e.toString()}"); return null; } } Future?> deleteAssets( Set deleteAssets, ) async { try { List payload = []; for (var asset in deleteAssets) { payload.add(asset.id); } return await _apiService.assetApi .deleteAsset(DeleteAssetDto(ids: payload)); } catch (e) { debugPrint("Error getAllAsset ${e.toString()}"); return null; } } }