From 2953211de0b216812b09a1394b1c1b64b9ec5f09 Mon Sep 17 00:00:00 2001 From: MayTekayaa <100131287+MayTekayaa@users.noreply.github.com> Date: Fri, 8 Sep 2023 12:07:38 +0100 Subject: [PATCH] feat: Add the ability to send a kudos from the composer - MEED-2071 - Meeds-io/MIPs#54 (#338) This change will add the ability to send a kudos from the composer . --- .../locale/addon/Kudos_en.properties | 1 + .../locale/addon/Kudos_fr.properties | 1 + .../src/main/webapp/vue-app/js/Kudos.js | 8 ++ .../vue-app/kudos/components/KudosAPI.vue | 1 + .../vue-app/kudos/components/KudosApp.vue | 95 +++++++++++++++---- .../kudos/components/SendKudosComposer.vue | 36 +++++++ .../webapp/vue-app/kudos/initComponents.js | 2 + 7 files changed, 125 insertions(+), 19 deletions(-) create mode 100644 kudos-webapps/src/main/webapp/vue-app/kudos/components/SendKudosComposer.vue diff --git a/kudos-services/src/main/resources/locale/addon/Kudos_en.properties b/kudos-services/src/main/resources/locale/addon/Kudos_en.properties index a30947822..2d563adb2 100644 --- a/kudos-services/src/main/resources/locale/addon/Kudos_en.properties +++ b/kudos-services/src/main/resources/locale/addon/Kudos_en.properties @@ -31,6 +31,7 @@ exoplatform.kudos.receiver.searchPlaceholder=Start typing to search exoplatform.kudos.receiver.placeholder=Add Receiver exoplatform.kudos.receiver.noDataLabel=Not found exoplatform.kudos.receiver.noDataLabelInSpace=Not found in space +exoplatform.kudos.receiver.title=Kudos Receiver exoplatform.kudos.error.errorSavingKudosSettings=Error saving Kudos settings. Please try again. If the problem remains, please contact your administrator exoplatform.kudos.error.errorSendingKudos=Error sending kudos. Please try again. If the problem remains, please contact your administrator diff --git a/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties b/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties index 96c8a6f9e..a9e2c5e3f 100644 --- a/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties +++ b/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties @@ -31,6 +31,7 @@ exoplatform.kudos.receiver.searchPlaceholder=Commencez \u00E0 taper pour cherche exoplatform.kudos.receiver.placeholder=Ajouter un destinataire exoplatform.kudos.receiver.noDataLabel=Non trouv\u00E9 exoplatform.kudos.receiver.noDataLabelInSpace=Non trouv\u00E9 dans l'espace +exoplatform.kudos.receiver.title=Le destinataire du Kudos exoplatform.kudos.error.errorSavingKudosSettings=Erreur lors de l'enregistrement des param\u00E8tres Kudos. Essayez \u00E0 nouveau. Si le probl\u00E8me persiste, veuillez contacter votre administrateur exoplatform.kudos.error.errorSendingKudos=Erreur lors de l'envoi du kudos. Essayez \u00E0 nouveau et si le probl\u00E8me persiste, veuillez contacter votre administrateur diff --git a/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js b/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js index b958e9335..991d58ad8 100644 --- a/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js +++ b/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js @@ -219,6 +219,14 @@ export function registerOverviewExtension() { }); } +export function registerComposerExtension() { + extensionRegistry.registerComponent('ComposerAction', 'composer-action-item', { + id: 'sendKudosButton', + vueComponent: Vue.options.components['send-kudos-composer'], + rank: 1, + }); +} + export function registerFavoriteExtensions(title) { extensionRegistry.registerExtension('ActivityFavoriteIcon', 'activity-favorite-icon-extensions', { id: 'favorite-kudos', diff --git a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue index e4dcd134c..d7baf257b 100644 --- a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue +++ b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue @@ -7,6 +7,7 @@ export default { this.$kudosService.registerExternalExtensions(this.$t('exoplatform.kudos.title.sendAKudos')); this.$kudosService.registerFavoriteExtensions(this.$t('exoplatform.kudos.label.to')); this.$kudosService.registerOverviewExtension(); + this.$kudosService.registerComposerExtension(); this.$kudosService.registerActivityActionExtension(); this.$kudosService.registerActivityReactionTabs(); document.addEventListener('display-activity-details', this.getActivityInformations); diff --git a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue index 06e1a1185..b43bfe2b0 100644 --- a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue +++ b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue @@ -26,11 +26,9 @@ ref="activityKudosForm" class="flex mx-4">