refactored broad range of the application, split files, modularized calendar and file views, centralized bottom sheets and clipboard handling, and implemented unit test coverage
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:jiffy/jiffy.dart';
|
||||
|
||||
extension IsSameDay on DateTime {
|
||||
bool isSameDay(DateTime other) => year == other.year && month == other.month && day == other.day;
|
||||
@@ -18,3 +19,23 @@ extension IsSameDay on DateTime {
|
||||
|
||||
bool isSameOrAfter(DateTime other) => isSameDateTime(other) || isAfter(other);
|
||||
}
|
||||
|
||||
/// Formatting helpers backed by Jiffy. Centralises the patterns that previously
|
||||
/// were repeated as `Jiffy.parseFromDateTime(dt).format(pattern: '...')`.
|
||||
extension DateTimeFormatting on DateTime {
|
||||
String formatHm() => Jiffy.parseFromDateTime(this).format(pattern: 'HH:mm');
|
||||
|
||||
String formatDate() => Jiffy.parseFromDateTime(this).format(pattern: 'dd.MM.yyyy');
|
||||
|
||||
String formatDateTime() => Jiffy.parseFromDateTime(this).format(pattern: 'dd.MM.yyyy HH:mm');
|
||||
|
||||
String formatDateShort() => Jiffy.parseFromDateTime(this).format(pattern: 'dd.MM.');
|
||||
|
||||
String formatDateShortHm() => Jiffy.parseFromDateTime(this).format(pattern: 'dd.MM. HH:mm');
|
||||
|
||||
String formatMonthYear() => Jiffy.parseFromDateTime(this).format(pattern: 'MMMM yyyy');
|
||||
|
||||
String formatRelative() => Jiffy.parseFromDateTime(this).fromNow();
|
||||
|
||||
String timeRangeTo(DateTime end) => '${formatHm()} - ${end.formatHm()}';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user