Repository URL to install this package:
|
Version:
3.12.20 ▾
|
import { Minus, Plus, PositionCenter } from '@scaleflex/icons';
import { BTN_ZOOM_RATIO_PERCENTAGE, DEFAULT_ZOOM_RATIO, MAX_ZOOM_RATIO } from './Body.constants';
import Styled from './Body.styled';
import { jsx as _jsx } from "react/jsx-runtime";
import { jsxs as _jsxs } from "react/jsx-runtime";
var ActionButtons = function ActionButtons(_ref) {
var isImageOrPdf = _ref.isImageOrPdf,
zoomRatio = _ref.zoomRatio,
setZoomRatio = _ref.setZoomRatio;
var zoomIn = function zoomIn() {
var nextZoomRatio = Math.min(zoomRatio + BTN_ZOOM_RATIO_PERCENTAGE, MAX_ZOOM_RATIO);
setZoomRatio(nextZoomRatio);
};
var zoomOut = function zoomOut() {
var nextZoomRatio = Math.min(Math.max(zoomRatio - BTN_ZOOM_RATIO_PERCENTAGE, BTN_ZOOM_RATIO_PERCENTAGE));
setZoomRatio(nextZoomRatio);
};
var resetZoom = function resetZoom() {
setZoomRatio(DEFAULT_ZOOM_RATIO);
};
return /*#__PURE__*/_jsxs(Styled.AssetsActionBtns, {
isVisible: isImageOrPdf,
children: [/*#__PURE__*/_jsxs(Styled.FooterZoomBtns, {
isVisible: isImageOrPdf,
children: [/*#__PURE__*/_jsx(Styled.FooterActionBtn, {
size: "lg",
color: "basic",
onClick: zoomOut,
isVisible: isImageOrPdf,
children: /*#__PURE__*/_jsx(Minus, {})
}), /*#__PURE__*/_jsxs("span", {
onClick: resetZoom,
children: [parseInt(zoomRatio * 100), "%"]
}), /*#__PURE__*/_jsx(Styled.FooterActionBtn, {
size: "lg",
color: "basic",
onClick: zoomIn,
isVisible: isImageOrPdf,
children: /*#__PURE__*/_jsx(Plus, {
size: 18
})
})]
}), /*#__PURE__*/_jsx(Styled.FooterActionBtn, {
size: "lg",
color: "basic",
onClick: resetZoom,
isVisible: isImageOrPdf,
children: /*#__PURE__*/_jsx(PositionCenter, {
size: 18
})
})]
});
};
export default ActionButtons;