UNPKG

@ozen-ui/kit

Version:

React component library

40 lines (39 loc) 2.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DialogFooter = exports.cnDialogFooter = void 0; var tslib_1 = require("tslib"); var react_1 = tslib_1.__importStar(require("react")); var classname_1 = require("../../../../utils/classname"); var object_1 = require("../../../../utils/object"); var BottomSheetBase_1 = require("../../../BottomSheetBase"); var Divider_1 = require("../../../Divider"); var DialogContext_1 = require("../../DialogContext"); var constants_1 = require("./constants"); exports.cnDialogFooter = (0, classname_1.cn)('DialogNextFooter'); exports.DialogFooter = (0, react_1.forwardRef)(function (_a, ref) { var children = _a.children, _b = _a.align, alignProp = _b === void 0 ? constants_1.DIALOG_FOOTER_DEFAULT_ALIGN : _b, className = _a.className, _c = _a.expandOnDrag, expandOnDrag = _c === void 0 ? constants_1.DIALOG_FOOTER_DEFAULT_EXPAND_ON_DRAG : _c, _d = _a.marginTop, marginTop = _d === void 0 ? constants_1.DIALOG_FOOTER_DEFAULT_MARGIN_TOP : _d, _e = _a.withDivider, withDivider = _e === void 0 ? constants_1.DIALOG_FOOTER_DEFAULT_WITH_DIVIDER : _e, other = tslib_1.__rest(_a, ["children", "align", "className", "expandOnDrag", "marginTop", "withDivider"]); var _f = (0, DialogContext_1.useDialogContext)(), size = _f.size, deviceType = _f.deviceType, isBottomSheet = _f.isBottomSheet; var Component = isBottomSheet ? BottomSheetBase_1.BottomSheetBaseFooter : 'div'; var bottomSheetProps = isBottomSheet ? { expandOnDrag: expandOnDrag, } : undefined; var align = (function () { if ((0, object_1.isPlainObject)(alignProp)) { return alignProp[deviceType]; } return alignProp; })(); return (react_1.default.createElement(Component, tslib_1.__assign({}, other, bottomSheetProps, { ref: ref, className: (0, exports.cnDialogFooter)('Container', [className]) }), withDivider && react_1.default.createElement(Divider_1.Divider, { className: (0, exports.cnDialogFooter)('Divider') }), react_1.default.createElement("div", { className: (0, exports.cnDialogFooter)({ size: size, align: align, deviceType: deviceType, marginTop: marginTop, }) }, children))); }); exports.DialogFooter.displayName = 'DialogFooter';