diff --git a/Overlay.ios.js b/Overlay.ios.js
index 19ae103..a6f22e7 100644
--- a/Overlay.ios.js
+++ b/Overlay.ios.js
@@ -5,69 +5,66 @@
'use strict';
-var React = require('react');
-var {View, StyleSheet, requireNativeComponent} = require('react-native');
+import React, {Component, PropTypes} from 'react';
+import {View, requireNativeComponent, StyleSheet} from 'react-native';
type Props = {
- isVisible: boolean
+ isVisible: boolean;
}
-var Overlay = React.createClass({
- propTypes: {
- /**
- * When this property is set to `true`, the Overlay will appear on
- * `UIWindowLevelStatusBar`, otherwise it will appear below that.
- */
- aboveStatusBar: React.PropTypes.bool,
+class Overlay extends Component {
+ constructor(props) {
+ super(props);
+ }
- /**
- * Determines the visibility of the Overlay. When it is not visible,
- * an empty View is rendered.
- */
- isVisible: React.PropTypes.bool,
- },
+ render() {
+ var {
+ isVisible,
+ } = this.props;
- getDefaultProps(): Props
- {
- return {
- aboveStatusBar: false,
- isVisible: false,
- }
- },
+ if (this.props.isVisible) {
+ return (
+
+ {React.Children.map(this.props.children, React.cloneElement)}
+
+ );
+ } else {
+ return ;
+ }
+ }
+}
+
+Overlay.propTypes = {
+ /**
+ * When this property is set to `true`, the Overlay will appear on
+ * `UIWindowLevelStatusBar`, otherwise it will appear below that.
+ */
+ aboveStatusBar: PropTypes.bool,
- render()
- {
- if (this.props.isVisible) {
- return (
-
- {
- React.Children.map(this.props.children, React.cloneElement)
- }
-
- )
- ;
- } else {
- return ;
- }
- },
-});
+ /**
+ * Determines the visibility of the Overlay. When it is not visible,
+ * an empty View is rendered.
+ */
+ isVisible: PropTypes.bool,
+};
+
+Overlay.defaultProps = {
+ aboveStatusBar: false,
+ isVisible: false,
+}
var RNOverlay = requireNativeComponent('RNOverlay', Overlay);
var styles = StyleSheet.create({
- container: {
- position: 'absolute',
- top: 0,
- bottom: 0,
- left: 0,
- right: 0,
- borderWidth: 0,
- backgroundColor: 'transparent',
- },
-});
+ container: {
+ position: 'absolute',
+ top: 0,
+ bottom: 0,
+ left: 0,
+ right: 0,
+ borderWidth: 0,
+ backgroundColor: 'transparent',
+ },
+})
-module.exports = Overlay;
\ No newline at end of file
+module.exports = Overlay;