mirror of
https://github.com/pavlobu/deskreen.git
synced 2025-05-29 13:50:08 -07:00
react-flexbox-grid-added-tests-are-failing
This commit is contained in:
parent
5f3eece342
commit
86a108c1ea
@ -5,35 +5,28 @@
|
|||||||
@import '~@fortawesome/fontawesome-free/css/all.css';
|
@import '~@fortawesome/fontawesome-free/css/all.css';
|
||||||
@import '~normalize.css/normalize.css';
|
@import '~normalize.css/normalize.css';
|
||||||
@import '~@blueprintjs/core/lib/css/blueprint.css';
|
@import '~@blueprintjs/core/lib/css/blueprint.css';
|
||||||
|
@import '~react-flexbox-grid/dist/react-flexbox-grid.css';
|
||||||
|
|
||||||
body {
|
body {
|
||||||
position: relative;
|
position: relative;
|
||||||
color: white;
|
color: white;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
background-color: whitesmoke;
|
background-color: whitesmoke;
|
||||||
|
|
||||||
/* background-image: linear-gradient(
|
|
||||||
45deg,
|
|
||||||
rgba(0, 216, 255, 0.5) 10%,
|
|
||||||
rgba(0, 1, 127, 0.7)
|
|
||||||
); */
|
|
||||||
font-family: Arial, Helvetica, Helvetica Neue, serif;
|
font-family: Arial, Helvetica, Helvetica Neue, serif;
|
||||||
overflow-y: hidden;
|
overflow-y: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
body.bp3-dark {
|
body.bp3-dark {
|
||||||
background-color: #293742;
|
background-color: #293742;
|
||||||
|
|
||||||
/* background-color: #232c39; */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.bp3-button {
|
/* .bp3-button {
|
||||||
outline: none !important;
|
outline: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bp3-control {
|
.bp3-control {
|
||||||
outline: none !important;
|
outline: none !important;
|
||||||
}
|
} */
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
.container {
|
/* .container {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 30%;
|
top: 30%;
|
||||||
left: 10px;
|
left: 10px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.container h2 {
|
.container h2 {
|
||||||
font-size: 5rem;
|
font-size: 5rem;
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
/* eslint-disable prettier/prettier */
|
/* eslint-disable prettier/prettier */
|
||||||
|
/* eslint-disable react/jsx-one-expression-per-line */
|
||||||
import React, { useState, useEffect } from 'react';
|
import React, { useState, useEffect } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { Link } from 'react-router-dom';
|
import { Link } from 'react-router-dom';
|
||||||
import { ipcRenderer } from 'electron';
|
import { ipcRenderer } from 'electron';
|
||||||
import {
|
import { Grid, Row, Col } from 'react-flexbox-grid';
|
||||||
Button,
|
import { Button } from '@blueprintjs/core';
|
||||||
} from '@blueprintjs/core';
|
|
||||||
import routes from '../constants/routes.json';
|
import routes from '../constants/routes.json';
|
||||||
import styles from './Home.css';
|
import styles from './Home.css';
|
||||||
|
|
||||||
@ -29,21 +29,31 @@ export default function Home(): JSX.Element {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={styles.container} data-tid="container">
|
<Grid fluid>
|
||||||
<h2 className="bp3-heading">Home</h2>
|
<Row middle="xs" center="xs" style={{ height: '100vh' }}>
|
||||||
<br />
|
<Col xs={12} md={6}>
|
||||||
<Link to={routes.COUNTER}>
|
<div className={styles.container} data-tid="container">
|
||||||
{' '}
|
<h2 className="bp3-heading">Home</h2>
|
||||||
<Button text="To Counter" />
|
<br />
|
||||||
</Link>
|
<Link id="to-counter" to={routes.COUNTER}>
|
||||||
<br />
|
{' '}
|
||||||
<h3 className="bp3-heading">{`${t('Signaling server is running on port')}: ${signalingServerPort}`}</h3>
|
<Button text="to Counter" />
|
||||||
<br />
|
</Link>
|
||||||
<h3 className="bp3-heading">{`Locales test ${t('Language')}`}</h3>
|
<br />
|
||||||
<br />
|
<h3 className="bp3-heading">
|
||||||
<Button type="button" onClick={onButtonClick}>
|
{`${t(
|
||||||
CLICK ME!
|
'Signaling server is running on port'
|
||||||
</Button>
|
)}: ${signalingServerPort}`}
|
||||||
</div>
|
</h3>
|
||||||
|
<br />
|
||||||
|
<h3 className="bp3-heading">{`Locales test ${t('Language')}`}</h3>
|
||||||
|
<br />
|
||||||
|
<Button type="button" onClick={onButtonClick}>
|
||||||
|
CLICK ME!
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</Col>
|
||||||
|
</Row>
|
||||||
|
</Grid>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ import React from 'react';
|
|||||||
import { useSelector, useDispatch } from 'react-redux';
|
import { useSelector, useDispatch } from 'react-redux';
|
||||||
import { Link } from 'react-router-dom';
|
import { Link } from 'react-router-dom';
|
||||||
import { Button } from '@blueprintjs/core';
|
import { Button } from '@blueprintjs/core';
|
||||||
|
import { Grid } from 'react-flexbox-grid';
|
||||||
import styles from './Counter.css';
|
import styles from './Counter.css';
|
||||||
import routes from '../../constants/routes.json';
|
import routes from '../../constants/routes.json';
|
||||||
import {
|
import {
|
||||||
@ -16,11 +17,11 @@ export default function Counter() {
|
|||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const value = useSelector(selectCount);
|
const value = useSelector(selectCount);
|
||||||
return (
|
return (
|
||||||
<div>
|
<Grid fluid>
|
||||||
<div className={styles.backButton} data-tid="backButton">
|
<div className={styles.backButton} data-tid="backButton">
|
||||||
<br />
|
<br />
|
||||||
<Link to={routes.HOME}>
|
<Link to={routes.HOME}>
|
||||||
<Button icon="arrow-left" />
|
<Button icon="arrow-left" style={{ height: '50px', width: '50px' }} />
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
<h1
|
<h1
|
||||||
@ -71,6 +72,6 @@ export default function Counter() {
|
|||||||
async
|
async
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</Grid>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -296,6 +296,7 @@
|
|||||||
"i18next-sync-fs-backend": "^1.1.1",
|
"i18next-sync-fs-backend": "^1.1.1",
|
||||||
"react": "^16.13.1",
|
"react": "^16.13.1",
|
||||||
"react-dom": "^16.12.0",
|
"react-dom": "^16.12.0",
|
||||||
|
"react-flexbox-grid": "^2.1.2",
|
||||||
"react-hot-loader": "^4.12.21",
|
"react-hot-loader": "^4.12.21",
|
||||||
"react-i18next": "^11.7.0",
|
"react-i18next": "^11.7.0",
|
||||||
"react-redux": "^7.2.0",
|
"react-redux": "^7.2.0",
|
||||||
|
@ -6,7 +6,7 @@ const getPageTitle = ClientFunction(() => document.title);
|
|||||||
const counterSelector = Selector('[data-tid="counter"]');
|
const counterSelector = Selector('[data-tid="counter"]');
|
||||||
const buttonsSelector = Selector('[data-tclass="btn"]');
|
const buttonsSelector = Selector('[data-tclass="btn"]');
|
||||||
const clickToCounterLink = (t) =>
|
const clickToCounterLink = (t) =>
|
||||||
t.click(Selector('a').withExactText('to Counter'));
|
t.click(Selector('button').withExactText('to Counter'));
|
||||||
const incrementButton = buttonsSelector.nth(0);
|
const incrementButton = buttonsSelector.nth(0);
|
||||||
const decrementButton = buttonsSelector.nth(1);
|
const decrementButton = buttonsSelector.nth(1);
|
||||||
const oddButton = buttonsSelector.nth(2);
|
const oddButton = buttonsSelector.nth(2);
|
||||||
@ -33,11 +33,11 @@ test(
|
|||||||
);
|
);
|
||||||
|
|
||||||
test('should navigate to Counter with click on the "to Counter" link', async (t) => {
|
test('should navigate to Counter with click on the "to Counter" link', async (t) => {
|
||||||
await t.click('[data-tid=container] > a').expect(getCounterText()).eql('0');
|
await t.click('#to-counter').expect(getCounterText()).eql('0');
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should navigate to /counter', async (t) => {
|
test('should navigate to /counter', async (t) => {
|
||||||
await t.click('a').expect(getPageUrl()).contains('/counter');
|
await t.click('#to-counter').expect(getPageUrl()).contains('/counter');
|
||||||
});
|
});
|
||||||
|
|
||||||
fixture`Counter Tests`
|
fixture`Counter Tests`
|
||||||
|
@ -43,11 +43,11 @@ describe('Counter component', () => {
|
|||||||
expect(p.text()).toMatch(/^1$/);
|
expect(p.text()).toMatch(/^1$/);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should first button should call increment', () => {
|
it('should 2 button should call increment', () => {
|
||||||
const { buttons } = setup();
|
const { buttons } = setup();
|
||||||
const incrementSpy = jest.spyOn(counterSlice, 'increment');
|
const incrementSpy = jest.spyOn(counterSlice, 'increment');
|
||||||
|
|
||||||
buttons.at(0).simulate('click');
|
buttons.at(1).simulate('click');
|
||||||
expect(incrementSpy).toBeCalled();
|
expect(incrementSpy).toBeCalled();
|
||||||
incrementSpy.mockRestore();
|
incrementSpy.mockRestore();
|
||||||
});
|
});
|
||||||
@ -67,26 +67,26 @@ describe('Counter component', () => {
|
|||||||
expect(tree).toMatchSnapshot();
|
expect(tree).toMatchSnapshot();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should second button should call decrement', () => {
|
it('should 3 button should call decrement', () => {
|
||||||
const { buttons } = setup();
|
const { buttons } = setup();
|
||||||
const decrementSyp = jest.spyOn(counterSlice, 'decrement');
|
const decrementSyp = jest.spyOn(counterSlice, 'decrement');
|
||||||
buttons.at(1).simulate('click');
|
buttons.at(2).simulate('click');
|
||||||
expect(decrementSyp).toBeCalled();
|
expect(decrementSyp).toBeCalled();
|
||||||
decrementSyp.mockRestore();
|
decrementSyp.mockRestore();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should third button should call incrementIfOdd', () => {
|
it('should 3 button should call incrementIfOdd', () => {
|
||||||
const { buttons } = setup();
|
const { buttons } = setup();
|
||||||
const incrementIfOdd = jest.spyOn(counterSlice, 'incrementIfOdd');
|
const incrementIfOdd = jest.spyOn(counterSlice, 'incrementIfOdd');
|
||||||
buttons.at(2).simulate('click');
|
buttons.at(3).simulate('click');
|
||||||
expect(incrementIfOdd).toBeCalled();
|
expect(incrementIfOdd).toBeCalled();
|
||||||
incrementIfOdd.mockRestore();
|
incrementIfOdd.mockRestore();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should fourth button should call incrementAsync', () => {
|
it('should 4 button should call incrementAsync', () => {
|
||||||
const { buttons } = setup();
|
const { buttons } = setup();
|
||||||
const incrementAsync = jest.spyOn(counterSlice, 'incrementAsync');
|
const incrementAsync = jest.spyOn(counterSlice, 'incrementAsync');
|
||||||
buttons.at(3).simulate('click');
|
buttons.at(4).simulate('click');
|
||||||
expect(incrementAsync).toBeCalled();
|
expect(incrementAsync).toBeCalled();
|
||||||
incrementAsync.mockRestore();
|
incrementAsync.mockRestore();
|
||||||
});
|
});
|
||||||
|
@ -1,64 +1,120 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||||
|
|
||||||
exports[`Counter component should match exact snapshot 1`] = `
|
exports[`Counter component should match exact snapshot 1`] = `
|
||||||
<div>
|
<div
|
||||||
|
className="container-fluid"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
className="backButton"
|
className="backButton"
|
||||||
data-tid="backButton"
|
data-tid="backButton"
|
||||||
>
|
>
|
||||||
|
<br />
|
||||||
<a
|
<a
|
||||||
href="/"
|
href="/"
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
>
|
>
|
||||||
<i
|
<button
|
||||||
className="fa fa-arrow-left fa-3x"
|
className="bp3-button"
|
||||||
/>
|
onKeyDown={[Function]}
|
||||||
|
onKeyUp={[Function]}
|
||||||
|
style={
|
||||||
|
Object {
|
||||||
|
"height": "50px",
|
||||||
|
"width": "50px",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
type="button"
|
||||||
|
>
|
||||||
|
<span
|
||||||
|
className="bp3-icon bp3-icon-arrow-left"
|
||||||
|
icon="arrow-left"
|
||||||
|
>
|
||||||
|
<svg
|
||||||
|
data-icon="arrow-left"
|
||||||
|
height={16}
|
||||||
|
viewBox="0 0 16 16"
|
||||||
|
width={16}
|
||||||
|
>
|
||||||
|
<desc>
|
||||||
|
arrow-left
|
||||||
|
</desc>
|
||||||
|
<path
|
||||||
|
d="M13.99 6.99H4.41L7.7 3.7a1.003 1.003 0 00-1.42-1.42l-5 5a1.014 1.014 0 000 1.42l5 5a1.003 1.003 0 001.42-1.42L4.41 8.99H14c.55 0 1-.45 1-1s-.46-1-1.01-1z"
|
||||||
|
fillRule="evenodd"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</span>
|
||||||
|
</button>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<h1
|
||||||
className="counter counter"
|
className="bp3-heading counter counter"
|
||||||
data-tid="counter"
|
data-tid="counter"
|
||||||
>
|
>
|
||||||
1
|
1
|
||||||
</div>
|
</h1>
|
||||||
<div
|
<div
|
||||||
className="btnGroup"
|
className="btnGroup"
|
||||||
>
|
>
|
||||||
<button
|
<button
|
||||||
className="btn"
|
className="bp3-button btn"
|
||||||
data-tclass="btn"
|
data-tclass="btn"
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
|
onKeyDown={[Function]}
|
||||||
|
onKeyUp={[Function]}
|
||||||
type="button"
|
type="button"
|
||||||
>
|
>
|
||||||
<i
|
<span
|
||||||
className="fa fa-plus"
|
className="bp3-button-text"
|
||||||
/>
|
>
|
||||||
|
<i
|
||||||
|
className="fa fa-plus"
|
||||||
|
/>
|
||||||
|
</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
className="btn"
|
className="bp3-button btn"
|
||||||
data-tclass="btn"
|
data-tclass="btn"
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
|
onKeyDown={[Function]}
|
||||||
|
onKeyUp={[Function]}
|
||||||
type="button"
|
type="button"
|
||||||
>
|
>
|
||||||
<i
|
<span
|
||||||
className="fa fa-minus"
|
className="bp3-button-text"
|
||||||
/>
|
>
|
||||||
|
<i
|
||||||
|
className="fa fa-minus"
|
||||||
|
/>
|
||||||
|
</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
className="btn"
|
className="bp3-button btn"
|
||||||
data-tclass="btn"
|
data-tclass="btn"
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
|
onKeyDown={[Function]}
|
||||||
|
onKeyUp={[Function]}
|
||||||
type="button"
|
type="button"
|
||||||
>
|
>
|
||||||
odd
|
<span
|
||||||
|
className="bp3-button-text"
|
||||||
|
>
|
||||||
|
odd
|
||||||
|
</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
className="btn"
|
className="bp3-button btn"
|
||||||
data-tclass="btn"
|
data-tclass="btn"
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
|
onKeyDown={[Function]}
|
||||||
|
onKeyUp={[Function]}
|
||||||
type="button"
|
type="button"
|
||||||
>
|
>
|
||||||
async
|
<span
|
||||||
|
className="bp3-button-text"
|
||||||
|
>
|
||||||
|
async
|
||||||
|
</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
22
yarn.lock
22
yarn.lock
@ -6646,6 +6646,13 @@ flatted@^2.0.0:
|
|||||||
resolved "https://packages.deskreen.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
|
resolved "https://packages.deskreen.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
|
||||||
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
|
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
|
||||||
|
|
||||||
|
flexboxgrid2@^7.2.0:
|
||||||
|
version "7.2.1"
|
||||||
|
resolved "https://registry.npmjs.org/flexboxgrid2/-/flexboxgrid2-7.2.1.tgz#3ffb9661ca5a9e96468eae648f8caf279bd0b2a4"
|
||||||
|
integrity sha512-O2bO5ZcBXnFy7cYmyt/CKb6CuwzNuUPxWJt8WOiaot8SetE9zyUahXGTSpKDm3+CTYQ5YeEMPeunMdjcxKJz4w==
|
||||||
|
dependencies:
|
||||||
|
normalize.css "^7.0.0"
|
||||||
|
|
||||||
flush-write-stream@^1.0.0:
|
flush-write-stream@^1.0.0:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://packages.deskreen.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
|
resolved "https://packages.deskreen.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
|
||||||
@ -9915,6 +9922,11 @@ normalize-url@^4.1.0:
|
|||||||
resolved "https://packages.deskreen.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129"
|
resolved "https://packages.deskreen.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129"
|
||||||
integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==
|
integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==
|
||||||
|
|
||||||
|
normalize.css@^7.0.0:
|
||||||
|
version "7.0.0"
|
||||||
|
resolved "https://registry.npmjs.org/normalize.css/-/normalize.css-7.0.0.tgz#abfb1dd82470674e0322b53ceb1aaf412938e4bf"
|
||||||
|
integrity sha1-q/sd2CRwZ04DIrU86xqvQSk45L8=
|
||||||
|
|
||||||
normalize.css@^8.0.1:
|
normalize.css@^8.0.1:
|
||||||
version "8.0.1"
|
version "8.0.1"
|
||||||
resolved "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz#9b98a208738b9cc2634caacbc42d131c97487bf3"
|
resolved "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz#9b98a208738b9cc2634caacbc42d131c97487bf3"
|
||||||
@ -11109,7 +11121,7 @@ prop-types-exact@^1.2.0:
|
|||||||
object.assign "^4.1.0"
|
object.assign "^4.1.0"
|
||||||
reflect.ownkeys "^0.2.0"
|
reflect.ownkeys "^0.2.0"
|
||||||
|
|
||||||
prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2:
|
prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2:
|
||||||
version "15.7.2"
|
version "15.7.2"
|
||||||
resolved "https://packages.deskreen.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
|
resolved "https://packages.deskreen.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
|
||||||
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
|
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
|
||||||
@ -11327,6 +11339,14 @@ react-dom@^16.12.0:
|
|||||||
prop-types "^15.6.2"
|
prop-types "^15.6.2"
|
||||||
scheduler "^0.19.1"
|
scheduler "^0.19.1"
|
||||||
|
|
||||||
|
react-flexbox-grid@^2.1.2:
|
||||||
|
version "2.1.2"
|
||||||
|
resolved "https://registry.npmjs.org/react-flexbox-grid/-/react-flexbox-grid-2.1.2.tgz#5eadf04e8559f7140cd6867a55a5351ded8d3920"
|
||||||
|
integrity sha512-lj1oVnIJ7TY3W6tPjFUxlUYd1DLFxEg8RiX3HAYVvreE3O9HU9n2390CFoPQ+qk1E+5MXa2t/mLMafFLAa8+7Q==
|
||||||
|
dependencies:
|
||||||
|
flexboxgrid2 "^7.2.0"
|
||||||
|
prop-types "^15.5.8"
|
||||||
|
|
||||||
react-hot-loader@^4.12.21:
|
react-hot-loader@^4.12.21:
|
||||||
version "4.12.21"
|
version "4.12.21"
|
||||||
resolved "https://packages.deskreen.com/react-hot-loader/-/react-hot-loader-4.12.21.tgz#332e830801fb33024b5a147d6b13417f491eb975"
|
resolved "https://packages.deskreen.com/react-hot-loader/-/react-hot-loader-4.12.21.tgz#332e830801fb33024b5a147d6b13417f491eb975"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user