UNPKG

@uiw/react-signature

Version:

A signature board component for react.

38 lines 1.2 kB
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose"; var _excluded = ["renderPath", "container"]; import React, { Fragment } from 'react'; import { getStroke } from 'perfect-freehand'; import { useStore } from "./store.js"; import { useOptionStore } from "./options.js"; import { getSvgPathFromStroke } from "./utils.js"; import { jsx as _jsx } from "react/jsx-runtime"; export var Paths = () => { var data = useStore(); return /*#__PURE__*/_jsx(Fragment, { children: Object.keys(data).map((key, index) => /*#__PURE__*/_jsx(CreatePath, { keyName: key, index: index, data: data[key] }, key)) }); }; var CreatePath = _ref => { var { data = [], index, keyName } = _ref; var _useOptionStore = useOptionStore(), { renderPath, container } = _useOptionStore, options = _objectWithoutPropertiesLoose(_useOptionStore, _excluded); var stroke = getStroke(data, options); var pathData = getSvgPathFromStroke(stroke); var dom = renderPath ? renderPath(pathData, keyName, data, index, container) : null; if (dom) return dom; return /*#__PURE__*/_jsx("path", { d: pathData }); };