pouncejs
Version:
A collection of UI components from Panther labs
24 lines (22 loc) • 925 B
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
import React from 'react';
import Box from '../Box';
import { HeadingLevelContext } from '../Heading';
import { DEFAULT_HEADING_LEVEL } from '../Heading/Heading';
/**
* Increases the heading level of all `Heading` components inside it by 1.
*/
export var Section = function Section(_ref) {
var children = _ref.children,
_ref$as = _ref.as,
as = _ref$as === void 0 ? 'section' : _ref$as,
rest = _objectWithoutPropertiesLoose(_ref, ["children", "as"]);
var level = React.useContext(HeadingLevelContext);
return /*#__PURE__*/React.createElement(HeadingLevelContext.Provider, {
value: level ? level + 1 : DEFAULT_HEADING_LEVEL
}, /*#__PURE__*/React.createElement(Box, _extends({}, rest, {
as: as
}), children));
};
export default Section;