62 lines
2.7 KiB
JavaScript
62 lines
2.7 KiB
JavaScript
'use client';
|
|
|
|
import PropTypes from 'prop-types';
|
|
import createStack from './createStack';
|
|
/**
|
|
*
|
|
* Demos:
|
|
*
|
|
* - [Stack (Joy UI)](https://mui.com/joy-ui/react-stack/)
|
|
* - [Stack (Material UI)](https://mui.com/material-ui/react-stack/)
|
|
* - [Stack (MUI System)](https://mui.com/system/react-stack/)
|
|
*
|
|
* API:
|
|
*
|
|
* - [Stack API](https://mui.com/system/api/stack/)
|
|
*/
|
|
const Stack = createStack();
|
|
process.env.NODE_ENV !== "production" ? Stack.propTypes /* remove-proptypes */ = {
|
|
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
// │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
|
|
// └─────────────────────────────────────────────────────────────────────┘
|
|
/**
|
|
* The content of the component.
|
|
*/
|
|
children: PropTypes.node,
|
|
/**
|
|
* The component used for the root node.
|
|
* Either a string to use a HTML element or a component.
|
|
*/
|
|
component: PropTypes.elementType,
|
|
/**
|
|
* Defines the `flex-direction` style property.
|
|
* It is applied for all screen sizes.
|
|
* @default 'column'
|
|
*/
|
|
direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),
|
|
/**
|
|
* Add an element between each child.
|
|
*/
|
|
divider: PropTypes.node,
|
|
/**
|
|
* Defines the space between immediate children.
|
|
* @default 0
|
|
*/
|
|
spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),
|
|
/**
|
|
* The system prop, which allows defining system overrides as well as additional CSS styles.
|
|
*/
|
|
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
/**
|
|
* If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.
|
|
*
|
|
* While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),
|
|
* it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.
|
|
*
|
|
* To enable this flag globally, follow the theme's default props configuration.
|
|
* @default false
|
|
*/
|
|
useFlexGap: PropTypes.bool
|
|
} : void 0;
|
|
export default Stack; |