Skip to content

Commit 08eb3ab

Browse files
committed
Merge branch 'master' of git://github.com/necolas/react-native-web into feature/tv-support
2 parents 9e00878 + 5287044 commit 08eb3ab

File tree

18 files changed

+2487
-962
lines changed

18 files changed

+2487
-962
lines changed

.flowconfig

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
[ignore]
55
<PROJECT_ROOT>/.*/__tests__/.*
66
<PROJECT_ROOT>/packages/.*/dist/.*
7-
<PROJECT_ROOT>/packages/examples/.*
8-
<PROJECT_ROOT>/packages/website/.*
7+
<PROJECT_ROOT>/packages/docs/.*
98
.*/node_modules/babel-plugin-transform-react-remove-prop-types/*
109

1110
[include]

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Examples of using React Native for Web with other web tools:
5959
(and [example recipes](https://gist.github.com/necolas/f9034091723f1b279be86c7429eb0c96))
6060
* [Phenomic](https://github.com/phenomic/phenomic/tree/master/examples/react-native-web-app)
6161
* [Razzle](https://github.com/jaredpalmer/razzle/tree/master/examples/with-react-native-web)
62-
* [Storybook](https://github.com/necolas/react-native-web/tree/master/packages/website/storybook/.storybook)
62+
* [Storybook](https://github.com/necolas/react-native-web/tree/master/packages/docs/)
6363
* [Styleguidist](https://github.com/styleguidist/react-styleguidist/tree/master/examples/react-native)
6464

6565
## Examples

package.json

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"private": true,
3-
"version": "0.11.7",
3+
"version": "0.12.2",
44
"name": "monorepo",
55
"scripts": {
66
"clean": "del-cli ./packages/*/dist",
@@ -23,18 +23,18 @@
2323
"test": "yarn flow && yarn lint:check && yarn jest --runInBand"
2424
},
2525
"devDependencies": {
26-
"@babel/cli": "^7.6.3",
27-
"@babel/core": "^7.6.3",
28-
"@babel/plugin-proposal-class-properties": "^7.5.5",
29-
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.4.4",
30-
"@babel/plugin-proposal-object-rest-spread": "^7.6.2",
31-
"@babel/plugin-transform-runtime": "^7.6.2",
32-
"@babel/preset-env": "^7.6.3",
33-
"@babel/preset-flow": "^7.0.0",
34-
"@babel/preset-react": "^7.6.3",
26+
"@babel/cli": "^7.8.4",
27+
"@babel/core": "^7.8.4",
28+
"@babel/plugin-proposal-class-properties": "^7.8.3",
29+
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3",
30+
"@babel/plugin-proposal-object-rest-spread": "^7.8.3",
31+
"@babel/plugin-transform-runtime": "^7.8.3",
32+
"@babel/preset-env": "^7.8.4",
33+
"@babel/preset-flow": "^7.8.3",
34+
"@babel/preset-react": "^7.8.3",
3535
"@testing-library/react": "^9.3.0",
3636
"babel-eslint": "^10.0.3",
37-
"babel-jest": "^24.9.0",
37+
"babel-jest": "^25.1.0",
3838
"babel-loader": "^8.0.6",
3939
"babel-plugin-add-module-exports": "^1.0.2",
4040
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
@@ -52,8 +52,8 @@
5252
"glob": "^7.1.4",
5353
"husky": "^3.0.8",
5454
"inline-style-prefixer": "^5.1.0",
55-
"jest": "^24.9.0",
56-
"jest-canvas-mock": "^2.1.1",
55+
"jest": "^25.1.0",
56+
"jest-canvas-mock": "^2.2.0",
5757
"lint-staged": "^9.4.2",
5858
"metro-react-native-babel-preset": "^0.56.0",
5959
"npm-run-all": "^4.1.3",

packages/babel-plugin-react-native-web/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"registry": "https://registry.npmjs.org/"
44
},
55
"name": "babel-plugin-react-native-web",
6-
"version": "0.11.7",
6+
"version": "0.12.2",
77
"description": "Babel plugin for React Native for Web",
88
"main": "index.js",
99
"devDependencies": {

packages/benchmarks/package.json

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"private": true,
33
"name": "benchmarks",
4-
"version": "0.11.7",
4+
"version": "0.12.2",
55
"scripts": {
66
"build": "mkdir -p dist && cp -f index.html dist/index.html && ./node_modules/.bin/webpack-cli --config ./webpack.config.js",
77
"release": "NODE_ENV=production yarn build && git checkout gh-pages && rm -rf ../../benchmarks && mv dist ../../benchmarks && git add -A && git commit -m \"Benchmarks deploy\" && git push origin gh-pages && git checkout -"
@@ -10,23 +10,23 @@
1010
"aphrodite": "^2.4.0",
1111
"classnames": "^2.2.6",
1212
"d3-scale-chromatic": "^1.5.0",
13-
"emotion": "^10.0.23",
14-
"fela": "^10.8.2",
15-
"react-fela": "^10.8.2",
16-
"react-jss": "^10.0.0",
17-
"react-native-web": "0.11.7",
18-
"reactxp": "^2.0.0-rc.1",
19-
"styled-components": "^4.4.1",
13+
"emotion": "^10.0.27",
14+
"fela": "^11.0.2",
15+
"react-fela": "^11.0.2",
16+
"react-jss": "^10.0.4",
17+
"react-native-web": "0.12.2",
18+
"reactxp": "^2.0.0",
19+
"styled-components": "^5.0.0",
2020
"styled-jsx": "^3.2.4",
2121
"styletron-engine-atomic": "^1.4.4",
2222
"styletron-react": "^5.2.6"
2323
},
2424
"devDependencies": {
25-
"babel-plugin-react-native-web": "0.11.7",
26-
"css-loader": "^3.2.0",
27-
"style-loader": "^1.0.0",
28-
"url-loader": "^2.2.0",
29-
"webpack": "^4.41.2",
25+
"babel-plugin-react-native-web": "0.12.2",
26+
"css-loader": "^3.4.2",
27+
"style-loader": "^1.1.3",
28+
"url-loader": "^3.0.0",
29+
"webpack": "^4.41.5",
3030
"webpack-bundle-analyzer": "^3.6.0",
3131
"webpack-cli": "^3.3.10"
3232
}

packages/benchmarks/src/app/Icons.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React, { Fragment } from 'react';
2-
import { unstable_createElement as createElement, StyleSheet, Text } from 'react-native';
2+
import { unstable_createElement as createElement, StyleSheet } from 'react-native';
33

44
const styles = StyleSheet.create({
55
root: {
@@ -28,9 +28,6 @@ const createIcon = children => {
2828
},
2929
children
3030
);
31-
Icon.propTypes = {
32-
style: Text.propTypes.style
33-
};
3431
return Icon;
3532
};
3633

packages/docs/package.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
{
22
"private": true,
33
"name": "docs",
4-
"version": "0.11.7",
4+
"version": "0.12.2",
55
"scripts": {
66
"build": "build-storybook --docs -o ./dist -c ./.storybook",
77
"start": "start-storybook --docs -p 9001 -c ./.storybook",
88
"release": "yarn build && git checkout gh-pages && rm -rf ../../docs && mv dist ../../docs && git add -A && git commit -m \"Deploy documentation\" && git push origin gh-pages && git checkout -"
99
},
1010
"dependencies": {
11-
"@storybook/addon-docs": "^5.3.0-beta.31",
12-
"@storybook/addon-options": "^5.3.0-beta.31",
13-
"@storybook/cli": "^5.3.0-beta.31",
14-
"@storybook/react": "^5.3.0-beta.31",
15-
"@storybook/theming": "^5.3.0-beta.31",
16-
"react-native-web": "0.11.7"
11+
"@storybook/addon-docs": "^5.3.9",
12+
"@storybook/addon-options": "^5.3.9",
13+
"@storybook/cli": "^5.3.9",
14+
"@storybook/react": "^5.3.9",
15+
"@storybook/theming": "^5.3.9",
16+
"react-native-web": "0.12.2"
1717
},
1818
"devDependencies": {
19-
"babel-plugin-react-native-web": "0.11.7",
20-
"url-loader": "^2.2.0",
21-
"webpack": "^4.41.2"
19+
"babel-plugin-react-native-web": "0.12.2",
20+
"url-loader": "^3.0.0",
21+
"webpack": "^4.41.5"
2222
}
2323
}

packages/react-native-web/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"registry": "https://registry.npmjs.org/"
44
},
55
"name": "react-native-web",
6-
"version": "0.11.7",
6+
"version": "0.12.2",
77
"description": "React Native for Web",
88
"module": "dist/index.js",
99
"main": "dist/cjs/index.js",

packages/react-native-web/src/exports/Image/__tests__/__snapshots__/index-test.js.snap

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -317,14 +317,14 @@ exports[`components/Image prop "style" removes other unsupported View styles 1`]
317317
>
318318
<div
319319
class="css-view-1dbjc4n r-backgroundColor-1niwhzg r-backgroundPosition-vvn4in r-backgroundRepeat-u6sd8q r-backgroundSize-4gszlv r-bottom-1p0dtai r-height-1pi2tsx r-left-1d2f490 r-position-u8s1d r-right-zchlnj r-top-ipm5af r-width-13qz1uu r-zIndex-1wyyakw"
320-
style="filter: url(#tint-31);"
320+
style="filter: url(#tint-33);"
321321
/>
322322
<svg
323323
style="position: absolute; height: 0px; visibility: hidden; width: 0px;"
324324
>
325325
<defs>
326326
<filter
327-
id="tint-31"
327+
id="tint-33"
328328
>
329329
<feflood
330330
flood-color="blue"
@@ -366,7 +366,7 @@ exports[`components/Image prop "style" supports "tintcolor" property (convert to
366366
>
367367
<div
368368
class="css-view-1dbjc4n r-backgroundColor-1niwhzg r-backgroundPosition-vvn4in r-backgroundRepeat-u6sd8q r-backgroundSize-4gszlv r-bottom-1p0dtai r-height-1pi2tsx r-left-1d2f490 r-position-u8s1d r-right-zchlnj r-top-ipm5af r-width-13qz1uu r-zIndex-1wyyakw"
369-
style="background-image: url(https://google.com/favicon.ico); filter: url(#tint-30);"
369+
style="background-image: url(https://google.com/favicon.ico); filter: url(#tint-32);"
370370
/>
371371
<img
372372
alt=""
@@ -379,7 +379,7 @@ exports[`components/Image prop "style" supports "tintcolor" property (convert to
379379
>
380380
<defs>
381381
<filter
382-
id="tint-30"
382+
id="tint-32"
383383
>
384384
<feflood
385385
flood-color="red"

packages/react-native-web/src/exports/Image/__tests__/index-test.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
/* eslint-env jasmine, jest */
22
/* eslint-disable react/jsx-no-bind */
33

4+
import * as AssetRegistry from '../../../modules/AssetRegistry';
45
import Image from '../';
56
import ImageLoader from '../../../modules/ImageLoader';
67
import ImageUriCache from '../ImageUriCache';
8+
import PixelRatio from '../../PixelRatio';
79
import React from 'react';
810
import { render } from '@testing-library/react';
911

@@ -200,6 +202,23 @@ describe('components/Image', () => {
200202
loadCallback();
201203
expect(container.firstChild).toMatchSnapshot();
202204
});
205+
206+
test('it correctly selects the source scale', () => {
207+
AssetRegistry.getAssetByID = jest.fn(() => ({
208+
httpServerLocation: 'static',
209+
name: 'img',
210+
scales: [1, 2, 3],
211+
type: 'png'
212+
}));
213+
214+
PixelRatio.get = jest.fn(() => 1.0);
215+
let { container } = render(<Image source={1} />);
216+
expect(container.querySelector('img').src).toBe('http://localhost/static/img.png');
217+
218+
PixelRatio.get = jest.fn(() => 2.2);
219+
({ container } = render(<Image source={1} />));
220+
expect(container.querySelector('img').src).toBe('http://localhost/static/[email protected]');
221+
});
203222
});
204223

205224
describe('prop "style"', () => {

0 commit comments

Comments
 (0)