From 6794827a7730a44d58315ebd0aa51bc2adfbd334 Mon Sep 17 00:00:00 2001 From: Chi Vinh Le Date: Thu, 10 Aug 2017 20:23:31 +0700 Subject: [PATCH] Support adding modqueues from plugins --- client/coral-admin/src/routes/Moderation/queueConfig.js | 4 +++- client/coral-framework/helpers/plugins.js | 9 ++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/client/coral-admin/src/routes/Moderation/queueConfig.js b/client/coral-admin/src/routes/Moderation/queueConfig.js index 5385b5e23..b9e9e5320 100644 --- a/client/coral-admin/src/routes/Moderation/queueConfig.js +++ b/client/coral-admin/src/routes/Moderation/queueConfig.js @@ -1,4 +1,5 @@ import t from 'coral-framework/services/i18n'; +import {getModQueueConfigs} from 'coral-framework/helpers/plugins'; export default { premod: { @@ -31,5 +32,6 @@ export default { statuses: ['NONE', 'PREMOD', 'ACCEPTED', 'REJECTED'], icon: 'question_answer', name: t('modqueue.all'), - } + }, + ...getModQueueConfigs(), }; diff --git a/client/coral-framework/helpers/plugins.js b/client/coral-framework/helpers/plugins.js index 5e5a8c0c0..b2ca78142 100644 --- a/client/coral-framework/helpers/plugins.js +++ b/client/coral-framework/helpers/plugins.js @@ -3,6 +3,7 @@ import uniq from 'lodash/uniq'; import pick from 'lodash/pick'; import merge from 'lodash/merge'; import flattenDeep from 'lodash/flattenDeep'; +import isEmpty from 'lodash/isEmpty'; import flatten from 'lodash/flatten'; import {loadTranslations} from 'coral-framework/services/i18n'; import {injectReducers} from 'coral-framework/services/store'; @@ -64,7 +65,13 @@ export function getSlotFragments(slot, part) { export function getGraphQLExtensions() { return plugins .map((o) => pick(o.module, ['mutations', 'queries', 'fragments'])) - .filter((o) => o); + .filter((o) => !isEmpty(o)); +} + +export function getModQueueConfigs() { + return merge(...plugins + .map((o) => o.module.modQueues) + .filter((o) => o)); } function getTranslations() {