preact-arco-design
Version:
Arco Design React UI Library.
38 lines (35 loc) • 1.51 kB
JavaScript
import React, { useContext } from "preact/compat";
import IconLeft from "../../icon/react-icon/IconLeft";
import IconRight from "../../icon/react-icon/IconRight";
import { ConfigContext } from "../ConfigProvider";
import cs from "../_util/classNames";
function ImagePreviewArrow(props) {
var _a, _b;
var current = props.current,
previewCount = props.previewCount,
_c = props.infinite,
infinite = _c === void 0 ? false : _c,
onPrev = props.onPrev,
onNext = props.onNext;
var getPrefixCls = useContext(ConfigContext).getPrefixCls;
var prefixCls = getPrefixCls('image-preview');
var classNames = cs("".concat(prefixCls, "-arrow"));
var disableLeft = !infinite && current <= 0;
var disableRight = !infinite && current >= previewCount - 1;
return React.createElement("div", {
className: classNames
}, React.createElement("div", {
className: cs("".concat(prefixCls, "-arrow-left"), (_a = {}, _a["".concat(prefixCls, "-arrow-disabled")] = disableLeft, _a)),
onClick: function onClick(e) {
e.preventDefault();
!disableLeft && onPrev && onPrev();
}
}, React.createElement(IconLeft, null)), React.createElement("div", {
className: cs("".concat(prefixCls, "-arrow-right"), (_b = {}, _b["".concat(prefixCls, "-arrow-disabled")] = disableRight, _b)),
onClick: function onClick(e) {
e.preventDefault();
!disableRight && onNext && onNext();
}
}, React.createElement(IconRight, null)));
}
export default ImagePreviewArrow;