- License
- MIT
- Install Size
- 24 kB/-
- Vulns
- 1
- Published
$
npm install @styled-system/edit$
pnpm add @styled-system/edit$
yarn add @styled-system/edit$
bun add @styled-system/edit$
deno add npm:@styled-system/edit$
vlt install @styled-system/edit@styled-system/edit
WIP Debugging tool for live editing Styled System theme objects
Currently only works with Emotion
npm i @styled-system/edit
import React from 'react'
import { ThemeProvider } from 'emotion-theming'
import { EditProvider, ThemeControls } from '@styled-system/edit'
import theme from './theme'
export default props =>
<ThemeProvider theme={theme}>
<EditProvider>
{props.children}
<ThemeControls />
</EditProvider>
</ThemeProvider>
Components
EditProvidera stateful theme provider with context for live editing – receivesthemefrom parent contextThemeControlsa full, batteries-included theme editing formFieldSetrenders fields for part of athemeobjectFieldrenders a form field for a single value from thethemeobject
// example using FieldSet
import React from 'react'
import { ThemeProvider } from 'emotion-theming'
import { EditProvider, ThemeControls } from '@styled-system/edit'
import theme from './theme'
export default props =>
<ThemeProvider theme={theme}>
<EditProvider>
{props.children}
<FieldSet name='colors' />
<FieldSet name='fontSizes' />
</EditProvider>
</ThemeProvider>
// example using Field
import React from 'react'
import { ThemeProvider } from 'emotion-theming'
import { EditProvider, ThemeControls } from '@styled-system/edit'
import theme from './theme'
export default props =>
<ThemeProvider theme={theme}>
<EditProvider>
{props.children}
<FieldSet name='colors.text' />
<FieldSet name='colors.background' />
</EditProvider>
</ThemeProvider>
FieldSet
Props
name(string) dot-notation key path forthemeobjecttype(string) type prop for child Field components (see below)ignore(array) array of key names to omit from the form
Field
Props
name(string) dot-notation key path forthemeobjecttype(string | 'number', 'select', or 'color') type of form field to renderoptions(array) array of options to render forselecttype fieldsrender(function) render prop for custom field UI
MIT License