✨ Basic article rendering (overview)
This commit is contained in:
@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_animate/flutter_animate.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:solian/exts.dart';
|
||||
import 'package:solian/models/post.dart';
|
||||
import 'package:solian/models/articles.dart';
|
||||
import 'package:solian/models/realm.dart';
|
||||
import 'package:solian/providers/auth.dart';
|
||||
import 'package:solian/router.dart';
|
||||
@ -15,14 +15,14 @@ import 'package:textfield_tags/textfield_tags.dart';
|
||||
import 'package:badges/badges.dart' as badges;
|
||||
|
||||
class ArticlePublishArguments {
|
||||
final Post? edit;
|
||||
final Article? edit;
|
||||
final Realm? realm;
|
||||
|
||||
ArticlePublishArguments({this.edit, this.realm});
|
||||
}
|
||||
|
||||
class ArticlePublishScreen extends StatefulWidget {
|
||||
final Post? edit;
|
||||
final Article? edit;
|
||||
final Realm? realm;
|
||||
|
||||
const ArticlePublishScreen({
|
||||
|
@ -1,6 +1,7 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
||||
import 'package:solian/models/articles.dart';
|
||||
import 'package:solian/models/feed.dart';
|
||||
import 'package:solian/models/pagination.dart';
|
||||
import 'package:solian/models/post.dart';
|
||||
@ -8,6 +9,8 @@ import 'package:solian/providers/content/feed.dart';
|
||||
import 'package:solian/screens/feed.dart';
|
||||
import 'package:solian/theme.dart';
|
||||
import 'package:solian/widgets/app_bar_title.dart';
|
||||
import 'package:solian/widgets/articles/article_action.dart';
|
||||
import 'package:solian/widgets/articles/article_owned_list.dart';
|
||||
import 'package:solian/widgets/posts/post_action.dart';
|
||||
import 'package:solian/widgets/posts/post_owned_list.dart';
|
||||
import 'package:solian/widgets/prev_page.dart';
|
||||
@ -98,6 +101,20 @@ class _DraftBoxScreenState extends State<DraftBoxScreen> {
|
||||
});
|
||||
},
|
||||
).paddingOnly(left: 12, right: 12, bottom: 4);
|
||||
case 'article':
|
||||
final data = Article.fromJson(item.data);
|
||||
return ArticleOwnedListEntry(
|
||||
item: data,
|
||||
onTap: () async {
|
||||
showModalBottomSheet(
|
||||
useRootNavigator: true,
|
||||
context: context,
|
||||
builder: (context) => ArticleAction(item: data),
|
||||
).then((value) {
|
||||
if (value != null) _pagingController.refresh();
|
||||
});
|
||||
},
|
||||
).paddingOnly(left: 12, right: 12, bottom: 4);
|
||||
default:
|
||||
return const SizedBox();
|
||||
}
|
||||
|
Reference in New Issue
Block a user