diff --git a/src/util/resolveConfig.js b/src/util/resolveConfig.js index 7b6c9c447811..4c23e7104b75 100644 --- a/src/util/resolveConfig.js +++ b/src/util/resolveConfig.js @@ -7,6 +7,8 @@ import map from 'lodash/map' import get from 'lodash/get' import uniq from 'lodash/uniq' import toPath from 'lodash/toPath' +import head from 'lodash/head' +import isPlainObject from 'lodash/isPlainObject' import negateValue from './negateValue' import { corePluginList } from '../corePluginList' import configurePlugins from './configurePlugins' @@ -67,7 +69,13 @@ function mergeThemes(themes) { } } -function mergeExtensionCustomizer(_merged, value) { +function mergeExtensionCustomizer(merged, value) { + // When we have an array of objects, we do want to merge it + if (Array.isArray(merged) && isPlainObject(head(merged))) { + return merged.concat(value) + } + + // Override arrays (for example for font-families, box-shadows, ...) if (Array.isArray(value)) return value }