From 89fbaa159f29a7d175a5323eded29e20c9f3a752 Mon Sep 17 00:00:00 2001 From: marcin mikołajczak Date: Tue, 24 Sep 2024 00:05:33 +0200 Subject: Allow adding bookmarks to folders MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: marcin mikołajczak --- .../status_bookmark_folder_menu.js | 40 ++++++++++++++++++++++ .../status_bookmark_folder_menu.vue | 38 ++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js create mode 100644 src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue (limited to 'src/components/status_bookmark_folder_menu') diff --git a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js new file mode 100644 index 00000000..16b414ac --- /dev/null +++ b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js @@ -0,0 +1,40 @@ +import { library } from '@fortawesome/fontawesome-svg-core' +import { faChevronRight } from '@fortawesome/free-solid-svg-icons' +import { mapState } from 'vuex' + +import DialogModal from '../dialog_modal/dialog_modal.vue' +import Popover from '../popover/popover.vue' + +library.add(faChevronRight) + +const StatusBookmarkFolderMenu = { + props: [ + 'status' + ], + data () { + return {} + }, + components: { + DialogModal, + Popover + }, + computed: { + ...mapState({ + folders: state => state.bookmarkFolders.allFolders + }), + folderId () { + return this.status.bookmark_folder_id + } + }, + methods: { + toggleFolder (id) { + const value = id === this.folderId ? null : id + + this.$store.dispatch('bookmark', { id: this.status.id, bookmark_folder_id: value }) + .then(() => this.$emit('onSuccess')) + .catch(err => this.$emit('onError', err.error.error)) + } + } +} + +export default StatusBookmarkFolderMenu diff --git a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue new file mode 100644 index 00000000..48b7fe70 --- /dev/null +++ b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue @@ -0,0 +1,38 @@ + + + -- cgit v1.2.3-70-g09d2 From 796372adf300691488508cf4921ebc95b2bcd8c1 Mon Sep 17 00:00:00 2001 From: marcin mikołajczak Date: Tue, 24 Sep 2024 00:07:54 +0200 Subject: Remove unused import MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: marcin mikołajczak --- package.json | 3 +-- .../status_bookmark_folder_menu/status_bookmark_folder_menu.js | 2 -- 2 files changed, 1 insertion(+), 4 deletions(-) (limited to 'src/components/status_bookmark_folder_menu') diff --git a/package.json b/package.json index 403a2b23..61db87d2 100644 --- a/package.json +++ b/package.json @@ -132,6 +132,5 @@ "engines": { "node": ">= 16.0.0", "npm": ">= 3.0.0" - }, - "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" + } } diff --git a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js index 16b414ac..7dea8cd1 100644 --- a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js +++ b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js @@ -2,7 +2,6 @@ import { library } from '@fortawesome/fontawesome-svg-core' import { faChevronRight } from '@fortawesome/free-solid-svg-icons' import { mapState } from 'vuex' -import DialogModal from '../dialog_modal/dialog_modal.vue' import Popover from '../popover/popover.vue' library.add(faChevronRight) @@ -15,7 +14,6 @@ const StatusBookmarkFolderMenu = { return {} }, components: { - DialogModal, Popover }, computed: { -- cgit v1.2.3-70-g09d2 From 49ec95b8f66ff3a60e86b0a6027956d71fb6abf5 Mon Sep 17 00:00:00 2001 From: marcin mikołajczak Date: Tue, 24 Sep 2024 00:44:05 +0200 Subject: Add icon for folder selector MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: marcin mikołajczak --- .../status_bookmark_folder_menu/status_bookmark_folder_menu.js | 4 ++-- .../status_bookmark_folder_menu/status_bookmark_folder_menu.vue | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'src/components/status_bookmark_folder_menu') diff --git a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js index 7dea8cd1..50bcb0ca 100644 --- a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js +++ b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.js @@ -1,10 +1,10 @@ import { library } from '@fortawesome/fontawesome-svg-core' -import { faChevronRight } from '@fortawesome/free-solid-svg-icons' +import { faChevronRight, faFolder } from '@fortawesome/free-solid-svg-icons' import { mapState } from 'vuex' import Popover from '../popover/popover.vue' -library.add(faChevronRight) +library.add(faChevronRight, faFolder) const StatusBookmarkFolderMenu = { props: [ diff --git a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue index 48b7fe70..70baa60d 100644 --- a/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue +++ b/src/components/status_bookmark_folder_menu/status_bookmark_folder_menu.vue @@ -22,9 +22,11 @@