UNPKG

@antv/s2-react-components

Version:

React components for S2

22 lines 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Switcher = void 0; const tslib_1 = require("tslib"); const icons_1 = require("@ant-design/icons"); const s2_1 = require("@antv/s2"); const antd_1 = require("antd"); const classnames_1 = tslib_1.__importDefault(require("classnames")); const react_1 = tslib_1.__importDefault(require("react")); const content_1 = require("./content"); require("./index.less"); const util_1 = require("./util"); exports.Switcher = react_1.default.memo((_a) => { var { title, icon, popover, disabled, children } = _a, otherProps = tslib_1.__rest(_a, ["title", "icon", "popover", "disabled", "children"]); const [visible, setVisible] = react_1.default.useState(false); const onToggleVisible = () => { setVisible((prev) => !prev); }; return (react_1.default.createElement(antd_1.Popover, Object.assign({ open: !disabled && visible, content: react_1.default.createElement(content_1.SwitcherContent, Object.assign({}, otherProps, { onToggleVisible: onToggleVisible })), onOpenChange: onToggleVisible, trigger: "click", placement: "bottomLeft", destroyTooltipOnHide: true }, popover, { overlayClassName: (0, classnames_1.default)((0, util_1.getSwitcherClassName)('switcher-overlay'), popover === null || popover === void 0 ? void 0 : popover.overlayClassName) }), children || (react_1.default.createElement(antd_1.Button, { className: (0, util_1.getSwitcherClassName)('entry-button'), size: "small", disabled: disabled, icon: icon || react_1.default.createElement(icons_1.SwapOutlined, { rotate: 90 }) }, title || (0, s2_1.i18n)('行列切换'))))); }); exports.Switcher.displayName = 'Switcher'; //# sourceMappingURL=switcher.js.map