@pmwcs/provider
Version:
PMWCS provider component
64 lines (50 loc) • 1.71 kB
Markdown
A component that provides global configuration for PMWCS.
- Module **@pmwcs/provider**
You can wrap your top level App component with PMWCS provider to set global configuration options. Just pass the options in as props.
```jsx
`
import { h } from 'preact'
import * as ReactDOM from 'react-dom';
import App from './App'; // your main app component
import { PMWCSProvider } from '@pmwcs/provider';
// This example disables ripples globally by default
ReactDOM.render(
<PMWCSProvider
// Globally disable ripples
ripple={false}
// Global options for icons
// Takes the same options as the icon component
icon={{
basename: 'material-icons'
}}
// Global options for typography
// allows mapping of a defaultTag or specific classes
// See the Typography docs for more info
typography={{
defaultTag: 'div',
headline1: 'h1'
}}
// Global options for tooltips
// Takes most of the options for tooltips
// See the Tooltip docs for more info
tooltip={{
align: 'right'
}}
>
<App />
</PMWCSProvider>,
document.getElementById('root'),
);
`
```
A provider for setting global options in PMWCS.
| Name | Type | Description |
|------|------|-------------|
| `children` | `React.ReactNode` | Children to render |
| `icon` | `Partial<IconOptions>` | Global options for icons |
| `ripple` | `undefined \| false \| true` | Enable / Disable interaction ripples globally |
| `tooltip` | `Partial<TooltipOptions>` | Global tooltip options |
| `typography` | `Partial<TypographyOptions>` | Global typography options |