@kne-components/react-pdf-sign 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/build/asset-manifest.json +26 -16
  2. package/build/index.html +1 -1
  3. package/build/remoteEntry.js +1 -1
  4. package/build/remoteEntry.js.map +1 -1
  5. package/build/static/css/{198.7cb1b9b2.chunk.css → 198.1558528e.chunk.css} +2 -2
  6. package/build/static/css/198.1558528e.chunk.css.map +1 -0
  7. package/build/static/css/{340.b3f109e8.chunk.css → 340.037fb7c5.chunk.css} +2 -2
  8. package/build/static/css/340.037fb7c5.chunk.css.map +1 -0
  9. package/build/static/js/0.72e00378.chunk.js +2 -0
  10. package/build/static/js/0.72e00378.chunk.js.map +1 -0
  11. package/build/static/js/198.9a9ef024.chunk.js +2 -0
  12. package/build/static/js/198.9a9ef024.chunk.js.map +1 -0
  13. package/build/static/js/237.64d52734.chunk.js +2 -0
  14. package/build/static/js/237.64d52734.chunk.js.map +1 -0
  15. package/build/static/js/286.81610b95.chunk.js +2 -0
  16. package/build/static/js/286.81610b95.chunk.js.map +1 -0
  17. package/build/static/js/340.5f3badc0.chunk.js +2 -0
  18. package/build/static/js/340.5f3badc0.chunk.js.map +1 -0
  19. package/build/static/js/399.af7961a2.chunk.js +2 -0
  20. package/build/static/js/399.af7961a2.chunk.js.map +1 -0
  21. package/build/static/js/568.1813e103.chunk.js +2 -0
  22. package/build/static/js/568.1813e103.chunk.js.map +1 -0
  23. package/build/static/js/627.df23f179.chunk.js +2 -0
  24. package/build/static/js/627.df23f179.chunk.js.map +1 -0
  25. package/build/static/js/989.5fbcdcdb.chunk.js +3 -0
  26. package/build/static/js/989.5fbcdcdb.chunk.js.map +1 -0
  27. package/build/static/js/main.ddea068b.js +2 -0
  28. package/build/static/js/main.ddea068b.js.map +1 -0
  29. package/package.json +1 -1
  30. package/build/static/css/198.7cb1b9b2.chunk.css.map +0 -1
  31. package/build/static/css/340.b3f109e8.chunk.css.map +0 -1
  32. package/build/static/js/198.0f24a165.chunk.js +0 -2
  33. package/build/static/js/198.0f24a165.chunk.js.map +0 -1
  34. package/build/static/js/340.1906f1da.chunk.js +0 -2
  35. package/build/static/js/340.1906f1da.chunk.js.map +0 -1
  36. package/build/static/js/7.a1482d96.chunk.js +0 -3
  37. package/build/static/js/7.a1482d96.chunk.js.map +0 -1
  38. package/build/static/js/8.df68e0a8.chunk.js +0 -2
  39. package/build/static/js/8.df68e0a8.chunk.js.map +0 -1
  40. package/build/static/js/main.c42144d3.js +0 -2
  41. package/build/static/js/main.c42144d3.js.map +0 -1
  42. /package/build/static/js/{7.a1482d96.chunk.js.LICENSE.txt → 989.5fbcdcdb.chunk.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/198.9a9ef024.chunk.js","mappings":"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","sources":["preset.js","App.js","bootstrap.js","../../README.md"],"sourcesContent":["import React from 'react';\nimport { preset as fetchPreset } from '@kne/react-fetch';\nimport { Spin, Empty, message } from 'antd';\nimport createAjax from '@kne/axios-fetch';\nimport { preset as remoteLoaderPreset } from '@kne/remote-loader';\n\nwindow.PUBLIC_URL = process.env.PUBLIC_URL;\n\n// url: 'https://registry.npmmirror.com',\n// tpl: '{{url}}/@kne-components%2f{{remote}}/{{version}}/files/build',\n\n// url: 'https://cdn.jsdelivr.net', tpl: '{{url}}/npm/@kne-components/{{remote}}@{{version}}/build'\n\nconst registry = {\n url: 'https://uc.fatalent.cn', tpl: '{{url}}/packages/@kne-components/{{remote}}/{{version}}/build'\n};\n\nexport const globalInit = async () => {\n const ajax = createAjax({\n errorHandler: error => message.error(error)\n });\n\n const componentsCoreRemote = {\n ...registry, remote: 'components-core', defaultVersion: '0.4.3'\n };\n\n remoteLoaderPreset({\n remotes: {\n default: componentsCoreRemote, 'components-core': componentsCoreRemote, 'components-iconfont': {\n ...registry, remote: 'components-iconfont', defaultVersion: '0.2.1'\n }, 'react-pdf-sign': process.env.NODE_ENV === 'development' ? {\n remote: 'react-pdf-sign', url: '/', tpl: '{{url}}'\n } : {\n ...registry, remote: 'react-pdf-sign', defaultVersion: process.env.DEFAULT_VERSION\n }\n }\n });\n\n\n fetchPreset({\n ajax, loading: <Spin delay={500}\n style={{\n position: 'absolute',\n left: '50%',\n padding: '10px',\n transform: 'translateX(-50%)'\n }} />, error: null, empty: <Empty />, transformResponse: (response) => {\n const { data } = response;\n response.data = {\n code: data.code === 0 ? 200 : data.code, msg: data.msg, results: data.data\n };\n return response;\n }\n });\n\n return {\n ajax, enums: {}, apis: {}, themeToken: {\n colorPrimary: '#4183F0'\n }\n };\n};\n","import { HashRouter } from \"react-router-dom\";\nimport createEntry from \"@kne/modules-dev/dist/create-entry.modern\";\nimport \"@kne/modules-dev/dist/create-entry.css\";\nimport readme from \"readme\";\n\nconst ExampleRoutes = createEntry.ExampleRoutes;\n\nconst App = ({ globalPreset, ...props }) => {\n return (\n <HashRouter>\n <ExampleRoutes\n {...props}\n paths={[\n {\n key: \"components\",\n path: \"/\",\n title: \"首页\",\n },\n ]}\n preset={globalPreset}\n themeToken={globalPreset.themeToken}\n readme={readme}\n pageProps={{ menu: null }}\n />\n </HashRouter>\n );\n};\n\nexport default App;\n","import { globalInit } from './preset';\nimport React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport App from './App';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\n\nconst renderRoot = async (App) => {\n const globalPreset = await globalInit();\n return root.render(<App themeToken={globalPreset.themeToken} globalPreset={globalPreset} />);\n};\n\nrenderRoot(App);\n","import * as component_1 from '@kne/current-lib_react-pdf-sign';\nimport * as component_2 from 'antd';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport * as component_5 from './doc/example.pdf';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport * as component_7 from './doc/signature.png';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nconst readmeConfig = {\n name: `react-pdf-sign`,\n summary: `<p>这是一个功能强大的 React PDF 签名组件库,专为需要在 PDF 文档上添加电子签名的应用场景而设计。该组件库提供了灵活的签名解决方案,支持即时签名添加和预定义签名区域两种模式。</p>\n<h2>核心特性</h2>\n<p><strong>直观的签名体验</strong> - 提供手写签名画板,用户可以通过鼠标或触摸设备自然地绘制签名,签名支持实时预览和调整。支持在签名画板上叠加自定义内容,如日期、文字等。</p>\n<p><strong>灵活的定位控制</strong> - 签名区域可以在 PDF 页面上自由拖拽、缩放和精确定位,支持保持比例缩放,确保签名的视觉效果。</p>\n<p><strong>完整的 PDF 操作</strong> - 基于 pdf-lib 和 react-pdf,支持多页 PDF 文档的浏览、签名定位和最终签名文件的生成。</p>\n<p><strong>组件化设计</strong> - 提供多个独立组件(PDFSign、PDFViewer、LocationLayer、useSignature),开发者可以根据需求灵活组合使用。支持默认签名位置设置和位置变化回调,便于集成到现有业务流程。</p>\n<p><strong>国际化支持</strong> - 内置中英文语言包,支持多语言切换,适合国际化应用。</p>\n<p><strong>现代化技术栈</strong> - 基于 React 18+,使用 Konva.js 实现高性能的图形渲染,支持响应式设计。</p>\n<h2>使用场景</h2>\n<ul>\n<li>合同签署系统</li>\n<li>文档审批流程</li>\n<li>电子表单签名</li>\n<li>证书颁发系统</li>\n<li>法律文件签署</li>\n</ul>\n<p>该组件库简化了 PDF 签名的复杂实现,开发者只需要几行代码就能集成完整的签名功能,大大提升了开发效率。新增的签名叠加功能让签名更加丰富和个性化,满足各种业务场景需求。</p>`,\n description: `这是一个功能强大的 React PDF 签名组件库,专为需要在 PDF 文档上添加电子签名的应用场景而设计。该组件库提供了灵活的签名解决方案,支持即时签名添加和预定义签名区域两种模式`,\n packageName: `@kne/react-pdf-sign`,\n api: `<h3>PDFSign</h3>\n<p>主要的 PDF 签名组件,集成了 PDF 查看器和签名定位功能。</p>\n<table>\n<thead>\n<tr>\n<th>属性</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>-</td>\n<td>PDF 文件的 URL 地址</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>string</td>\n<td>-</td>\n<td>签名图片的 URL 地址</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>签名区域的宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>50</td>\n<td>签名区域的高度</td>\n</tr>\n<tr>\n<td>padding</td>\n<td>number</td>\n<td>8</td>\n<td>签名区域变换器的内边距</td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>'拖拽到签名位置'</td>\n<td>签名区域的占位文本</td>\n</tr>\n<tr>\n<td>filename</td>\n<td>string</td>\n<td>'signed-document.pdf'</td>\n<td>生成签名PDF的文件名</td>\n</tr>\n<tr>\n<td>defaultLocation</td>\n<td>object</td>\n<td>-</td>\n<td>默认签名位置信息</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>签名位置变化回调函数</td>\n</tr>\n</tbody>\n</table>\n<h4>实例方法</h4>\n<table>\n<thead>\n<tr>\n<th>方法名</th>\n<th>参数</th>\n<th>返回值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>getLocation</td>\n<td>-</td>\n<td>object</td>\n<td>获取当前签名位置信息</td>\n</tr>\n<tr>\n<td>setLocation</td>\n<td>location: object</td>\n<td>-</td>\n<td>设置签名位置</td>\n</tr>\n<tr>\n<td>getPdfSignature</td>\n<td>-</td>\n<td>object</td>\n<td>获取 PDF 签名信息</td>\n</tr>\n<tr>\n<td>sign</td>\n<td>-</td>\n<td>Promise&lt;File&gt;</td>\n<td>生成签名后的 PDF 文件</td>\n</tr>\n</tbody>\n</table>\n<h3>PDFViewer</h3>\n<p>PDF 文档查看器组件,提供 PDF 页面浏览功能。</p>\n<table>\n<thead>\n<tr>\n<th>属性</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>-</td>\n<td>PDF 文件的 URL 地址</td>\n</tr>\n<tr>\n<td>className</td>\n<td>string</td>\n<td>-</td>\n<td>自定义 CSS 类名</td>\n</tr>\n<tr>\n<td>defaultPage</td>\n<td>number</td>\n<td>1</td>\n<td>默认显示的页码</td>\n</tr>\n<tr>\n<td>maxWidth</td>\n<td>number</td>\n<td>1200</td>\n<td>最大显示宽度</td>\n</tr>\n<tr>\n<td>pdfjsUrl</td>\n<td>string</td>\n<td>-</td>\n<td>自定义 pdf.js CDN 地址</td>\n</tr>\n<tr>\n<td>apis</td>\n<td>object</td>\n<td>-</td>\n<td>API 配置对象</td>\n</tr>\n</tbody>\n</table>\n<h4>children 渲染属性</h4>\n<p>当 children 为函数时,会传入以下参数:</p>\n<table>\n<thead>\n<tr>\n<th>参数</th>\n<th>类型</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>size</td>\n<td>object</td>\n<td>当前页面的尺寸信息</td>\n</tr>\n<tr>\n<td>currentPage</td>\n<td>number</td>\n<td>当前页码</td>\n</tr>\n<tr>\n<td>pageSize</td>\n<td>number</td>\n<td>总页数</td>\n</tr>\n</tbody>\n</table>\n<h3>LocationLayer</h3>\n<p>签名定位层组件,用于在 PDF 上定位和调整签名区域。</p>\n<table>\n<thead>\n<tr>\n<th>属性</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>stageWidth</td>\n<td>number</td>\n<td>-</td>\n<td>画布宽度(必需)</td>\n</tr>\n<tr>\n<td>stageHeight</td>\n<td>number</td>\n<td>-</td>\n<td>画布高度(必需)</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>签名区域宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>50</td>\n<td>签名区域高度</td>\n</tr>\n<tr>\n<td>padding</td>\n<td>number</td>\n<td>8</td>\n<td>变换器内边距</td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>'拖拽到签名位置'</td>\n<td>占位文本</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>string</td>\n<td>-</td>\n<td>签名图片 URL</td>\n</tr>\n<tr>\n<td>value</td>\n<td>object</td>\n<td>-</td>\n<td>受控的位置值</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>位置变化回调</td>\n</tr>\n</tbody>\n</table>\n<h3>useSignature</h3>\n<p>签名画板 Hook,提供手写签名功能。</p>\n<h4>返回的函数参数</h4>\n<table>\n<thead>\n<tr>\n<th>参数</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>filename</td>\n<td>string</td>\n<td>'signature.png'</td>\n<td>签名文件名</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>签名画板宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>80</td>\n<td>签名画板高度</td>\n</tr>\n<tr>\n<td>mask</td>\n<td>ReactNode</td>\n<td>-</td>\n<td>签名画板叠加内容</td>\n</tr>\n<tr>\n<td>onSuccess</td>\n<td>function</td>\n<td>-</td>\n<td>签名完成回调</td>\n</tr>\n<tr>\n<td>modalProps</td>\n<td>object</td>\n<td>-</td>\n<td>Modal 组件属性</td>\n</tr>\n</tbody>\n</table>\n<h4>Hook 配置参数</h4>\n<table>\n<thead>\n<tr>\n<th>参数</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>默认签名画板宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>80</td>\n<td>默认签名画板高度</td>\n</tr>\n</tbody>\n</table>`,\n example: {\n isFull: false,\n className: `react_pdf_sign_e88dd`,\n style: ``,\n list: [{\n title: `完整签名流程`,\n description: `演示PDF上传、手写签名创建和签名PDF生成的完整工作流程`,\n code: `const { default: ReactPdfSign, useSignature } = _ReactPdfSign;\nconst { useState, useRef } = React;\nconst { Flex, Button } = antd;\n\nconst BaseExample = () => {\n const [pdfFile, setPdfFile] = useState(null);\n const [sign, setSign] = useState(null);\n const ref = useRef(null);\n const signatureModal = useSignature();\n return (\n <Flex vertical gap={12}>\n <Flex gap={8}>\n <Button>\n <input\n type=\"file\"\n accept=\"application/pdf\"\n onChange={e => {\n const file = e.target.files[0];\n setPdfFile(URL.createObjectURL(file));\n }}\n />\n </Button>\n <Button\n onClick={() => {\n const { size } = ref.current.getLocation();\n signatureModal({\n mask: (\n <Flex justify=\"flex-end\" align=\"flex-end\" style={{ height: '100%', width: '100%', padding: '10px', boxSizing: 'border-box' }}>\n 签字日期: {new Date().toLocaleDateString()}\n </Flex>\n ),\n width: size.width,\n height: size.height,\n onSuccess: file => {\n setSign(URL.createObjectURL(file));\n }\n });\n }}>\n 添加签名\n </Button>\n {pdfFile && sign && (\n <Button\n onClick={async () => {\n const blob = await ref.current.sign();\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = 'signed-document.pdf';\n link.click();\n URL.revokeObjectURL(url);\n }}>\n 生成签名PDF\n </Button>\n )}\n </Flex>\n {pdfFile ? <ReactPdfSign url={pdfFile} signature={sign} ref={ref} /> : null}\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `签名定位层`,\n description: `展示独立的签名定位组件,支持拖拽和缩放调整签名位置`,\n code: `const { LocationLayer } = _ReactPdfSign;\n\nconst BaseExample = () => {\n return (\n <div>\n <LocationLayer stageWidth={400} stageHeight={300} />\n </div>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n}]\n},{\n title: `PDF查看器`,\n description: `基础的PDF文档查看器,支持页面切换和缩放显示`,\n code: `const { PDFViewer } = _ReactPdfSign;\nconst { default: examplePdf } = _examplePdf;\n\nconst BaseExample = () => {\n return (\n <div>\n <PDFViewer url={examplePdf} />\n </div>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"_examplePdf\",\n packageName: \"./doc/example.pdf\",\n component: component_5\n}]\n},{\n title: `PDF签名组件`,\n description: `演示PDF签名组件的API使用,包括位置获取、设置和签名文件生成`,\n code: `const { PDFSign } = _ReactPdfSign;\nconst { default: examplePdf } = _examplePdf;\nconst { default: signature } = _signature;\nconst { useRef } = React;\nconst { Flex, Button, App } = antd;\n\nconst BaseExample = () => {\n const ref = useRef();\n const ref2 = useRef();\n const { modal } = App.useApp();\n return (\n <Flex vertical gap={24}>\n <Flex vertical gap={8}>\n <Flex gap={8}>\n <Button\n onClick={() => {\n const location = ref.current.getLocation();\n modal.info({\n title: '签名位置',\n content: <pre>{JSON.stringify(location, null, 2)}</pre>\n });\n }}>\n 获取签名位置\n </Button>\n <Button\n onClick={() => {\n ref.current.setLocation({\n size: {\n width: 200,\n height: 50,\n x: 240,\n y: 47\n },\n scaleX: 1,\n scaleY: 1,\n x: 240,\n y: 47\n });\n }}>\n 设置签名位置\n </Button>\n <Button\n onClick={() => {\n const pdfSignature = ref.current.getPdfSignature();\n modal.info({\n title: 'PDF签名信息',\n content: <pre style={{ 'white-space': 'break-spaces' }}>{JSON.stringify(pdfSignature, null, 2)}</pre>\n });\n }}>\n 获取PDF签名信息\n </Button>\n </Flex>\n <PDFSign url={examplePdf} ref={ref} />\n </Flex>\n <Flex vertical gap={8}>\n <div>\n <Button\n onClick={async () => {\n const blob = await ref2.current.sign();\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = 'signed-document.pdf';\n link.click();\n URL.revokeObjectURL(url);\n }}>\n 生成签名文件\n </Button>\n </div>\n <PDFSign url={examplePdf} signature={signature} ref={ref2} />\n </Flex>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"_examplePdf\",\n packageName: \"./doc/example.pdf\",\n component: component_5\n},{\n name: \"_signature\",\n packageName: \"./doc/signature.png\",\n component: component_7\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `手写签名画板`,\n description: `展示useSignature Hook的使用,打开手写签名模态框`,\n code: `const { useSignature } = _ReactPdfSign;\nconst { Button, Flex } = antd;\n\nconst { useState } = React;\n\nconst BaseExample = () => {\n const [result, setResult] = useState(null);\n const modal = useSignature();\n return (\n <Flex vertical gap={12}>\n {result && <img src={result} alt=\"result\" style={{ width: '300px' }} />}\n <Flex gap={8}>\n <Button\n onClick={() => {\n modal({\n onSuccess: file => {\n console.log(file);\n setResult(URL.createObjectURL(file));\n }\n });\n }}>\n 签名\n </Button>\n <Button\n onClick={() => {\n modal({\n mask: (\n <Flex justify=\"flex-end\" align=\"flex-end\" style={{ height: '100%', width: '100%', padding: '10px', boxSizing: 'border-box' }}>\n 签字日期: {new Date().toLocaleDateString()}\n </Flex>\n ),\n onSuccess: file => {\n console.log(file);\n setResult(URL.createObjectURL(file));\n }\n });\n }}>\n 带有日期模版的签名\n </Button>\n </Flex>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n}]\n }\n};\nexport default readmeConfig;\n"],"names":["window","PUBLIC_URL","process","registry","url","tpl","ExampleRoutes","createEntry","_ref","globalPreset","props","_objectWithoutProperties","_excluded","_jsx","HashRouter","children","_objectSpread","paths","key","path","title","preset","themeToken","readme","pageProps","menu","root","ReactDOM","document","getElementById","async","ajax","createAjax","errorHandler","error","message","componentsCoreRemote","remote","defaultVersion","remoteLoaderPreset","remotes","default","fetchPreset","loading","Spin","delay","style","position","left","padding","transform","empty","Empty","transformResponse","response","data","code","msg","results","enums","apis","colorPrimary","globalInit","render","App","renderRoot","name","summary","description","packageName","api","example","isFull","className","list","scope","importStatement","component"],"ignoreList":[],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_kne_components_react_pdf_sign=self.webpackChunk_kne_components_react_pdf_sign||[]).push([[237],{876:(e,t,n)=>{n.d(t,{a:()=>l});var a=n(36018);function i(e){let t=function(e){let t=[],n="",a=0;for(let i=0;i<e.length;i++){let c=e[i];"("===c&&a++,")"===c&&(a=Math.max(0,a-1)),";"===c&&0===a?(t.push(n),n=""):n+=c}return n.trim()&&t.push(n),t.map(e=>e.trim()).filter(Boolean)}(e),n=null,a=null,i=null,c=[];for(let l of t){let e=l.indexOf(":");if(e<0)continue;let t=l.slice(0,e).trim().toLowerCase(),o=l.slice(e+1).trim();"box-shadow"===t?i=o:"filter"===t?n=o:"-webkit-filter"===t?a=o:c.push([t,o])}if(i){let e=function(e){let t=[],n="",a=0;for(let c=0;c<e.length;c++){let i=e[c];"("===i&&a++,")"===i&&(a=Math.max(0,a-1)),","===i&&0===a?(t.push(n.trim()),n=""):n+=i}n.trim()&&t.push(n.trim());let i=[];for(let c of t){if(/\binset\b/i.test(c))continue;let e=c.match(/-?\d+(?:\.\d+)?px/gi)||[],[t="0px",n="0px",a="0px"]=e,o=c.replace(/-?\d+(?:\.\d+)?px/gi,"").replace(/\binset\b/gi,"").trim().replace(/\s{2,}/g," "),l=!!o&&","!==o;i.push("drop-shadow(".concat(t," ").concat(n," ").concat(a).concat(l?" ".concat(o):"",")"))}return i.join(" ")}(i);e&&(n=n?"".concat(n," ").concat(e):e,a=a?"".concat(a," ").concat(e):e)}let o=[...c];return n&&o.push(["filter",n]),a&&o.push(["-webkit-filter",a]),o.map(e=>{let[t,n]=e;return"".concat(t,":").concat(n)}).join(";")}function c(e){return e=(e=e.replace(/<style[^>]*>([\s\S]*?)<\/style>/gi,(e,t)=>e.replace(t,function(e){return e.replace(/([^{}]+)\{([^}]*)\}/g,(e,t,n)=>"".concat(t,"{").concat(i(n),"}"))}(t)))).replace(/style=(['"])([\s\S]*?)\1/gi,(e,t,n)=>"style=".concat(t).concat(i(n)).concat(t))}function o(e){if(!(0,a.b)()||!function(e){return"string"==typeof e&&/^data:image\/svg\+xml/i.test(e)}(e))return e;try{let t=function(e){let t=e.indexOf(",");return t>=0?decodeURIComponent(e.slice(t+1)):""}(e);return function(e){return"data:image/svg+xml;charset=utf-8,".concat(encodeURIComponent(e))}(c(t))}catch(t){return e}}async function l(e,t){let{width:n,height:a,scale:i=1,dpr:c=1,meta:l={},backgroundColor:r}=t;e=o(e);let s=new Image;s.loading="eager",s.decoding="sync",s.crossOrigin="anonymous",s.src=e,await s.decode();let u,d,m=s.naturalWidth,p=s.naturalHeight,f=Number.isFinite(l.w0)?l.w0:m,h=Number.isFinite(l.h0)?l.h0:p,g=Number.isFinite(n),w=Number.isFinite(a);if(g&&w)u=Math.max(1,n),d=Math.max(1,a);else if(g){u=n,d=h*(n/Math.max(1,f))}else if(w){d=a,u=f*(a/Math.max(1,h))}else u=m,d=p;u*=i,d*=i;let v=document.createElement("canvas");v.width=u*c,v.height=d*c,v.style.width="".concat(u,"px"),v.style.height="".concat(d,"px");let y=v.getContext("2d");return 1!==c&&y.scale(c,c),r&&(y.save(),y.fillStyle=r,y.fillRect(0,0,u,d),y.restore()),y.drawImage(s,0,0,u,d),v}},16557:(e,t,n)=>{n.d(t,{a:()=>i});var a=n(876);async function i(e,t){let n=t.type;if("svg"===n){let t=decodeURIComponent(e.split(",")[1]);return new Blob([t],{type:"image/svg+xml"})}let i=await(0,a.a)(e,t);return new Promise(e=>i.toBlob(t=>e(t),"image/".concat(n),t.quality))}},27237:(e,t,n)=>{n.d(t,{download:()=>o});var a=n(89379),i=n(16557),c=n(876);async function o(e,t){let n=((null===t||void 0===t?void 0:t.format)||(null===t||void 0===t?void 0:t.type)||"").toLowerCase(),o="jpg"===n?"jpeg":n||"png",l=(null===t||void 0===t?void 0:t.filename)||"snapdom.".concat(o),r=(0,a.A)((0,a.A)({},t||{}),{},{format:o,type:o});if(r.dpr=1,"svg"===o){let t=await(0,i.a)(e,(0,a.A)((0,a.A)({},r),{},{type:"svg"})),n=URL.createObjectURL(t),c=document.createElement("a");return c.href=n,c.download=l,c.click(),void URL.revokeObjectURL(n)}let s=await(0,c.a)(e,r),u=document.createElement("a");u.href=s.toDataURL("image/".concat(o),null===t||void 0===t?void 0:t.quality),u.download=l,u.click()}}}]);
2
+ //# sourceMappingURL=237.64d52734.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/237.64d52734.chunk.js","mappings":"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","sources":["../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-3VYIPD3A.js","../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-T4JIPPZO.js","../../node_modules/@zumer/snapdom/dist/modules/exporters/download.js"],"sourcesContent":["/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{b}from\"./chunk-Q55H7S7M.js\";function S(e){return typeof e==\"string\"&&/^data:image\\/svg\\+xml/i.test(e)}function C(e){let n=e.indexOf(\",\");return n>=0?decodeURIComponent(e.slice(n+1)):\"\"}function v(e){return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`}function D(e){let n=[],t=\"\",i=0;for(let a=0;a<e.length;a++){let o=e[a];o===\"(\"&&i++,o===\")\"&&(i=Math.max(0,i-1)),o===\";\"&&i===0?(n.push(t),t=\"\"):t+=o}return t.trim()&&n.push(t),n.map(a=>a.trim()).filter(Boolean)}function k(e){let n=[],t=\"\",i=0;for(let o=0;o<e.length;o++){let c=e[o];c===\"(\"&&i++,c===\")\"&&(i=Math.max(0,i-1)),c===\",\"&&i===0?(n.push(t.trim()),t=\"\"):t+=c}t.trim()&&n.push(t.trim());let a=[];for(let o of n){if(/\\binset\\b/i.test(o))continue;let c=o.match(/-?\\d+(?:\\.\\d+)?px/gi)||[],[s=\"0px\",r=\"0px\",u=\"0px\"]=c,l=o.replace(/-?\\d+(?:\\.\\d+)?px/gi,\"\").replace(/\\binset\\b/ig,\"\").trim().replace(/\\s{2,}/g,\" \"),p=!!l&&l!==\",\";a.push(`drop-shadow(${s} ${r} ${u}${p?` ${l}`:\"\"})`)}return a.join(\" \")}function y(e){let n=D(e),t=null,i=null,a=null,o=[];for(let s of n){let r=s.indexOf(\":\");if(r<0)continue;let u=s.slice(0,r).trim().toLowerCase(),l=s.slice(r+1).trim();u===\"box-shadow\"?a=l:u===\"filter\"?t=l:u===\"-webkit-filter\"?i=l:o.push([u,l])}if(a){let s=k(a);s&&(t=t?`${t} ${s}`:s,i=i?`${i} ${s}`:s)}let c=[...o];return t&&c.push([\"filter\",t]),i&&c.push([\"-webkit-filter\",i]),c.map(([s,r])=>`${s}:${r}`).join(\";\")}function F(e){return e.replace(/([^{}]+)\\{([^}]*)\\}/g,(n,t,i)=>`${t}{${y(i)}}`)}function H(e){return e=e.replace(/<style[^>]*>([\\s\\S]*?)<\\/style>/gi,(n,t)=>n.replace(t,F(t))),e=e.replace(/style=(['\"])([\\s\\S]*?)\\1/gi,(n,t,i)=>`style=${t}${y(i)}${t}`),e}function M(e){if(!b()||!S(e))return e;try{let n=C(e),t=H(n);return v(t)}catch{return e}}async function W(e,n){let{width:t,height:i,scale:a=1,dpr:o=1,meta:c={},backgroundColor:s}=n;e=M(e);let r=new Image;r.loading=\"eager\",r.decoding=\"sync\",r.crossOrigin=\"anonymous\",r.src=e,await r.decode();let u=r.naturalWidth,l=r.naturalHeight,p=Number.isFinite(c.w0)?c.w0:u,x=Number.isFinite(c.h0)?c.h0:l,f,h,w=Number.isFinite(t),$=Number.isFinite(i);if(w&&$)f=Math.max(1,t),h=Math.max(1,i);else if(w){let g=t/Math.max(1,p);f=t,h=x*g}else if($){let g=i/Math.max(1,x);h=i,f=p*g}else f=u,h=l;f=f*a,h=h*a;let d=document.createElement(\"canvas\");d.width=f*o,d.height=h*o,d.style.width=`${f}px`,d.style.height=`${h}px`;let m=d.getContext(\"2d\");return o!==1&&m.scale(o,o),s&&(m.save(),m.fillStyle=s,m.fillRect(0,0,f,h),m.restore()),m.drawImage(r,0,0,f,h),d}export{W as a};\n","/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{a}from\"./chunk-3VYIPD3A.js\";async function m(o,t){let n=t.type;if(n===\"svg\"){let e=decodeURIComponent(o.split(\",\")[1]);return new Blob([e],{type:\"image/svg+xml\"})}let s=await a(o,t);return new Promise(e=>s.toBlob(c=>e(c),`image/${n}`,t.quality))}export{m as a};\n","/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{a as d}from\"../chunks/chunk-T4JIPPZO.js\";import{a as l}from\"../chunks/chunk-3VYIPD3A.js\";import\"../chunks/chunk-Q55H7S7M.js\";async function b(c,t){let r=(t?.format||t?.type||\"\").toLowerCase(),e=r===\"jpg\"?\"jpeg\":r||\"png\",m=t?.filename||`snapdom.${e}`,a={...t||{},format:e,type:e};if(a.dpr=1,e===\"svg\"){let i=await d(c,{...a,type:\"svg\"}),s=URL.createObjectURL(i),n=document.createElement(\"a\");n.href=s,n.download=m,n.click(),URL.revokeObjectURL(s);return}let f=await l(c,a),o=document.createElement(\"a\");o.href=f.toDataURL(`image/${e}`,t?.quality),o.download=m,o.click()}export{b as download};\n"],"names":["y","e","n","t","i","a","length","o","Math","max","push","trim","map","filter","Boolean","D","s","r","indexOf","u","slice","toLowerCase","l","c","test","match","replace","p","concat","join","k","_ref","H","F","M","b","S","decodeURIComponent","C","encodeURIComponent","v","_unused","async","W","width","height","scale","dpr","meta","backgroundColor","Image","loading","decoding","crossOrigin","src","decode","f","h","naturalWidth","naturalHeight","Number","isFinite","w0","x","h0","w","$","d","document","createElement","style","m","getContext","save","fillStyle","fillRect","restore","drawImage","type","split","Blob","Promise","toBlob","quality","format","filename","_objectSpread","URL","createObjectURL","href","download","click","revokeObjectURL","toDataURL"],"ignoreList":[],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_kne_components_react_pdf_sign=self.webpackChunk_kne_components_react_pdf_sign||[]).push([[286],{286:(t,e,n)=>{n.d(e,{rasterize:()=>a.a});var a=n(80341)},876:(t,e,n)=>{n.d(e,{a:()=>o});var a=n(36018);function c(t){let e=function(t){let e=[],n="",a=0;for(let c=0;c<t.length;c++){let i=t[c];"("===i&&a++,")"===i&&(a=Math.max(0,a-1)),";"===i&&0===a?(e.push(n),n=""):n+=i}return n.trim()&&e.push(n),e.map(t=>t.trim()).filter(Boolean)}(t),n=null,a=null,c=null,i=[];for(let o of e){let t=o.indexOf(":");if(t<0)continue;let e=o.slice(0,t).trim().toLowerCase(),r=o.slice(t+1).trim();"box-shadow"===e?c=r:"filter"===e?n=r:"-webkit-filter"===e?a=r:i.push([e,r])}if(c){let t=function(t){let e=[],n="",a=0;for(let i=0;i<t.length;i++){let c=t[i];"("===c&&a++,")"===c&&(a=Math.max(0,a-1)),","===c&&0===a?(e.push(n.trim()),n=""):n+=c}n.trim()&&e.push(n.trim());let c=[];for(let i of e){if(/\binset\b/i.test(i))continue;let t=i.match(/-?\d+(?:\.\d+)?px/gi)||[],[e="0px",n="0px",a="0px"]=t,r=i.replace(/-?\d+(?:\.\d+)?px/gi,"").replace(/\binset\b/gi,"").trim().replace(/\s{2,}/g," "),o=!!r&&","!==r;c.push("drop-shadow(".concat(e," ").concat(n," ").concat(a).concat(o?" ".concat(r):"",")"))}return c.join(" ")}(c);t&&(n=n?"".concat(n," ").concat(t):t,a=a?"".concat(a," ").concat(t):t)}let r=[...i];return n&&r.push(["filter",n]),a&&r.push(["-webkit-filter",a]),r.map(t=>{let[e,n]=t;return"".concat(e,":").concat(n)}).join(";")}function i(t){return t=(t=t.replace(/<style[^>]*>([\s\S]*?)<\/style>/gi,(t,e)=>t.replace(e,function(t){return t.replace(/([^{}]+)\{([^}]*)\}/g,(t,e,n)=>"".concat(e,"{").concat(c(n),"}"))}(e)))).replace(/style=(['"])([\s\S]*?)\1/gi,(t,e,n)=>"style=".concat(e).concat(c(n)).concat(e))}function r(t){if(!(0,a.b)()||!function(t){return"string"==typeof t&&/^data:image\/svg\+xml/i.test(t)}(t))return t;try{let e=function(t){let e=t.indexOf(",");return e>=0?decodeURIComponent(t.slice(e+1)):""}(t);return function(t){return"data:image/svg+xml;charset=utf-8,".concat(encodeURIComponent(t))}(i(e))}catch(e){return t}}async function o(t,e){let{width:n,height:a,scale:c=1,dpr:i=1,meta:o={},backgroundColor:l}=e;t=r(t);let s=new Image;s.loading="eager",s.decoding="sync",s.crossOrigin="anonymous",s.src=t,await s.decode();let u,h,f=s.naturalWidth,p=s.naturalHeight,d=Number.isFinite(o.w0)?o.w0:f,m=Number.isFinite(o.h0)?o.h0:p,g=Number.isFinite(n),x=Number.isFinite(a);if(g&&x)u=Math.max(1,n),h=Math.max(1,a);else if(g){u=n,h=m*(n/Math.max(1,d))}else if(x){h=a,u=d*(a/Math.max(1,m))}else u=f,h=p;u*=c,h*=c;let w=document.createElement("canvas");w.width=u*i,w.height=h*i,w.style.width="".concat(u,"px"),w.style.height="".concat(h,"px");let y=w.getContext("2d");return 1!==i&&y.scale(i,i),l&&(y.save(),y.fillStyle=l,y.fillRect(0,0,u,h),y.restore()),y.drawImage(s,0,0,u,h),w}},80341:(t,e,n)=>{n.d(e,{a:()=>c});var a=n(876);async function c(t,e){let n=await(0,a.a)(t,e),c=new Image;return c.src=n.toDataURL("image/".concat(e.format),e.quality),await c.decode(),c.style.width="".concat(n.width/e.dpr,"px"),c.style.height="".concat(n.height/e.dpr,"px"),c}}}]);
2
+ //# sourceMappingURL=286.81610b95.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/286.81610b95.chunk.js","mappings":"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","sources":["../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-3VYIPD3A.js","../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-ANSXOGKI.js"],"sourcesContent":["/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{b}from\"./chunk-Q55H7S7M.js\";function S(e){return typeof e==\"string\"&&/^data:image\\/svg\\+xml/i.test(e)}function C(e){let n=e.indexOf(\",\");return n>=0?decodeURIComponent(e.slice(n+1)):\"\"}function v(e){return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`}function D(e){let n=[],t=\"\",i=0;for(let a=0;a<e.length;a++){let o=e[a];o===\"(\"&&i++,o===\")\"&&(i=Math.max(0,i-1)),o===\";\"&&i===0?(n.push(t),t=\"\"):t+=o}return t.trim()&&n.push(t),n.map(a=>a.trim()).filter(Boolean)}function k(e){let n=[],t=\"\",i=0;for(let o=0;o<e.length;o++){let c=e[o];c===\"(\"&&i++,c===\")\"&&(i=Math.max(0,i-1)),c===\",\"&&i===0?(n.push(t.trim()),t=\"\"):t+=c}t.trim()&&n.push(t.trim());let a=[];for(let o of n){if(/\\binset\\b/i.test(o))continue;let c=o.match(/-?\\d+(?:\\.\\d+)?px/gi)||[],[s=\"0px\",r=\"0px\",u=\"0px\"]=c,l=o.replace(/-?\\d+(?:\\.\\d+)?px/gi,\"\").replace(/\\binset\\b/ig,\"\").trim().replace(/\\s{2,}/g,\" \"),p=!!l&&l!==\",\";a.push(`drop-shadow(${s} ${r} ${u}${p?` ${l}`:\"\"})`)}return a.join(\" \")}function y(e){let n=D(e),t=null,i=null,a=null,o=[];for(let s of n){let r=s.indexOf(\":\");if(r<0)continue;let u=s.slice(0,r).trim().toLowerCase(),l=s.slice(r+1).trim();u===\"box-shadow\"?a=l:u===\"filter\"?t=l:u===\"-webkit-filter\"?i=l:o.push([u,l])}if(a){let s=k(a);s&&(t=t?`${t} ${s}`:s,i=i?`${i} ${s}`:s)}let c=[...o];return t&&c.push([\"filter\",t]),i&&c.push([\"-webkit-filter\",i]),c.map(([s,r])=>`${s}:${r}`).join(\";\")}function F(e){return e.replace(/([^{}]+)\\{([^}]*)\\}/g,(n,t,i)=>`${t}{${y(i)}}`)}function H(e){return e=e.replace(/<style[^>]*>([\\s\\S]*?)<\\/style>/gi,(n,t)=>n.replace(t,F(t))),e=e.replace(/style=(['\"])([\\s\\S]*?)\\1/gi,(n,t,i)=>`style=${t}${y(i)}${t}`),e}function M(e){if(!b()||!S(e))return e;try{let n=C(e),t=H(n);return v(t)}catch{return e}}async function W(e,n){let{width:t,height:i,scale:a=1,dpr:o=1,meta:c={},backgroundColor:s}=n;e=M(e);let r=new Image;r.loading=\"eager\",r.decoding=\"sync\",r.crossOrigin=\"anonymous\",r.src=e,await r.decode();let u=r.naturalWidth,l=r.naturalHeight,p=Number.isFinite(c.w0)?c.w0:u,x=Number.isFinite(c.h0)?c.h0:l,f,h,w=Number.isFinite(t),$=Number.isFinite(i);if(w&&$)f=Math.max(1,t),h=Math.max(1,i);else if(w){let g=t/Math.max(1,p);f=t,h=x*g}else if($){let g=i/Math.max(1,x);h=i,f=p*g}else f=u,h=l;f=f*a,h=h*a;let d=document.createElement(\"canvas\");d.width=f*o,d.height=h*o,d.style.width=`${f}px`,d.style.height=`${h}px`;let m=d.getContext(\"2d\");return o!==1&&m.scale(o,o),s&&(m.save(),m.fillStyle=s,m.fillRect(0,0,f,h),m.restore()),m.drawImage(r,0,0,f,h),d}export{W as a};\n","/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{a as r}from\"./chunk-3VYIPD3A.js\";async function d(i,a){let e=await r(i,a),t=new Image;return t.src=e.toDataURL(`image/${a.format}`,a.quality),await t.decode(),t.style.width=`${e.width/a.dpr}px`,t.style.height=`${e.height/a.dpr}px`,t}export{d as a};\n"],"names":["y","e","n","t","i","a","length","o","Math","max","push","trim","map","filter","Boolean","D","s","r","indexOf","u","slice","toLowerCase","l","c","test","match","replace","p","concat","join","k","_ref","H","F","M","b","S","decodeURIComponent","C","encodeURIComponent","v","_unused","async","W","width","height","scale","dpr","meta","backgroundColor","Image","loading","decoding","crossOrigin","src","decode","f","h","naturalWidth","naturalHeight","Number","isFinite","w0","x","h0","w","$","d","document","createElement","style","m","getContext","save","fillStyle","fillRect","restore","drawImage","toDataURL","format","quality"],"ignoreList":[],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_kne_components_react_pdf_sign=self.webpackChunk_kne_components_react_pdf_sign||[]).push([[340],{26784:(n,t,e)=>{e.r(t),e.d(t,{default:()=>c,manifest:()=>s});var d=e(81755),a=e(55199);const r=e.p+"static/media/example.034ae1f30c5fe6d68d26.pdf";var i=e.t(r);const o=e.p+"static/media/signature.841922fcd4ffbb9de231.png";const c={ReactPdfSign:{name:"react-pdf-sign",summary:"<p>\u8fd9\u662f\u4e00\u4e2a\u529f\u80fd\u5f3a\u5927\u7684 React PDF \u7b7e\u540d\u7ec4\u4ef6\u5e93\uff0c\u4e13\u4e3a\u9700\u8981\u5728 PDF \u6587\u6863\u4e0a\u6dfb\u52a0\u7535\u5b50\u7b7e\u540d\u7684\u5e94\u7528\u573a\u666f\u800c\u8bbe\u8ba1\u3002\u8be5\u7ec4\u4ef6\u5e93\u63d0\u4f9b\u4e86\u7075\u6d3b\u7684\u7b7e\u540d\u89e3\u51b3\u65b9\u6848\uff0c\u652f\u6301\u5373\u65f6\u7b7e\u540d\u6dfb\u52a0\u548c\u9884\u5b9a\u4e49\u7b7e\u540d\u533a\u57df\u4e24\u79cd\u6a21\u5f0f\u3002</p>\n<h2>\u6838\u5fc3\u7279\u6027</h2>\n<p><strong>\u76f4\u89c2\u7684\u7b7e\u540d\u4f53\u9a8c</strong> - \u63d0\u4f9b\u624b\u5199\u7b7e\u540d\u753b\u677f\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u9f20\u6807\u6216\u89e6\u6478\u8bbe\u5907\u81ea\u7136\u5730\u7ed8\u5236\u7b7e\u540d\uff0c\u7b7e\u540d\u652f\u6301\u5b9e\u65f6\u9884\u89c8\u548c\u8c03\u6574\u3002\u652f\u6301\u5728\u7b7e\u540d\u753b\u677f\u4e0a\u53e0\u52a0\u81ea\u5b9a\u4e49\u5185\u5bb9\uff0c\u5982\u65e5\u671f\u3001\u6587\u5b57\u7b49\u3002</p>\n<p><strong>\u7075\u6d3b\u7684\u5b9a\u4f4d\u63a7\u5236</strong> - \u7b7e\u540d\u533a\u57df\u53ef\u4ee5\u5728 PDF \u9875\u9762\u4e0a\u81ea\u7531\u62d6\u62fd\u3001\u7f29\u653e\u548c\u7cbe\u786e\u5b9a\u4f4d\uff0c\u652f\u6301\u4fdd\u6301\u6bd4\u4f8b\u7f29\u653e\uff0c\u786e\u4fdd\u7b7e\u540d\u7684\u89c6\u89c9\u6548\u679c\u3002</p>\n<p><strong>\u5b8c\u6574\u7684 PDF \u64cd\u4f5c</strong> - \u57fa\u4e8e pdf-lib \u548c react-pdf\uff0c\u652f\u6301\u591a\u9875 PDF \u6587\u6863\u7684\u6d4f\u89c8\u3001\u7b7e\u540d\u5b9a\u4f4d\u548c\u6700\u7ec8\u7b7e\u540d\u6587\u4ef6\u7684\u751f\u6210\u3002</p>\n<p><strong>\u7ec4\u4ef6\u5316\u8bbe\u8ba1</strong> - \u63d0\u4f9b\u591a\u4e2a\u72ec\u7acb\u7ec4\u4ef6\uff08PDFSign\u3001PDFViewer\u3001LocationLayer\u3001useSignature\uff09\uff0c\u5f00\u53d1\u8005\u53ef\u4ee5\u6839\u636e\u9700\u6c42\u7075\u6d3b\u7ec4\u5408\u4f7f\u7528\u3002\u652f\u6301\u9ed8\u8ba4\u7b7e\u540d\u4f4d\u7f6e\u8bbe\u7f6e\u548c\u4f4d\u7f6e\u53d8\u5316\u56de\u8c03\uff0c\u4fbf\u4e8e\u96c6\u6210\u5230\u73b0\u6709\u4e1a\u52a1\u6d41\u7a0b\u3002</p>\n<p><strong>\u56fd\u9645\u5316\u652f\u6301</strong> - \u5185\u7f6e\u4e2d\u82f1\u6587\u8bed\u8a00\u5305\uff0c\u652f\u6301\u591a\u8bed\u8a00\u5207\u6362\uff0c\u9002\u5408\u56fd\u9645\u5316\u5e94\u7528\u3002</p>\n<p><strong>\u73b0\u4ee3\u5316\u6280\u672f\u6808</strong> - \u57fa\u4e8e React 18+\uff0c\u4f7f\u7528 Konva.js \u5b9e\u73b0\u9ad8\u6027\u80fd\u7684\u56fe\u5f62\u6e32\u67d3\uff0c\u652f\u6301\u54cd\u5e94\u5f0f\u8bbe\u8ba1\u3002</p>\n<h2>\u4f7f\u7528\u573a\u666f</h2>\n<ul>\n<li>\u5408\u540c\u7b7e\u7f72\u7cfb\u7edf</li>\n<li>\u6587\u6863\u5ba1\u6279\u6d41\u7a0b</li>\n<li>\u7535\u5b50\u8868\u5355\u7b7e\u540d</li>\n<li>\u8bc1\u4e66\u9881\u53d1\u7cfb\u7edf</li>\n<li>\u6cd5\u5f8b\u6587\u4ef6\u7b7e\u7f72</li>\n</ul>\n<p>\u8be5\u7ec4\u4ef6\u5e93\u7b80\u5316\u4e86 PDF \u7b7e\u540d\u7684\u590d\u6742\u5b9e\u73b0\uff0c\u5f00\u53d1\u8005\u53ea\u9700\u8981\u51e0\u884c\u4ee3\u7801\u5c31\u80fd\u96c6\u6210\u5b8c\u6574\u7684\u7b7e\u540d\u529f\u80fd\uff0c\u5927\u5927\u63d0\u5347\u4e86\u5f00\u53d1\u6548\u7387\u3002\u65b0\u589e\u7684\u7b7e\u540d\u53e0\u52a0\u529f\u80fd\u8ba9\u7b7e\u540d\u66f4\u52a0\u4e30\u5bcc\u548c\u4e2a\u6027\u5316\uff0c\u6ee1\u8db3\u5404\u79cd\u4e1a\u52a1\u573a\u666f\u9700\u6c42\u3002</p>",description:"\u8fd9\u662f\u4e00\u4e2a\u529f\u80fd\u5f3a\u5927\u7684 React PDF \u7b7e\u540d\u7ec4\u4ef6\u5e93\uff0c\u4e13\u4e3a\u9700\u8981\u5728 PDF \u6587\u6863\u4e0a\u6dfb\u52a0\u7535\u5b50\u7b7e\u540d\u7684\u5e94\u7528\u573a\u666f\u800c\u8bbe\u8ba1\u3002\u8be5\u7ec4\u4ef6\u5e93\u63d0\u4f9b\u4e86\u7075\u6d3b\u7684\u7b7e\u540d\u89e3\u51b3\u65b9\u6848\uff0c\u652f\u6301\u5373\u65f6\u7b7e\u540d\u6dfb\u52a0\u548c\u9884\u5b9a\u4e49\u7b7e\u540d\u533a\u57df\u4e24\u79cd\u6a21\u5f0f",packageName:"@kne/react-pdf-sign",api:"<h3>PDFSign</h3>\n<p>\u4e3b\u8981\u7684 PDF \u7b7e\u540d\u7ec4\u4ef6\uff0c\u96c6\u6210\u4e86 PDF \u67e5\u770b\u5668\u548c\u7b7e\u540d\u5b9a\u4f4d\u529f\u80fd\u3002</p>\n<table>\n<thead>\n<tr>\n<th>\u5c5e\u6027</th>\n<th>\u7c7b\u578b</th>\n<th>\u9ed8\u8ba4\u503c</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>-</td>\n<td>PDF \u6587\u4ef6\u7684 URL \u5730\u5740</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>string</td>\n<td>-</td>\n<td>\u7b7e\u540d\u56fe\u7247\u7684 URL \u5730\u5740</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>\u7b7e\u540d\u533a\u57df\u7684\u5bbd\u5ea6</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>50</td>\n<td>\u7b7e\u540d\u533a\u57df\u7684\u9ad8\u5ea6</td>\n</tr>\n<tr>\n<td>padding</td>\n<td>number</td>\n<td>8</td>\n<td>\u7b7e\u540d\u533a\u57df\u53d8\u6362\u5668\u7684\u5185\u8fb9\u8ddd</td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>'\u62d6\u62fd\u5230\u7b7e\u540d\u4f4d\u7f6e'</td>\n<td>\u7b7e\u540d\u533a\u57df\u7684\u5360\u4f4d\u6587\u672c</td>\n</tr>\n<tr>\n<td>filename</td>\n<td>string</td>\n<td>'signed-document.pdf'</td>\n<td>\u751f\u6210\u7b7e\u540dPDF\u7684\u6587\u4ef6\u540d</td>\n</tr>\n<tr>\n<td>defaultLocation</td>\n<td>object</td>\n<td>-</td>\n<td>\u9ed8\u8ba4\u7b7e\u540d\u4f4d\u7f6e\u4fe1\u606f</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>\u7b7e\u540d\u4f4d\u7f6e\u53d8\u5316\u56de\u8c03\u51fd\u6570</td>\n</tr>\n</tbody>\n</table>\n<h4>\u5b9e\u4f8b\u65b9\u6cd5</h4>\n<table>\n<thead>\n<tr>\n<th>\u65b9\u6cd5\u540d</th>\n<th>\u53c2\u6570</th>\n<th>\u8fd4\u56de\u503c</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>getLocation</td>\n<td>-</td>\n<td>object</td>\n<td>\u83b7\u53d6\u5f53\u524d\u7b7e\u540d\u4f4d\u7f6e\u4fe1\u606f</td>\n</tr>\n<tr>\n<td>setLocation</td>\n<td>location: object</td>\n<td>-</td>\n<td>\u8bbe\u7f6e\u7b7e\u540d\u4f4d\u7f6e</td>\n</tr>\n<tr>\n<td>getPdfSignature</td>\n<td>-</td>\n<td>object</td>\n<td>\u83b7\u53d6 PDF \u7b7e\u540d\u4fe1\u606f</td>\n</tr>\n<tr>\n<td>sign</td>\n<td>-</td>\n<td>Promise&lt;File&gt;</td>\n<td>\u751f\u6210\u7b7e\u540d\u540e\u7684 PDF \u6587\u4ef6</td>\n</tr>\n</tbody>\n</table>\n<h3>PDFViewer</h3>\n<p>PDF \u6587\u6863\u67e5\u770b\u5668\u7ec4\u4ef6\uff0c\u63d0\u4f9b PDF \u9875\u9762\u6d4f\u89c8\u529f\u80fd\u3002</p>\n<table>\n<thead>\n<tr>\n<th>\u5c5e\u6027</th>\n<th>\u7c7b\u578b</th>\n<th>\u9ed8\u8ba4\u503c</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>-</td>\n<td>PDF \u6587\u4ef6\u7684 URL \u5730\u5740</td>\n</tr>\n<tr>\n<td>className</td>\n<td>string</td>\n<td>-</td>\n<td>\u81ea\u5b9a\u4e49 CSS \u7c7b\u540d</td>\n</tr>\n<tr>\n<td>defaultPage</td>\n<td>number</td>\n<td>1</td>\n<td>\u9ed8\u8ba4\u663e\u793a\u7684\u9875\u7801</td>\n</tr>\n<tr>\n<td>maxWidth</td>\n<td>number</td>\n<td>1200</td>\n<td>\u6700\u5927\u663e\u793a\u5bbd\u5ea6</td>\n</tr>\n<tr>\n<td>pdfjsUrl</td>\n<td>string</td>\n<td>-</td>\n<td>\u81ea\u5b9a\u4e49 pdf.js CDN \u5730\u5740</td>\n</tr>\n<tr>\n<td>apis</td>\n<td>object</td>\n<td>-</td>\n<td>API \u914d\u7f6e\u5bf9\u8c61</td>\n</tr>\n</tbody>\n</table>\n<h4>children \u6e32\u67d3\u5c5e\u6027</h4>\n<p>\u5f53 children \u4e3a\u51fd\u6570\u65f6\uff0c\u4f1a\u4f20\u5165\u4ee5\u4e0b\u53c2\u6570\uff1a</p>\n<table>\n<thead>\n<tr>\n<th>\u53c2\u6570</th>\n<th>\u7c7b\u578b</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>size</td>\n<td>object</td>\n<td>\u5f53\u524d\u9875\u9762\u7684\u5c3a\u5bf8\u4fe1\u606f</td>\n</tr>\n<tr>\n<td>currentPage</td>\n<td>number</td>\n<td>\u5f53\u524d\u9875\u7801</td>\n</tr>\n<tr>\n<td>pageSize</td>\n<td>number</td>\n<td>\u603b\u9875\u6570</td>\n</tr>\n</tbody>\n</table>\n<h3>LocationLayer</h3>\n<p>\u7b7e\u540d\u5b9a\u4f4d\u5c42\u7ec4\u4ef6\uff0c\u7528\u4e8e\u5728 PDF \u4e0a\u5b9a\u4f4d\u548c\u8c03\u6574\u7b7e\u540d\u533a\u57df\u3002</p>\n<table>\n<thead>\n<tr>\n<th>\u5c5e\u6027</th>\n<th>\u7c7b\u578b</th>\n<th>\u9ed8\u8ba4\u503c</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>stageWidth</td>\n<td>number</td>\n<td>-</td>\n<td>\u753b\u5e03\u5bbd\u5ea6\uff08\u5fc5\u9700\uff09</td>\n</tr>\n<tr>\n<td>stageHeight</td>\n<td>number</td>\n<td>-</td>\n<td>\u753b\u5e03\u9ad8\u5ea6\uff08\u5fc5\u9700\uff09</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>\u7b7e\u540d\u533a\u57df\u5bbd\u5ea6</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>50</td>\n<td>\u7b7e\u540d\u533a\u57df\u9ad8\u5ea6</td>\n</tr>\n<tr>\n<td>padding</td>\n<td>number</td>\n<td>8</td>\n<td>\u53d8\u6362\u5668\u5185\u8fb9\u8ddd</td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>'\u62d6\u62fd\u5230\u7b7e\u540d\u4f4d\u7f6e'</td>\n<td>\u5360\u4f4d\u6587\u672c</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>string</td>\n<td>-</td>\n<td>\u7b7e\u540d\u56fe\u7247 URL</td>\n</tr>\n<tr>\n<td>value</td>\n<td>object</td>\n<td>-</td>\n<td>\u53d7\u63a7\u7684\u4f4d\u7f6e\u503c</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>\u4f4d\u7f6e\u53d8\u5316\u56de\u8c03</td>\n</tr>\n</tbody>\n</table>\n<h3>useSignature</h3>\n<p>\u7b7e\u540d\u753b\u677f Hook\uff0c\u63d0\u4f9b\u624b\u5199\u7b7e\u540d\u529f\u80fd\u3002</p>\n<h4>\u8fd4\u56de\u7684\u51fd\u6570\u53c2\u6570</h4>\n<table>\n<thead>\n<tr>\n<th>\u53c2\u6570</th>\n<th>\u7c7b\u578b</th>\n<th>\u9ed8\u8ba4\u503c</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>filename</td>\n<td>string</td>\n<td>'signature.png'</td>\n<td>\u7b7e\u540d\u6587\u4ef6\u540d</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>\u7b7e\u540d\u753b\u677f\u5bbd\u5ea6</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>80</td>\n<td>\u7b7e\u540d\u753b\u677f\u9ad8\u5ea6</td>\n</tr>\n<tr>\n<td>mask</td>\n<td>ReactNode</td>\n<td>-</td>\n<td>\u7b7e\u540d\u753b\u677f\u53e0\u52a0\u5185\u5bb9</td>\n</tr>\n<tr>\n<td>onSuccess</td>\n<td>function</td>\n<td>-</td>\n<td>\u7b7e\u540d\u5b8c\u6210\u56de\u8c03</td>\n</tr>\n<tr>\n<td>modalProps</td>\n<td>object</td>\n<td>-</td>\n<td>Modal \u7ec4\u4ef6\u5c5e\u6027</td>\n</tr>\n</tbody>\n</table>\n<h4>Hook \u914d\u7f6e\u53c2\u6570</h4>\n<table>\n<thead>\n<tr>\n<th>\u53c2\u6570</th>\n<th>\u7c7b\u578b</th>\n<th>\u9ed8\u8ba4\u503c</th>\n<th>\u8bf4\u660e</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>\u9ed8\u8ba4\u7b7e\u540d\u753b\u677f\u5bbd\u5ea6</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>80</td>\n<td>\u9ed8\u8ba4\u7b7e\u540d\u753b\u677f\u9ad8\u5ea6</td>\n</tr>\n</tbody>\n</table>",example:{isFull:!1,className:"react_pdf_sign_e88dd",style:"",list:[{title:"\u5b8c\u6574\u7b7e\u540d\u6d41\u7a0b",description:"\u6f14\u793aPDF\u4e0a\u4f20\u3001\u624b\u5199\u7b7e\u540d\u521b\u5efa\u548c\u7b7e\u540dPDF\u751f\u6210\u7684\u5b8c\u6574\u5de5\u4f5c\u6d41\u7a0b",code:"const { default: ReactPdfSign, useSignature } = _ReactPdfSign;\nconst { useState, useRef } = React;\nconst { Flex, Button } = antd;\n\nconst BaseExample = () => {\n const [pdfFile, setPdfFile] = useState(null);\n const [sign, setSign] = useState(null);\n const ref = useRef(null);\n const signatureModal = useSignature();\n return (\n <Flex vertical gap={12}>\n <Flex gap={8}>\n <Button>\n <input\n type=\"file\"\n accept=\"application/pdf\"\n onChange={e => {\n const file = e.target.files[0];\n setPdfFile(URL.createObjectURL(file));\n }}\n />\n </Button>\n <Button\n onClick={() => {\n const { size } = ref.current.getLocation();\n signatureModal({\n mask: (\n <Flex justify=\"flex-end\" align=\"flex-end\" style={{ height: '100%', width: '100%', padding: '10px', boxSizing: 'border-box' }}>\n \u7b7e\u5b57\u65e5\u671f: {new Date().toLocaleDateString()}\n </Flex>\n ),\n width: size.width,\n height: size.height,\n onSuccess: file => {\n setSign(URL.createObjectURL(file));\n }\n });\n }}>\n \u6dfb\u52a0\u7b7e\u540d\n </Button>\n {pdfFile && sign && (\n <Button\n onClick={async () => {\n const blob = await ref.current.sign();\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = 'signed-document.pdf';\n link.click();\n URL.revokeObjectURL(url);\n }}>\n \u751f\u6210\u7b7e\u540dPDF\n </Button>\n )}\n </Flex>\n {pdfFile ? <ReactPdfSign url={pdfFile} signature={sign} ref={ref} /> : null}\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n",scope:[{name:"_ReactPdfSign",packageName:"@kne/current-lib_react-pdf-sign",importStatement:'import * as _ReactPdfSign from "@kne/react-pdf-sign"',component:d},{name:"antd",packageName:"antd",component:a}]},{title:"\u7b7e\u540d\u5b9a\u4f4d\u5c42",description:"\u5c55\u793a\u72ec\u7acb\u7684\u7b7e\u540d\u5b9a\u4f4d\u7ec4\u4ef6\uff0c\u652f\u6301\u62d6\u62fd\u548c\u7f29\u653e\u8c03\u6574\u7b7e\u540d\u4f4d\u7f6e",code:"const { LocationLayer } = _ReactPdfSign;\n\nconst BaseExample = () => {\n return (\n <div>\n <LocationLayer stageWidth={400} stageHeight={300} />\n </div>\n );\n};\n\nrender(<BaseExample />);\n\n",scope:[{name:"_ReactPdfSign",packageName:"@kne/current-lib_react-pdf-sign",importStatement:'import * as _ReactPdfSign from "@kne/react-pdf-sign"',component:d}]},{title:"PDF\u67e5\u770b\u5668",description:"\u57fa\u7840\u7684PDF\u6587\u6863\u67e5\u770b\u5668\uff0c\u652f\u6301\u9875\u9762\u5207\u6362\u548c\u7f29\u653e\u663e\u793a",code:"const { PDFViewer } = _ReactPdfSign;\nconst { default: examplePdf } = _examplePdf;\n\nconst BaseExample = () => {\n return (\n <div>\n <PDFViewer url={examplePdf} />\n </div>\n );\n};\n\nrender(<BaseExample />);\n\n",scope:[{name:"_ReactPdfSign",packageName:"@kne/current-lib_react-pdf-sign",importStatement:'import * as _ReactPdfSign from "@kne/react-pdf-sign"',component:d},{name:"_examplePdf",packageName:"./doc/example.pdf",component:i}]},{title:"PDF\u7b7e\u540d\u7ec4\u4ef6",description:"\u6f14\u793aPDF\u7b7e\u540d\u7ec4\u4ef6\u7684API\u4f7f\u7528\uff0c\u5305\u62ec\u4f4d\u7f6e\u83b7\u53d6\u3001\u8bbe\u7f6e\u548c\u7b7e\u540d\u6587\u4ef6\u751f\u6210",code:"const { PDFSign } = _ReactPdfSign;\nconst { default: examplePdf } = _examplePdf;\nconst { default: signature } = _signature;\nconst { useRef } = React;\nconst { Flex, Button, App } = antd;\n\nconst BaseExample = () => {\n const ref = useRef();\n const ref2 = useRef();\n const { modal } = App.useApp();\n return (\n <Flex vertical gap={24}>\n <Flex vertical gap={8}>\n <Flex gap={8}>\n <Button\n onClick={() => {\n const location = ref.current.getLocation();\n modal.info({\n title: '\u7b7e\u540d\u4f4d\u7f6e',\n content: <pre>{JSON.stringify(location, null, 2)}</pre>\n });\n }}>\n \u83b7\u53d6\u7b7e\u540d\u4f4d\u7f6e\n </Button>\n <Button\n onClick={() => {\n ref.current.setLocation({\n size: {\n width: 200,\n height: 50,\n x: 240,\n y: 47\n },\n scaleX: 1,\n scaleY: 1,\n x: 240,\n y: 47\n });\n }}>\n \u8bbe\u7f6e\u7b7e\u540d\u4f4d\u7f6e\n </Button>\n <Button\n onClick={() => {\n const pdfSignature = ref.current.getPdfSignature();\n modal.info({\n title: 'PDF\u7b7e\u540d\u4fe1\u606f',\n content: <pre style={{ 'white-space': 'break-spaces' }}>{JSON.stringify(pdfSignature, null, 2)}</pre>\n });\n }}>\n \u83b7\u53d6PDF\u7b7e\u540d\u4fe1\u606f\n </Button>\n </Flex>\n <PDFSign url={examplePdf} ref={ref} />\n </Flex>\n <Flex vertical gap={8}>\n <div>\n <Button\n onClick={async () => {\n const blob = await ref2.current.sign();\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = 'signed-document.pdf';\n link.click();\n URL.revokeObjectURL(url);\n }}>\n \u751f\u6210\u7b7e\u540d\u6587\u4ef6\n </Button>\n </div>\n <PDFSign url={examplePdf} signature={signature} ref={ref2} />\n </Flex>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n",scope:[{name:"_ReactPdfSign",packageName:"@kne/current-lib_react-pdf-sign",importStatement:'import * as _ReactPdfSign from "@kne/react-pdf-sign"',component:d},{name:"_examplePdf",packageName:"./doc/example.pdf",component:i},{name:"_signature",packageName:"./doc/signature.png",component:e.t(o)},{name:"antd",packageName:"antd",component:a}]},{title:"\u624b\u5199\u7b7e\u540d\u753b\u677f",description:"\u5c55\u793auseSignature Hook\u7684\u4f7f\u7528\uff0c\u6253\u5f00\u624b\u5199\u7b7e\u540d\u6a21\u6001\u6846",code:"const { useSignature } = _ReactPdfSign;\nconst { Button, Flex } = antd;\n\nconst { useState } = React;\n\nconst BaseExample = () => {\n const [result, setResult] = useState(null);\n const modal = useSignature();\n return (\n <Flex vertical gap={12}>\n {result && <img src={result} alt=\"result\" style={{ width: '300px' }} />}\n <Flex gap={8}>\n <Button\n onClick={() => {\n modal({\n onSuccess: file => {\n console.log(file);\n setResult(URL.createObjectURL(file));\n }\n });\n }}>\n \u7b7e\u540d\n </Button>\n <Button\n onClick={() => {\n modal({\n mask: (\n <Flex justify=\"flex-end\" align=\"flex-end\" style={{ height: '100%', width: '100%', padding: '10px', boxSizing: 'border-box' }}>\n \u7b7e\u5b57\u65e5\u671f: {new Date().toLocaleDateString()}\n </Flex>\n ),\n onSuccess: file => {\n console.log(file);\n setResult(URL.createObjectURL(file));\n }\n });\n }}>\n \u5e26\u6709\u65e5\u671f\u6a21\u7248\u7684\u7b7e\u540d\n </Button>\n </Flex>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n",scope:[{name:"_ReactPdfSign",packageName:"@kne/current-lib_react-pdf-sign",importStatement:'import * as _ReactPdfSign from "@kne/react-pdf-sign"',component:d},{name:"antd",packageName:"antd",component:a}]}]}}},s={name:"react-pdf-sign",version:"1.0.1","open-version":!0,"public-url":"/react-pdf-sign",modules:[{name:"react-pdf-sign",baseDir:"/home/runner/work/react-pdf-sign/react-pdf-sign",description:"\u8fd9\u662f\u4e00\u4e2a\u529f\u80fd\u5f3a\u5927\u7684 React PDF \u7b7e\u540d\u7ec4\u4ef6\u5e93\uff0c\u4e13\u4e3a\u9700\u8981\u5728 PDF \u6587\u6863\u4e0a\u6dfb\u52a0\u7535\u5b50\u7b7e\u540d\u7684\u5e94\u7528\u573a\u666f\u800c\u8bbe\u8ba1\u3002\u8be5\u7ec4\u4ef6\u5e93\u63d0\u4f9b\u4e86\u7075\u6d3b\u7684\u7b7e\u540d\u89e3\u51b3\u65b9\u6848\uff0c\u652f\u6301\u5373\u65f6\u7b7e\u540d\u6dfb\u52a0\u548c\u9884\u5b9a\u4e49\u7b7e\u540d\u533a\u57df\u4e24\u79cd\u6a21\u5f0f",packageName:"@kne/react-pdf-sign"}]}}}]);
2
+ //# sourceMappingURL=340.5f3badc0.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/340.5f3badc0.chunk.js","mappings":"8VASA,MCTgE,GAAgBA,aDS3D,CACjBC,KAAM,iBACNC,QAAS,2qGAiBTC,YAAa,qdACbC,YAAa,sBACbC,IAAK,65MAuULC,QAAS,CACLC,QAAQ,EACRC,UAAW,uBACXC,MAAO,GACPC,KAAM,CAAC,CACXC,MAAO,uCACPR,YAAa,mJACbS,KAAM,+9DA+DNC,MAAO,CAAC,CACRZ,KAAM,gBACNG,YAAa,kCACbU,gBAAiB,uDACjBC,UAAW,GACb,CACEd,KAAM,OACNG,YAAa,OACbW,UAAW,KAEb,CACEJ,MAAO,iCACPR,YAAa,yJACbS,KAAM,mNAaNC,MAAO,CAAC,CACRZ,KAAM,gBACNG,YAAa,kCACbU,gBAAiB,uDACjBC,UAAW,KAEb,CACEJ,MAAO,wBACPR,YAAa,8HACbS,KAAM,uOAcNC,MAAO,CAAC,CACRZ,KAAM,gBACNG,YAAa,kCACbU,gBAAiB,uDACjBC,UAAW,GACb,CACEd,KAAM,cACNG,YAAa,oBACbW,UAAW,KAEb,CACEJ,MAAO,8BACPR,YAAa,qKACbS,KAAM,y2EA8ENC,MAAO,CAAC,CACRZ,KAAM,gBACNG,YAAa,kCACbU,gBAAiB,uDACjBC,UAAW,GACb,CACEd,KAAM,cACNG,YAAa,oBACbW,UAAW,GACb,CACEd,KAAM,aACNG,YAAa,sBACbW,U,QACF,CACEd,KAAM,OACNG,YAAa,OACbW,UAAW,KAEb,CACEJ,MAAO,uCACPR,YAAa,8GACbS,KAAM,yzCA+CNC,MAAO,CAAC,CACRZ,KAAM,gBACNG,YAAa,kCACbU,gBAAiB,uDACjBC,UAAW,GACb,CACEd,KAAM,OACNG,YAAa,OACbW,UAAW,SCloBFC,EAAW,CAAC,KAAO,iBAAiB,QAAU,QAAQ,gBAAe,EAAK,aAAa,kBAAkB,QAAU,CAAC,CAAC,KAAO,iBAAiB,QAAU,kDAAkD,YAAc,qdAA8F,YAAc,wB","sources":["../../README.md","../node_modules/readme/modules.js"],"sourcesContent":["import * as component_1 from '@kne/current-lib_react-pdf-sign';\nimport * as component_2 from 'antd';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport * as component_5 from './doc/example.pdf';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport * as component_7 from './doc/signature.png';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nimport '@kne/current-lib_react-pdf-sign/dist/index.css';\nconst readmeConfig = {\n name: `react-pdf-sign`,\n summary: `<p>这是一个功能强大的 React PDF 签名组件库,专为需要在 PDF 文档上添加电子签名的应用场景而设计。该组件库提供了灵活的签名解决方案,支持即时签名添加和预定义签名区域两种模式。</p>\n<h2>核心特性</h2>\n<p><strong>直观的签名体验</strong> - 提供手写签名画板,用户可以通过鼠标或触摸设备自然地绘制签名,签名支持实时预览和调整。支持在签名画板上叠加自定义内容,如日期、文字等。</p>\n<p><strong>灵活的定位控制</strong> - 签名区域可以在 PDF 页面上自由拖拽、缩放和精确定位,支持保持比例缩放,确保签名的视觉效果。</p>\n<p><strong>完整的 PDF 操作</strong> - 基于 pdf-lib 和 react-pdf,支持多页 PDF 文档的浏览、签名定位和最终签名文件的生成。</p>\n<p><strong>组件化设计</strong> - 提供多个独立组件(PDFSign、PDFViewer、LocationLayer、useSignature),开发者可以根据需求灵活组合使用。支持默认签名位置设置和位置变化回调,便于集成到现有业务流程。</p>\n<p><strong>国际化支持</strong> - 内置中英文语言包,支持多语言切换,适合国际化应用。</p>\n<p><strong>现代化技术栈</strong> - 基于 React 18+,使用 Konva.js 实现高性能的图形渲染,支持响应式设计。</p>\n<h2>使用场景</h2>\n<ul>\n<li>合同签署系统</li>\n<li>文档审批流程</li>\n<li>电子表单签名</li>\n<li>证书颁发系统</li>\n<li>法律文件签署</li>\n</ul>\n<p>该组件库简化了 PDF 签名的复杂实现,开发者只需要几行代码就能集成完整的签名功能,大大提升了开发效率。新增的签名叠加功能让签名更加丰富和个性化,满足各种业务场景需求。</p>`,\n description: `这是一个功能强大的 React PDF 签名组件库,专为需要在 PDF 文档上添加电子签名的应用场景而设计。该组件库提供了灵活的签名解决方案,支持即时签名添加和预定义签名区域两种模式`,\n packageName: `@kne/react-pdf-sign`,\n api: `<h3>PDFSign</h3>\n<p>主要的 PDF 签名组件,集成了 PDF 查看器和签名定位功能。</p>\n<table>\n<thead>\n<tr>\n<th>属性</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>-</td>\n<td>PDF 文件的 URL 地址</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>string</td>\n<td>-</td>\n<td>签名图片的 URL 地址</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>签名区域的宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>50</td>\n<td>签名区域的高度</td>\n</tr>\n<tr>\n<td>padding</td>\n<td>number</td>\n<td>8</td>\n<td>签名区域变换器的内边距</td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>'拖拽到签名位置'</td>\n<td>签名区域的占位文本</td>\n</tr>\n<tr>\n<td>filename</td>\n<td>string</td>\n<td>'signed-document.pdf'</td>\n<td>生成签名PDF的文件名</td>\n</tr>\n<tr>\n<td>defaultLocation</td>\n<td>object</td>\n<td>-</td>\n<td>默认签名位置信息</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>签名位置变化回调函数</td>\n</tr>\n</tbody>\n</table>\n<h4>实例方法</h4>\n<table>\n<thead>\n<tr>\n<th>方法名</th>\n<th>参数</th>\n<th>返回值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>getLocation</td>\n<td>-</td>\n<td>object</td>\n<td>获取当前签名位置信息</td>\n</tr>\n<tr>\n<td>setLocation</td>\n<td>location: object</td>\n<td>-</td>\n<td>设置签名位置</td>\n</tr>\n<tr>\n<td>getPdfSignature</td>\n<td>-</td>\n<td>object</td>\n<td>获取 PDF 签名信息</td>\n</tr>\n<tr>\n<td>sign</td>\n<td>-</td>\n<td>Promise&lt;File&gt;</td>\n<td>生成签名后的 PDF 文件</td>\n</tr>\n</tbody>\n</table>\n<h3>PDFViewer</h3>\n<p>PDF 文档查看器组件,提供 PDF 页面浏览功能。</p>\n<table>\n<thead>\n<tr>\n<th>属性</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>url</td>\n<td>string</td>\n<td>-</td>\n<td>PDF 文件的 URL 地址</td>\n</tr>\n<tr>\n<td>className</td>\n<td>string</td>\n<td>-</td>\n<td>自定义 CSS 类名</td>\n</tr>\n<tr>\n<td>defaultPage</td>\n<td>number</td>\n<td>1</td>\n<td>默认显示的页码</td>\n</tr>\n<tr>\n<td>maxWidth</td>\n<td>number</td>\n<td>1200</td>\n<td>最大显示宽度</td>\n</tr>\n<tr>\n<td>pdfjsUrl</td>\n<td>string</td>\n<td>-</td>\n<td>自定义 pdf.js CDN 地址</td>\n</tr>\n<tr>\n<td>apis</td>\n<td>object</td>\n<td>-</td>\n<td>API 配置对象</td>\n</tr>\n</tbody>\n</table>\n<h4>children 渲染属性</h4>\n<p>当 children 为函数时,会传入以下参数:</p>\n<table>\n<thead>\n<tr>\n<th>参数</th>\n<th>类型</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>size</td>\n<td>object</td>\n<td>当前页面的尺寸信息</td>\n</tr>\n<tr>\n<td>currentPage</td>\n<td>number</td>\n<td>当前页码</td>\n</tr>\n<tr>\n<td>pageSize</td>\n<td>number</td>\n<td>总页数</td>\n</tr>\n</tbody>\n</table>\n<h3>LocationLayer</h3>\n<p>签名定位层组件,用于在 PDF 上定位和调整签名区域。</p>\n<table>\n<thead>\n<tr>\n<th>属性</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>stageWidth</td>\n<td>number</td>\n<td>-</td>\n<td>画布宽度(必需)</td>\n</tr>\n<tr>\n<td>stageHeight</td>\n<td>number</td>\n<td>-</td>\n<td>画布高度(必需)</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>签名区域宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>50</td>\n<td>签名区域高度</td>\n</tr>\n<tr>\n<td>padding</td>\n<td>number</td>\n<td>8</td>\n<td>变换器内边距</td>\n</tr>\n<tr>\n<td>placeholder</td>\n<td>string</td>\n<td>'拖拽到签名位置'</td>\n<td>占位文本</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>string</td>\n<td>-</td>\n<td>签名图片 URL</td>\n</tr>\n<tr>\n<td>value</td>\n<td>object</td>\n<td>-</td>\n<td>受控的位置值</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>位置变化回调</td>\n</tr>\n</tbody>\n</table>\n<h3>useSignature</h3>\n<p>签名画板 Hook,提供手写签名功能。</p>\n<h4>返回的函数参数</h4>\n<table>\n<thead>\n<tr>\n<th>参数</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>filename</td>\n<td>string</td>\n<td>'signature.png'</td>\n<td>签名文件名</td>\n</tr>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>签名画板宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>80</td>\n<td>签名画板高度</td>\n</tr>\n<tr>\n<td>mask</td>\n<td>ReactNode</td>\n<td>-</td>\n<td>签名画板叠加内容</td>\n</tr>\n<tr>\n<td>onSuccess</td>\n<td>function</td>\n<td>-</td>\n<td>签名完成回调</td>\n</tr>\n<tr>\n<td>modalProps</td>\n<td>object</td>\n<td>-</td>\n<td>Modal 组件属性</td>\n</tr>\n</tbody>\n</table>\n<h4>Hook 配置参数</h4>\n<table>\n<thead>\n<tr>\n<th>参数</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>width</td>\n<td>number</td>\n<td>200</td>\n<td>默认签名画板宽度</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>80</td>\n<td>默认签名画板高度</td>\n</tr>\n</tbody>\n</table>`,\n example: {\n isFull: false,\n className: `react_pdf_sign_e88dd`,\n style: ``,\n list: [{\n title: `完整签名流程`,\n description: `演示PDF上传、手写签名创建和签名PDF生成的完整工作流程`,\n code: `const { default: ReactPdfSign, useSignature } = _ReactPdfSign;\nconst { useState, useRef } = React;\nconst { Flex, Button } = antd;\n\nconst BaseExample = () => {\n const [pdfFile, setPdfFile] = useState(null);\n const [sign, setSign] = useState(null);\n const ref = useRef(null);\n const signatureModal = useSignature();\n return (\n <Flex vertical gap={12}>\n <Flex gap={8}>\n <Button>\n <input\n type=\"file\"\n accept=\"application/pdf\"\n onChange={e => {\n const file = e.target.files[0];\n setPdfFile(URL.createObjectURL(file));\n }}\n />\n </Button>\n <Button\n onClick={() => {\n const { size } = ref.current.getLocation();\n signatureModal({\n mask: (\n <Flex justify=\"flex-end\" align=\"flex-end\" style={{ height: '100%', width: '100%', padding: '10px', boxSizing: 'border-box' }}>\n 签字日期: {new Date().toLocaleDateString()}\n </Flex>\n ),\n width: size.width,\n height: size.height,\n onSuccess: file => {\n setSign(URL.createObjectURL(file));\n }\n });\n }}>\n 添加签名\n </Button>\n {pdfFile && sign && (\n <Button\n onClick={async () => {\n const blob = await ref.current.sign();\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = 'signed-document.pdf';\n link.click();\n URL.revokeObjectURL(url);\n }}>\n 生成签名PDF\n </Button>\n )}\n </Flex>\n {pdfFile ? <ReactPdfSign url={pdfFile} signature={sign} ref={ref} /> : null}\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `签名定位层`,\n description: `展示独立的签名定位组件,支持拖拽和缩放调整签名位置`,\n code: `const { LocationLayer } = _ReactPdfSign;\n\nconst BaseExample = () => {\n return (\n <div>\n <LocationLayer stageWidth={400} stageHeight={300} />\n </div>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n}]\n},{\n title: `PDF查看器`,\n description: `基础的PDF文档查看器,支持页面切换和缩放显示`,\n code: `const { PDFViewer } = _ReactPdfSign;\nconst { default: examplePdf } = _examplePdf;\n\nconst BaseExample = () => {\n return (\n <div>\n <PDFViewer url={examplePdf} />\n </div>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"_examplePdf\",\n packageName: \"./doc/example.pdf\",\n component: component_5\n}]\n},{\n title: `PDF签名组件`,\n description: `演示PDF签名组件的API使用,包括位置获取、设置和签名文件生成`,\n code: `const { PDFSign } = _ReactPdfSign;\nconst { default: examplePdf } = _examplePdf;\nconst { default: signature } = _signature;\nconst { useRef } = React;\nconst { Flex, Button, App } = antd;\n\nconst BaseExample = () => {\n const ref = useRef();\n const ref2 = useRef();\n const { modal } = App.useApp();\n return (\n <Flex vertical gap={24}>\n <Flex vertical gap={8}>\n <Flex gap={8}>\n <Button\n onClick={() => {\n const location = ref.current.getLocation();\n modal.info({\n title: '签名位置',\n content: <pre>{JSON.stringify(location, null, 2)}</pre>\n });\n }}>\n 获取签名位置\n </Button>\n <Button\n onClick={() => {\n ref.current.setLocation({\n size: {\n width: 200,\n height: 50,\n x: 240,\n y: 47\n },\n scaleX: 1,\n scaleY: 1,\n x: 240,\n y: 47\n });\n }}>\n 设置签名位置\n </Button>\n <Button\n onClick={() => {\n const pdfSignature = ref.current.getPdfSignature();\n modal.info({\n title: 'PDF签名信息',\n content: <pre style={{ 'white-space': 'break-spaces' }}>{JSON.stringify(pdfSignature, null, 2)}</pre>\n });\n }}>\n 获取PDF签名信息\n </Button>\n </Flex>\n <PDFSign url={examplePdf} ref={ref} />\n </Flex>\n <Flex vertical gap={8}>\n <div>\n <Button\n onClick={async () => {\n const blob = await ref2.current.sign();\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = 'signed-document.pdf';\n link.click();\n URL.revokeObjectURL(url);\n }}>\n 生成签名文件\n </Button>\n </div>\n <PDFSign url={examplePdf} signature={signature} ref={ref2} />\n </Flex>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"_examplePdf\",\n packageName: \"./doc/example.pdf\",\n component: component_5\n},{\n name: \"_signature\",\n packageName: \"./doc/signature.png\",\n component: component_7\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `手写签名画板`,\n description: `展示useSignature Hook的使用,打开手写签名模态框`,\n code: `const { useSignature } = _ReactPdfSign;\nconst { Button, Flex } = antd;\n\nconst { useState } = React;\n\nconst BaseExample = () => {\n const [result, setResult] = useState(null);\n const modal = useSignature();\n return (\n <Flex vertical gap={12}>\n {result && <img src={result} alt=\"result\" style={{ width: '300px' }} />}\n <Flex gap={8}>\n <Button\n onClick={() => {\n modal({\n onSuccess: file => {\n console.log(file);\n setResult(URL.createObjectURL(file));\n }\n });\n }}>\n 签名\n </Button>\n <Button\n onClick={() => {\n modal({\n mask: (\n <Flex justify=\"flex-end\" align=\"flex-end\" style={{ height: '100%', width: '100%', padding: '10px', boxSizing: 'border-box' }}>\n 签字日期: {new Date().toLocaleDateString()}\n </Flex>\n ),\n onSuccess: file => {\n console.log(file);\n setResult(URL.createObjectURL(file));\n }\n });\n }}>\n 带有日期模版的签名\n </Button>\n </Flex>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_ReactPdfSign\",\n packageName: \"@kne/current-lib_react-pdf-sign\",\n importStatement: \"import * as _ReactPdfSign from \\\"@kne/react-pdf-sign\\\"\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import ReactPdfSign from '@components/react-pdf-sign/README.md';export default {ReactPdfSign};\nexport const manifest = {\"name\":\"react-pdf-sign\",\"version\":\"1.0.1\",\"open-version\":true,\"public-url\":\"/react-pdf-sign\",\"modules\":[{\"name\":\"react-pdf-sign\",\"baseDir\":\"/home/runner/work/react-pdf-sign/react-pdf-sign\",\"description\":\"这是一个功能强大的 React PDF 签名组件库,专为需要在 PDF 文档上添加电子签名的应用场景而设计。该组件库提供了灵活的签名解决方案,支持即时签名添加和预定义签名区域两种模式\",\"packageName\":\"@kne/react-pdf-sign\"}]};"],"names":["ReactPdfSign","name","summary","description","packageName","api","example","isFull","className","style","list","title","code","scope","importStatement","component","manifest"],"ignoreList":[],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_kne_components_react_pdf_sign=self.webpackChunk_kne_components_react_pdf_sign||[]).push([[399],{876:(t,e,n)=>{n.d(e,{a:()=>l});var a=n(36018);function c(t){let e=function(t){let e=[],n="",a=0;for(let c=0;c<t.length;c++){let i=t[c];"("===i&&a++,")"===i&&(a=Math.max(0,a-1)),";"===i&&0===a?(e.push(n),n=""):n+=i}return n.trim()&&e.push(n),e.map(t=>t.trim()).filter(Boolean)}(t),n=null,a=null,c=null,i=[];for(let l of e){let t=l.indexOf(":");if(t<0)continue;let e=l.slice(0,t).trim().toLowerCase(),r=l.slice(t+1).trim();"box-shadow"===e?c=r:"filter"===e?n=r:"-webkit-filter"===e?a=r:i.push([e,r])}if(c){let t=function(t){let e=[],n="",a=0;for(let i=0;i<t.length;i++){let c=t[i];"("===c&&a++,")"===c&&(a=Math.max(0,a-1)),","===c&&0===a?(e.push(n.trim()),n=""):n+=c}n.trim()&&e.push(n.trim());let c=[];for(let i of e){if(/\binset\b/i.test(i))continue;let t=i.match(/-?\d+(?:\.\d+)?px/gi)||[],[e="0px",n="0px",a="0px"]=t,r=i.replace(/-?\d+(?:\.\d+)?px/gi,"").replace(/\binset\b/gi,"").trim().replace(/\s{2,}/g," "),l=!!r&&","!==r;c.push("drop-shadow(".concat(e," ").concat(n," ").concat(a).concat(l?" ".concat(r):"",")"))}return c.join(" ")}(c);t&&(n=n?"".concat(n," ").concat(t):t,a=a?"".concat(a," ").concat(t):t)}let r=[...i];return n&&r.push(["filter",n]),a&&r.push(["-webkit-filter",a]),r.map(t=>{let[e,n]=t;return"".concat(e,":").concat(n)}).join(";")}function i(t){return t=(t=t.replace(/<style[^>]*>([\s\S]*?)<\/style>/gi,(t,e)=>t.replace(e,function(t){return t.replace(/([^{}]+)\{([^}]*)\}/g,(t,e,n)=>"".concat(e,"{").concat(c(n),"}"))}(e)))).replace(/style=(['"])([\s\S]*?)\1/gi,(t,e,n)=>"style=".concat(e).concat(c(n)).concat(e))}function r(t){if(!(0,a.b)()||!function(t){return"string"==typeof t&&/^data:image\/svg\+xml/i.test(t)}(t))return t;try{let e=function(t){let e=t.indexOf(",");return e>=0?decodeURIComponent(t.slice(e+1)):""}(t);return function(t){return"data:image/svg+xml;charset=utf-8,".concat(encodeURIComponent(t))}(i(e))}catch(e){return t}}async function l(t,e){let{width:n,height:a,scale:c=1,dpr:i=1,meta:l={},backgroundColor:o}=e;t=r(t);let s=new Image;s.loading="eager",s.decoding="sync",s.crossOrigin="anonymous",s.src=t,await s.decode();let u,f,m=s.naturalWidth,p=s.naturalHeight,h=Number.isFinite(l.w0)?l.w0:m,d=Number.isFinite(l.h0)?l.h0:p,g=Number.isFinite(n),x=Number.isFinite(a);if(g&&x)u=Math.max(1,n),f=Math.max(1,a);else if(g){u=n,f=d*(n/Math.max(1,h))}else if(x){f=a,u=h*(a/Math.max(1,d))}else u=m,f=p;u*=c,f*=c;let b=document.createElement("canvas");b.width=u*i,b.height=f*i,b.style.width="".concat(u,"px"),b.style.height="".concat(f,"px");let w=b.getContext("2d");return 1!==i&&w.scale(i,i),o&&(w.save(),w.fillStyle=o,w.fillRect(0,0,u,f),w.restore()),w.drawImage(s,0,0,u,f),b}},16557:(t,e,n)=>{n.d(e,{a:()=>c});var a=n(876);async function c(t,e){let n=e.type;if("svg"===n){let e=decodeURIComponent(t.split(",")[1]);return new Blob([e],{type:"image/svg+xml"})}let c=await(0,a.a)(t,e);return new Promise(t=>c.toBlob(e=>t(e),"image/".concat(n),e.quality))}},29399:(t,e,n)=>{n.d(e,{toBlob:()=>a.a});var a=n(16557)}}]);
2
+ //# sourceMappingURL=399.af7961a2.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/399.af7961a2.chunk.js","mappings":"8KAMg9B,SAASA,EAAEC,GAAG,IAAIC,EAAltB,SAAWD,GAAG,IAAIC,EAAE,GAAGC,EAAE,GAAGC,EAAE,EAAE,IAAI,IAAIC,EAAE,EAAEA,EAAEJ,EAAEK,OAAOD,IAAI,CAAC,IAAIE,EAAEN,EAAEI,GAAO,MAAJE,GAASH,IAAQ,MAAJG,IAAUH,EAAEI,KAAKC,IAAI,EAAEL,EAAE,IAAQ,MAAJG,GAAa,IAAJH,GAAOF,EAAEQ,KAAKP,GAAGA,EAAE,IAAIA,GAAGI,CAAC,CAAC,OAAOJ,EAAEQ,QAAQT,EAAEQ,KAAKP,GAAGD,EAAEU,IAAIP,GAAGA,EAAEM,QAAQE,OAAOC,QAAQ,CAAigBC,CAAEd,GAAGE,EAAE,KAAKC,EAAE,KAAKC,EAAE,KAAKE,EAAE,GAAG,IAAI,IAAIS,KAAKd,EAAE,CAAC,IAAIe,EAAED,EAAEE,QAAQ,KAAK,GAAGD,EAAE,EAAE,SAAS,IAAIE,EAAEH,EAAEI,MAAM,EAAEH,GAAGN,OAAOU,cAAcC,EAAEN,EAAEI,MAAMH,EAAE,GAAGN,OAAW,eAAJQ,EAAiBd,EAAEiB,EAAM,WAAJH,EAAahB,EAAEmB,EAAM,mBAAJH,EAAqBf,EAAEkB,EAAEf,EAAEG,KAAK,CAACS,EAAEG,GAAG,CAAC,GAAGjB,EAAE,CAAC,IAAIW,EAAzuB,SAAWf,GAAG,IAAIC,EAAE,GAAGC,EAAE,GAAGC,EAAE,EAAE,IAAI,IAAIG,EAAE,EAAEA,EAAEN,EAAEK,OAAOC,IAAI,CAAC,IAAIgB,EAAEtB,EAAEM,GAAO,MAAJgB,GAASnB,IAAQ,MAAJmB,IAAUnB,EAAEI,KAAKC,IAAI,EAAEL,EAAE,IAAQ,MAAJmB,GAAa,IAAJnB,GAAOF,EAAEQ,KAAKP,EAAEQ,QAAQR,EAAE,IAAIA,GAAGoB,CAAC,CAACpB,EAAEQ,QAAQT,EAAEQ,KAAKP,EAAEQ,QAAQ,IAAIN,EAAE,GAAG,IAAI,IAAIE,KAAKL,EAAE,CAAC,GAAG,aAAasB,KAAKjB,GAAG,SAAS,IAAIgB,EAAEhB,EAAEkB,MAAM,wBAAwB,IAAIT,EAAE,MAAMC,EAAE,MAAME,EAAE,OAAOI,EAAED,EAAEf,EAAEmB,QAAQ,sBAAsB,IAAIA,QAAQ,cAAc,IAAIf,OAAOe,QAAQ,UAAU,KAAKC,IAAIL,GAAO,MAAJA,EAAQjB,EAAEK,KAAK,eAADkB,OAAgBZ,EAAC,KAAAY,OAAIX,EAAC,KAAAW,OAAIT,GAACS,OAAGD,EAAC,IAAAC,OAAKN,GAAI,GAAE,KAAI,CAAC,OAAOjB,EAAEwB,KAAK,IAAI,CAAgQC,CAAEzB,GAAGW,IAAIb,EAAEA,EAAC,GAAAyB,OAAIzB,EAAC,KAAAyB,OAAIZ,GAAIA,EAAEZ,EAAEA,EAAC,GAAAwB,OAAIxB,EAAC,KAAAwB,OAAIZ,GAAIA,EAAE,CAAC,IAAIO,EAAE,IAAIhB,GAAG,OAAOJ,GAAGoB,EAAEb,KAAK,CAAC,SAASP,IAAIC,GAAGmB,EAAEb,KAAK,CAAC,iBAAiBN,IAAImB,EAAEX,IAAImB,IAAA,IAAEf,EAAEC,GAAEc,EAAA,SAAAH,OAAMZ,EAAC,KAAAY,OAAIX,KAAKY,KAAK,IAAI,CAAiF,SAASG,EAAE/B,GAAG,OAAiFA,GAA1EA,EAAEA,EAAEyB,QAAQ,oCAAoC,CAACxB,EAAEC,IAAID,EAAEwB,QAAQvB,EAAtK,SAAWF,GAAG,OAAOA,EAAEyB,QAAQ,uBAAuB,CAACxB,EAAEC,EAAEC,IAAC,GAAAwB,OAAMzB,EAAC,KAAAyB,OAAI5B,EAAEI,GAAE,KAAI,CAAyF6B,CAAE9B,MAASuB,QAAQ,6BAA6B,CAACxB,EAAEC,EAAEC,IAAC,SAAAwB,OAAYzB,GAACyB,OAAG5B,EAAEI,IAAEwB,OAAGzB,GAAM,CAAC,SAAS+B,EAAEjC,GAAG,KAAIkC,EAAAA,EAAAA,OAA1lD,SAAWlC,GAAG,MAAiB,iBAAHA,GAAa,yBAAyBuB,KAAKvB,EAAE,CAAuhDmC,CAAEnC,GAAG,OAAOA,EAAE,IAAI,IAAIC,EAA5iD,SAAWD,GAAG,IAAIC,EAAED,EAAEiB,QAAQ,KAAK,OAAOhB,GAAG,EAAEmC,mBAAmBpC,EAAEmB,MAAMlB,EAAE,IAAI,EAAE,CAA49CoC,CAAErC,GAAU,OAAv+C,SAAWA,GAAG,0CAAA2B,OAA0CW,mBAAmBtC,GAAI,CAA+5CuC,CAAZR,EAAE9B,GAAc,CAAC,MAAAuC,GAAM,OAAOxC,CAAC,CAAC,CAACyC,eAAeC,EAAE1C,EAAEC,GAAG,IAAI0C,MAAMzC,EAAE0C,OAAOzC,EAAE0C,MAAMzC,EAAE,EAAE0C,IAAIxC,EAAE,EAAEyC,KAAKzB,EAAE,CAAC,EAAE0B,gBAAgBjC,GAAGd,EAAED,EAAEiC,EAAEjC,GAAG,IAAIgB,EAAE,IAAIiC,MAAMjC,EAAEkC,QAAQ,QAAQlC,EAAEmC,SAAS,OAAOnC,EAAEoC,YAAY,YAAYpC,EAAEqC,IAAIrD,QAAQgB,EAAEsC,SAAS,IAAqGC,EAAEC,EAAnGtC,EAAEF,EAAEyC,aAAapC,EAAEL,EAAE0C,cAAchC,EAAEiC,OAAOC,SAAStC,EAAEuC,IAAIvC,EAAEuC,GAAG3C,EAAE4C,EAAEH,OAAOC,SAAStC,EAAEyC,IAAIzC,EAAEyC,GAAG1C,EAAM2C,EAAEL,OAAOC,SAAS1D,GAAG+D,EAAEN,OAAOC,SAASzD,GAAG,GAAG6D,GAAGC,EAAEV,EAAEhD,KAAKC,IAAI,EAAEN,GAAGsD,EAAEjD,KAAKC,IAAI,EAAEL,QAAQ,GAAG6D,EAAE,CAAuBT,EAAErD,EAAEsD,EAAEM,GAAtB5D,EAAEK,KAAKC,IAAI,EAAEkB,GAAY,MAAM,GAAGuC,EAAE,CAAuBT,EAAErD,EAAEoD,EAAE7B,GAAtBvB,EAAEI,KAAKC,IAAI,EAAEsD,GAAY,MAAMP,EAAErC,EAAEsC,EAAEnC,EAAEkC,GAAInD,EAAEoD,GAAIpD,EAAE,IAAI8D,EAAEC,SAASC,cAAc,UAAUF,EAAEvB,MAAMY,EAAEjD,EAAE4D,EAAEtB,OAAOY,EAAElD,EAAE4D,EAAEG,MAAM1B,MAAK,GAAAhB,OAAI4B,EAAC,MAAKW,EAAEG,MAAMzB,OAAM,GAAAjB,OAAI6B,EAAC,MAAK,IAAIc,EAAEJ,EAAEK,WAAW,MAAM,OAAW,IAAJjE,GAAOgE,EAAEzB,MAAMvC,EAAEA,GAAGS,IAAIuD,EAAEE,OAAOF,EAAEG,UAAU1D,EAAEuD,EAAEI,SAAS,EAAE,EAAEnB,EAAEC,GAAGc,EAAEK,WAAWL,EAAEM,UAAU5D,EAAE,EAAE,EAAEuC,EAAEC,GAAGU,CAAC,C,gDCA34EzB,eAAe6B,EAAEhE,EAAEJ,GAAG,IAAID,EAAEC,EAAE2E,KAAK,GAAO,QAAJ5E,EAAU,CAAC,IAAID,EAAEoC,mBAAmB9B,EAAEwE,MAAM,KAAK,IAAI,OAAO,IAAIC,KAAK,CAAC/E,GAAG,CAAC6E,KAAK,iBAAiB,CAAC,IAAI9D,QAAQX,EAAAA,EAAAA,GAAEE,EAAEJ,GAAG,OAAO,IAAI8E,QAAQhF,GAAGe,EAAEkE,OAAO3D,GAAGtB,EAAEsB,GAAE,SAAAK,OAAU1B,GAAIC,EAAEgF,SAAS,C","sources":["../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-3VYIPD3A.js","../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-T4JIPPZO.js"],"sourcesContent":["/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{b}from\"./chunk-Q55H7S7M.js\";function S(e){return typeof e==\"string\"&&/^data:image\\/svg\\+xml/i.test(e)}function C(e){let n=e.indexOf(\",\");return n>=0?decodeURIComponent(e.slice(n+1)):\"\"}function v(e){return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`}function D(e){let n=[],t=\"\",i=0;for(let a=0;a<e.length;a++){let o=e[a];o===\"(\"&&i++,o===\")\"&&(i=Math.max(0,i-1)),o===\";\"&&i===0?(n.push(t),t=\"\"):t+=o}return t.trim()&&n.push(t),n.map(a=>a.trim()).filter(Boolean)}function k(e){let n=[],t=\"\",i=0;for(let o=0;o<e.length;o++){let c=e[o];c===\"(\"&&i++,c===\")\"&&(i=Math.max(0,i-1)),c===\",\"&&i===0?(n.push(t.trim()),t=\"\"):t+=c}t.trim()&&n.push(t.trim());let a=[];for(let o of n){if(/\\binset\\b/i.test(o))continue;let c=o.match(/-?\\d+(?:\\.\\d+)?px/gi)||[],[s=\"0px\",r=\"0px\",u=\"0px\"]=c,l=o.replace(/-?\\d+(?:\\.\\d+)?px/gi,\"\").replace(/\\binset\\b/ig,\"\").trim().replace(/\\s{2,}/g,\" \"),p=!!l&&l!==\",\";a.push(`drop-shadow(${s} ${r} ${u}${p?` ${l}`:\"\"})`)}return a.join(\" \")}function y(e){let n=D(e),t=null,i=null,a=null,o=[];for(let s of n){let r=s.indexOf(\":\");if(r<0)continue;let u=s.slice(0,r).trim().toLowerCase(),l=s.slice(r+1).trim();u===\"box-shadow\"?a=l:u===\"filter\"?t=l:u===\"-webkit-filter\"?i=l:o.push([u,l])}if(a){let s=k(a);s&&(t=t?`${t} ${s}`:s,i=i?`${i} ${s}`:s)}let c=[...o];return t&&c.push([\"filter\",t]),i&&c.push([\"-webkit-filter\",i]),c.map(([s,r])=>`${s}:${r}`).join(\";\")}function F(e){return e.replace(/([^{}]+)\\{([^}]*)\\}/g,(n,t,i)=>`${t}{${y(i)}}`)}function H(e){return e=e.replace(/<style[^>]*>([\\s\\S]*?)<\\/style>/gi,(n,t)=>n.replace(t,F(t))),e=e.replace(/style=(['\"])([\\s\\S]*?)\\1/gi,(n,t,i)=>`style=${t}${y(i)}${t}`),e}function M(e){if(!b()||!S(e))return e;try{let n=C(e),t=H(n);return v(t)}catch{return e}}async function W(e,n){let{width:t,height:i,scale:a=1,dpr:o=1,meta:c={},backgroundColor:s}=n;e=M(e);let r=new Image;r.loading=\"eager\",r.decoding=\"sync\",r.crossOrigin=\"anonymous\",r.src=e,await r.decode();let u=r.naturalWidth,l=r.naturalHeight,p=Number.isFinite(c.w0)?c.w0:u,x=Number.isFinite(c.h0)?c.h0:l,f,h,w=Number.isFinite(t),$=Number.isFinite(i);if(w&&$)f=Math.max(1,t),h=Math.max(1,i);else if(w){let g=t/Math.max(1,p);f=t,h=x*g}else if($){let g=i/Math.max(1,x);h=i,f=p*g}else f=u,h=l;f=f*a,h=h*a;let d=document.createElement(\"canvas\");d.width=f*o,d.height=h*o,d.style.width=`${f}px`,d.style.height=`${h}px`;let m=d.getContext(\"2d\");return o!==1&&m.scale(o,o),s&&(m.save(),m.fillStyle=s,m.fillRect(0,0,f,h),m.restore()),m.drawImage(r,0,0,f,h),d}export{W as a};\n","/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{a}from\"./chunk-3VYIPD3A.js\";async function m(o,t){let n=t.type;if(n===\"svg\"){let e=decodeURIComponent(o.split(\",\")[1]);return new Blob([e],{type:\"image/svg+xml\"})}let s=await a(o,t);return new Promise(e=>s.toBlob(c=>e(c),`image/${n}`,t.quality))}export{m as a};\n"],"names":["y","e","n","t","i","a","length","o","Math","max","push","trim","map","filter","Boolean","D","s","r","indexOf","u","slice","toLowerCase","l","c","test","match","replace","p","concat","join","k","_ref","H","F","M","b","S","decodeURIComponent","C","encodeURIComponent","v","_unused","async","W","width","height","scale","dpr","meta","backgroundColor","Image","loading","decoding","crossOrigin","src","decode","f","h","naturalWidth","naturalHeight","Number","isFinite","w0","x","h0","w","$","d","document","createElement","style","m","getContext","save","fillStyle","fillRect","restore","drawImage","type","split","Blob","Promise","toBlob","quality"],"ignoreList":[],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_kne_components_react_pdf_sign=self.webpackChunk_kne_components_react_pdf_sign||[]).push([[568],{876:(t,e,n)=>{n.d(e,{a:()=>l});var a=n(36018);function i(t){let e=function(t){let e=[],n="",a=0;for(let i=0;i<t.length;i++){let c=t[i];"("===c&&a++,")"===c&&(a=Math.max(0,a-1)),";"===c&&0===a?(e.push(n),n=""):n+=c}return n.trim()&&e.push(n),e.map(t=>t.trim()).filter(Boolean)}(t),n=null,a=null,i=null,c=[];for(let l of e){let t=l.indexOf(":");if(t<0)continue;let e=l.slice(0,t).trim().toLowerCase(),r=l.slice(t+1).trim();"box-shadow"===e?i=r:"filter"===e?n=r:"-webkit-filter"===e?a=r:c.push([e,r])}if(i){let t=function(t){let e=[],n="",a=0;for(let c=0;c<t.length;c++){let i=t[c];"("===i&&a++,")"===i&&(a=Math.max(0,a-1)),","===i&&0===a?(e.push(n.trim()),n=""):n+=i}n.trim()&&e.push(n.trim());let i=[];for(let c of e){if(/\binset\b/i.test(c))continue;let t=c.match(/-?\d+(?:\.\d+)?px/gi)||[],[e="0px",n="0px",a="0px"]=t,r=c.replace(/-?\d+(?:\.\d+)?px/gi,"").replace(/\binset\b/gi,"").trim().replace(/\s{2,}/g," "),l=!!r&&","!==r;i.push("drop-shadow(".concat(e," ").concat(n," ").concat(a).concat(l?" ".concat(r):"",")"))}return i.join(" ")}(i);t&&(n=n?"".concat(n," ").concat(t):t,a=a?"".concat(a," ").concat(t):t)}let r=[...c];return n&&r.push(["filter",n]),a&&r.push(["-webkit-filter",a]),r.map(t=>{let[e,n]=t;return"".concat(e,":").concat(n)}).join(";")}function c(t){return t=(t=t.replace(/<style[^>]*>([\s\S]*?)<\/style>/gi,(t,e)=>t.replace(e,function(t){return t.replace(/([^{}]+)\{([^}]*)\}/g,(t,e,n)=>"".concat(e,"{").concat(i(n),"}"))}(e)))).replace(/style=(['"])([\s\S]*?)\1/gi,(t,e,n)=>"style=".concat(e).concat(i(n)).concat(e))}function r(t){if(!(0,a.b)()||!function(t){return"string"==typeof t&&/^data:image\/svg\+xml/i.test(t)}(t))return t;try{let e=function(t){let e=t.indexOf(",");return e>=0?decodeURIComponent(t.slice(e+1)):""}(t);return function(t){return"data:image/svg+xml;charset=utf-8,".concat(encodeURIComponent(t))}(c(e))}catch(e){return t}}async function l(t,e){let{width:n,height:a,scale:i=1,dpr:c=1,meta:l={},backgroundColor:o}=e;t=r(t);let s=new Image;s.loading="eager",s.decoding="sync",s.crossOrigin="anonymous",s.src=t,await s.decode();let h,u,d=s.naturalWidth,m=s.naturalHeight,p=Number.isFinite(l.w0)?l.w0:d,g=Number.isFinite(l.h0)?l.h0:m,f=Number.isFinite(n),w=Number.isFinite(a);if(f&&w)h=Math.max(1,n),u=Math.max(1,a);else if(f){h=n,u=g*(n/Math.max(1,p))}else if(w){u=a,h=p*(a/Math.max(1,g))}else h=d,u=m;h*=i,u*=i;let x=document.createElement("canvas");x.width=h*c,x.height=u*c,x.style.width="".concat(h,"px"),x.style.height="".concat(u,"px");let y=x.getContext("2d");return 1!==c&&y.scale(c,c),o&&(y.save(),y.fillStyle=o,y.fillRect(0,0,h,u),y.restore()),y.drawImage(s,0,0,h,u),x}},12568:(t,e,n)=>{n.d(e,{toImg:()=>r,toSvg:()=>r});var a=n(89379),i=n(80341),c=n(36018);async function r(t,e){let{scale:n=1,width:r,height:l,meta:o={}}=e,s=Number.isFinite(r),h=Number.isFinite(l),u=Number.isFinite(n)&&1!==n||s||h;if((0,c.b)()&&u)return await(0,i.a)(t,(0,a.A)((0,a.A)({},e),{},{format:"png",quality:1,meta:o}));let d=new Image;if(d.decoding="sync",d.loading="eager",d.src=t,await d.decode(),s&&h)d.style.width="".concat(r,"px"),d.style.height="".concat(l,"px");else if(s){let t=Number.isFinite(o.w0)?o.w0:d.naturalWidth,e=Number.isFinite(o.h0)?o.h0:d.naturalHeight,n=r/Math.max(1,t);d.style.width="".concat(r,"px"),d.style.height="".concat(Math.round(e*n),"px")}else if(h){let t=Number.isFinite(o.w0)?o.w0:d.naturalWidth,e=Number.isFinite(o.h0)?o.h0:d.naturalHeight,n=l/Math.max(1,e);d.style.height="".concat(l,"px"),d.style.width="".concat(Math.round(t*n),"px")}else{let e=Math.round(d.naturalWidth*n),a=Math.round(d.naturalHeight*n);if(d.style.width="".concat(e,"px"),d.style.height="".concat(a,"px"),"string"==typeof t&&t.startsWith("data:image/svg+xml"))try{let n=decodeURIComponent(t.split(",")[1]).replace(/width="[^"]*"/,'width="'.concat(e,'"')).replace(/height="[^"]*"/,'height="'.concat(a,'"'));t="data:image/svg+xml;charset=utf-8,".concat(encodeURIComponent(n)),d.src=t}catch(m){}}return d}},80341:(t,e,n)=>{n.d(e,{a:()=>i});var a=n(876);async function i(t,e){let n=await(0,a.a)(t,e),i=new Image;return i.src=n.toDataURL("image/".concat(e.format),e.quality),await i.decode(),i.style.width="".concat(n.width/e.dpr,"px"),i.style.height="".concat(n.height/e.dpr,"px"),i}}}]);
2
+ //# sourceMappingURL=568.1813e103.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/568.1813e103.chunk.js","mappings":"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","sources":["../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-3VYIPD3A.js","../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-4IERUYP4.js","../../node_modules/@zumer/snapdom/dist/modules/chunks/chunk-ANSXOGKI.js"],"sourcesContent":["/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{b}from\"./chunk-Q55H7S7M.js\";function S(e){return typeof e==\"string\"&&/^data:image\\/svg\\+xml/i.test(e)}function C(e){let n=e.indexOf(\",\");return n>=0?decodeURIComponent(e.slice(n+1)):\"\"}function v(e){return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`}function D(e){let n=[],t=\"\",i=0;for(let a=0;a<e.length;a++){let o=e[a];o===\"(\"&&i++,o===\")\"&&(i=Math.max(0,i-1)),o===\";\"&&i===0?(n.push(t),t=\"\"):t+=o}return t.trim()&&n.push(t),n.map(a=>a.trim()).filter(Boolean)}function k(e){let n=[],t=\"\",i=0;for(let o=0;o<e.length;o++){let c=e[o];c===\"(\"&&i++,c===\")\"&&(i=Math.max(0,i-1)),c===\",\"&&i===0?(n.push(t.trim()),t=\"\"):t+=c}t.trim()&&n.push(t.trim());let a=[];for(let o of n){if(/\\binset\\b/i.test(o))continue;let c=o.match(/-?\\d+(?:\\.\\d+)?px/gi)||[],[s=\"0px\",r=\"0px\",u=\"0px\"]=c,l=o.replace(/-?\\d+(?:\\.\\d+)?px/gi,\"\").replace(/\\binset\\b/ig,\"\").trim().replace(/\\s{2,}/g,\" \"),p=!!l&&l!==\",\";a.push(`drop-shadow(${s} ${r} ${u}${p?` ${l}`:\"\"})`)}return a.join(\" \")}function y(e){let n=D(e),t=null,i=null,a=null,o=[];for(let s of n){let r=s.indexOf(\":\");if(r<0)continue;let u=s.slice(0,r).trim().toLowerCase(),l=s.slice(r+1).trim();u===\"box-shadow\"?a=l:u===\"filter\"?t=l:u===\"-webkit-filter\"?i=l:o.push([u,l])}if(a){let s=k(a);s&&(t=t?`${t} ${s}`:s,i=i?`${i} ${s}`:s)}let c=[...o];return t&&c.push([\"filter\",t]),i&&c.push([\"-webkit-filter\",i]),c.map(([s,r])=>`${s}:${r}`).join(\";\")}function F(e){return e.replace(/([^{}]+)\\{([^}]*)\\}/g,(n,t,i)=>`${t}{${y(i)}}`)}function H(e){return e=e.replace(/<style[^>]*>([\\s\\S]*?)<\\/style>/gi,(n,t)=>n.replace(t,F(t))),e=e.replace(/style=(['\"])([\\s\\S]*?)\\1/gi,(n,t,i)=>`style=${t}${y(i)}${t}`),e}function M(e){if(!b()||!S(e))return e;try{let n=C(e),t=H(n);return v(t)}catch{return e}}async function W(e,n){let{width:t,height:i,scale:a=1,dpr:o=1,meta:c={},backgroundColor:s}=n;e=M(e);let r=new Image;r.loading=\"eager\",r.decoding=\"sync\",r.crossOrigin=\"anonymous\",r.src=e,await r.decode();let u=r.naturalWidth,l=r.naturalHeight,p=Number.isFinite(c.w0)?c.w0:u,x=Number.isFinite(c.h0)?c.h0:l,f,h,w=Number.isFinite(t),$=Number.isFinite(i);if(w&&$)f=Math.max(1,t),h=Math.max(1,i);else if(w){let g=t/Math.max(1,p);f=t,h=x*g}else if($){let g=i/Math.max(1,x);h=i,f=p*g}else f=u,h=l;f=f*a,h=h*a;let d=document.createElement(\"canvas\");d.width=f*o,d.height=h*o,d.style.width=`${f}px`,d.style.height=`${h}px`;let m=d.getContext(\"2d\");return o!==1&&m.scale(o,o),s&&(m.save(),m.fillStyle=s,m.fillRect(0,0,f,h),m.restore()),m.drawImage(r,0,0,f,h),d}export{W as a};\n","/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{a as l}from\"./chunk-ANSXOGKI.js\";import{b as m}from\"./chunk-Q55H7S7M.js\";async function x(i,g){let{scale:n=1,width:h,height:o,meta:e={}}=g,c=Number.isFinite(h),d=Number.isFinite(o),p=Number.isFinite(n)&&n!==1||c||d;if(m()&&p)return await l(i,{...g,format:\"png\",quality:1,meta:e});let t=new Image;if(t.decoding=\"sync\",t.loading=\"eager\",t.src=i,await t.decode(),c&&d)t.style.width=`${h}px`,t.style.height=`${o}px`;else if(c){let s=Number.isFinite(e.w0)?e.w0:t.naturalWidth,a=Number.isFinite(e.h0)?e.h0:t.naturalHeight,r=h/Math.max(1,s);t.style.width=`${h}px`,t.style.height=`${Math.round(a*r)}px`}else if(d){let s=Number.isFinite(e.w0)?e.w0:t.naturalWidth,a=Number.isFinite(e.h0)?e.h0:t.naturalHeight,r=o/Math.max(1,a);t.style.height=`${o}px`,t.style.width=`${Math.round(s*r)}px`}else{let s=Math.round(t.naturalWidth*n),a=Math.round(t.naturalHeight*n);if(t.style.width=`${s}px`,t.style.height=`${a}px`,typeof i==\"string\"&&i.startsWith(\"data:image/svg+xml\"))try{let f=decodeURIComponent(i.split(\",\")[1]).replace(/width=\"[^\"]*\"/,`width=\"${s}\"`).replace(/height=\"[^\"]*\"/,`height=\"${a}\"`);i=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(f)}`,t.src=i}catch{}}return t}export{x as a};\n","/*\n* SnapDOM\n* v2.0.1\n* Author: Juan Martin Muda\n* License: MIT\n*/\nimport{a as r}from\"./chunk-3VYIPD3A.js\";async function d(i,a){let e=await r(i,a),t=new Image;return t.src=e.toDataURL(`image/${a.format}`,a.quality),await t.decode(),t.style.width=`${e.width/a.dpr}px`,t.style.height=`${e.height/a.dpr}px`,t}export{d as a};\n"],"names":["y","e","n","t","i","a","length","o","Math","max","push","trim","map","filter","Boolean","D","s","r","indexOf","u","slice","toLowerCase","l","c","test","match","replace","p","concat","join","k","_ref","H","F","M","b","S","decodeURIComponent","C","encodeURIComponent","v","_unused","async","W","width","height","scale","dpr","meta","backgroundColor","Image","loading","decoding","crossOrigin","src","decode","f","h","naturalWidth","naturalHeight","Number","isFinite","w0","x","h0","w","$","d","document","createElement","style","m","getContext","save","fillStyle","fillRect","restore","drawImage","g","_objectSpread","format","quality","round","startsWith","split","toDataURL"],"ignoreList":[],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ (self.webpackChunk_kne_components_react_pdf_sign=self.webpackChunk_kne_components_react_pdf_sign||[]).push([[627],{59169:e=>{function t(e){return Promise.resolve().then(()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}t.keys=()=>[],t.resolve=t,t.id=59169,e.exports=t},71830:(e,t,r)=>{"use strict";r.r(t),r.d(t,{LocationLayer:()=>C,PDFSign:()=>hr,PDFViewer:()=>z,default:()=>hr,useSignature:()=>_r});var n=r(51938),a=r(17402),i=r(2153),o=r(94922),s=r(74946),c=r(50805),u=r(54159),l=r.n(u),d=r(55199),f=r(57622),h=r(59790),p=(r(87821),r(70011),r(89261)),g=r(56075),v=r(48863),y=r(78678),_=r(81537),b=r.n(_),w=r(20274),j=r(90999),m=r(51766),x=r(80359);function O(){return O=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},O.apply(null,arguments)}function S(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}var A={"pdf-view-container":"_RgZXN","pdf-view":"_PAju1","pdf-view-children":"_N11Pj","pdf-view-page-control-left":"_IbVpf","pdf-view-page-control-right":"_IIgqj","pdf-view-page-control-current":"_JW3CT","signature-container":"_6TDb-","signature-canvas":"_2CGF4","signature-modal":"_kWe3k","signature-mask":"_FSvLv"};const P=["numPages"],z=e=>{let{className:t,defaultPage:r,apis:u,pdfjsUrl:g,url:v,maxWidth:y=1200,children:_}=e;var b;const{apis:w}=(0,s.usePreset)(),j=Object.assign({},w,u),m=g||(null==(b=j.file)?void 0:b.pdfjsUrl)||"https://cdn.jsdelivr.net/npm/pdfjs-dist@5.4.296";n.EA.workerSrc=m+"/build/pdf.worker.min.mjs";const x=(0,o.useMemo)(()=>({file:v,options:{standardFontDataUrl:m+"/standard_fonts/",cMapUrl:m+"/cmaps/",cMapPacked:!0}}),[m,v]),[z,k]=(0,o.useState)(y),[M,C]=(0,o.useState)(null),[E,N]=(0,o.useState)(0),[F,T]=(0,o.useState)(r||1),D=(0,c.A)(()=>{D.current&&D.current.clientWidth&&k(Math.min(D.current.clientWidth,y))});return(0,p.jsxs)("div",{ref:D,className:l()(t,A["pdf-view-container"],"pdf-view-container"),style:{maxWidth:y},children:[(0,p.jsx)("div",{className:l()(A["pdf-view"],"pdf-view"),children:(0,p.jsx)(a.A,O({},Object.assign({},x),{loading:(0,p.jsx)(d.Flex,{justify:"center",children:(0,p.jsx)(d.Spin,{})}),onLoadSuccess:e=>{let{numPages:t}=e;S(e,P),N(t),Number.isInteger(r)||T(t)},children:(0,p.jsx)(i.A,{width:z,pageNumber:F,renderTextLayer:!0,onLoadSuccess:e=>{C({width:Math.round(e.width),height:Math.round(e.height),originalWidth:e.originalWidth,originalHeight:e.originalHeight})}})}))}),M&&_&&(0,p.jsx)("div",{className:l()(A["pdf-view-children"],"pdf-view-children"),children:"function"===typeof _?_({size:M,currentPage:F,pageSize:E}):_}),(0,p.jsxs)("div",{className:l()(A["pdf-view-page-control"],"pdf-view-page-control"),children:[F>1&&(0,p.jsx)(f.A,{className:l()(A["pdf-view-page-control-left"],"pdf-view-page-control-left"),onClick:()=>{T(F-1)}}),F<E&&(0,p.jsx)(h.A,{className:l()(A["pdf-view-page-control-right"],"pdf-view-page-control-right"),onClick:()=>{T(F+1)}}),E?(0,p.jsxs)("div",{className:l()(A["pdf-view-page-control-current"],"pdf-view-page-control-current"),children:[F,"/",E]}):null]})]})},k=(0,w.createWithIntlProvider)({defaultLocale:"zh-CN",messages:{"zh-CN":{locationLayerPlaceholder:"\u7b7e\u540d\u533a\u57df",loadingError:"PDF\u5c1a\u672a\u52a0\u8f7d\u6210\u529f\uff0c\u8bf7\u7a0d\u540e\u91cd\u8bd5",signatureDefaultTitle:"\u7b7e\u540d",signatureConfirmText:"\u786e\u8ba4",signatureCancelText:"\u53d6\u6d88",signatureEmptyError:"\u7b7e\u540d\u5185\u5bb9\u4e0d\u80fd\u4e3a\u7a7a",signatureSuccess:"\u7b7e\u540d\u6210\u529f"},"en-US":{locationLayerPlaceholder:"Signature Area",loadingError:"PDF is not loaded successfully, please try again later",signatureDefaultTitle:"Signature",signatureConfirmText:"Confirm",signatureCancelText:"Cancel",signatureEmptyError:"Signature content cannot be empty",signatureSuccess:"Signature Success"}},namespace:"react-pdf-sign"}),M=["width","height","padding","stageWidth","stageHeight","placeholder","signature"],C=k(e=>{const{formatMessage:t}=(0,w.useIntl)(),{width:r=200,height:n=80,padding:a=8,stageWidth:i,stageHeight:s,placeholder:c=t({id:"locationLayerPlaceholder"}),signature:u}=e,l=S(e,M),[d,f]=(0,v.A)(l),[h,_]=(0,o.useState)(!1),[j]=b()(u),m=(0,o.useRef)(),x=(0,o.useRef)(),O=(0,o.useRef)(),A=(0,o.useRef)(),P=()=>{const e=x.current.absolutePosition(),t=x.current.getClientRect();f({size:{width:Math.round(t.width),height:Math.round(t.height),x:Math.round(e.x),y:Math.round(e.y)},scaleX:Number(A.current.attrs.scaleX.toFixed(2)),scaleY:Number(A.current.attrs.scaleY.toFixed(2)),x:Math.round(m.current.attrs.x),y:Math.round(m.current.attrs.y)})},z=(0,y.A)(()=>{["scaleX","scaleY","x","y","size"].some(e=>!Object.assign({},d).hasOwnProperty(e))&&(f({scaleX:1,scaleY:1,x:Math.round((i-r)/2),y:Math.round((s-n)/2),size:{width:r,height:n,x:Math.round((i-r)/2),y:Math.round((s-n)/2)}}),_(!0))}),k=(0,o.useMemo)(()=>{const e=document.createElement("div");e.style.color="var(--primary-color)",document.body.appendChild(e);const t=window.getComputedStyle(e).color;return document.body.removeChild(e),t},[]);return(0,o.useEffect)(()=>{z()},[]),(0,o.useEffect)(()=>{h&&A.current.nodes([O.current])},[h]),h&&d?(0,p.jsx)(g.BI,{width:i,height:s,children:(0,p.jsxs)(g.Wd,{children:[(0,p.jsxs)(g.YJ,{x:d.x,y:d.y,draggable:!0,ref:m,onDragEnd:P,children:[(0,p.jsx)(g.YJ,{ref:O,onTransformEnd:P,children:j?(0,p.jsx)(g._V,{width:r,height:n,image:j,cornerRadius:8,ref:x}):(0,p.jsx)(g.rw,{width:r,height:n,fill:"#f0f0f0",cornerRadius:8,ref:x})}),(0,p.jsx)(g.EY,{text:j?"":c,fontSize:16,fill:"#666666",fontFamily:"Arial",align:"center",verticalAlign:"middle",width:r,height:n})]}),(0,p.jsx)(g.Ge,{scaleX:d.scaleX,scaleY:d.scaleY,centeredScaling:!0,ref:A,keepRatio:!0,flipEnabled:!1,rotateEnabled:!1,borderStroke:k,rotateAnchorStroke:k,anchorStroke:k,padding:a})]})}):null});var E=function(){this.__data__=[],this.size=0};var N=function(e,t){return e===t||e!==e&&t!==t};var F=function(e,t){for(var r=e.length;r--;)if(N(e[r][0],t))return r;return-1},T=Array.prototype.splice;var D=function(e){var t=this.__data__,r=F(t,e);return!(r<0)&&(r==t.length-1?t.pop():T.call(t,r,1),--this.size,!0)};var L=function(e){var t=this.__data__,r=F(t,e);return r<0?void 0:t[r][1]};var I=function(e){return F(this.__data__,e)>-1};var W=function(e,t){var r=this.__data__,n=F(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this};function R(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}R.prototype.clear=E,R.prototype.delete=D,R.prototype.get=L,R.prototype.has=I,R.prototype.set=W;var U=R;var B=function(){this.__data__=new U,this.size=0};var H=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r};var Y=function(e){return this.__data__.get(e)};var V=function(e){return this.__data__.has(e)},X="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof r.g?r.g:"undefined"!==typeof self?self:{};function $(e){var t={exports:{}};return e(t,t.exports),t.exports}var q="object"==typeof X&&X&&X.Object===Object&&X,G="object"==typeof self&&self&&self.Object===Object&&self,J=q||G||Function("return this")(),Z=J.Symbol,K=Object.prototype,Q=K.hasOwnProperty,ee=K.toString,te=Z?Z.toStringTag:void 0;var re=function(e){var t=Q.call(e,te),r=e[te];try{e[te]=void 0;var n=!0}catch(i){}var a=ee.call(e);return n&&(t?e[te]=r:delete e[te]),a},ne=Object.prototype.toString;var ae=function(e){return ne.call(e)},ie=Z?Z.toStringTag:void 0;var oe=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":ie&&ie in Object(e)?re(e):ae(e)};var se=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)};var ce=function(e){if(!se(e))return!1;var t=oe(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},ue=J["__core-js_shared__"],le=function(){var e=/[^.]+$/.exec(ue&&ue.keys&&ue.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();var de=function(e){return!!le&&le in e},fe=Function.prototype.toString;var he=function(e){if(null!=e){try{return fe.call(e)}catch(t){}try{return e+""}catch(t){}}return""},pe=/^\[object .+?Constructor\]$/,ge=Function.prototype,ve=Object.prototype,ye=ge.toString,_e=ve.hasOwnProperty,be=RegExp("^"+ye.call(_e).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var we=function(e){return!(!se(e)||de(e))&&(ce(e)?be:pe).test(he(e))};var je=function(e,t){return null==e?void 0:e[t]};var me=function(e,t){var r=je(e,t);return we(r)?r:void 0},xe=me(J,"Map"),Oe=me(Object,"create");var Se=function(){this.__data__=Oe?Oe(null):{},this.size=0};var Ae=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Pe=Object.prototype.hasOwnProperty;var ze=function(e){var t=this.__data__;if(Oe){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return Pe.call(t,e)?t[e]:void 0},ke=Object.prototype.hasOwnProperty;var Me=function(e){var t=this.__data__;return Oe?void 0!==t[e]:ke.call(t,e)};var Ce=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Oe&&void 0===t?"__lodash_hash_undefined__":t,this};function Ee(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Ee.prototype.clear=Se,Ee.prototype.delete=Ae,Ee.prototype.get=ze,Ee.prototype.has=Me,Ee.prototype.set=Ce;var Ne=Ee;var Fe=function(){this.size=0,this.__data__={hash:new Ne,map:new(xe||U),string:new Ne}};var Te=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var De=function(e,t){var r=e.__data__;return Te(t)?r["string"==typeof t?"string":"hash"]:r.map};var Le=function(e){var t=De(this,e).delete(e);return this.size-=t?1:0,t};var Ie=function(e){return De(this,e).get(e)};var We=function(e){return De(this,e).has(e)};var Re=function(e,t){var r=De(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this};function Ue(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Ue.prototype.clear=Fe,Ue.prototype.delete=Le,Ue.prototype.get=Ie,Ue.prototype.has=We,Ue.prototype.set=Re;var Be=Ue;var He=function(e,t){var r=this.__data__;if(r instanceof U){var n=r.__data__;if(!xe||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Be(n)}return r.set(e,t),this.size=r.size,this};function Ye(e){var t=this.__data__=new U(e);this.size=t.size}Ye.prototype.clear=B,Ye.prototype.delete=H,Ye.prototype.get=Y,Ye.prototype.has=V,Ye.prototype.set=He;var Ve=Ye;var Xe=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this};var $e=function(e){return this.__data__.has(e)};function qe(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Be;++t<r;)this.add(e[t])}qe.prototype.add=qe.prototype.push=Xe,qe.prototype.has=$e;var Ge=qe;var Je=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1};var Ze=function(e,t){return e.has(t)};var Ke=function(e,t,r,n,a,i){var o=1&r,s=e.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var u=i.get(e),l=i.get(t);if(u&&l)return u==t&&l==e;var d=-1,f=!0,h=2&r?new Ge:void 0;for(i.set(e,t),i.set(t,e);++d<s;){var p=e[d],g=t[d];if(n)var v=o?n(g,p,d,t,e,i):n(p,g,d,e,t,i);if(void 0!==v){if(v)continue;f=!1;break}if(h){if(!Je(t,function(e,t){if(!Ze(h,t)&&(p===e||a(p,e,r,n,i)))return h.push(t)})){f=!1;break}}else if(p!==g&&!a(p,g,r,n,i)){f=!1;break}}return i.delete(e),i.delete(t),f},Qe=J.Uint8Array;var et=function(e){var t=-1,r=Array(e.size);return e.forEach(function(e,n){r[++t]=[n,e]}),r};var tt=function(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r},rt=Z?Z.prototype:void 0,nt=rt?rt.valueOf:void 0;var at=function(e,t,r,n,a,i,o){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!i(new Qe(e),new Qe(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return N(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var s=et;case"[object Set]":var c=1&n;if(s||(s=tt),e.size!=t.size&&!c)return!1;var u=o.get(e);if(u)return u==t;n|=2,o.set(e,t);var l=Ke(s(e),s(t),n,a,i,o);return o.delete(e),l;case"[object Symbol]":if(nt)return nt.call(e)==nt.call(t)}return!1};var it=function(e,t){for(var r=-1,n=t.length,a=e.length;++r<n;)e[a+r]=t[r];return e},ot=Array.isArray;var st=function(e,t,r){var n=t(e);return ot(e)?n:it(n,r(e))};var ct=function(e,t){for(var r=-1,n=null==e?0:e.length,a=0,i=[];++r<n;){var o=e[r];t(o,r,e)&&(i[a++]=o)}return i};var ut=function(){return[]},lt=Object.prototype.propertyIsEnumerable,dt=Object.getOwnPropertySymbols,ft=dt?function(e){return null==e?[]:(e=Object(e),ct(dt(e),function(t){return lt.call(e,t)}))}:ut;var ht=function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n};var pt=function(e){return null!=e&&"object"==typeof e};var gt=function(e){return pt(e)&&"[object Arguments]"==oe(e)},vt=Object.prototype,yt=vt.hasOwnProperty,_t=vt.propertyIsEnumerable,bt=gt(function(){return arguments}())?gt:function(e){return pt(e)&&yt.call(e,"callee")&&!_t.call(e,"callee")};var wt=function(){return!1},jt=$(function(e,t){var r=t&&!t.nodeType&&t,n=r&&e&&!e.nodeType&&e,a=n&&n.exports===r?J.Buffer:void 0,i=(a?a.isBuffer:void 0)||wt;e.exports=i}),mt=/^(?:0|[1-9]\d*)$/;var xt=function(e,t){var r=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==r||"symbol"!=r&&mt.test(e))&&e>-1&&e%1==0&&e<t};var Ot=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991},St={};St["[object Float32Array]"]=St["[object Float64Array]"]=St["[object Int8Array]"]=St["[object Int16Array]"]=St["[object Int32Array]"]=St["[object Uint8Array]"]=St["[object Uint8ClampedArray]"]=St["[object Uint16Array]"]=St["[object Uint32Array]"]=!0,St["[object Arguments]"]=St["[object Array]"]=St["[object ArrayBuffer]"]=St["[object Boolean]"]=St["[object DataView]"]=St["[object Date]"]=St["[object Error]"]=St["[object Function]"]=St["[object Map]"]=St["[object Number]"]=St["[object Object]"]=St["[object RegExp]"]=St["[object Set]"]=St["[object String]"]=St["[object WeakMap]"]=!1;var At=function(e){return pt(e)&&Ot(e.length)&&!!St[oe(e)]};var Pt=function(e){return function(t){return e(t)}},zt=$(function(e,t){var r=t&&!t.nodeType&&t,n=r&&e&&!e.nodeType&&e,a=n&&n.exports===r&&q.process,i=function(){try{var e=n&&n.require&&n.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(t){}}();e.exports=i}),kt=zt&&zt.isTypedArray,Mt=kt?Pt(kt):At,Ct=Object.prototype.hasOwnProperty;var Et=function(e,t){var r=ot(e),n=!r&&bt(e),a=!r&&!n&&jt(e),i=!r&&!n&&!a&&Mt(e),o=r||n||a||i,s=o?ht(e.length,String):[],c=s.length;for(var u in e)!t&&!Ct.call(e,u)||o&&("length"==u||a&&("offset"==u||"parent"==u)||i&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||xt(u,c))||s.push(u);return s},Nt=Object.prototype;var Ft=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Nt)};var Tt=function(e,t){return function(r){return e(t(r))}}(Object.keys,Object),Dt=Object.prototype.hasOwnProperty;var Lt=function(e){if(!Ft(e))return Tt(e);var t=[];for(var r in Object(e))Dt.call(e,r)&&"constructor"!=r&&t.push(r);return t};var It=function(e){return null!=e&&Ot(e.length)&&!ce(e)};var Wt=function(e){return It(e)?Et(e):Lt(e)};var Rt=function(e){return st(e,Wt,ft)},Ut=Object.prototype.hasOwnProperty;var Bt=function(e,t,r,n,a,i){var o=1&r,s=Rt(e),c=s.length;if(c!=Rt(t).length&&!o)return!1;for(var u=c;u--;){var l=s[u];if(!(o?l in t:Ut.call(t,l)))return!1}var d=i.get(e),f=i.get(t);if(d&&f)return d==t&&f==e;var h=!0;i.set(e,t),i.set(t,e);for(var p=o;++u<c;){var g=e[l=s[u]],v=t[l];if(n)var y=o?n(v,g,l,t,e,i):n(g,v,l,e,t,i);if(!(void 0===y?g===v||a(g,v,r,n,i):y)){h=!1;break}p||(p="constructor"==l)}if(h&&!p){var _=e.constructor,b=t.constructor;_==b||!("constructor"in e)||!("constructor"in t)||"function"==typeof _&&_ instanceof _&&"function"==typeof b&&b instanceof b||(h=!1)}return i.delete(e),i.delete(t),h},Ht=me(J,"DataView"),Yt=me(J,"Promise"),Vt=me(J,"Set"),Xt=me(J,"WeakMap"),$t="[object Map]",qt="[object Promise]",Gt="[object Set]",Jt="[object WeakMap]",Zt="[object DataView]",Kt=he(Ht),Qt=he(xe),er=he(Yt),tr=he(Vt),rr=he(Xt),nr=oe;(Ht&&nr(new Ht(new ArrayBuffer(1)))!=Zt||xe&&nr(new xe)!=$t||Yt&&nr(Yt.resolve())!=qt||Vt&&nr(new Vt)!=Gt||Xt&&nr(new Xt)!=Jt)&&(nr=function(e){var t=oe(e),r="[object Object]"==t?e.constructor:void 0,n=r?he(r):"";if(n)switch(n){case Kt:return Zt;case Qt:return $t;case er:return qt;case tr:return Gt;case rr:return Jt}return t});var ar=nr,ir="[object Arguments]",or="[object Array]",sr="[object Object]",cr=Object.prototype.hasOwnProperty;var ur=function(e,t,r,n,a,i){var o=ot(e),s=ot(t),c=o?or:ar(e),u=s?or:ar(t),l=(c=c==ir?sr:c)==sr,d=(u=u==ir?sr:u)==sr,f=c==u;if(f&&jt(e)){if(!jt(t))return!1;o=!0,l=!1}if(f&&!l)return i||(i=new Ve),o||Mt(e)?Ke(e,t,r,n,a,i):at(e,t,c,r,n,a,i);if(!(1&r)){var h=l&&cr.call(e,"__wrapped__"),p=d&&cr.call(t,"__wrapped__");if(h||p){var g=h?e.value():e,v=p?t.value():t;return i||(i=new Ve),a(g,v,r,n,i)}}return!!f&&(i||(i=new Ve),Bt(e,t,r,n,a,i))};var lr=function e(t,r,n,a,i){return t===r||(null==t||null==r||!pt(t)&&!pt(r)?t!==t&&r!==r:ur(t,r,n,a,e,i))};var dr=function(e,t){return lr(e,t)};const fr=["placeholder","signature","url","width","height","padding","filename","defaultLocation","onChange"],hr=k((0,o.forwardRef)((e,t)=>{let{placeholder:r,signature:n,url:a,width:i,height:s,padding:c,filename:u="signed-document.pdf",defaultLocation:l,onChange:d}=e,f=S(e,fr);const[h,g]=(0,o.useState)(Object.assign({},l)),[v,_]=(0,o.useState)(null),{formatMessage:b}=(0,w.useIntl)(),m=(0,o.useMemo)(()=>{if(!v)return null;const{size:e,currentPage:t}=v,r=e.width/e.originalWidth,i=e.height/e.originalHeight,o=Math.round(h.size.x/r),s=Math.round(e.originalHeight-h.size.y/i),c=Math.round(h.size.width/r),l=Math.round(h.size.height/i);return{x:o,y:s-l,page:t,pageWidth:Math.round(e.originalWidth),pageHeight:Math.round(e.originalHeight),width:c,height:l,signature:n,url:a,filename:u}},[v,h,n,a,u]),x=(0,o.useCallback)(async()=>{if(!v)throw new Error(b({id:"loadingError"}));return await(async e=>{const{x:t,y:r,page:n,width:a,height:i,signature:o,url:s,filename:c}=e,u=await window.fetch(s),l=await u.arrayBuffer(),d=await j.PDFDocument.load(l),f=d.getPage(n-1),h=await window.fetch(o).then(e=>e.arrayBuffer()),p=await d.embedPng(h);f.drawImage(p,{x:t,y:r,width:a,height:i});const g=await d.save();return new window.File([g],c,{type:"application/pdf"})})(m)},[m]);(0,o.useImperativeHandle)(t,()=>({getLocation:()=>h,setLocation:e=>g(e),getPdfSignature:()=>m,sign:()=>x()}));const A=(0,y.A)(d);return(0,o.useEffect)(()=>{null==A||A({pdfSignature:m,location:h})},[m,h,A]),(0,p.jsx)(z,O({},f,{url:a,children:e=>{let{size:t,currentPage:a}=e;return setTimeout(()=>{dr({size:t,currentPage:a},v)||_({size:t,currentPage:a})},0),(0,p.jsx)(C,{stageWidth:t.width,stageHeight:t.height,width:i,height:s,padding:c,placeholder:r,signature:n,value:h,onChange:g})}}))})),pr=["filename","onSuccess","width","height","mask"],gr=e=>{let t=e.split(","),r=t[1].substring(0,t[1].length-2),n=t[0].match(/:(.*?);/)[1],a=atob(r),i=a.length,o=new Uint8Array(i);for(;i--;)o[i]=a.charCodeAt(i);return new Blob([o],{type:n})},vr=k(e=>{let{onClose:t,onSuccess:r,filename:n,width:a,height:i,mask:s=null}=e;const{formatMessage:c}=(0,w.useIntl)(),{message:u}=d.App.useApp(),f=(0,o.useRef)(null),h=(0,o.useRef)(null);return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,className:l()(A["signature-modal-content"],"signature-modal-content"),children:[(0,p.jsxs)("div",{className:l()(A["signature-container"],"signature-container"),style:{width:"368px",height:"".concat(Math.round(368*i/a),"px")},children:[(0,p.jsx)("div",{className:l()(A["signature-mask"],"signature-mask"),ref:h,children:s}),(0,p.jsx)(m.A,{ref:f,canvasProps:{className:l()(A["signature-canvas"],"signature-canvas")}})]}),(0,p.jsxs)(d.Flex,{justify:"flex-end",align:"center",gap:10,children:[(0,p.jsx)(d.Button,{onClick:()=>{t()},children:c({id:"signatureCancelText"})}),(0,p.jsx)(d.Button,{type:"primary",onClick:async()=>{if(f.current.isEmpty())return void u.error(c({id:"signatureEmptyError"}));let e=f.current.toDataURL("image/png");if(s){const t=await x.ph.toPng(h.current,{scale:2}),r=document.createElement("canvas");r.width=2*a,r.height=2*i;const n=r.getContext("2d");n.drawImage(t,0,0,r.width,r.height);const o=new Image;o.src=e,await new Promise(e=>{o.onload=e}),n.drawImage(o,0,0,r.width,r.height),e=r.toDataURL("image/png")}const o=new window.File([gr(e)],n,{type:"image/png"});t(),r(o)},children:c({id:"signatureConfirmText"})})]})]})}),yr=k(()=>{const{formatMessage:e}=(0,w.useIntl)();return(0,p.jsx)("span",{children:e({id:"signatureDefaultTitle"})})}),_r=()=>{const{modal:e}=d.App.useApp();return t=>{const r=Object.assign({},t),{filename:n="signature.png",onSuccess:a,width:i=200,height:o=80,mask:s}=r,c=S(r,pr),u=e.info(Object.assign({},{title:(0,p.jsx)(yr,{}),icon:null,footer:null,wrapClassName:A["signature-modal"],classNames:{content:A["signature-modal"]}},c,{content:(0,p.jsx)(vr,{width:i,height:o,mask:s,filename:n,onSuccess:a,onClose:()=>{u.destroy()}})}));return u}}}}]);
2
+ //# sourceMappingURL=627.df23f179.chunk.js.map