summaryrefslogtreecommitdiff
path: root/web/source/settings/lib/query/base.js
diff options
context:
space:
mode:
Diffstat (limited to 'web/source/settings/lib/query/base.js')
-rw-r--r--web/source/settings/lib/query/base.js22
1 files changed, 4 insertions, 18 deletions
diff --git a/web/source/settings/lib/query/base.js b/web/source/settings/lib/query/base.js
index f880853d2..653fc449b 100644
--- a/web/source/settings/lib/query/base.js
+++ b/web/source/settings/lib/query/base.js
@@ -20,23 +20,7 @@
"use strict";
const { createApi, fetchBaseQuery } = require("@reduxjs/toolkit/query/react");
-const { isPlainObject } = require("is-plain-object");
-
-function convertToForm(obj) {
- const formData = new FormData();
- Object.entries(obj).forEach(([key, val]) => {
- if (isPlainObject(val)) {
- Object.entries(val).forEach(([key2, val2]) => {
- if (val2 != undefined) {
- formData.set(`${key}[${key2}]`, val2);
- }
- });
- } else if (val != undefined) {
- formData.set(key, val);
- }
- });
- return formData;
-}
+const { serialize: serializeForm } = require("object-to-formdata");
function instanceBasedQuery(args, api, extraOptions) {
const state = api.getState();
@@ -55,7 +39,9 @@ function instanceBasedQuery(args, api, extraOptions) {
if (args.asForm) {
delete args.asForm;
- args.body = convertToForm(args.body);
+ args.body = serializeForm(args.body, {
+ indices: true, // Array indices, for profile fields
+ });
}
return fetchBaseQuery({