UNPKG

@wix/design-system

Version:

@wix/design-system

216 lines (214 loc) 7.47 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.MarketingPageLayoutContent = void 0; var _react = _interopRequireDefault(require("react")); var _MarketingPageLayoutContentSt = require("./MarketingPageLayoutContent.st.css.js"); var _constants = require("./constants"); var _Divider = require("../Divider"); var _Text = require("../Text"); var _Heading = require("../Heading"); var _Box = require("../Box"); var _context = require("../WixDesignSystemProvider/context"); var _context2 = require("../MarketingPageLayout/context"); var _StringUtils = require("../utils/StringUtils"); var _jsxFileName = "/home/builduser/work/57e038ea7326c1ec/packages/wix-design-system/dist/cjs/MarketingPageLayoutContent/MarketingPageLayoutContent.tsx"; var sizesMap = { overline: { [_constants.size.medium]: _Text.SIZES.small, [_constants.size.large]: _Text.SIZES.medium }, title: { [_constants.size.medium]: _Heading.SIZE.LARGE, [_constants.size.large]: _Heading.SIZE.EXTRA_LARGE }, subtitle: { [_constants.size.medium]: _Heading.SIZE.SMALL, [_constants.size.large]: _Heading.SIZE.MEDIUM }, content: { [_constants.size.medium]: _Text.SIZES.small, [_constants.size.large]: _Text.SIZES.medium } }; /** This component is used in the MarketingPageLayout component. It includes all the content of the page. */ var MarketingPageLayoutContent = _ref => { var dataHook = _ref.dataHook, className = _ref.className, _ref$size = _ref.size, size = _ref$size === void 0 ? 'large' : _ref$size, overline = _ref.overline, title = _ref.title, subtitle = _ref.subtitle, content = _ref.content, actions = _ref.actions; var _React$useContext = _react.default.useContext(_context.WixDesignSystemContext), mobile = _React$useContext.mobile; var _React$useContext2 = _react.default.useContext(_context2.MarketingPageLayoutContext), layout = _React$useContext2.layout; var imageTop = layout === 'imageTop'; var overlineElement = overline && /*#__PURE__*/_react.default.createElement("div", { "data-hook": _constants.dataHooks.overlineContainer, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 50, columnNumber: 5 } }, /*#__PURE__*/_react.default.createElement(_Box.Box, { color: "D20", __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 51, columnNumber: 7 } }, (0, _StringUtils.isString)(overline) ? /*#__PURE__*/_react.default.createElement(_Text.Text, { dataHook: _constants.dataHooks.overline, size: sizesMap.overline[size], skin: "standard", secondary: true, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 53, columnNumber: 11 } }, overline) : overline), /*#__PURE__*/_react.default.createElement("div", { className: _MarketingPageLayoutContentSt.classes.overlineDividerContainer, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 65, columnNumber: 7 } }, /*#__PURE__*/_react.default.createElement(_Divider.Divider, { __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 66, columnNumber: 9 } }))); var titleElement = title && /*#__PURE__*/_react.default.createElement(_Box.Box, { dataHook: _constants.dataHooks.titleContainer, className: _MarketingPageLayoutContentSt.classes.titleContainer, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 72, columnNumber: 5 } }, (0, _StringUtils.isString)(title) ? /*#__PURE__*/_react.default.createElement(_Heading.Heading, { dataHook: _constants.dataHooks.title, size: sizesMap.title[size], className: _MarketingPageLayoutContentSt.classes.title, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 74, columnNumber: 9 } }, title) : title); var subtitleElement = subtitle && /*#__PURE__*/_react.default.createElement(_Box.Box, { dataHook: _constants.dataHooks.subtitleContainer, className: _MarketingPageLayoutContentSt.classes.subtitleContainer, marginTop: imageTop ? undefined : 'SP2', __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 88, columnNumber: 5 } }, (0, _StringUtils.isString)(subtitle) ? /*#__PURE__*/_react.default.createElement(_Heading.Heading, { dataHook: _constants.dataHooks.subtitle, size: sizesMap.subtitle[size], className: _MarketingPageLayoutContentSt.classes.subtitle, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 94, columnNumber: 9 } }, subtitle) : subtitle); var contentElement = content && /*#__PURE__*/_react.default.createElement(_Box.Box, { dataHook: _constants.dataHooks.contentContainer, className: _MarketingPageLayoutContentSt.classes.contentBox, color: "D10", __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 108, columnNumber: 5 } }, (0, _StringUtils.isString)(content) ? /*#__PURE__*/_react.default.createElement(_Text.Text, { dataHook: _constants.dataHooks.content, size: sizesMap.content[size], skin: "standard", className: _MarketingPageLayoutContentSt.classes.content, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 114, columnNumber: 9 } }, content) : content); var actionsElement = actions && /*#__PURE__*/_react.default.createElement(_Box.Box, { dataHook: _constants.dataHooks.actions, marginTop: !imageTop && mobile ? 'SP4' : undefined, className: _MarketingPageLayoutContentSt.classes.actionsContainer, children: actions, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 129, columnNumber: 5 } }); var rootClassName = (0, _MarketingPageLayoutContentSt.st)(_MarketingPageLayoutContentSt.classes.root, { layout, size, mobile }, className); if (imageTop) { return /*#__PURE__*/_react.default.createElement("div", { "data-hook": dataHook, className: rootClassName, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 141, columnNumber: 7 } }, /*#__PURE__*/_react.default.createElement("div", { className: _MarketingPageLayoutContentSt.classes.textColumn, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 142, columnNumber: 9 } }, overlineElement, titleElement, subtitleElement, actionsElement), /*#__PURE__*/_react.default.createElement("div", { className: _MarketingPageLayoutContentSt.classes.contentColumn, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 149, columnNumber: 9 } }, contentElement)); } return /*#__PURE__*/_react.default.createElement("div", { "data-hook": dataHook, className: rootClassName, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 155, columnNumber: 5 } }, overlineElement, titleElement, subtitleElement, contentElement, actionsElement); }; exports.MarketingPageLayoutContent = MarketingPageLayoutContent; MarketingPageLayoutContent.displayName = 'MarketingPageLayoutContent'; //# sourceMappingURL=MarketingPageLayoutContent.js.map