UNPKG

tdesign-vue-next

Version:
151 lines (147 loc) 5.21 kB
/** * tdesign v1.13.2 * (c) 2025 tdesign * @license MIT */ import { _ as _slicedToArray } from '../../_chunks/dep-23a929e8.mjs'; import { defineComponent, createVNode, h } from 'vue'; import { ChevronRightIcon, ChevronLeftIcon } from 'tdesign-icons-vue-next'; import { Button } from '../../button/index.mjs'; import { u as usePrefixClass, i as useGlobalIcon } from '../../_chunks/dep-9c4aef07.mjs'; import props from '../props.mjs'; import { isFunction, isArray, isString } from 'lodash-es'; import '../../_chunks/dep-f1895f5a.mjs'; import '../../button/button.mjs'; import '../../_chunks/dep-b981148e.mjs'; import '../../_chunks/dep-0bb39574.mjs'; import '../../_chunks/dep-a81129ec.mjs'; import '../../loading/index.mjs'; import '../../loading/directive.mjs'; import '../../loading/plugin.mjs'; import '../../loading/loading.mjs'; import '../../loading/icon/gradient.mjs'; import '../../_chunks/dep-4433e556.mjs'; import '../../_chunks/dep-4324eccd.mjs'; import '../../utils/dom.mjs'; import '../../_chunks/dep-24ce1cec.mjs'; import '../../loading/props.mjs'; import '../../utils/render-tnode.mjs'; import '../../config-provider/hooks/useConfig.mjs'; import '../../config-provider/utils/context.mjs'; import '../../_chunks/dep-466a0666.mjs'; import '../../_chunks/dep-160caab6.mjs'; import '../../_chunks/dep-e497214e.mjs'; import '../../_chunks/dep-98cd1e2d.mjs'; import '../../_chunks/dep-48e13ca0.mjs'; import '../../_chunks/dep-033df8e6.mjs'; import '../../_chunks/dep-20550dcc.mjs'; import '../../utils/withInstall.mjs'; import './style/css.mjs'; import '../../button/props.mjs'; var TransferOperations = defineComponent({ name: "TTransferOperations", props: { leftDisabled: { type: Boolean, required: true }, rightDisabled: { type: Boolean, required: true }, operation: props.operation }, emits: ["moveToRight", "moveToLeft"], setup: function setup(props2, _ref) { var slots = _ref.slots, emit = _ref.emit; var classPrefix = usePrefixClass(); var _useGlobalIcon = useGlobalIcon({ ChevronRightIcon: ChevronRightIcon, ChevronLeftIcon: ChevronLeftIcon }), ChevronRightIcon$1 = _useGlobalIcon.ChevronRightIcon, ChevronLeftIcon$1 = _useGlobalIcon.ChevronLeftIcon; var moveToRight = function moveToRight() { emit("moveToRight"); }; var moveToLeft = function moveToLeft() { emit("moveToLeft"); }; var getIconRight = function getIconRight() { return createVNode(ChevronRightIcon$1, null, null); }; var getIconLeft = function getIconLeft() { return createVNode(ChevronLeftIcon$1, null, null); }; var getIcon = function getIcon(direction) { if (isFunction(props2.operation)) { return null; } if (direction === "right" && props2.operation && isFunction(props2.operation[0])) { return null; } if (direction === "left" && props2.operation && isFunction(props2.operation[1])) { return null; } if (slots.operation) { return null; } return direction === "left" ? getIconLeft : getIconRight; }; var renderButton = function renderButton(h2, direction) { if (isFunction(slots.operation)) { return slots.operation({ direction: direction }); } if (isFunction(props2.operation)) { var renderContent2 = props2.operation; return renderContent2(h2, { direction: direction }); } var renderContent; if (isArray(props2.operation)) { var _props2$operation = _slicedToArray(props2.operation, 2), left = _props2$operation[0], right = _props2$operation[1]; renderContent = direction === "right" ? right : left; } else { renderContent = ""; } return renderContent; }; return function () { return createVNode("div", { "class": "".concat(classPrefix.value, "-transfer__operations") }, [createVNode(Button, { "variant": "outline", "size": "small", "shape": isArray(props2.operation) && isString(props2.operation[1]) ? "rectangle" : "square", "key": props2.rightDisabled ? "right-outline" : "right-base", "disabled": props2.rightDisabled, "onClick": moveToRight, "icon": getIcon("right") }, { "default": function _default() { return [slots.operation || isArray(props2.operation) && props2.operation[1] ? renderButton(h, "right") : null]; } }), createVNode(Button, { "variant": "outline", "size": "small", "shape": isArray(props2.operation) && isString(props2.operation[0]) ? "rectangle" : "square", "key": props2.rightDisabled ? "left-outline" : "left-base", "disabled": props2.leftDisabled, "onClick": moveToLeft, "icon": getIcon("left") }, { "default": function _default() { return [slots.operation || isArray(props2.operation) && props2.operation[0] ? renderButton(h, "left") : null]; } })]); }; } }); export { TransferOperations as default }; //# sourceMappingURL=transfer-operations.mjs.map