UNPKG

@tarojsx/ui

Version:

We reinvents the UI for Taro3+

21 lines 1.47 kB
import { __rest } from "tslib"; import React, { useCallback } from 'react'; import classNames from 'classnames'; import { View, Text, ScrollView } from '@tarojs/components'; import '../style/FloatLayout.scss'; export const FloatLayout = props => { const { className, style = {}, children, title, isOpened, scrollY = true, onClose = () => { } } = props, rest = __rest(props, ["className", "style", "children", "title", "isOpened", "scrollY", "onClose"]); const handleClose = useCallback(e => { onClose(e); }, [onClose]); const rootClass = classNames('at-float-layout', { 'at-float-layout--active': isOpened }, className); return (React.createElement(View, { className: rootClass, onTouchMove: e => e.stopPropagation() }, React.createElement(View, { onClick: handleClose, className: "at-float-layout__overlay" }), React.createElement(View, { className: "at-float-layout__container layout" }, title ? (React.createElement(View, { className: "layout-header" }, React.createElement(Text, { className: "layout-header__title" }, title), React.createElement(View, { className: "layout-header__btn-close", onClick: handleClose }))) : null, React.createElement(View, { className: "layout-body" }, React.createElement(ScrollView, Object.assign({ className: "layout-body__content", scrollY: scrollY }, rest), children))))); }; //# sourceMappingURL=FloatLayout.js.map