UNPKG

suomifi-ui-components

Version:
94 lines (88 loc) 4.27 kB
'use strict'; var tslib = require('tslib'); var React = require('react'); var styled = require('styled-components'); var classnames = require('classnames'); require('../../../reset/HtmlA/HtmlA.js'); require('../../../reset/HtmlButton/HtmlButton.js'); var HtmlDiv = require('../../../reset/HtmlDiv/HtmlDiv.js'); require('../../../reset/HtmlFieldSet/HtmlFieldSet.js'); require('../../../reset/HtmlH/HtmlH.js'); require('../../../reset/HtmlInput/HtmlInput.js'); require('../../../reset/HtmlLabel/HtmlLabel.js'); require('../../../reset/HtmlLegend/HtmlLegend.js'); require('../../../reset/HtmlLi/HtmlLi.js'); require('../../../reset/HtmlNav/HtmlNav.js'); require('../../../reset/HtmlOl/HtmlOl.js'); require('../../../reset/HtmlSpan/HtmlSpan.js'); require('../../../reset/HtmlTextarea/HtmlTextarea.js'); require('../../../reset/HtmlUl/HtmlUl.js'); require('../../../reset/HtmlTable/HtmlTable.js'); require('../../../reset/HtmlTable/HtmlTableCaption.js'); require('../../../reset/HtmlTable/HtmlTableHeader.js'); require('../../../reset/HtmlTable/HtmlTableRow.js'); require('../../../reset/HtmlTable/HtmlTableBody.js'); require('../../../reset/HtmlTable/HtmlTableHeaderCell.js'); require('../../../reset/HtmlTable/HtmlTableCell.js'); var aria = require('../../../utils/aria/aria.js'); var SuomifiThemeProvider = require('../../theme/SuomifiThemeProvider/SuomifiThemeProvider.js'); require('../../theme/SuomifiTheme/SuomifiTheme.js'); require('../../theme/SpacingProvider/SpacingProvider.js'); var Expander = require('../Expander/Expander.js'); var ExpanderContent_baseStyles = require('./ExpanderContent.baseStyles.js'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var React__default = /*#__PURE__*/_interopDefault(React); var classnames__default = /*#__PURE__*/_interopDefault(classnames); var baseClassName = 'fi-expander'; var contentBaseClassName = "".concat(baseClassName, "_content"); var contentOpenClassName = "".concat(contentBaseClassName, "--open"); var noPaddingClassName = "".concat(contentBaseClassName, "--no-padding"); var BaseExpanderContent = function (_super) { tslib.__extends(BaseExpanderContent, _super); function BaseExpanderContent() { return _super !== null && _super.apply(this, arguments) || this; } BaseExpanderContent.prototype.render = function () { var _a; var _b = this.props, children = _b.children; _b.title; var className = _b.className; _b.theme; var noPadding = _b.noPadding, consumer = _b.consumer, ariaLabelledBy = _b["aria-labelledby"], passProps = tslib.__rest(_b, ["children", "title", "className", "theme", "noPadding", "consumer", 'aria-labelledby']); return /*#__PURE__*/React__default.default.createElement(HtmlDiv.HtmlDiv, tslib.__assign({ role: "region" }, passProps, { id: consumer.contentId }, aria.getConditionalAriaProp('aria-labelledby', [consumer.titleId, ariaLabelledBy]), { className: classnames__default.default(className, contentBaseClassName, (_a = {}, _a[contentOpenClassName] = !!consumer.open, _a[noPaddingClassName] = !!noPadding, _a)), "aria-hidden": !consumer.open, key: String(consumer.open) }), children); }; return BaseExpanderContent; }(React.Component); var StyledExpanderContent = styled.styled(BaseExpanderContent).withConfig({ componentId: "sc-1ln4vdb-0" })(templateObject_1 || (templateObject_1 = tslib.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (_a) { var theme = _a.theme; return ExpanderContent_baseStyles.baseStyles(theme); }); var ExpanderContent = function ExpanderContent(props) { return /*#__PURE__*/React__default.default.createElement(SuomifiThemeProvider.SuomifiThemeConsumer, null, function (_a) { var suomifiTheme = _a.suomifiTheme; return /*#__PURE__*/React__default.default.createElement(Expander.ExpanderConsumer, null, function (consumer) { return /*#__PURE__*/React__default.default.createElement(StyledExpanderContent, tslib.__assign({ theme: suomifiTheme, consumer: consumer }, props)); }); }); }; ExpanderContent.displayName = 'ExpanderContent'; var templateObject_1; exports.ExpanderContent = ExpanderContent; //# sourceMappingURL=ExpanderContent.js.map