UNPKG

mao-rn-android-kit

Version:

为 React Native 开发 提供的一些Android原生模块/组件 (react native, CoordinatorLayout, AppBarLayout, TabLayout, NestedScrollView, PopupWindow)

68 lines (67 loc) 3.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const React = require("react"); const react_1 = require("react"); const react_native_1 = require("react-native"); const layout_1 = require("./layout"); const types_1 = require("./types"); const MaoKitsCollapsingToolbarLayoutManager = react_native_1.UIManager.MaoKitsCollapsingToolbarLayoutAndroid; const Constants = MaoKitsCollapsingToolbarLayoutManager.Constants; class CollapsingToolbarLayout extends react_1.PureComponent { componentDidMount() { layout_1.default.setChildrenLayoutParams(this, MaoKitsCollapsingToolbarLayoutManager); } componentDidUpdate() { layout_1.default.setChildrenLayoutParams(this, MaoKitsCollapsingToolbarLayoutManager); } render() { let props = Object.assign({}, this.props); props.expandedTitleMargin = props.expandedTitleMargin || []; props.expandedTitleMargin[0] = props.expandedTitleMarginStart || props.expandedTitleMargin[0] || 0; props.expandedTitleMargin[1] = props.expandedTitleMarginTop || props.expandedTitleMargin[1] || 0; props.expandedTitleMargin[2] = props.expandedTitleMarginEnd || props.expandedTitleMargin[2] || 0; props.expandedTitleMargin[3] = props.expandedTitleMarginBottom || props.expandedTitleMargin[3] || 0; delete props.expandedTitleMarginStart; delete props.expandedTitleMarginTop; delete props.expandedTitleMarginEnd; delete props.expandedTitleMarginBottom; props.scrimsShown = [ !!props.scrimsShown, !!props.scrimsShownAnimate ]; delete props.scrimsShownAnimate; return (React.createElement(RCTCollapsingToolbarLayout, Object.assign({}, props), this.props.children)); } } CollapsingToolbarLayout.propTypes = Object.assign({ contentScrimColor: react_1.PropTypes.string, collapsedTitleGravity: react_1.PropTypes.number, collapsedTitleColor: react_1.PropTypes.string, expandedTitleColor: react_1.PropTypes.string, expandedTitleGravity: react_1.PropTypes.number, expandedTitleMargin: react_1.PropTypes.arrayOf(react_1.PropTypes.number), expandedTitleMarginStart: react_1.PropTypes.number, expandedTitleMarginTop: react_1.PropTypes.number, expandedTitleMarginEnd: react_1.PropTypes.number, expandedTitleMarginBottom: react_1.PropTypes.number, scrimAnimationDuration: react_1.PropTypes.number, scrimVisibleHeightTrigger: react_1.PropTypes.number, scrimsShown: react_1.PropTypes.arrayOf(react_1.PropTypes.bool), scrimsShownAnimate: react_1.PropTypes.bool, statusBarScrimColor: react_1.PropTypes.string, title: react_1.PropTypes.string, titleEnable: react_1.PropTypes.bool }, types_1.ViewGroupProperties); exports.CollapsingToolbarLayout = CollapsingToolbarLayout; const RCTCollapsingToolbarLayout = react_native_1.requireNativeComponent('MaoKitsCollapsingToolbarLayoutAndroid', CollapsingToolbarLayout, { nativeOnly: {} }); (function (CollapsingToolbarLayout) { var CollapseMode; (function (CollapseMode) { CollapseMode[CollapseMode["COLLAPSE_MODE_OFF"] = Constants.COLLAPSE_MODE_OFF] = "COLLAPSE_MODE_OFF"; CollapseMode[CollapseMode["COLLAPSE_MODE_PARALLAX"] = Constants.COLLAPSE_MODE_PARALLAX] = "COLLAPSE_MODE_PARALLAX"; CollapseMode[CollapseMode["COLLAPSE_MODE_PIN"] = Constants.COLLAPSE_MODE_PIN] = "COLLAPSE_MODE_PIN"; })(CollapseMode = CollapsingToolbarLayout.CollapseMode || (CollapsingToolbarLayout.CollapseMode = {})); })(CollapsingToolbarLayout = exports.CollapsingToolbarLayout || (exports.CollapsingToolbarLayout = {})); exports.default = CollapsingToolbarLayout;