From a1822a59105d99dfd0198481ed45070173442a6d Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Tue, 11 Aug 2026 13:45:14 +0300 Subject: [PATCH] fix themes v3 not loading --- changelog.d/themes3.fix | 1 + src/api/helpers.js | 5 +++-- src/services/style_setter/style_setter.js | 5 ++++- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 changelog.d/themes3.fix diff --git a/changelog.d/themes3.fix b/changelog.d/themes3.fix new file mode 100644 index 000000000..a3192b263 --- /dev/null +++ b/changelog.d/themes3.fix @@ -0,0 +1 @@ +Fixed themes 3 not loading in appearance tab diff --git a/src/api/helpers.js b/src/api/helpers.js index cb2f2bdd5..b033d80b8 100644 --- a/src/api/helpers.js +++ b/src/api/helpers.js @@ -71,6 +71,7 @@ export const promisedRequest = async ({ url, payload, formData, + forceContentType, cache, credentials, headers = {}, @@ -79,7 +80,7 @@ export const promisedRequest = async ({ method, credentials: 'same-origin', headers: { - Accept: 'application/json', + Accept: forceContentType ?? 'application/json', ...headers, }, } @@ -114,7 +115,7 @@ export const promisedRequest = async ({ ) if (contentLength === 0) return null - switch (contentType) { + switch (forceContentType ?? contentType) { case 'text/plain': return await response.text() case 'application/json': diff --git a/src/services/style_setter/style_setter.js b/src/services/style_setter/style_setter.js index cb445d2c1..43eaeb3e5 100644 --- a/src/services/style_setter/style_setter.js +++ b/src/services/style_setter/style_setter.js @@ -307,7 +307,9 @@ export const applyStyleConfig = (input) => { adoptStyleSheets() } -export const getResourcesIndex = async (url, parser = (x) => x) => { +const noop = (x) => x + +export const getResourcesIndex = async (url, parser = noop) => { const cache = 'no-store' const customUrl = url.replace(/\.(\w+)$/, '.custom.$1') let builtin @@ -324,6 +326,7 @@ export const getResourcesIndex = async (url, parser = (x) => x) => { promisedRequest({ url: v, cache, + forceContentType: parser === noop ? null : 'text/plain', }) .then(({ data: text }) => parser(text)) .catch((e) => {