From 85d5cadbeb8cfcc82ffd9a08053e9814f4c049e3 Mon Sep 17 00:00:00 2001 From: Rongjian Zhang Date: Thu, 8 Oct 2020 14:04:01 +0800 Subject: [PATCH] fix(github): issue/pr timeline assign event closes #113 --- lib/screens/gh_issue.dart | 32 ++++++++++++++++++++++++++++++-- lib/widgets/timeline_item.dart | 9 +++++---- 2 files changed, 35 insertions(+), 6 deletions(-) diff --git a/lib/screens/gh_issue.dart b/lib/screens/gh_issue.dart index 833354a..f62d2d2 100644 --- a/lib/screens/gh_issue.dart +++ b/lib/screens/gh_issue.dart @@ -197,14 +197,42 @@ __typename actor { login } - assignee + assignee { + __typename + ... on User { + login + } + ... on Bot { + login + } + ... on Organization { + login + } + ... on Mannequin { + login + } + } } ... on UnassignedEvent { createdAt actor { login } - assignee + assignee { + __typename + ... on User { + login + } + ... on Bot { + login + } + ... on Organization { + login + } + ... on Mannequin { + login + } + } } ... on SubscribedEvent { createdAt diff --git a/lib/widgets/timeline_item.dart b/lib/widgets/timeline_item.dart index 20f2f3a..b43c5e5 100644 --- a/lib/widgets/timeline_item.dart +++ b/lib/widgets/timeline_item.dart @@ -1,4 +1,5 @@ import 'dart:core'; +import 'dart:developer'; import 'package:flutter/material.dart'; import 'package:flutter/cupertino.dart'; import 'package:git_touch/models/theme.dart'; @@ -173,9 +174,8 @@ class TimelineItem extends StatelessWidget { iconData: Octicons.key, textSpan: TextSpan(children: [ TextSpan(text: ' assigned this to '), - // TextSpan(text: p['user']['login']) - // User field is depracated. Assignee should be used - TextSpan(text: p['assignee']), + createLinkSpan(context, p['assignee']['login'], + '/github/' + p['assignee']['login']), ]), p: p, ); @@ -185,7 +185,8 @@ class TimelineItem extends StatelessWidget { iconData: Octicons.key, textSpan: TextSpan(children: [ TextSpan(text: ' unassigned this from '), - TextSpan(text: p['assignee']), + createLinkSpan(context, p['assignee']['login'], + '/github/' + p['assignee']['login']), ]), p: p, );