From ea2671baa181aadbb20ce9d127f96ab0a6b4a457 Mon Sep 17 00:00:00 2001 From: Frank Johnson Date: Mon, 11 Oct 2021 22:39:16 -0400 Subject: [PATCH] Added Toggle UI component --- app/web/config/tailwind.config.js | 3 + .../components/IdeSideBar/sidebarConfig.tsx | 73 ++++++++++--------- app/web/src/components/Toggle/Toggle.tsx | 33 +++++++++ 3 files changed, 75 insertions(+), 34 deletions(-) create mode 100644 app/web/src/components/Toggle/Toggle.tsx diff --git a/app/web/config/tailwind.config.js b/app/web/config/tailwind.config.js index 90382d8..f9123b6 100644 --- a/app/web/config/tailwind.config.js +++ b/app/web/config/tailwind.config.js @@ -98,6 +98,9 @@ module.exports = { minHeight: { md: '28rem', }, + outline: { + gray: ['2px solid #3B3E4B', '8px'], + }, skew: { '-20': '-20deg', }, diff --git a/app/web/src/components/IdeSideBar/sidebarConfig.tsx b/app/web/src/components/IdeSideBar/sidebarConfig.tsx index eaee359..1f20584 100644 --- a/app/web/src/components/IdeSideBar/sidebarConfig.tsx +++ b/app/web/src/components/IdeSideBar/sidebarConfig.tsx @@ -3,6 +3,8 @@ import { SvgNames } from 'src/components/Svg/Svg' import { useIdeContext } from 'src/helpers/hooks/useIdeContext' import { createRemoveUpdate, updateTree } from 'react-mosaic-component' import type { MosaicPath } from 'react-mosaic-component' +import Toggle from 'src/components/Toggle' + interface SidebarConfigType { name: string icon: SvgNames @@ -151,41 +153,44 @@ const settingsConfig: settingsConfig[] = [ }, [state.layout]) return (
-
  • -
    Visible
    - { - if (consolePath) { - const newTree = updateTree(state.layout, [ - createRemoveUpdate(state.layout, consolePath), - ]) - thunkDispatch({ type: 'setLayout', payload: newTree }) - } else { - // Split 'Viewer' panel to add console back in - const viewerPath = getPathById(state.layout, 'Viewer') - const newTree = { ...state.layout } - let temp = newTree - viewerPath.forEach((name) => { - if (newTree[name] === 'Viewer') { - newTree[name] = { - direction: 'column', - first: 'Viewer', - second: 'Console', - splitPercentage: 70, +
  • +
  • ) diff --git a/app/web/src/components/Toggle/Toggle.tsx b/app/web/src/components/Toggle/Toggle.tsx new file mode 100644 index 0000000..02dd65c --- /dev/null +++ b/app/web/src/components/Toggle/Toggle.tsx @@ -0,0 +1,33 @@ +const Toggle = ({ offLabel = 'off', onLabel = 'on', checked, onChange }) => { + return ( +
    + {offLabel} +
    +
    +
    + {onLabel} + +
    + ) +} + +export default Toggle