date_service.dart 706 B

12345678910111213141516171819
  1. import 'package:appflowy_backend/dispatch/dispatch.dart';
  2. import 'package:appflowy_backend/protobuf/flowy-date/entities.pb.dart';
  3. import 'package:appflowy_backend/protobuf/flowy-error/errors.pb.dart';
  4. import 'package:dartz/dartz.dart';
  5. class DateService {
  6. static Future<Either<FlowyError, DateTime>> queryDate(String search) async {
  7. final query = DateQueryPB.create()..query = search;
  8. final result = (await DateEventQueryDate(query).send()).swap();
  9. return result.fold((l) => left(l), (r) {
  10. final date = DateTime.tryParse(r.date);
  11. if (date != null) {
  12. return right(date);
  13. }
  14. return left(FlowyError(msg: 'Could not parse Date (NLP) from String'));
  15. });
  16. }
  17. }