|
1 | 1 | <template> |
2 | | - <div |
3 | | - :class="[ |
4 | | - 'feed-page-container', |
5 | | - 'main-page-segment-container' |
6 | | - ]" |
| 2 | + <BaseFeedPageContainer |
| 3 | + :limit="limit" |
7 | 4 | > |
8 | | - <BaseHeader |
9 | | - class="main-app-title" |
10 | | - tag="h1" |
11 | | - text="muffon" |
12 | | - /> |
13 | | - |
14 | | - <FeedSegment /> |
15 | | - </div> |
| 5 | + <template #default="pageSlotProps"> |
| 6 | + <BasePaginatedPageContainer |
| 7 | + response-data-name="feedData" |
| 8 | + :slot-props-data="pageSlotProps" |
| 9 | + :scope="scope" |
| 10 | + :limit="limit" |
| 11 | + > |
| 12 | + <template #default="slotProps"> |
| 13 | + <BasePostsSimpleList |
| 14 | + :posts="slotProps[scope]" |
| 15 | + /> |
| 16 | + </template> |
| 17 | + </BasePaginatedPageContainer> |
| 18 | + </template> |
| 19 | + </BaseFeedPageContainer> |
16 | 20 | </template> |
17 | 21 |
|
18 | 22 | <script> |
19 | | -import BaseHeader from '*/components/BaseHeader.vue' |
20 | | -import FeedSegment from './FeedPage/FeedSegment.vue' |
21 | | -import navigationMixin from '*/mixins/navigationMixin' |
22 | | -import { |
23 | | - feed as formatFeedPageNavigation |
24 | | -} from '*/helpers/formatters/navigation' |
25 | | -import { |
26 | | - feed as formatFeedPageTab |
27 | | -} from '*/helpers/formatters/tabs' |
| 23 | +import BaseFeedPageContainer |
| 24 | + from '*/components/containers/pages/feed/BaseFeedPageContainer.vue' |
| 25 | +import BasePaginatedPageContainer |
| 26 | + from '*/components/containers/pages/BasePaginatedPageContainer.vue' |
| 27 | +import BasePostsSimpleList |
| 28 | + from '*/components/lists/posts/BasePostsSimpleList.vue' |
28 | 29 |
|
29 | 30 | export default { |
30 | 31 | name: 'FeedPage', |
31 | 32 | components: { |
32 | | - BaseHeader, |
33 | | - FeedSegment |
| 33 | + BaseFeedPageContainer, |
| 34 | + BasePaginatedPageContainer, |
| 35 | + BasePostsSimpleList |
34 | 36 | }, |
35 | | - mixins: [ |
36 | | - navigationMixin |
37 | | - ], |
38 | | - computed: { |
39 | | - navigationSections () { |
40 | | - return formatFeedPageNavigation() |
41 | | - }, |
42 | | - tabData () { |
43 | | - return formatFeedPageTab() |
| 37 | + data () { |
| 38 | + return { |
| 39 | + limit: 50, |
| 40 | + scope: 'feed' |
44 | 41 | } |
45 | | - }, |
46 | | - mounted () { |
47 | | - this.setNavigation() |
48 | 42 | } |
49 | 43 | } |
50 | 44 | </script> |
51 | 45 |
|
52 | | -<style lang="sass" scoped> |
53 | | -.feed-page-container |
54 | | - @extend .d-flex, .flex-column, .align-items-center |
55 | | - padding-top: 5vh |
56 | | - height: 70vh |
57 | | -</style> |
| 46 | +<style lang="sass" scoped></style> |
0 commit comments