mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-04-05 04:19:55 +00:00
30 lines
1,002 B
JavaScript
30 lines
1,002 B
JavaScript
import React, { Component } from 'react';
|
|
import { FocusableProvider } from 'stremio-common';
|
|
import ModalsContainerProvider from './ModalsContainerProvider';
|
|
import styles from './styles';
|
|
|
|
class Route extends Component {
|
|
shouldComponentUpdate(nextProps, nextState) {
|
|
return nextProps.children !== this.props.children;
|
|
}
|
|
|
|
onModalsContainerDomTreeChange = ({ modalsContainerElement }) => {
|
|
return modalsContainerElement.childElementCount === 0;
|
|
};
|
|
|
|
render() {
|
|
return (
|
|
<div className={styles['route']}>
|
|
<ModalsContainerProvider>
|
|
<FocusableProvider onModalsContainerDomTreeChange={this.onModalsContainerDomTreeChange}>
|
|
<div className={styles['route-content']}>
|
|
{this.props.children}
|
|
</div>
|
|
</FocusableProvider>
|
|
</ModalsContainerProvider>
|
|
</div>
|
|
);
|
|
}
|
|
}
|
|
|
|
export default Route;
|