From 44b185ed4caf0659cba705c59085b36d71ec9976 Mon Sep 17 00:00:00 2001 From: Nicolas Gallagher Date: Sun, 18 Jun 2017 15:27:24 -0700 Subject: [PATCH] Add 'unimplemented view' stubs --- src/components/FlatList/index.js | 2 + src/components/Modal/index.js | 2 + src/components/Picker/index.js | 2 + src/components/RefreshControl/index.js | 2 + src/components/SectionList/index.js | 2 + src/components/Slider/index.js | 2 + .../Touchable/TouchableNativeFeedback.js | 2 + src/components/UnimplementedView/index.js | 49 +++++++++++++++++++ src/components/VirtualizedList/index.js | 2 + src/index.js | 16 ++++++ src/module.js | 8 +++ 11 files changed, 89 insertions(+) create mode 100644 src/components/FlatList/index.js create mode 100644 src/components/Modal/index.js create mode 100644 src/components/Picker/index.js create mode 100644 src/components/RefreshControl/index.js create mode 100644 src/components/SectionList/index.js create mode 100644 src/components/Slider/index.js create mode 100644 src/components/Touchable/TouchableNativeFeedback.js create mode 100644 src/components/UnimplementedView/index.js create mode 100644 src/components/VirtualizedList/index.js diff --git a/src/components/FlatList/index.js b/src/components/FlatList/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/FlatList/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/Modal/index.js b/src/components/Modal/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/Modal/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/Picker/index.js b/src/components/Picker/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/Picker/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/RefreshControl/index.js b/src/components/RefreshControl/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/RefreshControl/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/SectionList/index.js b/src/components/SectionList/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/SectionList/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/Slider/index.js b/src/components/Slider/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/Slider/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/Touchable/TouchableNativeFeedback.js b/src/components/Touchable/TouchableNativeFeedback.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/Touchable/TouchableNativeFeedback.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/components/UnimplementedView/index.js b/src/components/UnimplementedView/index.js new file mode 100644 index 00000000..dbfe057b --- /dev/null +++ b/src/components/UnimplementedView/index.js @@ -0,0 +1,49 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule UnimplementedView + * @flow + */ + +import View from '../View'; +import { any, object } from 'prop-types'; +import React, { Component } from 'react'; + +/** + * Common implementation for a simple stubbed view. + */ +class UnimplementedView extends Component { + static propTypes = { + children: any, + style: object + }; + + setNativeProps() { + // Do nothing. + // This method is required in order to use this view as a Touchable* child. + // See ensureComponentIsNative.js for more info + } + + render() { + return ( + + {this.props.children} + + ); + } +} + +const unimplementedViewStyles = process.env.NODE_ENV !== 'production' + ? { + alignSelf: 'flex-start', + borderColor: 'red', + borderWidth: 1 + } + : {}; + +export default UnimplementedView; diff --git a/src/components/VirtualizedList/index.js b/src/components/VirtualizedList/index.js new file mode 100644 index 00000000..0a818b1a --- /dev/null +++ b/src/components/VirtualizedList/index.js @@ -0,0 +1,2 @@ +import UnimplementedView from '../UnimplementedView'; +export default UnimplementedView; diff --git a/src/index.js b/src/index.js index 6c85f01b..7020afe7 100644 --- a/src/index.js +++ b/src/index.js @@ -32,19 +32,27 @@ import { // components ActivityIndicator, Button, + FlatList, Image, ListView, + Modal, + Picker, ProgressBar, + RefreshControl, ScrollView, + SectionList, + Slider, StatusBar, Switch, Text, TextInput, Touchable, TouchableHighlight, + TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, View, + VirtualizedList, // propTypes ColorPropType, @@ -89,19 +97,27 @@ const ReactNative = { // components ActivityIndicator, Button, + FlatList, Image, ListView, + Modal, + Picker, ProgressBar, + RefreshControl, ScrollView, + SectionList, + Slider, StatusBar, Switch, Text, TextInput, Touchable, TouchableHighlight, + TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, View, + VirtualizedList, // propTypes ColorPropType, diff --git a/src/module.js b/src/module.js index 13935e14..0d6c0eb7 100644 --- a/src/module.js +++ b/src/module.js @@ -27,21 +27,29 @@ export { default as Vibration } from './apis/Vibration'; // components export { default as ActivityIndicator } from './components/ActivityIndicator'; export { default as Button } from './components/Button'; +export { default as FlatList } from './components/FlatList'; export { default as Image } from './components/Image'; export { default as ListView } from './components/ListView'; +export { default as Modal } from './components/Modal'; +export { default as Picker } from './components/Picker'; export { default as ProgressBar } from './components/ProgressBar'; +export { default as RefreshControl } from './components/RefreshControl'; export { default as ScrollView } from './components/ScrollView'; +export { default as SectionList } from './components/SectionList'; +export { default as Slider } from './components/Slider'; export { default as StatusBar } from './components/StatusBar'; export { default as Switch } from './components/Switch'; export { default as Text } from './components/Text'; export { default as TextInput } from './components/TextInput'; export { default as Touchable } from './components/Touchable/Touchable'; export { default as TouchableHighlight } from './components/Touchable/TouchableHighlight'; +export { default as TouchableNativeFeedback } from './components/Touchable/TouchableNativeFeedback'; export { default as TouchableOpacity } from './components/Touchable/TouchableOpacity'; export { default as TouchableWithoutFeedback } from './components/Touchable/TouchableWithoutFeedback'; export { default as View } from './components/View'; +export { default as VirtualizedList } from './components/VirtualizedList'; // propTypes export { default as ColorPropType } from './propTypes/ColorPropType';