From 8ceedb2dd64b7e99f6a6de7f6fb68ac65d66d862 Mon Sep 17 00:00:00 2001 From: Nick Date: Wed, 1 Sep 2021 23:01:15 +0800 Subject: [PATCH] fix: fix empty object error (#4903) Co-authored-by: zhongcheng --- src/plugins/animation.js | 2 +- src/util/createUtilityPlugin.js | 2 +- src/util/flattenColorPalette.js | 2 +- src/util/processPlugins.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plugins/animation.js b/src/plugins/animation.js index 9d51c80b414a..95bdba6c62c7 100644 --- a/src/plugins/animation.js +++ b/src/plugins/animation.js @@ -4,7 +4,7 @@ export default function () { return function ({ matchUtilities, theme, variants, prefix }) { let prefixName = (name) => prefix(`.${name}`).slice(1) let keyframes = Object.fromEntries( - Object.entries(theme('keyframes')).map(([key, value]) => { + Object.entries(theme('keyframes') || {}).map(([key, value]) => { return [ key, [ diff --git a/src/util/createUtilityPlugin.js b/src/util/createUtilityPlugin.js index ad87bc29460f..1eacf328cb1f 100644 --- a/src/util/createUtilityPlugin.js +++ b/src/util/createUtilityPlugin.js @@ -36,7 +36,7 @@ export default function createUtilityPlugin( { values: filterDefault ? Object.fromEntries( - Object.entries(theme(themeKey)).filter(([modifier]) => modifier !== 'DEFAULT') + Object.entries(theme(themeKey) || {}).filter(([modifier]) => modifier !== 'DEFAULT') ) : theme(themeKey), variants: variants(themeKey), diff --git a/src/util/flattenColorPalette.js b/src/util/flattenColorPalette.js index 79b8dc3e83b7..ad5badfac2e6 100644 --- a/src/util/flattenColorPalette.js +++ b/src/util/flattenColorPalette.js @@ -1,7 +1,7 @@ const flattenColorPalette = (colors) => Object.assign( {}, - ...Object.entries(colors).flatMap(([color, values]) => + ...Object.entries(colors || {}).flatMap(([color, values]) => typeof values == 'object' ? Object.entries(flattenColorPalette(values)).map(([number, hex]) => ({ [color + (number === 'DEFAULT' ? '' : `-${number}`)]: hex, diff --git a/src/util/processPlugins.js b/src/util/processPlugins.js index afd5d51cf591..bbe3014d034a 100644 --- a/src/util/processPlugins.js +++ b/src/util/processPlugins.js @@ -106,7 +106,7 @@ export default function (plugins, config) { prefix: applyConfiguredPrefix, addUtilities, matchUtilities: (matches, { values, variants, respectPrefix, respectImportant }) => { - let modifierValues = Object.entries(values) + let modifierValues = Object.entries(values || {}) let result = Object.entries(matches).flatMap(([name, utilityFunction]) => { return modifierValues