pdf-e-signature
Version:
A React component that allows users to select positions for e-signatures on PDFs
61 lines (60 loc) • 2.36 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const SignaturePosition = _ref => {
let {
position,
onSignatureClick,
onRemoveSign
} = _ref;
if (!position) return null;
return /*#__PURE__*/_react.default.createElement("div", {
style: {
position: 'absolute',
left: `${position.normalizedX * 100}%`,
top: `${position.normalizedY * 100}%`,
transform: 'translate(-50%, -50%)',
width: '150px',
height: position.signature ? '70px' : '50px',
border: position.signature ? 'none' : '2px dashed #3B82F6',
display: 'flex',
flexDirection: 'column',
justifyContent: 'center',
alignItems: 'center',
zIndex: 49
}
}, position.signature ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
className: "relative w-full"
}, /*#__PURE__*/_react.default.createElement("img", {
src: position.signature,
alt: "Signature",
style: {
maxWidth: '100%',
maxHeight: '50px',
background: 'none',
backgroundColor: 'transparent',
imageRendering: 'auto'
}
}), /*#__PURE__*/_react.default.createElement("button", {
onClick: onRemoveSign,
className: "absolute -top-2 -right-2 bg-red-500 text-white rounded-full w-6 h-6 flex items-center justify-center hover:bg-red-600 transition-colors",
title: "Remove signature"
}, /*#__PURE__*/_react.default.createElement("svg", {
xmlns: "http://www.w3.org/2000/svg",
className: "h-4 w-4",
viewBox: "0 0 24 24",
fill: "currentColor"
}, /*#__PURE__*/_react.default.createElement("path", {
d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
})))), /*#__PURE__*/_react.default.createElement("div", {
className: "text-xs text-black mt-1"
}, position.timestamp)) : /*#__PURE__*/_react.default.createElement("button", {
onClick: () => onSignatureClick(position),
className: "px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 transition-colors"
}, "Add Signature"));
};
var _default = exports.default = SignaturePosition;