diff --git a/apps/OpenSign/package-lock.json b/apps/OpenSign/package-lock.json
index e2dab730a..376baf4ec 100644
--- a/apps/OpenSign/package-lock.json
+++ b/apps/OpenSign/package-lock.json
@@ -12,7 +12,7 @@
"@emotion/styled": "^11.11.0",
"@formkit/auto-animate": "^0.9.0",
"@imgly/background-removal": "^1.7.0",
- "@lottiefiles/dotlottie-react": "^0.18.3",
+ "@lottiefiles/dotlottie-react": "^0.18.4",
"@mui/icons-material": "^5.15.10",
"@mui/material": "^5.15.10",
"@pdf-lib/fontkit": "^1.1.1",
@@ -31,12 +31,12 @@
"@usewaypoint/block-text": "^0.0.7",
"@usewaypoint/document-core": "^0.0.6",
"@usewaypoint/email-builder": "^0.0.9",
- "axios": "^1.13.5",
+ "axios": "^1.13.6",
"date-fns-tz": "^3.2.0",
- "dompurify": "^3.3.1",
+ "dompurify": "^3.3.3",
"file-saver": "^2.0.5",
"highlight.js": "^11.9.0",
- "i18next": "^25.8.13",
+ "i18next": "^25.8.17",
"i18next-browser-languagedetector": "^8.2.1",
"i18next-http-backend": "^3.0.2",
"jszip": "^3.10.1",
@@ -49,6 +49,7 @@
"prettier": "^3.8.1",
"print-js": "^1.6.0",
"prismjs": "^1.30.0",
+ "quill-html-edit-button": "^3.0.0",
"radix-ui": "^1.4.3",
"react": "^19.2.4",
"react-bootstrap": "^2.10.10",
@@ -60,11 +61,12 @@
"react-dnd-multi-backend": "^9.0.0",
"react-dom": "^19.2.4",
"react-gtm-module": "^2.0.11",
- "react-i18next": "^16.5.4",
- "react-konva": "^19.2.2",
+ "react-i18next": "^16.5.6",
+ "react-konva": "^19.2.3",
"react-pdf": "^10.4.1",
+ "react-quill-new": "^3.8.3",
"react-redux": "^9.2.0",
- "react-rnd": "^10.5.2",
+ "react-rnd": "^10.5.3",
"react-router": "^7.13.1",
"react-scrollbars-custom": "^4.1.1",
"react-select": "^5.10.2",
@@ -74,7 +76,7 @@
"react-tooltip": "^5.30.0",
"redux": "^5.0.1",
"regex-parser": "^2.3.1",
- "serve": "^14.2.5",
+ "serve": "^14.2.6",
"web-vitals": "^5.1.0",
"xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
"zod": "^3.22.4",
@@ -97,12 +99,12 @@
"concurrently": "^9.2.1",
"css-loader": "^7.1.4",
"daisyui": "^4.12.24",
- "eslint": "^9.39.3",
+ "eslint": "^9.39.4",
"eslint-plugin-prettier": "^5.5.5",
"eslint-plugin-react": "^7.37.5",
"jsdom": "^28.1.0",
- "lint-staged": "^16.2.7",
- "postcss": "^8.5.6",
+ "lint-staged": "^16.3.3",
+ "postcss": "^8.5.8",
"pretty-quick": "^4.2.2",
"rollup-plugin-node-polyfills": "^0.2.1",
"tailwindcss": "^3.4.19",
@@ -2799,15 +2801,15 @@
}
},
"node_modules/@eslint/config-array": {
- "version": "0.21.1",
- "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz",
- "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==",
+ "version": "0.21.2",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz",
+ "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@eslint/object-schema": "^2.1.7",
"debug": "^4.3.1",
- "minimatch": "^3.1.2"
+ "minimatch": "^3.1.5"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2840,9 +2842,9 @@
}
},
"node_modules/@eslint/eslintrc": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.4.tgz",
- "integrity": "sha512-4h4MVF8pmBsncB60r0wSJiIeUKTSD4m7FmTFThG8RHlsg9ajqckLm9OraguFGZE4vVdpiI1Q4+hFnisopmG6gQ==",
+ "version": "3.3.5",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.5.tgz",
+ "integrity": "sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2853,7 +2855,7 @@
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
"js-yaml": "^4.1.1",
- "minimatch": "^3.1.3",
+ "minimatch": "^3.1.5",
"strip-json-comments": "^3.1.1"
},
"engines": {
@@ -2888,9 +2890,9 @@
"license": "MIT"
},
"node_modules/@eslint/js": {
- "version": "9.39.3",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.3.tgz",
- "integrity": "sha512-1B1VkCq6FuUNlQvlBYb+1jDu/gV297TIs/OeiaSR9l1H27SVW55ONE1e1Vp16NqP683+xEGzxYtv4XCiDPaQiw==",
+ "version": "9.39.4",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.4.tgz",
+ "integrity": "sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3126,21 +3128,21 @@
}
},
"node_modules/@lottiefiles/dotlottie-react": {
- "version": "0.18.3",
- "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-react/-/dotlottie-react-0.18.3.tgz",
- "integrity": "sha512-/6iVC4y9KCyPKS2gDUFp+omYndo3KPombAsZXB0h5sSyEO/+ydVppd5fIoHg2ogGAPOCPK97Y5Eos65JnyTjww==",
+ "version": "0.18.4",
+ "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-react/-/dotlottie-react-0.18.4.tgz",
+ "integrity": "sha512-tuMjFM968TQOqkoaK7QbkQGxxBRQaH4VMxH43guJFwuPkH8q2MJbcglBizbQbAqWLM9c9adaHuUKocsS99MhBw==",
"license": "MIT",
"dependencies": {
- "@lottiefiles/dotlottie-web": "0.65.0"
+ "@lottiefiles/dotlottie-web": "0.66.0"
},
"peerDependencies": {
"react": "^17 || ^18 || ^19"
}
},
"node_modules/@lottiefiles/dotlottie-web": {
- "version": "0.65.0",
- "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-web/-/dotlottie-web-0.65.0.tgz",
- "integrity": "sha512-D5ALEwZerjy+MkOv9mMjY7bxRfe7rQPWMtDl8hlNYLnrDKj4AzTaRztZ2u5hBHHiSfSc7TnA4MJgq+ktNZPpIg==",
+ "version": "0.66.0",
+ "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-web/-/dotlottie-web-0.66.0.tgz",
+ "integrity": "sha512-aFTwmvP3iN4Lu4VyuKMqHlc6mMDdg0wtekY6FEzcv+Miv7inFW6wz0ekY5xHqhDctVOrQIWvJX+ShmevFZUjDg==",
"license": "MIT"
},
"node_modules/@mui/core-downloads-tracker": {
@@ -6426,9 +6428,9 @@
}
},
"node_modules/@types/react-reconciler": {
- "version": "0.32.3",
- "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.32.3.tgz",
- "integrity": "sha512-cMi5ZrLG7UtbL7LTK6hq9w/EZIRk4Mf1Z5qHoI+qBh7/WkYkFXQ7gOto2yfUvPzF5ERMAhaXS5eTQ2SAnHjLzA==",
+ "version": "0.33.0",
+ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.33.0.tgz",
+ "integrity": "sha512-HZOXsKT0tGI9LlUw2LuedXsVeB88wFa536vVL0M6vE8zN63nI+sSr1ByxmPToP5K5bukaVscyeCJcF9guVNJ1g==",
"license": "MIT",
"peerDependencies": {
"@types/react": "*"
@@ -7039,7 +7041,6 @@
"version": "8.18.0",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz",
"integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==",
- "dev": true,
"license": "MIT",
"dependencies": {
"fast-deep-equal": "^3.1.3",
@@ -7478,9 +7479,9 @@
}
},
"node_modules/axios": {
- "version": "1.13.5",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.5.tgz",
- "integrity": "sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==",
+ "version": "1.13.6",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.6.tgz",
+ "integrity": "sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==",
"license": "MIT",
"dependencies": {
"follow-redirects": "^1.15.11",
@@ -9335,9 +9336,9 @@
}
},
"node_modules/dompurify": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.3.1.tgz",
- "integrity": "sha512-qkdCKzLNtrgPFP1Vo+98FRzJnBRGe4ffyCea9IwHB1fyxPOeNTHpLKYGd4Uk9xvNoH0ZoOjwZxNptyMwqrId1Q==",
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.3.3.tgz",
+ "integrity": "sha512-Oj6pzI2+RqBfFG+qOaOLbFXLQ90ARpcGG6UePL82bJLtdsa6CYJD7nmiU8MW9nQNOtCHV3lZ/Bzq1X0QYbBZCA==",
"license": "(MPL-2.0 OR Apache-2.0)",
"optionalDependencies": {
"@types/trusted-types": "^2.0.7"
@@ -9434,9 +9435,9 @@
}
},
"node_modules/enhanced-resolve": {
- "version": "5.19.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz",
- "integrity": "sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==",
+ "version": "5.20.0",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.20.0.tgz",
+ "integrity": "sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -9750,25 +9751,25 @@
}
},
"node_modules/eslint": {
- "version": "9.39.3",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.3.tgz",
- "integrity": "sha512-VmQ+sifHUbI/IcSopBCF/HO3YiHQx/AVd3UVyYL6weuwW+HvON9VYn5l6Zl1WZzPWXPNZrSQpxwkkZ/VuvJZzg==",
+ "version": "9.39.4",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.4.tgz",
+ "integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.8.0",
"@eslint-community/regexpp": "^4.12.1",
- "@eslint/config-array": "^0.21.1",
+ "@eslint/config-array": "^0.21.2",
"@eslint/config-helpers": "^0.4.2",
"@eslint/core": "^0.17.0",
- "@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.39.3",
+ "@eslint/eslintrc": "^3.3.5",
+ "@eslint/js": "9.39.4",
"@eslint/plugin-kit": "^0.4.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
"@types/estree": "^1.0.6",
- "ajv": "^6.12.4",
+ "ajv": "^6.14.0",
"chalk": "^4.0.0",
"cross-spawn": "^7.0.6",
"debug": "^4.3.2",
@@ -9787,7 +9788,7 @@
"is-glob": "^4.0.0",
"json-stable-stringify-without-jsonify": "^1.0.1",
"lodash.merge": "^4.6.2",
- "minimatch": "^3.1.2",
+ "minimatch": "^3.1.5",
"natural-compare": "^1.4.0",
"optionator": "^0.9.3"
},
@@ -10026,7 +10027,6 @@
"version": "5.0.4",
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz",
"integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==",
- "dev": true,
"license": "MIT"
},
"node_modules/events": {
@@ -10111,7 +10111,6 @@
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz",
"integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==",
- "dev": true,
"license": "Apache-2.0"
},
"node_modules/fast-glob": {
@@ -10162,7 +10161,6 @@
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz",
"integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==",
- "dev": true,
"funding": [
{
"type": "github",
@@ -11000,9 +10998,9 @@
}
},
"node_modules/i18next": {
- "version": "25.8.13",
- "resolved": "https://registry.npmjs.org/i18next/-/i18next-25.8.13.tgz",
- "integrity": "sha512-E0vzjBY1yM+nsFrtgkjLhST2NBkirkvOVoQa0MSldhsuZ3jUge7ZNpuwG0Cfc74zwo5ZwRzg3uOgT+McBn32iA==",
+ "version": "25.8.17",
+ "resolved": "https://registry.npmjs.org/i18next/-/i18next-25.8.17.tgz",
+ "integrity": "sha512-vWtCttyn5bpOK4hWbRAe1ZXkA+Yzcn2OcACT+WJavtfGMcxzkfvXTLMeOU8MUhRmAySKjU4VVuKlo0sSGeBokA==",
"funding": [
{
"type": "individual",
@@ -11019,7 +11017,7 @@
],
"license": "MIT",
"dependencies": {
- "@babel/runtime": "^7.28.4"
+ "@babel/runtime": "^7.28.6"
},
"peerDependencies": {
"typescript": "^5"
@@ -12156,19 +12154,18 @@
"license": "MIT"
},
"node_modules/lint-staged": {
- "version": "16.2.7",
- "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-16.2.7.tgz",
- "integrity": "sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==",
+ "version": "16.3.3",
+ "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-16.3.3.tgz",
+ "integrity": "sha512-RLq2koZ5fGWrx7tcqx2tSTMQj4lRkfNJaebO/li/uunhCJbtZqwTuwPHpgIimAHHi/2nZIiGrkCHDCOeR1onxA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "commander": "^14.0.2",
+ "commander": "^14.0.3",
"listr2": "^9.0.5",
"micromatch": "^4.0.8",
- "nano-spawn": "^2.0.0",
- "pidtree": "^0.6.0",
"string-argv": "^0.3.2",
- "yaml": "^2.8.1"
+ "tinyexec": "^1.0.2",
+ "yaml": "^2.8.2"
},
"bin": {
"lint-staged": "bin/lint-staged.js"
@@ -12190,6 +12187,16 @@
"node": ">=20"
}
},
+ "node_modules/lint-staged/node_modules/tinyexec": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz",
+ "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/listr2": {
"version": "9.0.5",
"resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.5.tgz",
@@ -12337,6 +12344,12 @@
"integrity": "sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==",
"license": "MIT"
},
+ "node_modules/lodash.clonedeep": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
+ "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==",
+ "license": "MIT"
+ },
"node_modules/lodash.debounce": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
@@ -12344,6 +12357,13 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/lodash.isequal": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
+ "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==",
+ "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.",
+ "license": "MIT"
+ },
"node_modules/lodash.map": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz",
@@ -12838,7 +12858,6 @@
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
"integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
- "dev": true,
"license": "ISC",
"dependencies": {
"brace-expansion": "^1.1.7"
@@ -12910,19 +12929,6 @@
"thenify-all": "^1.0.0"
}
},
- "node_modules/nano-spawn": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/nano-spawn/-/nano-spawn-2.0.0.tgz",
- "integrity": "sha512-tacvGzUY5o2D8CBh2rrwxyNojUsZNU2zjNTzKQrkgGJQTbGAfArVWXSKMBokBeeg6C7OLRGUEyoFlYbfeWQIqw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=20.17"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/nano-spawn?sponsor=1"
- }
- },
"node_modules/nanoid": {
"version": "3.3.11",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
@@ -13378,6 +13384,12 @@
"integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
"license": "(MIT AND Zlib)"
},
+ "node_modules/parchment": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/parchment/-/parchment-3.0.0.tgz",
+ "integrity": "sha512-HUrJFQ/StvgmXRcQ1ftY6VEZUq3jA2t9ncFN4F84J/vN0/FPpQF+8FKXb3l6fLces6q0uOHj6NJn+2xvZnxO6A==",
+ "license": "BSD-3-Clause"
+ },
"node_modules/parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -13640,19 +13652,6 @@
"url": "https://github.com/sponsors/jonschlinkert"
}
},
- "node_modules/pidtree": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz",
- "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "pidtree": "bin/pidtree.js"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
"node_modules/pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
@@ -13726,9 +13725,9 @@
}
},
"node_modules/postcss": {
- "version": "8.5.6",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz",
- "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==",
+ "version": "8.5.8",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.8.tgz",
+ "integrity": "sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==",
"dev": true,
"funding": [
{
@@ -14148,6 +14147,7 @@
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
"integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
+ "dev": true,
"license": "MIT",
"engines": {
"node": ">=6"
@@ -14198,6 +14198,44 @@
],
"license": "MIT"
},
+ "node_modules/quill": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/quill/-/quill-2.0.3.tgz",
+ "integrity": "sha512-xEYQBqfYx/sfb33VJiKnSJp8ehloavImQ2A6564GAbqG55PGw1dAWUn1MUbQB62t0azawUS2CZZhWCjO8gRvTw==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "eventemitter3": "^5.0.1",
+ "lodash-es": "^4.17.21",
+ "parchment": "^3.0.0",
+ "quill-delta": "^5.1.0"
+ },
+ "engines": {
+ "npm": ">=8.2.3"
+ }
+ },
+ "node_modules/quill-delta": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/quill-delta/-/quill-delta-5.1.0.tgz",
+ "integrity": "sha512-X74oCeRI4/p0ucjb5Ma8adTXd9Scumz367kkMK5V/IatcX6A0vlgLgKbzXWy5nZmCGeNJm2oQX0d2Eqj+ZIlCA==",
+ "license": "MIT",
+ "dependencies": {
+ "fast-diff": "^1.3.0",
+ "lodash.clonedeep": "^4.5.0",
+ "lodash.isequal": "^4.5.0"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/quill-html-edit-button": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/quill-html-edit-button/-/quill-html-edit-button-3.0.0.tgz",
+ "integrity": "sha512-ZUV3rYjEvXz+v/7f8N0Mkp2+0D8VGDj6yCYPfagSLmyshczeMawS7vZJzaJ18dJp35IfjiPnzqyVk3KCI8qN1w==",
+ "license": "MIT",
+ "peerDependencies": {
+ "quill": "^2.x"
+ }
+ },
"node_modules/radix-ui": {
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/radix-ui/-/radix-ui-1.4.3.tgz",
@@ -14275,17 +14313,6 @@
}
}
},
- "node_modules/randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "dependencies": {
- "safe-buffer": "^5.1.0"
- }
- },
"node_modules/range-parser": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
@@ -14507,12 +14534,12 @@
}
},
"node_modules/react-draggable": {
- "version": "4.4.6",
- "resolved": "https://registry.npmjs.org/react-draggable/-/react-draggable-4.4.6.tgz",
- "integrity": "sha512-LtY5Xw1zTPqHkVmtM3X8MUOxNDOUhv/khTgBgrUvwaS064bwVvxT+q5El0uUFNx5IEPKXuRejr7UqLwBIg5pdw==",
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/react-draggable/-/react-draggable-4.5.0.tgz",
+ "integrity": "sha512-VC+HBLEZ0XJxnOxVAZsdRi8rD04Iz3SiiKOoYzamjylUcju/hP9np/aZdLHf/7WOD268WMoNJMvYfB5yAK45cw==",
"license": "MIT",
"dependencies": {
- "clsx": "^1.1.1",
+ "clsx": "^2.1.1",
"prop-types": "^15.8.1"
},
"peerDependencies": {
@@ -14520,15 +14547,6 @@
"react-dom": ">= 16.3.0"
}
},
- "node_modules/react-draggable/node_modules/clsx": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz",
- "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==",
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/react-gtm-module": {
"version": "2.0.11",
"resolved": "https://registry.npmjs.org/react-gtm-module/-/react-gtm-module-2.0.11.tgz",
@@ -14536,9 +14554,9 @@
"license": "MIT"
},
"node_modules/react-i18next": {
- "version": "16.5.4",
- "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-16.5.4.tgz",
- "integrity": "sha512-6yj+dcfMncEC21QPhOTsW8mOSO+pzFmT6uvU7XXdvM/Cp38zJkmTeMeKmTrmCMD5ToT79FmiE/mRWiYWcJYW4g==",
+ "version": "16.5.6",
+ "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-16.5.6.tgz",
+ "integrity": "sha512-Ua7V2/efA88ido7KyK51fb8Ki8M/sRfW8LR/rZ/9ZKr2luhuTI7kwYZN5agT1rWG7aYm5G0RYE/6JR8KJoCMDw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.28.4",
@@ -14569,9 +14587,9 @@
"license": "MIT"
},
"node_modules/react-konva": {
- "version": "19.2.2",
- "resolved": "https://registry.npmjs.org/react-konva/-/react-konva-19.2.2.tgz",
- "integrity": "sha512-fgIevJSiZ6mYxouR0XLq7oKgQkfHHySHyNpyc1f/3in0xXq8BV7M7Y82obyoBPOAj35TBUPuZ568qZcelYm3ag==",
+ "version": "19.2.3",
+ "resolved": "https://registry.npmjs.org/react-konva/-/react-konva-19.2.3.tgz",
+ "integrity": "sha512-VsO5CJZwUo12xFa33UEIDOQn6ZZBeE6jlkStGFvpR/3NiDA/9RPQTzw6Ri++C0Pnh3Arco1AehB8qJNv9YCRwg==",
"funding": [
{
"type": "patreon",
@@ -14588,7 +14606,7 @@
],
"license": "MIT",
"dependencies": {
- "@types/react-reconciler": "^0.32.3",
+ "@types/react-reconciler": "^0.33.0",
"its-fine": "^2.0.0",
"react-reconciler": "0.33.0",
"scheduler": "0.27.0"
@@ -14640,6 +14658,21 @@
}
}
},
+ "node_modules/react-quill-new": {
+ "version": "3.8.3",
+ "resolved": "https://registry.npmjs.org/react-quill-new/-/react-quill-new-3.8.3.tgz",
+ "integrity": "sha512-c96PYqFTo0pI4R3e79B3rH9LUIce1kIQbmTBu/imJQZk8305ogyLyBqKKjG2UoInDlquXqePSzmBo2aVia3ttw==",
+ "license": "MIT",
+ "dependencies": {
+ "lodash-es": "^4.17.21",
+ "quill": "~2.0.3"
+ },
+ "peerDependencies": {
+ "quill-delta": "^5.1.0",
+ "react": "^16 || ^17 || ^18 || ^19",
+ "react-dom": "^16 || ^17 || ^18 || ^19"
+ }
+ },
"node_modules/react-reconciler": {
"version": "0.33.0",
"resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.33.0.tgz",
@@ -14748,13 +14781,13 @@
"license": "0BSD"
},
"node_modules/react-rnd": {
- "version": "10.5.2",
- "resolved": "https://registry.npmjs.org/react-rnd/-/react-rnd-10.5.2.tgz",
- "integrity": "sha512-0Tm4x7k7pfHf2snewJA8x7Nwgt3LV+58MVEWOVsFjk51eYruFEa6Wy7BNdxt4/lH0wIRsu7Gm3KjSXY2w7YaNw==",
+ "version": "10.5.3",
+ "resolved": "https://registry.npmjs.org/react-rnd/-/react-rnd-10.5.3.tgz",
+ "integrity": "sha512-s/sIT3pGZnQ+57egijkTp9mizjIWrJz68Pq6yd+F/wniFY3IriML18dUXnQe/HP9uMiJ+9MAp44hljG99fZu6Q==",
"license": "MIT",
"dependencies": {
- "re-resizable": "6.11.2",
- "react-draggable": "4.4.6",
+ "re-resizable": "^6.11.2",
+ "react-draggable": "^4.5.0",
"tslib": "2.6.2"
},
"peerDependencies": {
@@ -15506,25 +15539,14 @@
"semver": "bin/semver.js"
}
},
- "node_modules/serialize-javascript": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
- "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "peer": true,
- "dependencies": {
- "randombytes": "^2.1.0"
- }
- },
"node_modules/serve": {
- "version": "14.2.5",
- "resolved": "https://registry.npmjs.org/serve/-/serve-14.2.5.tgz",
- "integrity": "sha512-Qn/qMkzCcMFVPb60E/hQy+iRLpiU8PamOfOSYoAHmmF+fFFmpPpqa6Oci2iWYpTdOUM3VF+TINud7CfbQnsZbA==",
+ "version": "14.2.6",
+ "resolved": "https://registry.npmjs.org/serve/-/serve-14.2.6.tgz",
+ "integrity": "sha512-QEjUSA+sD4Rotm1znR8s50YqA3kYpRGPmtd5GlFxbaL9n/FdUNbqMhxClqdditSk0LlZyA/dhud6XNRTOC9x2Q==",
"license": "MIT",
"dependencies": {
"@zeit/schemas": "2.36.0",
- "ajv": "8.12.0",
+ "ajv": "8.18.0",
"arg": "5.0.2",
"boxen": "7.0.0",
"chalk": "5.0.1",
@@ -15532,7 +15554,7 @@
"clipboardy": "3.0.0",
"compression": "1.8.1",
"is-port-reachable": "4.0.0",
- "serve-handler": "6.1.6",
+ "serve-handler": "6.1.7",
"update-check": "1.5.4"
},
"bin": {
@@ -15543,15 +15565,15 @@
}
},
"node_modules/serve-handler": {
- "version": "6.1.6",
- "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.6.tgz",
- "integrity": "sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==",
+ "version": "6.1.7",
+ "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.7.tgz",
+ "integrity": "sha512-CinAq1xWb0vR3twAv9evEU8cNWkXCb9kd5ePAHUKJBkOsUpR1wt/CvGdeca7vqumL1U5cSaeVQ6zZMxiJ3yWsg==",
"license": "MIT",
"dependencies": {
"bytes": "3.0.0",
"content-disposition": "0.5.2",
"mime-types": "2.1.18",
- "minimatch": "3.1.2",
+ "minimatch": "3.1.5",
"path-is-inside": "1.0.2",
"path-to-regexp": "3.3.0",
"range-parser": "1.2.0"
@@ -15587,34 +15609,6 @@
"node": ">= 0.6"
}
},
- "node_modules/serve-handler/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/serve/node_modules/ajv": {
- "version": "8.12.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
- "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
- "license": "MIT",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
"node_modules/serve/node_modules/chalk": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz",
@@ -16404,9 +16398,9 @@
}
},
"node_modules/terser-webpack-plugin": {
- "version": "5.3.16",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz",
- "integrity": "sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q==",
+ "version": "5.4.0",
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.4.0.tgz",
+ "integrity": "sha512-Bn5vxm48flOIfkdl5CaD2+1CiUVbonWQ3KQPyP7/EuIl9Gbzq/gQFOzaMFUEgVjB1396tcK0SG8XcNJ/2kDH8g==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -16414,7 +16408,6 @@
"@jridgewell/trace-mapping": "^0.3.25",
"jest-worker": "^27.4.5",
"schema-utils": "^4.3.0",
- "serialize-javascript": "^6.0.2",
"terser": "^5.31.1"
},
"engines": {
@@ -16965,6 +16958,7 @@
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"punycode": "^2.1.0"
@@ -17408,9 +17402,9 @@
}
},
"node_modules/webpack": {
- "version": "5.105.3",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.3.tgz",
- "integrity": "sha512-LLBBA4oLmT7sZdHiYE/PeVuifOxYyE2uL/V+9VQP7YSYdJU7bSf7H8bZRRxW8kEPMkmVjnrXmoR3oejIdX0xbg==",
+ "version": "5.105.4",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.4.tgz",
+ "integrity": "sha512-jTywjboN9aHxFlToqb0K0Zs9SbBoW4zRUlGzI2tYNxVYcEi/IPpn+Xi4ye5jTLvX2YeLuic/IvxNot+Q1jMoOw==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -17425,7 +17419,7 @@
"acorn-import-phases": "^1.0.3",
"browserslist": "^4.28.1",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.19.0",
+ "enhanced-resolve": "^5.20.0",
"es-module-lexer": "^2.0.0",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
@@ -17437,7 +17431,7 @@
"neo-async": "^2.6.2",
"schema-utils": "^4.3.3",
"tapable": "^2.3.0",
- "terser-webpack-plugin": "^5.3.16",
+ "terser-webpack-plugin": "^5.3.17",
"watchpack": "^2.5.1",
"webpack-sources": "^3.3.4"
},
diff --git a/apps/OpenSign/package.json b/apps/OpenSign/package.json
index a97b414b3..f63c37e0d 100644
--- a/apps/OpenSign/package.json
+++ b/apps/OpenSign/package.json
@@ -7,7 +7,7 @@
"@emotion/styled": "^11.11.0",
"@formkit/auto-animate": "^0.9.0",
"@imgly/background-removal": "^1.7.0",
- "@lottiefiles/dotlottie-react": "^0.18.3",
+ "@lottiefiles/dotlottie-react": "^0.18.4",
"@mui/icons-material": "^5.15.10",
"@mui/material": "^5.15.10",
"@pdf-lib/fontkit": "^1.1.1",
@@ -26,12 +26,12 @@
"@usewaypoint/block-text": "^0.0.7",
"@usewaypoint/document-core": "^0.0.6",
"@usewaypoint/email-builder": "^0.0.9",
- "axios": "^1.13.5",
+ "axios": "^1.13.6",
"date-fns-tz": "^3.2.0",
- "dompurify": "^3.3.1",
+ "dompurify": "^3.3.3",
"file-saver": "^2.0.5",
"highlight.js": "^11.9.0",
- "i18next": "^25.8.13",
+ "i18next": "^25.8.17",
"i18next-browser-languagedetector": "^8.2.1",
"i18next-http-backend": "^3.0.2",
"jszip": "^3.10.1",
@@ -44,6 +44,7 @@
"prettier": "^3.8.1",
"print-js": "^1.6.0",
"prismjs": "^1.30.0",
+ "quill-html-edit-button": "^3.0.0",
"radix-ui": "^1.4.3",
"react": "^19.2.4",
"react-bootstrap": "^2.10.10",
@@ -55,11 +56,12 @@
"react-dnd-multi-backend": "^9.0.0",
"react-dom": "^19.2.4",
"react-gtm-module": "^2.0.11",
- "react-i18next": "^16.5.4",
- "react-konva": "^19.2.2",
+ "react-i18next": "^16.5.6",
+ "react-konva": "^19.2.3",
"react-pdf": "^10.4.1",
+ "react-quill-new": "^3.8.3",
"react-redux": "^9.2.0",
- "react-rnd": "^10.5.2",
+ "react-rnd": "^10.5.3",
"react-router": "^7.13.1",
"react-scrollbars-custom": "^4.1.1",
"react-select": "^5.10.2",
@@ -69,7 +71,7 @@
"react-tooltip": "^5.30.0",
"redux": "^5.0.1",
"regex-parser": "^2.3.1",
- "serve": "^14.2.5",
+ "serve": "^14.2.6",
"web-vitals": "^5.1.0",
"xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
"zod": "^3.22.4",
@@ -129,12 +131,12 @@
"concurrently": "^9.2.1",
"css-loader": "^7.1.4",
"daisyui": "^4.12.24",
- "eslint": "^9.39.3",
+ "eslint": "^9.39.4",
"eslint-plugin-prettier": "^5.5.5",
"eslint-plugin-react": "^7.37.5",
"jsdom": "^28.1.0",
- "lint-staged": "^16.2.7",
- "postcss": "^8.5.6",
+ "lint-staged": "^16.3.3",
+ "postcss": "^8.5.8",
"pretty-quick": "^4.2.2",
"rollup-plugin-node-polyfills": "^0.2.1",
"tailwindcss": "^3.4.19",
diff --git a/apps/OpenSign/public/locales/de/translation.json b/apps/OpenSign/public/locales/de/translation.json
index 42f8915fd..d477402ef 100644
--- a/apps/OpenSign/public/locales/de/translation.json
+++ b/apps/OpenSign/public/locales/de/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "Jede öffnende {{ muss eine passende }} haben.",
"formula-error-operators": "Verwenden Sie bei Operatoren oder Klammern mindestens zwei Werte.",
"formula-error-leading-operator": "Formeln dürfen nicht mit Operatoren beginnen.",
+ "formula-error-trailing-operator": "Formeln dürfen nicht mit einem Operator enden.",
+ "formula-error-adjacent-placeholders": "Zwei Platzhalter dürfen nicht ohne einen Operator dazwischen direkt nebeneinander stehen.",
+ "formula-error-continuous-operators": "Zwei Operatoren dürfen nicht direkt hintereinander verwendet werden.",
+ "formula-error-empty-parentheses": "Klammern dürfen nicht leer sein.",
+ "formula-error-invalid-parentheses-content": "Klammern dürfen nicht mit einem Operator beginnen oder enden.",
+ "formula-error-before-open-parenthesis": "Fehlender Operator vor '('. Fügen Sie vor der öffnenden Klammer einen Operator hinzu.",
+ "formula-error-after-close-parenthesis": "Fehlender Operator nach ')'. Fügen Sie nach der schließenden Klammer einen Operator wie '+' oder '*' hinzu.",
+ "formula-error-between-parentheses": "Fehlender Operator zwischen ')' und '('. Fügen Sie zwischen den beiden Gruppen einen Operator wie '*' hinzu.",
+ "formula-error-division-by-zero": "Division durch Null ist nicht zulässig. Ersetzen Sie '0' durch eine gültige, von Null verschiedene Zahl oder Variable.",
+ "formula-error-invalid-number-format": "Ungültiges Zahlenformat gefunden. Zahlen müssen in einem gültigen Format wie '1' oder '3.14' vorliegen, nicht '.5', '1.' oder '1.2.3'.",
+ "formula-error-unclosed-parenthesis": "Nicht geschlossene '(' gefunden. Jede öffnende Klammer '(' muss eine passende schließende Klammer ')' haben.",
+ "formula-error-unexpected-closing-parenthesis": "Unerwartete schließende Klammer ')' gefunden, ohne passende öffnende Klammer '('.",
+ "formula-error-empty-placeholder": "Leerer Platzhalter '{{}}' ist nicht zulässig. Geben Sie einen Variablennamen innerhalb der Klammern an.",
"decimal-places": "Dezimalstellen",
"number-of-decimal-places": "Anzahl der Dezimalstellen",
"decimal-places-helper": "Auf 0 setzen für ganze Zahlen",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "Hinweis: Diese Funktion verbraucht Premium-Credits.",
"note-consume-premium-credits-on-document-send": "Hinweis: Diese Funktion verbraucht Premium-Credits. Sie werden jedes Mal verbraucht, wenn ein Dokument versendet wird – unabhängig davon, ob es unterschrieben wird oder nicht.",
"webhook-authentication-help": "{{appName}} sichert jeden Webhook, indem eine HMAC-SHA256-Signatur mit Ihrem Webhook-Sicherheitsschlüssel und dem unveränderten Request-Payload generiert wird. Diese Signatur wird im Header x-webhook-signature gesendet. Ihr Server muss dieselbe Signatur mit dem empfangenen Payload und Ihrem geheimen Schlüssel generieren. Stimmen beide Signaturen überein, ist die Webhook-Anfrage authentisch und wurde nicht verändert.",
- "invalid-widget-found-in-row": "Ungültiger Wert in Zeile {{row}} für Widget {{widget}} erkannt."
+ "invalid-widget-found-in-row": "Ungültiger Wert in Zeile {{row}} für Widget {{widget}} erkannt.",
+ "all-signer-status": "Alle Unterzeichner-Status",
+ "viewed": "Angesehen",
+ "signed": "Unterzeichnet",
+ "switch-to-advanced": "Zum erweiterten Modus wechseln",
+ "switch-to-basic": "Zum Basis-Modus wechseln",
+ "use-name-as-sender": "Profilnamen als Absender verwenden",
+ "use-name-as-sender-help": "Wenn aktiviert, verwendet {{appName}} Ihren Profilnamen als Absender für Signaturanfragen und Abschluss-E-Mails."
}
\ No newline at end of file
diff --git a/apps/OpenSign/public/locales/en/translation.json b/apps/OpenSign/public/locales/en/translation.json
index 1159163fe..5553f6a33 100644
--- a/apps/OpenSign/public/locales/en/translation.json
+++ b/apps/OpenSign/public/locales/en/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "Each opening {{ must have a matching }}.",
"formula-error-operators": "Add at least two values when using operators or parentheses.",
"formula-error-leading-operator": "Formulas cannot start with operators.",
+ "formula-error-trailing-operator": "Formulas cannot end with an operator.",
+ "formula-error-adjacent-placeholders": "Two placeholders cannot be written together without an operator between them.",
+ "formula-error-continuous-operators": "Two operators cannot be used together.",
+ "formula-error-empty-parentheses": "Parentheses cannot be empty.",
+ "formula-error-invalid-parentheses-content": "Parentheses cannot start or end with an operator.",
+ "formula-error-before-open-parenthesis": "Missing operator before '('. Add an operator before the opening parenthesis.",
+ "formula-error-after-close-parenthesis": "Missing operator after ')'. Add an operator like '+' or '*' after the closing parenthesis.",
+ "formula-error-between-parentheses": "Missing operator between ')' and '('. Add an operator like '*' between the two groups.",
+ "formula-error-division-by-zero": "Division by zero is not allowed. Replace '0' with a valid non-zero number or variable.",
+ "formula-error-invalid-number-format": "Invalid number format found. Numbers must be in a valid format like '1', '3.14', not '.5', '1.', or '1.2.3'.",
+ "formula-error-unclosed-parenthesis": "Unclosed '(' found. Every opening '(' must have a matching closing ')'.",
+ "formula-error-unexpected-closing-parenthesis": "Unexpected closing parenthesis ')' found without a matching opening '('.",
+ "formula-error-empty-placeholder": "Empty placeholder '{{}}' is not allowed. Provide a variable name inside the braces.",
"decimal-places": "Decimal Places",
"number-of-decimal-places": "Number of decimal places",
"decimal-places-helper": "Set to 0 for whole numbers",
@@ -525,7 +538,7 @@
"email-body": "email body",
"email-placeholder": "add body of email",
"reset-to-default": "Reset to default",
- "customize-email": "Customize email",
+ "customize-email": "Customize email",
"upgrade-to-customize-email": "Upgrade to customize Email",
"sign-url": "Sign url",
"mails-sent": "Mails Sent",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "Note: This feature consumes premium credits.",
"note-consume-premium-credits-on-document-send": "Note: This feature consumes premium credits. It is consumed any time a document is sent out, regardless of whether it is signed or not.",
"webhook-authentication-help": "{{appName}} secures every webhook by generating an HMAC-SHA256 signature using your webhook security key and the raw request payload. This signature is sent in the x-webhook-signature header. Your server must generate the same signature using the received payload and your secret key. If both signatures match, the webhook request is authentic and has not been modified.",
- "invalid-widget-found-in-row": "Invalid value detected in row {{row}} for widget {{widget}}."
+ "invalid-widget-found-in-row": "Invalid value detected in row {{row}} for widget {{widget}}.",
+ "all-signer-status": "All signer status",
+ "viewed": "Viewed",
+ "signed": "Signed",
+ "switch-to-advanced": "Switch to advanced",
+ "switch-to-basic": "Switch to basic",
+ "use-name-as-sender": "Use profile name as sender",
+ "use-name-as-sender-help": "When enabled, {{appName}} uses your profile name as sender for signature request and completion mail."
}
\ No newline at end of file
diff --git a/apps/OpenSign/public/locales/es/translation.json b/apps/OpenSign/public/locales/es/translation.json
index e6c5ba7e4..2d7fd544d 100644
--- a/apps/OpenSign/public/locales/es/translation.json
+++ b/apps/OpenSign/public/locales/es/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "Cada {{ de apertura debe tener una }} correspondiente.",
"formula-error-operators": "Cuando uses operadores o paréntesis, agrega al menos dos valores.",
"formula-error-leading-operator": "Las fórmulas no pueden comenzar con operadores.",
+ "formula-error-trailing-operator": "Las fórmulas no pueden terminar con un operador.",
+ "formula-error-adjacent-placeholders": "No se pueden escribir dos marcadores de posición seguidos sin un operador entre ellos.",
+ "formula-error-continuous-operators": "No se pueden usar dos operadores seguidos.",
+ "formula-error-empty-parentheses": "Los paréntesis no pueden estar vacíos.",
+ "formula-error-invalid-parentheses-content": "Los paréntesis no pueden empezar ni terminar con un operador.",
+ "formula-error-before-open-parenthesis": "Falta un operador antes de '('. Añada un operador antes del paréntesis de apertura.",
+ "formula-error-after-close-parenthesis": "Falta un operador después de ')'. Añada un operador como '+' o '*' después del paréntesis de cierre.",
+ "formula-error-between-parentheses": "Falta un operador entre ')' y '('. Añada un operador como '*' entre los dos grupos.",
+ "formula-error-division-by-zero": "No se permite la división entre cero. Reemplace '0' por un número o variable válido distinto de cero.",
+ "formula-error-invalid-number-format": "Se encontró un formato de número no válido. Los números deben estar en un formato válido como '1' o '3.14', no '.5', '1.' ni '1.2.3'.",
+ "formula-error-unclosed-parenthesis": "Se encontró un '(' sin cerrar. Cada paréntesis de apertura '(' debe tener un paréntesis de cierre ')' correspondiente.",
+ "formula-error-unexpected-closing-parenthesis": "Se encontró un paréntesis de cierre ')' inesperado sin un paréntesis de apertura '(' correspondiente.",
+ "formula-error-empty-placeholder": "No se permite un marcador de posición vacío '{{}}'. Proporcione un nombre de variable dentro de las llaves.",
"decimal-places": "Decimales",
"number-of-decimal-places": "Número de decimales",
"decimal-places-helper": "Establecer en 0 para números enteros",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "Nota: Esta función consume créditos premium.",
"note-consume-premium-credits-on-document-send": "Nota: Esta función consume créditos premium. Se consumen cada vez que se envía un documento, independientemente de si se firma o no.",
"webhook-authentication-help": "{{appName}} protege cada webhook generando una firma HMAC-SHA256 utilizando su clave de seguridad del webhook y el payload original de la solicitud. Esta firma se envía en el encabezado x-webhook-signature. Su servidor debe generar la misma firma utilizando el payload recibido y su clave secreta. Si ambas firmas coinciden, la solicitud del webhook es auténtica y no ha sido modificada.",
- "invalid-widget-found-in-row": "Se detectó un valor no válido en la fila {{row}} para el widget {{widget}}."
+ "invalid-widget-found-in-row": "Se detectó un valor no válido en la fila {{row}} para el widget {{widget}}.",
+ "all-signer-status": "Estado de todos los firmantes",
+ "viewed": "Visto",
+ "signed": "Firmado",
+ "switch-to-advanced": "Cambiar a avanzado",
+ "switch-to-basic": "Cambiar a básico",
+ "use-name-as-sender": "Usar el nombre del perfil como remitente",
+ "use-name-as-sender-help": "Cuando está activado, {{appName}} usa el nombre de tu perfil como remitente para las solicitudes de firma y el correo de finalización."
}
\ No newline at end of file
diff --git a/apps/OpenSign/public/locales/fr/translation.json b/apps/OpenSign/public/locales/fr/translation.json
index 7345727a3..5a228cc77 100644
--- a/apps/OpenSign/public/locales/fr/translation.json
+++ b/apps/OpenSign/public/locales/fr/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "Chaque {{ ouvrante doit avoir une }} correspondante.",
"formula-error-operators": "Lorsque vous utilisez des opérateurs ou des parenthèses, ajoutez au moins deux valeurs.",
"formula-error-leading-operator": "Les formules ne peuvent pas commencer par des opérateurs.",
+ "formula-error-trailing-operator": "Les formules ne peuvent pas se terminer par un opérateur.",
+ "formula-error-adjacent-placeholders": "Deux espaces réservés ne peuvent pas être écrits l’un à côté de l’autre sans opérateur entre eux.",
+ "formula-error-continuous-operators": "Deux opérateurs ne peuvent pas être utilisés à la suite.",
+ "formula-error-empty-parentheses": "Les parenthèses ne peuvent pas être vides.",
+ "formula-error-invalid-parentheses-content": "Les parenthèses ne peuvent pas commencer ou se terminer par un opérateur.",
+ "formula-error-before-open-parenthesis": "Opérateur manquant avant '('. Ajoutez un opérateur avant la parenthèse ouvrante.",
+ "formula-error-after-close-parenthesis": "Opérateur manquant après ')'. Ajoutez un opérateur comme '+' ou '*' après la parenthèse fermante.",
+ "formula-error-between-parentheses": "Opérateur manquant entre ')' et '('. Ajoutez un opérateur comme '*' entre les deux groupes.",
+ "formula-error-division-by-zero": "La division par zéro n'est pas autorisée. Remplacez '0' par un nombre ou une variable valide non nul.",
+ "formula-error-invalid-number-format": "Format de nombre invalide détecté. Les nombres doivent être dans un format valide comme '1' ou '3.14', et non '.5', '1.' ou '1.2.3'.",
+ "formula-error-unclosed-parenthesis": "Parenthèse '(' non fermée détectée. Chaque parenthèse ouvrante '(' doit avoir une parenthèse fermante ')' correspondante.",
+ "formula-error-unexpected-closing-parenthesis": "Parenthèse fermante ')' inattendue détectée sans parenthèse ouvrante '(' correspondante.",
+ "formula-error-empty-placeholder": "Un espace réservé vide '{{}}' n'est pas autorisé. Indiquez un nom de variable à l'intérieur des accolades.",
"decimal-places": "Décimales",
"number-of-decimal-places": "Nombre de décimales",
"decimal-places-helper": "Définir sur 0 pour les nombres entiers",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "Remarque : Cette fonctionnalité consomme des crédits premium.",
"note-consume-premium-credits-on-document-send": "Remarque : Cette fonctionnalité consomme des crédits premium. Les crédits sont consommés chaque fois qu'un document est envoyé, qu'il soit signé ou non.",
"webhook-authentication-help": "{{appName}} sécurise chaque webhook en générant une signature HMAC-SHA256 à l'aide de votre clé de sécurité webhook et du payload brut de la requête. Cette signature est envoyée dans l'en-tête x-webhook-signature. Votre serveur doit générer la même signature en utilisant le payload reçu et votre clé secrète. Si les deux signatures correspondent, la requête webhook est authentique et n'a pas été modifiée.",
- "invalid-widget-found-in-row": "Valeur invalide détectée à la ligne {{row}} pour le widget {{widget}}."
+ "invalid-widget-found-in-row": "Valeur invalide détectée à la ligne {{row}} pour le widget {{widget}}.",
+ "all-signer-status": "Statut de tous les signataires",
+ "viewed": "Consulté",
+ "signed": "Signé",
+ "switch-to-advanced": "Passer en mode avancé",
+ "switch-to-basic": "Passer en mode basique",
+ "use-name-as-sender": "Utiliser le nom du profil comme expéditeur",
+ "use-name-as-sender-help": "Lorsque cette option est activée, {{appName}} utilise le nom de votre profil comme expéditeur pour les demandes de signature et l'e-mail de finalisation."
}
\ No newline at end of file
diff --git a/apps/OpenSign/public/locales/hi/translation.json b/apps/OpenSign/public/locales/hi/translation.json
index 25890c3c4..987ff982e 100644
--- a/apps/OpenSign/public/locales/hi/translation.json
+++ b/apps/OpenSign/public/locales/hi/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "हर खुलने वाली {{ के लिए एक मिलान करने वाली }} होना चाहिए।",
"formula-error-operators": "ऑपरेटर या कोष्ठक का उपयोग करते समय कम से कम दो मान जोड़ें।",
"formula-error-leading-operator": "सूत्र ऑपरेटर से शुरू नहीं हो सकते।",
+ "formula-error-trailing-operator": "सूत्र किसी ऑपरेटर पर समाप्त नहीं हो सकते।",
+ "formula-error-adjacent-placeholders": "दो प्लेसहोल्डर बिना बीच में ऑपरेटर के साथ-साथ नहीं लिखे जा सकते।",
+ "formula-error-continuous-operators": "दो ऑपरेटर लगातार साथ में उपयोग नहीं किए जा सकते।",
+ "formula-error-empty-parentheses": "कोष्ठक (parentheses) खाली नहीं हो सकते।",
+ "formula-error-invalid-parentheses-content": "कोष्ठक किसी ऑपरेटर से शुरू या समाप्त नहीं हो सकते।",
+ "formula-error-before-open-parenthesis": "'(' से पहले ऑपरेटर गायब है। ओपनिंग कोष्ठक से पहले एक ऑपरेटर जोड़ें।",
+ "formula-error-after-close-parenthesis": "')' के बाद ऑपरेटर गायब है। क्लोज़िंग कोष्ठक के बाद '+' या '*' जैसा ऑपरेटर जोड़ें।",
+ "formula-error-between-parentheses": "')' और '(' के बीच ऑपरेटर गायब है। दोनों समूहों के बीच '*' जैसा ऑपरेटर जोड़ें।",
+ "formula-error-division-by-zero": "शून्य से भाग देना अनुमति नहीं है। '0' को किसी मान्य गैर-शून्य संख्या या वेरिएबल से बदलें।",
+ "formula-error-invalid-number-format": "अमान्य संख्या फ़ॉर्मेट मिला। संख्याएँ '1', '3.14' जैसे मान्य फ़ॉर्मेट में होनी चाहिए, '.5', '1.' या '1.2.3' नहीं।",
+ "formula-error-unclosed-parenthesis": "बिना बंद किया हुआ '(' मिला। हर ओपनिंग '(' के लिए एक मैचिंग क्लोज़िंग ')' होना चाहिए।",
+ "formula-error-unexpected-closing-parenthesis": "बिना मैचिंग ओपनिंग '(' के अप्रत्याशित क्लोज़िंग ')' मिला।",
+ "formula-error-empty-placeholder": "खाली प्लेसहोल्डर '{{}}' अनुमति नहीं है। ब्रेसेज़ के अंदर वेरिएबल का नाम दें।",
"decimal-places": "दशमलव स्थान",
"number-of-decimal-places": "दशमलव स्थानों की संख्या",
"decimal-places-helper": "पूर्णांक के लिए 0 पर सेट करें",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "नोट: यह सुविधा प्रीमियम क्रेडिट का उपयोग करती है।",
"note-consume-premium-credits-on-document-send": "नोट: यह सुविधा प्रीमियम क्रेडिट का उपयोग करती है। दस्तावेज़ भेजे जाने पर हर बार क्रेडिट उपयोग किए जाते हैं, चाहे दस्तावेज़ पर हस्ताक्षर किए जाएँ या नहीं।",
"webhook-authentication-help": "{{appName}} प्रत्येक वेबहुक को सुरक्षित करता है, आपके वेबहुक सुरक्षा कुंजी और मूल अनुरोध पेलोड का उपयोग करके HMAC-SHA256 हस्ताक्षर उत्पन्न करके। यह हस्ताक्षर x-webhook-signature हेडर में भेजा जाता है। आपके सर्वर को प्राप्त पेलोड और आपकी सीक्रेट कुंजी का उपयोग करके वही हस्ताक्षर उत्पन्न करना होगा। यदि दोनों हस्ताक्षर मेल खाते हैं, तो वेबहुक अनुरोध प्रमाणिक है और उसमें कोई परिवर्तन नहीं किया गया है।",
- "invalid-widget-found-in-row": "पंक्ति {{row}} में विजेट {{widget}} के लिए अमान्य मान पाया गया।"
+ "invalid-widget-found-in-row": "पंक्ति {{row}} में विजेट {{widget}} के लिए अमान्य मान पाया गया।",
+ "all-signer-status": "सभी हस्ताक्षरकर्ताओं की स्थिति",
+ "viewed": "देखा गया",
+ "signed": "हस्ताक्षरित",
+ "switch-to-advanced": "एडवांस्ड पर स्विच करें",
+ "switch-to-basic": "बेसिक पर स्विच करें",
+ "use-name-as-sender": "प्रेषक के रूप में प्रोफ़ाइल नाम का उपयोग करें",
+ "use-name-as-sender-help": "सक्षम होने पर, {{appName}} हस्ताक्षर अनुरोध और पूर्णता ईमेल के लिए आपके प्रोफ़ाइल नाम को प्रेषक के रूप में उपयोग करता है।"
}
\ No newline at end of file
diff --git a/apps/OpenSign/public/locales/it/translation.json b/apps/OpenSign/public/locales/it/translation.json
index 349420abf..d8b3e26af 100644
--- a/apps/OpenSign/public/locales/it/translation.json
+++ b/apps/OpenSign/public/locales/it/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "Ogni {{ di apertura deve avere una }} corrispondente.",
"formula-error-operators": "Quando usi operatori o parentesi, aggiungi almeno due valori.",
"formula-error-leading-operator": "Le formule non possono iniziare con operatori.",
+ "formula-error-trailing-operator": "Le formule non possono terminare con un operatore.",
+ "formula-error-adjacent-placeholders": "Due segnaposto non possono essere scritti insieme senza un operatore tra di loro.",
+ "formula-error-continuous-operators": "Non è possibile usare due operatori consecutivi.",
+ "formula-error-empty-parentheses": "Le parentesi non possono essere vuote.",
+ "formula-error-invalid-parentheses-content": "Le parentesi non possono iniziare o terminare con un operatore.",
+ "formula-error-before-open-parenthesis": "Operatore mancante prima di '('. Aggiungi un operatore prima della parentesi di apertura.",
+ "formula-error-after-close-parenthesis": "Operatore mancante dopo ')'. Aggiungi un operatore come '+' o '*' dopo la parentesi di chiusura.",
+ "formula-error-between-parentheses": "Operatore mancante tra ')' e '('. Aggiungi un operatore come '*' tra i due gruppi.",
+ "formula-error-division-by-zero": "La divisione per zero non è consentita. Sostituisci '0' con un numero o una variabile valida diversa da zero.",
+ "formula-error-invalid-number-format": "Trovato un formato numerico non valido. I numeri devono essere in un formato valido come '1' o '3.14', non '.5', '1.' o '1.2.3'.",
+ "formula-error-unclosed-parenthesis": "Trovata una '(' non chiusa. Ogni parentesi di apertura '(' deve avere una parentesi di chiusura ')' corrispondente.",
+ "formula-error-unexpected-closing-parenthesis": "Trovata una parentesi di chiusura ')' inattesa senza una parentesi di apertura '(' corrispondente.",
+ "formula-error-empty-placeholder": "Il segnaposto vuoto '{{}}' non è consentito. Fornisci un nome variabile all'interno delle parentesi graffe.",
"decimal-places": "Cifre decimali",
"number-of-decimal-places": "Numero di cifre decimali",
"decimal-places-helper": "Imposta su 0 per numeri interi",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "Nota: Questa funzione consuma crediti premium.",
"note-consume-premium-credits-on-document-send": "Nota: Questa funzione consuma crediti premium. I crediti vengono consumati ogni volta che un documento viene inviato, indipendentemente dal fatto che venga firmato o meno.",
"webhook-authentication-help": "{{appName}} protegge ogni webhook generando una firma HMAC-SHA256 utilizzando la tua chiave di sicurezza webhook e il payload originale della richiesta. Questa firma viene inviata nell'intestazione x-webhook-signature. Il tuo server deve generare la stessa firma utilizzando il payload ricevuto e la tua chiave segreta. Se entrambe le firme coincidono, la richiesta webhook è autentica e non è stata modificata.",
- "invalid-widget-found-in-row": "Valore non valido rilevato nella riga {{row}} per il widget {{widget}}."
+ "invalid-widget-found-in-row": "Valore non valido rilevato nella riga {{row}} per il widget {{widget}}.",
+ "all-signer-status": "Stato di tutti i firmatari",
+ "viewed": "Visualizzato",
+ "signed": "Firmato",
+ "switch-to-advanced": "Passa alla modalità avanzata",
+ "switch-to-basic": "Passa alla modalità base",
+ "use-name-as-sender": "Usa il nome del profilo come mittente",
+ "use-name-as-sender-help": "Quando abilitato, {{appName}} usa il nome del tuo profilo come mittente per le richieste di firma e l'email di completamento."
}
\ No newline at end of file
diff --git a/apps/OpenSign/public/locales/kr/translation.json b/apps/OpenSign/public/locales/kr/translation.json
index 5072a0f5d..40306fe3b 100644
--- a/apps/OpenSign/public/locales/kr/translation.json
+++ b/apps/OpenSign/public/locales/kr/translation.json
@@ -462,6 +462,19 @@
"formula-error-braces": "모든 열리는 중괄호 '{{' 는 반드시 닫히는 중괄호 '}}' 가 있어야 합니다.",
"formula-error-operators": "연산자나 괄호를 사용할 때는 최소 두 개의 값을 추가하세요.",
"formula-error-leading-operator": "수식은 연산자로 시작할 수 없습니다.",
+ "formula-error-trailing-operator": "수식은 연산자로 끝날 수 없습니다.",
+ "formula-error-adjacent-placeholders": "두 플레이스홀더는 사이에 연산자 없이 붙여 쓸 수 없습니다.",
+ "formula-error-continuous-operators": "연산자를 두 개 연속으로 사용할 수 없습니다.",
+ "formula-error-empty-parentheses": "괄호는 비워둘 수 없습니다.",
+ "formula-error-invalid-parentheses-content": "괄호는 연산자로 시작하거나 끝날 수 없습니다.",
+ "formula-error-before-open-parenthesis": "'(' 앞에 연산자가 없습니다. 여는 괄호 앞에 연산자를 추가하세요.",
+ "formula-error-after-close-parenthesis": "')' 뒤에 연산자가 없습니다. 닫는 괄호 뒤에 '+' 또는 '*' 같은 연산자를 추가하세요.",
+ "formula-error-between-parentheses": "')'와 '(' 사이에 연산자가 없습니다. 두 그룹 사이에 '*' 같은 연산자를 추가하세요.",
+ "formula-error-division-by-zero": "0으로 나눌 수 없습니다. '0'을 유효한 0이 아닌 숫자 또는 변수로 바꾸세요.",
+ "formula-error-invalid-number-format": "잘못된 숫자 형식이 발견되었습니다. 숫자는 '1', '3.14'처럼 올바른 형식이어야 하며, '.5', '1.', '1.2.3'은 허용되지 않습니다.",
+ "formula-error-unclosed-parenthesis": "닫히지 않은 '('가 발견되었습니다. 모든 여는 괄호 '('는 대응하는 닫는 괄호 ')'가 있어야 합니다.",
+ "formula-error-unexpected-closing-parenthesis": "대응하는 여는 괄호 '(' 없이 예상치 못한 닫는 괄호 ')'가 발견되었습니다.",
+ "formula-error-empty-placeholder": "빈 플레이스홀더 '{{}}'는 허용되지 않습니다. 중괄호 안에 변수 이름을 입력하세요.",
"decimal-places": "소수점 자리수",
"number-of-decimal-places": "소수점 자리수",
"decimal-places-helper": "정수를 원하면 0으로 설정하세요",
@@ -1396,5 +1409,12 @@
"note-consume-premium-credits": "참고: 이 기능은 프리미엄 크레딧을 사용합니다.",
"note-consume-premium-credits-on-document-send": "참고: 이 기능은 프리미엄 크레딧을 사용합니다. 문서가 서명되었는지 여부와 관계없이 문서를 보낼 때마다 크레딧이 차감됩니다.",
"webhook-authentication-help": "{{appName}}은(는) 웹훅 보안 키와 원본 요청 페이로드를 사용하여 HMAC-SHA256 서명을 생성함으로써 모든 웹훅을 보호합니다. 이 서명은 x-webhook-signature 헤더에 전송됩니다. 귀하의 서버는 수신된 페이로드와 비밀 키를 사용하여 동일한 서명을 생성해야 합니다. 두 서명이 일치하면 해당 웹훅 요청은 인증되었으며 수정되지 않았음을 의미합니다.",
- "invalid-widget-found-in-row": "{{row}}행에서 위젯 {{widget}}에 대한 유효하지 않은 값이 감지되었습니다."
+ "invalid-widget-found-in-row": "{{row}}행에서 위젯 {{widget}}에 대한 유효하지 않은 값이 감지되었습니다.",
+ "all-signer-status": "전체 서명자 상태",
+ "viewed": "열람함",
+ "signed": "서명 완료",
+ "switch-to-advanced": "고급 모드로 전환",
+ "switch-to-basic": "기본 모드로 전환",
+ "use-name-as-sender": "프로필 이름을 발신자로 사용",
+ "use-name-as-sender-help": "활성화하면 {{appName}}에서 서명 요청 및 완료 이메일의 발신자로 프로필 이름을 사용합니다."
}
\ No newline at end of file
diff --git a/apps/OpenSign/src/components/bulksend/components/RenderWidgets.jsx b/apps/OpenSign/src/components/bulksend/components/RenderWidgets.jsx
index 3960d7b04..b3e9e48f1 100644
--- a/apps/OpenSign/src/components/bulksend/components/RenderWidgets.jsx
+++ b/apps/OpenSign/src/components/bulksend/components/RenderWidgets.jsx
@@ -17,7 +17,6 @@ import {
} from "../../../constant/Utils";
import PenColorComponent from "../../pdf/tab/PenColorComponent";
import { getDatePickerDate, toHtmlPattern } from "../../../utils";
-import CellsInput from "../../shared/fields/CellsInput";
import { emailRegex } from "../../../constant/const";
const inputOpt = new Set(["text", "email", "number"]);
@@ -527,29 +526,23 @@ const DrawWidget = ({ widget, isRequired, onChange, showLabel }) => {
);
};
-const CellsWidget = ({
- widget,
- isRequired,
- onChange,
- showLabel,
-}) => {
+const CellsWidget = ({ widget, isRequired, onChange, showLabel }) => {
const { t } = useTranslation();
const count = widget?.options?.cellCount || 1;
const [word, setWord] = useState("");
const inputType = widget?.options?.validation?.type || "";
const serverRegex = widget?.options?.validation?.pattern;
+ const hint = widget?.options?.hint;
const regExpression = inputValidation(serverRegex, inputType);
const pattern = useMemo(() => toHtmlPattern(regExpression), [regExpression]);
-
useEffect(() => {
const response =
widget?.options?.response ?? widget?.options?.defaultValue ?? "";
- const isNumber = inputType === "number" && response;
- setWord(isNumber ? Number(response) : response);
+ setWord(String(response || ""));
}, []);
- const handleChange = (words) => {
- const value = words;
+ const handleChange = (e) => {
+ const value = e.target.value;
setWord(value);
onChange(value);
};
@@ -562,23 +555,13 @@ const CellsWidget = ({
)}