diff options
Diffstat (limited to 'web/source/settings/lib/form')
-rw-r--r-- | web/source/settings/lib/form/check-list.jsx | 2 | ||||
-rw-r--r-- | web/source/settings/lib/form/submit.js | 11 |
2 files changed, 10 insertions, 3 deletions
diff --git a/web/source/settings/lib/form/check-list.jsx b/web/source/settings/lib/form/check-list.jsx index 7827671be..8412df077 100644 --- a/web/source/settings/lib/form/check-list.jsx +++ b/web/source/settings/lib/form/check-list.jsx @@ -171,7 +171,7 @@ module.exports = function useCheckListInput({ name }, { entries, uniqueKey = "ke onChange, selectedValues, reset, - someSelected: state.someChecked, + someSelected: state.selectedEntries.size > 0, updateMultiple, toggleAll: { ref: toggleAllRef, diff --git a/web/source/settings/lib/form/submit.js b/web/source/settings/lib/form/submit.js index 2a81307c5..46a182885 100644 --- a/web/source/settings/lib/form/submit.js +++ b/web/source/settings/lib/form/submit.js @@ -18,10 +18,11 @@ "use strict"; +const Promise = require("bluebird"); const React = require("react"); const syncpipe = require("syncpipe"); -module.exports = function useFormSubmit(form, mutationQuery, { changedOnly = true } = {}) { +module.exports = function useFormSubmit(form, mutationQuery, { changedOnly = true, onFinish } = {}) { if (!Array.isArray(mutationQuery)) { throw new ("useFormSubmit: mutationQuery was not an Array. Is a valid useMutation RTK Query provided?"); } @@ -64,7 +65,13 @@ module.exports = function useFormSubmit(form, mutationQuery, { changedOnly = tru mutationData.action = action; - return runMutation(mutationData); + return Promise.try(() => { + return runMutation(mutationData); + }).then((res) => { + if (onFinish) { + return onFinish(res); + } + }); }, { ...result, |