intermediate

This commit is contained in:
Fabian Freund
2024-09-13 09:11:06 +02:00
parent 3b047b5d8a
commit 37d2c84d7f
155 changed files with 5666 additions and 1816 deletions
+13
View File
@@ -0,0 +1,13 @@
extension DateTimeFormat on DateTime {
String _twoDigits(int n) => n.toString().padLeft(2, '0');
String formatWithMinutePrecision() {
final year = this.year.toString();
final month = _twoDigits(this.month);
final day = _twoDigits(this.day);
final hour = _twoDigits(this.hour);
final minute = _twoDigits(this.minute);
return '$year-$month-$day $hour:$minute';
}
}
+20
View File
@@ -0,0 +1,20 @@
import 'dart:ui';
import 'package:crypto/crypto.dart';
import 'package:lensai/domain/entities/equatable_image.dart';
extension ImageHash on Image {
Future<String?> calculateHash() async {
final bytes = await toByteData();
if (bytes != null) {
final digest = sha1.convert(bytes.buffer.asUint8List());
return digest.toString();
}
return null;
}
Future<EquatableImage> toEquatable() {
return EquatableImage.calculate(this);
}
}
-4
View File
@@ -1,4 +0,0 @@
extension UriFavicon on Uri {
Uri genericFavicon() =>
Uri.parse('https://icons.duckduckgo.com/ip3/$host.ico');
}