zmp-react
Version:
Build full featured iOS & Android apps using ZMP & React
43 lines (38 loc) • 1.12 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import React, { forwardRef, useImperativeHandle, useRef } from 'react';
import App from '../components/app';
import routesConfig from '../shared/router-config';
/* dts-imports
import { ZMPParameters } from 'zmp-core/types';
*/
/* dts-extends
ZMPParameters
*/
/* dts-props
className?: string;
style?: React.CSSProperties;
ref?: React.MutableRefObject<{el: HTMLElement | null}>;
COLOR_PROPS
CHILDREN_PROP
*/
var ZMPApp = /*#__PURE__*/forwardRef(function (props, ref) {
var navbar = props.navbar,
routes = props.routes;
var appRef = useRef(null);
useImperativeHandle(ref, function () {
return appRef.current;
});
var navbarConfigs = _extends({}, navbar, {
iosCenterTitle: navbar && navbar.iosCenterTitle || false
});
var appRoutes = routesConfig() || routes;
return /*#__PURE__*/React.createElement(App, _extends({}, props, {
ref: appRef,
routes: appRoutes,
navbar: navbarConfigs,
iosTranslucentBars: false,
iosTranslucentModals: false
}));
});
ZMPApp.displayName = 'zmp-app';
export default ZMPApp;