Skip to content

Commit 0c99ad4

Browse files
Merge branch 'master' of github.com:salesforce/design-system-react
2 parents 4fafd8f + ad674c8 commit 0c99ad4

File tree

9 files changed

+72
-14
lines changed

9 files changed

+72
-14
lines changed

components/combobox/__tests__/__snapshots__/combobox.snapshot-test.jsx.snap

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,13 @@ exports[`Base Custom Menu Item Open DOM Snapshot 1`] = `
6464
<ul
6565
className="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid"
6666
role="presentation"
67+
style={
68+
Object {
69+
"maxWidth": undefined,
70+
"position": undefined,
71+
"width": undefined,
72+
}
73+
}
6774
>
6875
<li
6976
className="slds-listbox__item"
@@ -490,6 +497,13 @@ exports[`Base Open Custom Class Name DOM Snapshot 1`] = `
490497
<ul
491498
className="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid this-is-the-menu"
492499
role="presentation"
500+
style={
501+
Object {
502+
"maxWidth": undefined,
503+
"position": undefined,
504+
"width": undefined,
505+
}
506+
}
493507
>
494508
<li
495509
className="slds-dropdown__header slds-truncate"
@@ -690,6 +704,13 @@ exports[`Base Open DOM Snapshot 1`] = `
690704
<ul
691705
className="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid"
692706
role="presentation"
707+
style={
708+
Object {
709+
"maxWidth": undefined,
710+
"position": undefined,
711+
"width": undefined,
712+
}
713+
}
693714
>
694715
<li
695716
className="slds-listbox__item"
@@ -881,6 +902,7 @@ exports[`Base Open Menu Inherit Width Of Menu DOM Snapshot 1`] = `
881902
style={
882903
Object {
883904
"maxWidth": "500px",
905+
"position": undefined,
884906
"width": "auto",
885907
}
886908
}
@@ -1013,6 +1035,13 @@ exports[`Base Open Menu Sub Header DOM Snapshot 1`] = `
10131035
<ul
10141036
className="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid"
10151037
role="presentation"
1038+
style={
1039+
Object {
1040+
"maxWidth": undefined,
1041+
"position": undefined,
1042+
"width": undefined,
1043+
}
1044+
}
10161045
>
10171046
<li
10181047
className="slds-dropdown__header slds-truncate"
@@ -2144,6 +2173,13 @@ exports[`Readonly Single Selection Custom Menu Item Open DOM Snapshot 1`] = `
21442173
<ul
21452174
className="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid slds-dropdown_length-with-icon-5"
21462175
role="presentation"
2176+
style={
2177+
Object {
2178+
"maxWidth": undefined,
2179+
"position": undefined,
2180+
"width": undefined,
2181+
}
2182+
}
21472183
>
21482184
<li
21492185
className="slds-listbox__item"
@@ -3011,6 +3047,13 @@ exports[`Readonly Single Selection Selected Open DOM Snapshot 1`] = `
30113047
<ul
30123048
className="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid slds-dropdown_length-with-icon-5"
30133049
role="presentation"
3050+
style={
3051+
Object {
3052+
"maxWidth": undefined,
3053+
"position": undefined,
3054+
"width": undefined,
3055+
}
3056+
}
30143057
>
30153058
<li
30163059
className="slds-listbox__item"

components/combobox/combobox.jsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1040,6 +1040,7 @@ class Combobox extends React.Component {
10401040
}
10411041
labels={labels}
10421042
menuItem={this.props.menuItem}
1043+
menuPosition={this.props.menuPosition}
10431044
maxWidth={this.props.menuMaxWidth}
10441045
options={this.props.options}
10451046
onSelect={this.handleSelect}

components/combobox/private/menu.jsx

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -107,13 +107,13 @@ const propTypes = {
107107
const defaultProps = {};
108108

109109
const Menu = (props) => {
110-
const style =
111-
props.inheritWidthOf === 'menu'
112-
? {
113-
width: 'auto',
114-
maxWidth: props.maxWidth ? props.maxWidth : 'inherit',
115-
}
116-
: undefined;
110+
let maxWidth = props.inheritWidthOf === 'menu' ? 'inherit' : undefined;
111+
maxWidth =
112+
props.inheritWidthOf === 'menu' && props.maxWidth
113+
? props.maxWidth
114+
: maxWidth;
115+
116+
// .slds-dropdown sets the menu to absolute positioning, since it has a relative parent. Absolute positioning removes clientHeight and clientWidth which Popper.js needs to absolute position the menu's wrapping div. Absolute positioning an already absolute positioned element doesn't work. Setting the menu's position to relative allows PopperJS to work it's magic.
117117
const menuOptions = props.options.map((optionData, index) => {
118118
const active =
119119
index === props.activeOptionIndex &&
@@ -259,7 +259,11 @@ const Menu = (props) => {
259259
props.classNameMenu
260260
)}
261261
role="presentation"
262-
style={style}
262+
style={{
263+
width: props.inheritWidthOf === 'menu' ? 'auto' : undefined,
264+
maxWidth,
265+
position: props.menuPosition !== 'relative' ? 'relative' : undefined,
266+
}}
263267
>
264268
{menuOptions.length ? (
265269
menuOptions
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
// Alias
2-
import Radio from '../forms/radio/index';
2+
import Radio from '../radio/index';
33

44
export default Radio;

components/radio-group/radio.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
// Alias
2-
import Radio from '../forms/radio/index';
2+
import Radio from '../radio/index';
33

44
export default Radio;
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// This object is imported into the documentation site. An example for the documentation site should be part of the pull request for the component. The object key is the kabob case of the "URL folder". In the case of `http://localhost:8080/components/app-launcher/`, `app-launcher` is the `key`. The folder name is created by `components.component` value in `package.json`. The following uses webpack's raw-loader plugin to get "text files" that will be eval()'d by CodeMirror within the documentation site on page load.
2+
3+
/* eslint-env node */
4+
/* eslint-disable global-require */
5+
6+
const siteStories = [
7+
require('raw-loader!@salesforce/design-system-react/components/radio/__examples__/default.jsx'),
8+
require('raw-loader!@salesforce/design-system-react/components/radio/__examples__/disabled.jsx'),
9+
];
10+
11+
module.exports = siteStories;

components/radio/__examples__/disabled.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ const Example = createReactClass({
66
displayName: 'RadioExample',
77

88
render () {
9-
return <Radio id="radioId1" label="Radio Label" disabled />;
9+
return <Radio id="radioId2" label="Radio Label" disabled />;
1010
},
1111
});
1212

components/site-stories.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ const documentationSiteLiveExamples = {
4242
'progress-ring': require('@salesforce/design-system-react/components/progress-ring/__docs__/site-stories.js'),
4343
'radio-button-group': require('@salesforce/design-system-react/components/radio-button-group/__docs__/site-stories.js'),
4444
'radio-group': require('@salesforce/design-system-react/components/radio-group/__docs__/site-stories.js'),
45-
'forms-radio': require('@salesforce/design-system-react/components/radio-group/__docs__/site-stories.js'),
45+
radio: require('@salesforce/design-system-react/components/radio/__docs__/site-stories.js'),
4646
tabs: require('@salesforce/design-system-react/components/tabs/__docs__/site-stories.js'),
4747
slider: require('@salesforce/design-system-react/components/slider/__docs__/site-stories.js'),
4848
'split-view': require('@salesforce/design-system-react/components/split-view/__docs__/site-stories.js'),

components/spinner/__docs__/site-stories.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
/* eslint-disable global-require */
55

66
const siteStories = [
7-
require('raw-loader!@salesforce/design-system-react/components/forms/radio/__examples__/default.jsx'),
8-
require('raw-loader!@salesforce/design-system-react/components/forms/radio/__examples__/disabled.jsx'),
7+
require('raw-loader!@salesforce/design-system-react/components/spinner/__examples__/default.jsx'),
98
];
109

1110
module.exports = siteStories;

0 commit comments

Comments
 (0)