Skip to content

Commit c69ef99

Browse files
committed
feat: removing inline-style-prefixer
1 parent 0e3a8a0 commit c69ef99

File tree

6 files changed

+393
-93
lines changed

6 files changed

+393
-93
lines changed

index.d.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import * as Prefixer from 'inline-style-prefixer';
21
import * as React from 'react';
32

43
export type Size = string | number;
@@ -19,7 +18,6 @@ export interface Props {
1918
onChange?: (newSize: number) => void;
2019
onResizerClick?: (event: MouseEvent) => void;
2120
onResizerDoubleClick?: (event: MouseEvent) => void;
22-
prefixer?: Prefixer;
2321
style?: React.CSSProperties;
2422
resizerStyle?: React.CSSProperties;
2523
paneStyle?: React.CSSProperties;

rollup.config.js

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,7 @@ export default {
1616
format: 'esm',
1717
},
1818
],
19-
external: [
20-
'react',
21-
'react-dom',
22-
'prop-types',
23-
'inline-style-prefixer',
24-
'react-style-proptype',
25-
],
19+
external: [...Object.keys(pkg.dependencies)],
2620
plugins: [
2721
babel({
2822
exclude: 'node_modules/**',

src/Pane.js

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,12 @@
11
import React from 'react';
22
import PropTypes from 'prop-types';
3-
import Prefixer from 'inline-style-prefixer';
43
import stylePropType from 'react-style-proptype';
54

6-
const DEFAULT_USER_AGENT =
7-
'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Safari/537.2';
8-
const USER_AGENT =
9-
typeof navigator !== 'undefined' ? navigator.userAgent : DEFAULT_USER_AGENT;
10-
115
class Pane extends React.PureComponent {
126
render() {
137
const {
148
children,
159
className,
16-
prefixer,
1710
split,
1811
style: styleProps,
1912
size,
@@ -39,11 +32,7 @@ class Pane extends React.PureComponent {
3932
}
4033

4134
return (
42-
<div
43-
ref={eleRef}
44-
className={classes.join(' ')}
45-
style={prefixer.prefix(style)}
46-
>
35+
<div ref={eleRef} className={classes.join(' ')} style={style}>
4736
{children}
4837
</div>
4938
);
@@ -53,15 +42,12 @@ class Pane extends React.PureComponent {
5342
Pane.propTypes = {
5443
className: PropTypes.string.isRequired,
5544
children: PropTypes.node.isRequired,
56-
prefixer: PropTypes.instanceOf(Prefixer).isRequired,
5745
size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
5846
split: PropTypes.oneOf(['vertical', 'horizontal']),
5947
style: stylePropType,
6048
eleRef: PropTypes.func,
6149
};
6250

63-
Pane.defaultProps = {
64-
prefixer: new Prefixer({ userAgent: USER_AGENT }),
65-
};
51+
Pane.defaultProps = {};
6652

6753
export default Pane;

src/Resizer.js

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
import React from 'react';
22
import PropTypes from 'prop-types';
3-
import Prefixer from 'inline-style-prefixer';
43
import stylePropType from 'react-style-proptype';
54

6-
const DEFAULT_USER_AGENT =
7-
'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Safari/537.2';
8-
const USER_AGENT =
9-
typeof navigator !== 'undefined' ? navigator.userAgent : DEFAULT_USER_AGENT;
105
export const RESIZER_DEFAULT_CLASSNAME = 'Resizer';
116

127
class Resizer extends React.Component {
@@ -18,7 +13,6 @@ class Resizer extends React.Component {
1813
onMouseDown,
1914
onTouchEnd,
2015
onTouchStart,
21-
prefixer,
2216
resizerClassName,
2317
split,
2418
style,
@@ -27,8 +21,9 @@ class Resizer extends React.Component {
2721

2822
return (
2923
<span
24+
role="presentation"
3025
className={classes.join(' ')}
31-
style={prefixer.prefix(style) || {}}
26+
style={style}
3227
onMouseDown={event => onMouseDown(event)}
3328
onTouchStart={event => {
3429
event.preventDefault();
@@ -62,14 +57,12 @@ Resizer.propTypes = {
6257
onMouseDown: PropTypes.func.isRequired,
6358
onTouchStart: PropTypes.func.isRequired,
6459
onTouchEnd: PropTypes.func.isRequired,
65-
prefixer: PropTypes.instanceOf(Prefixer).isRequired,
6660
split: PropTypes.oneOf(['vertical', 'horizontal']),
6761
style: stylePropType,
6862
resizerClassName: PropTypes.string.isRequired,
6963
};
7064

7165
Resizer.defaultProps = {
72-
prefixer: new Prefixer({ userAgent: USER_AGENT }),
7366
resizerClassName: RESIZER_DEFAULT_CLASSNAME,
7467
};
7568

src/SplitPane.js

Lines changed: 17 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,11 @@
11
import React from 'react';
22
import PropTypes from 'prop-types';
3-
import Prefixer from 'inline-style-prefixer';
43
import stylePropType from 'react-style-proptype';
54
import { polyfill } from 'react-lifecycles-compat';
65

76
import Pane from './Pane';
87
import Resizer, { RESIZER_DEFAULT_CLASSNAME } from './Resizer';
98

10-
const DEFAULT_USER_AGENT =
11-
'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Safari/537.2';
12-
const USER_AGENT =
13-
typeof navigator !== 'undefined' ? navigator.userAgent : DEFAULT_USER_AGENT;
14-
159
function unFocus(document, window) {
1610
if (document.selection) {
1711
document.selection.empty();
@@ -253,7 +247,6 @@ class SplitPane extends React.Component {
253247
paneStyle,
254248
pane1Style: pane1StyleProps,
255249
pane2Style: pane2StyleProps,
256-
prefixer,
257250
resizerClassName,
258251
resizerStyle,
259252
split,
@@ -269,22 +262,19 @@ class SplitPane extends React.Component {
269262

270263
const notNullChildren = removeNullChildren(children);
271264

272-
const style = Object.assign(
273-
{},
274-
{
275-
display: 'flex',
276-
flex: 1,
277-
height: '100%',
278-
position: 'absolute',
279-
outline: 'none',
280-
overflow: 'hidden',
281-
MozUserSelect: 'text',
282-
WebkitUserSelect: 'text',
283-
msUserSelect: 'text',
284-
userSelect: 'text',
285-
},
286-
styleProps || {}
287-
);
265+
const style = {
266+
display: 'flex',
267+
flex: 1,
268+
height: '100%',
269+
position: 'absolute',
270+
outline: 'none',
271+
overflow: 'hidden',
272+
MozUserSelect: 'text',
273+
WebkitUserSelect: 'text',
274+
msUserSelect: 'text',
275+
userSelect: 'text',
276+
...styleProps,
277+
};
288278

289279
if (split === 'vertical') {
290280
Object.assign(style, {
@@ -303,12 +293,9 @@ class SplitPane extends React.Component {
303293
}
304294

305295
const classes = ['SplitPane', className, split, disabledClass];
306-
const pane1Style = prefixer.prefix(
307-
Object.assign({}, paneStyle || {}, pane1StyleProps || {})
308-
);
309-
const pane2Style = prefixer.prefix(
310-
Object.assign({}, paneStyle || {}, pane2StyleProps || {})
311-
);
296+
297+
const pane1Style = { ...paneStyle, ...pane1StyleProps };
298+
const pane2Style = { ...paneStyle, ...pane2StyleProps };
312299

313300
const pane1Classes = ['Pane1', paneClassName, pane1ClassName].join(' ');
314301
const pane2Classes = ['Pane2', paneClassName, pane2ClassName].join(' ');
@@ -319,7 +306,7 @@ class SplitPane extends React.Component {
319306
ref={node => {
320307
this.splitPane = node;
321308
}}
322-
style={prefixer.prefix(style)}
309+
style={style}
323310
>
324311
<Pane
325312
className={pane1Classes}
@@ -378,7 +365,6 @@ SplitPane.propTypes = {
378365
onChange: PropTypes.func,
379366
onResizerClick: PropTypes.func,
380367
onResizerDoubleClick: PropTypes.func,
381-
prefixer: PropTypes.instanceOf(Prefixer).isRequired,
382368
style: stylePropType,
383369
resizerStyle: stylePropType,
384370
paneClassName: PropTypes.string,
@@ -394,7 +380,6 @@ SplitPane.propTypes = {
394380
SplitPane.defaultProps = {
395381
allowResize: true,
396382
minSize: 50,
397-
prefixer: new Prefixer({ userAgent: USER_AGENT }),
398383
primary: 'first',
399384
split: 'vertical',
400385
paneClassName: '',

0 commit comments

Comments
 (0)