@twreporter/universal-header
Version:
Universal header of TWReporter sites
119 lines (118 loc) • 4.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.transparentTheme = exports.photographyTheme = exports.hamburger = exports["default"] = exports.actionButton = void 0;
var _react = _interopRequireDefault(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _actionButtonItem = _interopRequireDefault(require("./action-button-item"));
var _headerContext = _interopRequireDefault(require("../contexts/header-context"));
var _actionItemTypes = require("../constants/action-item-types");
var _constants = require("../storybook/constants");
var _theme = require("@twreporter/core/lib/constants/theme");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /* eslint-disable react/prop-types */ /* eslint react/display-name:0 */
var _default = exports["default"] = {
title: 'Action Button',
component: _actionButtonItem["default"],
argTypes: {
theme: _constants.THEME_STORYBOOK_ARG_TYPE,
direction: _actionItemTypes.DIRECTION_STORYBOOK_ARG_TYPE,
textType: _actionItemTypes.TEXT_STORYBOOK_ARG_TYPE,
buttonWidth: _actionItemTypes.BUTTON_WIDTH_STORYBOOK_ARG_TYPE,
buttonSize: _actionItemTypes.BUTTON_SIZE_STORYBOOK_ARG_TYPE
}
};
var Container = /*#__PURE__*/_styledComponents["default"].div.withConfig({
displayName: "action-button-itemstories__Container",
componentId: "sc-1bpjnxr-0"
})(["max-width:500px;width:100%;"]);
var defaultActions = [{
key: 'newsLetter'
}, {
key: 'support'
}];
var actionButton = exports.actionButton = {
render: function render(props) {
var theme = props.theme;
var context = {
theme: theme,
isLinkExternal: true
};
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
value: context
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButtonItem["default"], props)));
},
args: {
actions: defaultActions
}
};
var photographyTheme = exports.photographyTheme = {
render: function render(props) {
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
value: {
theme: _theme.THEME.photography,
isLinkExternal: true
}
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButtonItem["default"], props)));
},
args: {
actions: defaultActions
},
parameters: {
backgrounds: {
"default": _theme.THEME.photography
},
controls: {
exclude: ['actions', 'callback', 'theme']
}
}
};
var transparentTheme = exports.transparentTheme = {
render: function render(props) {
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
value: {
theme: _theme.THEME.transparent,
isLinkExternal: true
}
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButtonItem["default"], props)));
},
args: {
actions: defaultActions
},
parameters: {
backgrounds: {
"default": _theme.THEME.transparent
},
controls: {
exclude: ['actions', 'callback', 'theme']
}
}
};
var hamburger = exports.hamburger = {
render: function render(props) {
return /*#__PURE__*/_react["default"].createElement(_headerContext["default"].Provider, {
value: {
theme: props.theme,
isLinkExternal: true
}
}, /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_actionButtonItem["default"], _extends({
isForHambuger: true
}, props))));
},
args: {
actions: defaultActions,
direction: _actionItemTypes.DIRECTION_TYPE.column,
textType: _actionItemTypes.TEXT_TYPE.full,
buttonWidth: _actionItemTypes.BUTTON_WIDTH_TYPE.stretch,
buttonSize: _actionItemTypes.BUTTON_SIZE_TYPE.L
},
parameters: {
backgrounds: {
"default": 'white'
},
controls: {
exclude: ['actions', 'callback', 'direction', 'textType', 'buttonWidth', 'buttonSize']
}
}
};