buildTimeline method

Widget buildTimeline(
  1. BuildContext context,
  2. CuratedList item
)

Implementation

Widget buildTimeline(BuildContext context, api.CuratedList item) {
  return SingleChildScrollView(
    child: Padding(
      padding: const EdgeInsets.all(16.0),
      child: Padding(
        padding: const EdgeInsets.only(bottom: 56.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: <Widget>[
            const Padding(
              padding: EdgeInsets.only(bottom: 8.0),
              child: Text(
                "Prologue",
                style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
              ),
            ),
            Padding(
              padding: const EdgeInsets.symmetric(horizontal: 16.0),
              child: MarkdownBody(
                data: item.prologue!,
                styleSheet: MarkdownStyleSheet(
                    p: const TextStyle(height: 2, fontSize: 17)),
              ),
            ),
            Container(
              height: 48,
              margin: const EdgeInsets.all(24),
              child: MaterialButton(
                color: Colors.black,
                shape: RoundedRectangleBorder(
                  borderRadius: BorderRadius.circular(18.0),
                ),
                child: const Text(
                  "View Timeline",
                  style: TextStyle(color: Colors.white, fontSize: 15),
                ),
                onPressed: () {
                  TimelineParams params = TimelineParams(
                    noAppBar: false,
                    implyLeading: true,
                    title: item.title,
                    shareTitle: "Afrostories Lists: ${item.title!}",
                    shareMessage:
                        "Check out this great curated list: ${item.title!}",
                    item: item,
                    filterable: false,
                    actions: [
                      FavoriteToggleButton(
                        item: item,
                        type: "CuratedList",
                      )
                    ],
                    onFetchData: (context) {
                      return Future.value(item.items);
                    },
                    onInitialize: (context) => Future.value(),
                    onStateChange: (context) => false,
                  );
                  ContentRoutes.timeline
                      .push(context: context, arguments: params);
                },
              ),
            )
          ],
        ),
      ),
    ),
  );
}