Skip to content

ThemeProvider

Context provider that applies a light or dark theme to all descendant components.

Import

ts
import { ThemeProvider } from '@itsmemyk/react-tree-grid'

Props

PropTypeDefaultDescription
theme'light' | 'dark''light'Base theme
overridesPartial<ThemeTokens>Token overrides applied on top of the base theme
childrenReactNodeComponents to theme (required)

Theme tokens

All tokens become CSS custom properties as --react-tree-grid-{token-in-kebab-case}.

Colour

TokenCSS variableDescription
colorPrimary--react-tree-grid-color-primaryBrand / accent colour
colorPrimaryHover--react-tree-grid-color-primary-hoverHover state of primary
colorSecondary--react-tree-grid-color-secondarySecondary accent
colorDanger--react-tree-grid-color-dangerError / destructive
colorSuccess--react-tree-grid-color-successSuccess state
colorWarning--react-tree-grid-color-warningWarning state
colorBackground--react-tree-grid-color-backgroundPage / container background
colorSurface--react-tree-grid-color-surfaceCard / cell background
colorText--react-tree-grid-color-textPrimary text
colorTextSecondary--react-tree-grid-color-text-secondaryMuted text
colorBorder--react-tree-grid-color-borderBorder colour

Typography

TokenCSS variableDescription
fontFamily--react-tree-grid-font-familyBase font stack
fontSizeSm--react-tree-grid-font-size-smSmall text
fontSizeMd--react-tree-grid-font-size-mdDefault text
fontSizeLg--react-tree-grid-font-size-lgLarge text
fontWeightNormal--react-tree-grid-font-weight-normal
fontWeightMedium--react-tree-grid-font-weight-medium
fontWeightBold--react-tree-grid-font-weight-bold

Spacing

TokenCSS variable
spacingXs--react-tree-grid-spacing-xs
spacingSm--react-tree-grid-spacing-sm
spacingMd--react-tree-grid-spacing-md
spacingLg--react-tree-grid-spacing-lg
spacingXl--react-tree-grid-spacing-xl

Shape & Shadow

TokenCSS variable
radiusSm--react-tree-grid-radius-sm
radiusMd--react-tree-grid-radius-md
radiusLg--react-tree-grid-radius-lg
shadowSm--react-tree-grid-shadow-sm
shadowMd--react-tree-grid-shadow-md
shadowLg--react-tree-grid-shadow-lg

Z-index

TokenCSS variable
zIndexDropdown--react-tree-grid-z-index-dropdown
zIndexModal--react-tree-grid-z-index-modal
zIndexPopup--react-tree-grid-z-index-popup
zIndexTooltip--react-tree-grid-z-index-tooltip

Utility functions

ts
import { tokenToCssVar, tokensToCssVars } from '@itsmemyk/react-tree-grid'

tokenToCssVar('colorPrimary')
// → '--react-tree-grid-color-primary'

tokensToCssVars({ colorPrimary: '#e91e63', ... })
// → { '--react-tree-grid-color-primary': '#e91e63', ... }

Released under the MIT License.