11import React , { PropTypes } from 'react' ;
2- import styles from './node-renderer-default.scss' ;
2+ import { getIEVersion } from './utils/browser-utils' ;
3+ import baseStyles from './node-renderer-default.scss' ;
4+
5+ let styles = baseStyles ;
6+ // Add extra classes in browsers that don't support flex
7+ if ( getIEVersion < 10 ) {
8+ styles = {
9+ ...baseStyles ,
10+ row : `${ styles . row } ${ styles . row_NoFlex } ` ,
11+ rowContents : `${ styles . rowContents } ${ styles . rowContents_NoFlex } ` ,
12+ rowLabel : `${ styles . rowLabel } ${ styles . rowLabel_NoFlex } ` ,
13+ rowToolbar : `${ styles . rowToolbar } ${ styles . rowToolbar_NoFlex } ` ,
14+ } ;
15+ }
316
417const NodeRendererDefault = ( {
518 scaffoldBlockPxWidth,
@@ -23,9 +36,7 @@ const NodeRendererDefault = ({
2336 { connectDragPreview (
2437 < div className = { styles . row + ( isDragging ? ` ${ styles . rowOriginWhileDragging } ` : '' ) } >
2538 { connectDragSource ( ( // Sets this handle as the element to start a drag-and-drop
26- < div
27- className = { `${ styles . rowItem } ${ styles . moveHandle } ` }
28- />
39+ < div className = { styles . moveHandle } />
2940 ) , { dropEffect : 'copy' } ) }
3041
3142 < div className = { styles . rowContents } >
@@ -47,7 +58,7 @@ const NodeRendererDefault = ({
4758
4859 < div className = { styles . rowToolbar } >
4960 { buttons && buttons . map ( ( btn , index ) => (
50- < div key = { index } className = { styles . rowItem } >
61+ < div key = { index } className = { styles . toolbarButton } >
5162 { btn }
5263 </ div >
5364 ) ) }
@@ -65,7 +76,7 @@ NodeRendererDefault.propTypes = {
6576
6677 scaffoldBlockPxWidth : PropTypes . number . isRequired ,
6778 toggleChildrenVisibility : PropTypes . func ,
68- buttons : PropTypes . object . isRequired ,
79+ buttons : PropTypes . arrayOf ( PropTypes . node ) ,
6980
7081 // Drag and drop API functions
7182 connectDragPreview : PropTypes . func . isRequired ,
0 commit comments