'use strict'; import React from 'react'; import ReactNative, { AppRegistry, Platform, } from 'react-native'; import { Provider, connect } from 'react-redux'; import configureStore from './store/configureStore'; import {Record, List, Map} from 'immutable'; import appInitialState from './reducers/app/appInitialState'; import messageInitialState from './reducers/message/messageInitialState'; import listInitialState from './reducers/list/listInitialState'; import MessageContainer from './containers/MessageContainer'; import MessageListContainer from './containers/MessageListContainer'; import { setPlatform, setHost, setServiceHost, } from './reducers/app/appActions'; import { setListId, setCategoryName, } from './reducers/list/listActions'; function getInitialState() { const _initState = { app: (new appInitialState()), message: (new messageInitialState()), list: (new listInitialState()), }; return _initState; } export default function native(platform) { let YH_Message = React.createClass({ render() { const store = configureStore(getInitialState()); store.dispatch(setPlatform(platform)); store.dispatch(setHost(this.props.host)); store.dispatch(setServiceHost(this.props.serviceHost)); let type = this.props.type; if (type == 'main') { return ( <Provider store={store}> <MessageContainer /> </Provider> ); } else if (type == 'list') { store.dispatch(setListId(this.props.listId)); store.dispatch(setCategoryName(this.props.categoryName)); return ( <Provider store={store}> <MessageListContainer /> </Provider> ); } return null; } }); AppRegistry.registerComponent('YH_Message', () => YH_Message); }