From 1776c3101aee9e42d24a2443ca3cf248a98815bf Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 5 Jan 2021 11:44:58 +0000 Subject: [PATCH] Add fontend store method to reset styles and delete unset styles when updating styles --- .../src/builderStore/store/frontend.js | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/packages/builder/src/builderStore/store/frontend.js b/packages/builder/src/builderStore/store/frontend.js index a12e3a4538..bce663325b 100644 --- a/packages/builder/src/builderStore/store/frontend.js +++ b/packages/builder/src/builderStore/store/frontend.js @@ -23,6 +23,7 @@ import { getComponentDefinition, findParent, } from "../storeUtils" +import { defaults } from "../../components/userInterface/propertyCategories" const INITIAL_FRONTEND_STATE = { apps: [], @@ -367,20 +368,27 @@ export const getFrontendStore = () => { }, updateStyle: async (type, name, value) => { const selected = get(selectedComponent) - if (!selected._styles) { - selected._styles = {} + if (value == null || value === "") { + delete selected._styles[type][name] + } else { + selected._styles[type][name] = value } - selected._styles[type][name] = value await store.actions.preview.saveSelected() }, updateCustomStyle: async style => { const selected = get(selectedComponent) - if (!selected._styles) { - selected._styles = {} - } selected._styles.custom = style await store.actions.preview.saveSelected() }, + resetStyles: async () => { + const selected = get(selectedComponent) + selected._styles = { + normal: defaults, + hover: defaults, + active: defaults, + } + await store.actions.preview.saveSelected() + }, updateProp: (name, value) => { store.update(state => { let current_component = get(selectedComponent)