From 171f6f08943dd1d87120df3e4894ddcfd5e1d246 Mon Sep 17 00:00:00 2001 From: Alexander Tumin Date: Sat, 6 Aug 2022 17:26:43 +0300 Subject: Lists implementation --- src/components/lists_timeline/lists_timeline.js | 36 +++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/components/lists_timeline/lists_timeline.js (limited to 'src/components/lists_timeline/lists_timeline.js') diff --git a/src/components/lists_timeline/lists_timeline.js b/src/components/lists_timeline/lists_timeline.js new file mode 100644 index 00000000..4611a736 --- /dev/null +++ b/src/components/lists_timeline/lists_timeline.js @@ -0,0 +1,36 @@ +import Timeline from '../timeline/timeline.vue' +const ListsTimeline = { + data () { + return { + listId: null + } + }, + components: { + Timeline + }, + computed: { + timeline () { return this.$store.state.statuses.timelines.list } + }, + watch: { + $route: function (route) { + if (route.name === 'list-timeline' && route.params.id !== this.listId) { + this.listId = route.params.id + this.$store.dispatch('stopFetchingTimeline', 'list') + this.$store.commit('clearTimeline', { timeline: 'list' }) + this.$store.dispatch('fetchList', { id: this.listId }) + this.$store.dispatch('startFetchingTimeline', { timeline: 'list', listId: this.listId }) + } + } + }, + created () { + this.listId = this.$route.params.id + this.$store.dispatch('fetchList', { id: this.listId }) + this.$store.dispatch('startFetchingTimeline', { timeline: 'list', listId: this.listId }) + }, + unmounted () { + this.$store.dispatch('stopFetchingTimeline', 'list') + this.$store.commit('clearTimeline', { timeline: 'list' }) + } +} + +export default ListsTimeline -- cgit v1.2.3-70-g09d2 From 891fbf996d7ddd415d99ea9065d54b0f493b5422 Mon Sep 17 00:00:00 2001 From: Alexander Tumin Date: Sat, 6 Aug 2022 21:39:08 +0300 Subject: Lists implementation: make route naming consistent --- src/boot/routes.js | 4 ++-- src/components/lists_card/lists_card.vue | 4 ++-- src/components/lists_edit/lists_edit.js | 2 +- src/components/lists_menu/lists_menu_content.vue | 2 +- src/components/lists_new/lists_new.js | 2 +- src/components/lists_timeline/lists_timeline.js | 2 +- src/components/timeline_menu/timeline_menu.js | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) (limited to 'src/components/lists_timeline/lists_timeline.js') diff --git a/src/boot/routes.js b/src/boot/routes.js index 8bb7d196..95e47199 100644 --- a/src/boot/routes.js +++ b/src/boot/routes.js @@ -77,8 +77,8 @@ export default (store) => { { name: 'about', path: '/about', component: About }, { name: 'user-profile', path: '/:_(users)?/:name', component: UserProfile }, { name: 'lists', path: '/lists', component: Lists }, - { name: 'list-timeline', path: '/lists/:id', component: ListsTimeline }, - { name: 'list-edit', path: '/lists/:id/edit', component: ListsEdit } + { name: 'lists-timeline', path: '/lists/:id', component: ListsTimeline }, + { name: 'lists-edit', path: '/lists/:id/edit', component: ListsEdit } ] if (store.state.instance.pleromaChatMessagesAvailable) { diff --git a/src/components/lists_card/lists_card.vue b/src/components/lists_card/lists_card.vue index c0d58f18..13866d8c 100644 --- a/src/components/lists_card/lists_card.vue +++ b/src/components/lists_card/lists_card.vue @@ -1,13 +1,13 @@