From f841040d2554304a464bbe7fc1103d29e419be6b Mon Sep 17 00:00:00 2001 From: Kristian Barrese Date: Tue, 7 Apr 2020 18:23:07 +0200 Subject: [PATCH 1/2] Allow dropdown custom className and style --- src/Dropdown.js | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/src/Dropdown.js b/src/Dropdown.js index 40b2057..5c7c305 100644 --- a/src/Dropdown.js +++ b/src/Dropdown.js @@ -1,26 +1,38 @@ /* @flow */ -import React from 'react'; -import type {Node as ReactNode} from 'react'; -import PropTypes from 'prop-types'; +import React from "react"; +import type { Node as ReactNode } from "react"; +import PropTypes from "prop-types"; type Props = { - children?: ReactNode; + children?: ReactNode, + className?: string, + style?: Object, }; export default class Dropdown extends React.Component { static propTypes = { - children: PropTypes.node + children: PropTypes.node, + className: PropTypes.string, + style: PropTypes.object, }; render() { + var style = _objectSpread( + {}, + { + background: "white", + border: "1px solid rgba(0,0,0,.2)", + boxShadow: "0 2px 4px rgba(0,0,0,0.2)", + padding: "6px 0", + style: style, + }, + {}, + this.props.style || {} + ); + return ( -
+
{this.props.children}
); From 0a07459cd3bf167307b3c2fc5c84f100e63e6138 Mon Sep 17 00:00:00 2001 From: Kristian Barrese Date: Tue, 7 Apr 2020 19:16:52 +0200 Subject: [PATCH 2/2] Fix dropdown spread --- src/Dropdown.js | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/Dropdown.js b/src/Dropdown.js index 5c7c305..0fd7999 100644 --- a/src/Dropdown.js +++ b/src/Dropdown.js @@ -18,18 +18,13 @@ export default class Dropdown extends React.Component { }; render() { - var style = _objectSpread( - {}, - { - background: "white", - border: "1px solid rgba(0,0,0,.2)", - boxShadow: "0 2px 4px rgba(0,0,0,0.2)", - padding: "6px 0", - style: style, - }, - {}, - this.props.style || {} - ); + var style = { + background: "white", + border: "1px solid rgba(0,0,0,.2)", + boxShadow: "0 2px 4px rgba(0,0,0,0.2)", + padding: "6px 0", + ...(this.props.style || {}), + }; return (