diff --git a/apps/OpenSign/package-lock.json b/apps/OpenSign/package-lock.json index 3e34238cf..b5bc1a583 100644 --- a/apps/OpenSign/package-lock.json +++ b/apps/OpenSign/package-lock.json @@ -9,14 +9,14 @@ "version": "0.1.0", "dependencies": { "@formkit/auto-animate": "^0.8.2", - "@lottiefiles/dotlottie-react": "^0.9.0", + "@lottiefiles/dotlottie-react": "^0.9.1", "@pdf-lib/fontkit": "^1.1.1", "@radix-ui/themes": "^3.1.4", "@react-pdf/renderer": "^4.0.0", - "@reduxjs/toolkit": "^2.2.7", + "@reduxjs/toolkit": "^2.2.8", "axios": "^1.7.7", "file-saver": "^2.0.5", - "i18next": "^23.15.2", + "i18next": "^23.16.0", "i18next-browser-languagedetector": "^8.0.0", "i18next-http-backend": "^2.6.2", "jszip": "^3.10.1", @@ -30,7 +30,7 @@ "react": "^18.2.0", "react-bootstrap": "^2.10.5", "react-confetti": "^6.1.0", - "react-cookie": "^7.2.0", + "react-cookie": "^7.2.1", "react-datepicker": "^7.4.0", "react-dnd": "^16.0.1", "react-dnd-html5-backend": "^16.0.1", @@ -39,13 +39,13 @@ "react-dom": "^18.2.0", "react-gtm-module": "^2.0.11", "react-helmet": "^6.1.0", - "react-i18next": "^15.0.2", + "react-i18next": "^15.0.3", "react-konva": "^18.2.10", "react-pdf": "^9.1.1", "react-quill-new": "^3.3.3", "react-redux": "^9.1.2", "react-rnd": "^10.4.13", - "react-router-dom": "^6.26.2", + "react-router-dom": "^6.27.0", "react-scripts": "5.0.1", "react-scrollbars-custom": "^4.1.1", "react-select": "^5.8.1", @@ -63,8 +63,8 @@ "ws": "^8.18.0" }, "devDependencies": { - "@babel/core": "^7.25.7", - "@babel/preset-env": "^7.25.7", + "@babel/core": "^7.25.8", + "@babel/preset-env": "^7.25.8", "@babel/preset-react": "^7.25.7", "@babel/runtime-corejs2": "^7.25.7", "autoprefixer": "^10.4.20", @@ -73,7 +73,7 @@ "commitizen": "^4.3.1", "concurrently": "^9.0.1", "css-loader": "^7.1.2", - "daisyui": "^4.12.12", + "daisyui": "^4.12.13", "dotenv": "^16.4.5", "dotenv-webpack": "^8.1.0", "eslint": "^9.12.0", @@ -144,17 +144,17 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.7.tgz", - "integrity": "sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", + "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz", - "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", + "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.25.7", @@ -162,10 +162,10 @@ "@babel/helper-compilation-targets": "^7.25.7", "@babel/helper-module-transforms": "^7.25.7", "@babel/helpers": "^7.25.7", - "@babel/parser": "^7.25.7", + "@babel/parser": "^7.25.8", "@babel/template": "^7.25.7", "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7", + "@babel/types": "^7.25.8", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -488,11 +488,11 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.7.tgz", - "integrity": "sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", + "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", "dependencies": { - "@babel/types": "^7.25.7" + "@babel/types": "^7.25.8" }, "bin": { "parser": "bin/babel-parser.js" @@ -744,28 +744,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-flow": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.24.7.tgz", @@ -982,13 +960,12 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.7.tgz", - "integrity": "sha512-4B6OhTrwYKHYYgcwErvZjbmH9X5TxQBsaBHdzEIB4l71gR5jh/tuHGlb9in47udL2+wVUcOz5XXhhfhVJwEpEg==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.8.tgz", + "integrity": "sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA==", "dependencies": { "@babel/helper-plugin-utils": "^7.25.7", "@babel/helper-remap-async-to-generator": "^7.25.7", - "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/traverse": "^7.25.7" }, "engines": { @@ -1058,13 +1035,12 @@ } }, "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.7.tgz", - "integrity": "sha512-rvUUtoVlkDWtDWxGAiiQj0aNktTPn3eFynBcMC2IhsXweehwgdI9ODe+XjWw515kEmv22sSOTp/rxIRuTiB7zg==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.8.tgz", + "integrity": "sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ==", "dependencies": { "@babel/helper-create-class-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-class-static-block": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1166,12 +1142,11 @@ } }, "node_modules/@babel/plugin-transform-dynamic-import": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.7.tgz", - "integrity": "sha512-UvcLuual4h7/GfylKm2IAA3aph9rwvAM2XBA0uPKU3lca+Maai4jBjjEVUS568ld6kJcgbouuumCBhMd/Yz17w==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.8.tgz", + "integrity": "sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1196,12 +1171,11 @@ } }, "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.7.tgz", - "integrity": "sha512-h3MDAP5l34NQkkNulsTNyjdaR+OiB0Im67VU//sFupouP8Q6m9Spy7l66DcaAQxtmCqGdanPByLsnwFttxKISQ==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.8.tgz", + "integrity": "sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1257,12 +1231,11 @@ } }, "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.7.tgz", - "integrity": "sha512-Ot43PrL9TEAiCe8C/2erAjXMeVSnE/BLEx6eyrKLNFCCw5jvhTHKyHxdI1pA0kz5njZRYAnMO2KObGqOCRDYSA==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.8.tgz", + "integrity": "sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-json-strings": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1286,12 +1259,11 @@ } }, "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.7.tgz", - "integrity": "sha512-iImzbA55BjiovLyG2bggWS+V+OLkaBorNvc/yJoeeDQGztknRnDdYfp2d/UPmunZYEnZi6Lg8QcTmNMHOB0lGA==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.8.tgz", + "integrity": "sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1407,12 +1379,11 @@ } }, "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.7.tgz", - "integrity": "sha512-FbuJ63/4LEL32mIxrxwYaqjJxpbzxPVQj5a+Ebrc8JICV6YX8nE53jY+K0RZT3um56GoNWgkS2BQ/uLGTjtwfw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.8.tgz", + "integrity": "sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1422,12 +1393,11 @@ } }, "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.7.tgz", - "integrity": "sha512-8CbutzSSh4hmD+jJHIA8vdTNk15kAzOnFLVVgBSMGr28rt85ouT01/rezMecks9pkU939wDInImwCKv4ahU4IA==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.8.tgz", + "integrity": "sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1437,13 +1407,12 @@ } }, "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.7.tgz", - "integrity": "sha512-1JdVKPhD7Y5PvgfFy0Mv2brdrolzpzSoUq2pr6xsR+m+3viGGeHEokFKsCgOkbeFOQxfB1Vt2F0cPJLRpFI4Zg==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.8.tgz", + "integrity": "sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g==", "dependencies": { "@babel/helper-compilation-targets": "^7.25.7", "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-transform-parameters": "^7.25.7" }, "engines": { @@ -1469,12 +1438,11 @@ } }, "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.7.tgz", - "integrity": "sha512-m9obYBA39mDPN7lJzD5WkGGb0GO54PPLXsbcnj1Hyeu8mSRz7Gb4b1A6zxNX32ZuUySDK4G6it8SDFWD1nCnqg==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.8.tgz", + "integrity": "sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1484,13 +1452,12 @@ } }, "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.7.tgz", - "integrity": "sha512-h39agClImgPWg4H8mYVAbD1qP9vClFbEjqoJmt87Zen8pjqK8FTPUwrOXAvqu5soytwxrLMd2fx2KSCp2CHcNg==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.8.tgz", + "integrity": "sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg==", "dependencies": { "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1529,14 +1496,13 @@ } }, "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.7.tgz", - "integrity": "sha512-LzA5ESzBy7tqj00Yjey9yWfs3FKy4EmJyKOSWld144OxkTji81WWnUT8nkLUn+imN/zHL8ZQlOu/MTUAhHaX3g==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.8.tgz", + "integrity": "sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow==", "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.7", "@babel/helper-create-class-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1831,11 +1797,11 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.7.tgz", - "integrity": "sha512-Gibz4OUdyNqqLj+7OAvBZxOD7CklCtMA5/j0JgUEwOnaRULsPDXmic2iKxL2DX2vQduPR5wH2hjZas/Vr/Oc0g==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.8.tgz", + "integrity": "sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg==", "dependencies": { - "@babel/compat-data": "^7.25.7", + "@babel/compat-data": "^7.25.8", "@babel/helper-compilation-targets": "^7.25.7", "@babel/helper-plugin-utils": "^7.25.7", "@babel/helper-validator-option": "^7.25.7", @@ -1845,45 +1811,30 @@ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.7", "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.7", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", "@babel/plugin-syntax-import-assertions": "^7.25.7", "@babel/plugin-syntax-import-attributes": "^7.25.7", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.25.7", - "@babel/plugin-transform-async-generator-functions": "^7.25.7", + "@babel/plugin-transform-async-generator-functions": "^7.25.8", "@babel/plugin-transform-async-to-generator": "^7.25.7", "@babel/plugin-transform-block-scoped-functions": "^7.25.7", "@babel/plugin-transform-block-scoping": "^7.25.7", "@babel/plugin-transform-class-properties": "^7.25.7", - "@babel/plugin-transform-class-static-block": "^7.25.7", + "@babel/plugin-transform-class-static-block": "^7.25.8", "@babel/plugin-transform-classes": "^7.25.7", "@babel/plugin-transform-computed-properties": "^7.25.7", "@babel/plugin-transform-destructuring": "^7.25.7", "@babel/plugin-transform-dotall-regex": "^7.25.7", "@babel/plugin-transform-duplicate-keys": "^7.25.7", "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.7", - "@babel/plugin-transform-dynamic-import": "^7.25.7", + "@babel/plugin-transform-dynamic-import": "^7.25.8", "@babel/plugin-transform-exponentiation-operator": "^7.25.7", - "@babel/plugin-transform-export-namespace-from": "^7.25.7", + "@babel/plugin-transform-export-namespace-from": "^7.25.8", "@babel/plugin-transform-for-of": "^7.25.7", "@babel/plugin-transform-function-name": "^7.25.7", - "@babel/plugin-transform-json-strings": "^7.25.7", + "@babel/plugin-transform-json-strings": "^7.25.8", "@babel/plugin-transform-literals": "^7.25.7", - "@babel/plugin-transform-logical-assignment-operators": "^7.25.7", + "@babel/plugin-transform-logical-assignment-operators": "^7.25.8", "@babel/plugin-transform-member-expression-literals": "^7.25.7", "@babel/plugin-transform-modules-amd": "^7.25.7", "@babel/plugin-transform-modules-commonjs": "^7.25.7", @@ -1891,15 +1842,15 @@ "@babel/plugin-transform-modules-umd": "^7.25.7", "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.7", "@babel/plugin-transform-new-target": "^7.25.7", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.7", - "@babel/plugin-transform-numeric-separator": "^7.25.7", - "@babel/plugin-transform-object-rest-spread": "^7.25.7", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.8", + "@babel/plugin-transform-numeric-separator": "^7.25.8", + "@babel/plugin-transform-object-rest-spread": "^7.25.8", "@babel/plugin-transform-object-super": "^7.25.7", - "@babel/plugin-transform-optional-catch-binding": "^7.25.7", - "@babel/plugin-transform-optional-chaining": "^7.25.7", + "@babel/plugin-transform-optional-catch-binding": "^7.25.8", + "@babel/plugin-transform-optional-chaining": "^7.25.8", "@babel/plugin-transform-parameters": "^7.25.7", "@babel/plugin-transform-private-methods": "^7.25.7", - "@babel/plugin-transform-private-property-in-object": "^7.25.7", + "@babel/plugin-transform-private-property-in-object": "^7.25.8", "@babel/plugin-transform-property-literals": "^7.25.7", "@babel/plugin-transform-regenerator": "^7.25.7", "@babel/plugin-transform-reserved-words": "^7.25.7", @@ -2043,9 +1994,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.7.tgz", - "integrity": "sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", + "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", "dependencies": { "@babel/helper-string-parser": "^7.25.7", "@babel/helper-validator-identifier": "^7.25.7", @@ -3684,11 +3635,11 @@ "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==" }, "node_modules/@lottiefiles/dotlottie-react": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-react/-/dotlottie-react-0.9.0.tgz", - "integrity": "sha512-6vR3XA7YWWvv76TkNPKC6Hc4CU0WXJlVydYmEezgi6RZS+Au3IUsCxZBr/3Zt2JPvtS3mttvP4X7tfeTA+414g==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-react/-/dotlottie-react-0.9.1.tgz", + "integrity": "sha512-2KAbT0sUu3fwbjTk1cfny9tVFg/8FTaitz64Dft+QV/Du6VHxWy3I1H83///UzAAU+rbbEN2Vn9s6GpuokJEAQ==", "dependencies": { - "@lottiefiles/dotlottie-web": "0.34.0" + "@lottiefiles/dotlottie-web": "0.35.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0", @@ -3696,9 +3647,9 @@ } }, "node_modules/@lottiefiles/dotlottie-web": { - "version": "0.34.0", - "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-web/-/dotlottie-web-0.34.0.tgz", - "integrity": "sha512-lKayn0IaqFKcnLGxJKKaDlxwKqKBpHzZ7COMEZ0HYhd3cbI9GFJb9YDUgtdpzTH5uL9Eqnr19myWYmEXHPm9pQ==" + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@lottiefiles/dotlottie-web/-/dotlottie-web-0.35.0.tgz", + "integrity": "sha512-dXyQzNGaNOovJ23skUaLs0RU1Hpr+e4JKCBW4Wq/HTVnTCqfhV4uYaG1lLloZy50QdPsUB3UyIgd656pcQwTQA==" }, "node_modules/@mapbox/node-pre-gyp": { "version": "1.0.11", @@ -5456,9 +5407,9 @@ "integrity": "sha512-7KrPPCpgRPKR+g+T127PE4bpw9Q84ZiY07EYRwXKVtTEVW9wJ5BZiF9smT9IvH19s+MQaDLmYRgjESsnqlyH0Q==" }, "node_modules/@reduxjs/toolkit": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.7.tgz", - "integrity": "sha512-faI3cZbSdFb8yv9dhDTmGwclW0vk0z5o1cia+kf7gCbaCwHI5e+7tP57mJUv22pNcNbeA62GSrPpfrUfdXcQ6g==", + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.8.tgz", + "integrity": "sha512-eK/ieXftPRQfaBSmzsamXEyDwkntMTY0e9SG5ETsEOv5JIPKhu3mj992t6B8FJjlnSrZBAAqdT8oMkPe4j+P9g==", "dependencies": { "immer": "^10.0.3", "redux": "^5.0.1", @@ -5479,9 +5430,9 @@ } }, "node_modules/@remix-run/router": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.19.2.tgz", - "integrity": "sha512-baiMx18+IMuD1yyvOGaHM9QrVUPGGG0jC+z+IPHnRJWUAUvaKuWKyE8gjDj2rzv3sz9zOGoRSPgeBVHRhZnBlA==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.20.0.tgz", + "integrity": "sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==", "engines": { "node": ">=14.0.0" } @@ -9019,9 +8970,9 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -9582,9 +9533,9 @@ } }, "node_modules/daisyui": { - "version": "4.12.12", - "resolved": "https://registry.npmjs.org/daisyui/-/daisyui-4.12.12.tgz", - "integrity": "sha512-xmCZ4piuWOjhNyB0VDKczB5vKFCipTA7UxaZNOzCz6cT8kvWgv5BDtUo+Hk9gOFufByOlfuBdzLpfhY5GsebTQ==", + "version": "4.12.13", + "resolved": "https://registry.npmjs.org/daisyui/-/daisyui-4.12.13.tgz", + "integrity": "sha512-BnXyQoOByUF/7wSdIKubyhXxbtL8gxwY3u2cNMkxGP39TSVJqMmlItqtpY903fQnLI/NokC+bc+ZV+PEPsppPw==", "dev": true, "dependencies": { "css-selector-tokenizer": "^0.8", @@ -11189,16 +11140,16 @@ } }, "node_modules/express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", + "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -12789,9 +12740,9 @@ "integrity": "sha512-fXHXcGFTXOvZTSkPJuGOQf5Lv5T/R2itiiCVPg9LxAje5D00O0pP83yJShFq5V89Ly//Gt6acj7z8pbBr34stw==" }, "node_modules/i18next": { - "version": "23.15.2", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-23.15.2.tgz", - "integrity": "sha512-zcPSWzCvw6uKnuYHIqs4W7hTuB9e3AFcSdZgvCWoPXIZsBjBd4djN2/2uOHIB+1DFFkQnMBXvhNg7J3WyCuywQ==", + "version": "23.16.0", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-23.16.0.tgz", + "integrity": "sha512-Ni3CG6c14teOogY19YNRl+kYaE/Rb59khy0VyHVn4uOZ97E2E/Yziyi6r3C3s9+wacjdLZiq/LLYyx+Cgd+FCw==", "funding": [ { "type": "individual", @@ -20341,9 +20292,9 @@ } }, "node_modules/react-cookie": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/react-cookie/-/react-cookie-7.2.0.tgz", - "integrity": "sha512-mqhPERUyfOljq5yJ4woDFI33bjEtigsl8JDJdPPeNhr0eSVZmBc/2Vdf8mFxOUktQxhxTR1T+uF0/FRTZyBEgw==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/react-cookie/-/react-cookie-7.2.1.tgz", + "integrity": "sha512-UcE6njAy5UmKzU9RywIvvtbHIQydhh6JP55yVbGwQ8Tp/wSPp2HOYVZdRI55zfbkW6zQv9SEs42mS3a9cIUQ0g==", "dependencies": { "@types/hoist-non-react-statics": "^3.3.5", "hoist-non-react-statics": "^3.3.2", @@ -20692,9 +20643,9 @@ } }, "node_modules/react-i18next": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-15.0.2.tgz", - "integrity": "sha512-z0W3/RES9Idv3MmJUcf0mDNeeMOUXe+xoL0kPfQPbDoZHmni/XsIoq5zgT2MCFUiau283GuBUK578uD/mkAbLQ==", + "version": "15.0.3", + "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-15.0.3.tgz", + "integrity": "sha512-BlO1P+oLKjjIxDBQ0GkAIMacgjfMbnvops+3Y5nZXF7UJ99v4KCWr0Na1azJXC8AMiNWp4kgUcFCJM7U9ZsUDg==", "dependencies": { "@babel/runtime": "^7.25.0", "html-parse-stringify": "^3.0.1" @@ -20925,11 +20876,11 @@ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/react-router": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.26.2.tgz", - "integrity": "sha512-tvN1iuT03kHgOFnLPfLJ8V95eijteveqdOSk+srqfePtQvqCExB8eHOYnlilbOcyJyKnYkr1vJvf7YqotAJu1A==", + "version": "6.27.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.27.0.tgz", + "integrity": "sha512-YA+HGZXz4jaAkVoYBE98VQl+nVzI+cVI2Oj/06F5ZM+0u3TgedN9Y9kmMRo2mnkSK2nCpNQn0DVob4HCsY/WLw==", "dependencies": { - "@remix-run/router": "1.19.2" + "@remix-run/router": "1.20.0" }, "engines": { "node": ">=14.0.0" @@ -20939,12 +20890,12 @@ } }, "node_modules/react-router-dom": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.26.2.tgz", - "integrity": "sha512-z7YkaEW0Dy35T3/QKPYB1LjMK2R1fxnHO8kWpUMTBdfVzZrWOiY9a7CtN8HqdWtDUWd5FY6Dl8HFsqVwH4uOtQ==", + "version": "6.27.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.27.0.tgz", + "integrity": "sha512-+bvtFWMC0DgAFrfKXKG9Fc+BcXWRUO1aJIihbB79xaeq0v5UzfvnM5houGUm1Y461WVRcgAQ+Clh5rdb1eCx4g==", "dependencies": { - "@remix-run/router": "1.19.2", - "react-router": "6.26.2" + "@remix-run/router": "1.20.0", + "react-router": "6.27.0" }, "engines": { "node": ">=14.0.0" @@ -24817,12 +24768,20 @@ } }, "node_modules/universal-cookie": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/universal-cookie/-/universal-cookie-7.2.0.tgz", - "integrity": "sha512-PvcyflJAYACJKr28HABxkGemML5vafHmiL4ICe3e+BEKXRMt0GaFLZhAwgv637kFFnnfiSJ8e6jknrKkMrU+PQ==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/universal-cookie/-/universal-cookie-7.2.1.tgz", + "integrity": "sha512-GEKneQ0sz8qbobkYM5s9elAx6l7GQDNVl3Siqmc7bt/YccyyXWDPn+fht3J1qMcaLwPrzkty3i+dNfPGP2/9hA==", "dependencies": { "@types/cookie": "^0.6.0", - "cookie": "^0.6.0" + "cookie": "^0.7.2" + } + }, + "node_modules/universal-cookie/node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "engines": { + "node": ">= 0.6" } }, "node_modules/universalify": { diff --git a/apps/OpenSign/package.json b/apps/OpenSign/package.json index e542cee3b..dea88072b 100644 --- a/apps/OpenSign/package.json +++ b/apps/OpenSign/package.json @@ -4,14 +4,14 @@ "private": true, "dependencies": { "@formkit/auto-animate": "^0.8.2", - "@lottiefiles/dotlottie-react": "^0.9.0", + "@lottiefiles/dotlottie-react": "^0.9.1", "@pdf-lib/fontkit": "^1.1.1", "@radix-ui/themes": "^3.1.4", "@react-pdf/renderer": "^4.0.0", - "@reduxjs/toolkit": "^2.2.7", + "@reduxjs/toolkit": "^2.2.8", "axios": "^1.7.7", "file-saver": "^2.0.5", - "i18next": "^23.15.2", + "i18next": "^23.16.0", "i18next-browser-languagedetector": "^8.0.0", "i18next-http-backend": "^2.6.2", "jszip": "^3.10.1", @@ -25,7 +25,7 @@ "react": "^18.2.0", "react-bootstrap": "^2.10.5", "react-confetti": "^6.1.0", - "react-cookie": "^7.2.0", + "react-cookie": "^7.2.1", "react-datepicker": "^7.4.0", "react-dnd": "^16.0.1", "react-dnd-html5-backend": "^16.0.1", @@ -34,13 +34,13 @@ "react-dom": "^18.2.0", "react-gtm-module": "^2.0.11", "react-helmet": "^6.1.0", - "react-i18next": "^15.0.2", + "react-i18next": "^15.0.3", "react-konva": "^18.2.10", "react-pdf": "^9.1.1", "react-quill-new": "^3.3.3", "react-redux": "^9.1.2", "react-rnd": "^10.4.13", - "react-router-dom": "^6.26.2", + "react-router-dom": "^6.27.0", "react-scripts": "5.0.1", "react-scrollbars-custom": "^4.1.1", "react-select": "^5.8.1", @@ -95,8 +95,8 @@ } }, "devDependencies": { - "@babel/core": "^7.25.7", - "@babel/preset-env": "^7.25.7", + "@babel/core": "^7.25.8", + "@babel/preset-env": "^7.25.8", "@babel/preset-react": "^7.25.7", "@babel/runtime-corejs2": "^7.25.7", "autoprefixer": "^10.4.20", @@ -105,7 +105,7 @@ "commitizen": "^4.3.1", "concurrently": "^9.0.1", "css-loader": "^7.1.2", - "daisyui": "^4.12.12", + "daisyui": "^4.12.13", "dotenv": "^16.4.5", "dotenv-webpack": "^8.1.0", "eslint": "^9.12.0", diff --git a/apps/OpenSignServer/cloud/main.js b/apps/OpenSignServer/cloud/main.js index 7d94f1426..b2f55d90a 100644 --- a/apps/OpenSignServer/cloud/main.js +++ b/apps/OpenSignServer/cloud/main.js @@ -73,6 +73,8 @@ import deactivateMailAdapter from './parsefunction/deactivateMailAdapter.js'; import addFileAdapter from './parsefunction/addFileAdapter.js'; import saveToFileAdapter from './parsefunction/saveToFileAdapter.js'; import getFileAdapter from './parsefunction/getFileAdapter.js'; +import addPfxFile from './parsefunction/addPfxFile.js'; +import getPfxFile from './parsefunction/getPfxFile.js'; // This afterSave function triggers after an object is added or updated in the specified class, allowing for post-processing logic. Parse.Cloud.afterSave('contracts_Document', DocumentAftersave); @@ -158,3 +160,5 @@ Parse.Cloud.define('deactivatemailadapter', deactivateMailAdapter); Parse.Cloud.define('savetofileadapter', saveToFileAdapter); Parse.Cloud.define('addfileadapter', addFileAdapter); Parse.Cloud.define('getfileadapter', getFileAdapter); +Parse.Cloud.define('addpfx', addPfxFile); +Parse.Cloud.define('getpfx', getPfxFile); diff --git a/apps/OpenSignServer/cloud/parsefunction/GetTemplate.js b/apps/OpenSignServer/cloud/parsefunction/GetTemplate.js index 82f0974e4..7e2821a6a 100644 --- a/apps/OpenSignServer/cloud/parsefunction/GetTemplate.js +++ b/apps/OpenSignServer/cloud/parsefunction/GetTemplate.js @@ -55,6 +55,7 @@ export default async function GetTemplate(request) { if (res) { const templateRes = JSON.parse(JSON.stringify(res)); delete templateRes?.ExtUserPtr?.TenantId?.FileAdapters; + delete templateRes?.ExtUserPtr?.TenantId?.PfxFile; return templateRes; } else { return { error: "You don't have access of this document!" }; @@ -77,6 +78,7 @@ export default async function GetTemplate(request) { if (res) { const templateRes = JSON.parse(JSON.stringify(res)); delete templateRes?.ExtUserPtr?.TenantId?.FileAdapters; + delete templateRes?.ExtUserPtr?.TenantId?.PfxFile; return templateRes; } else { return { error: "You don't have access of this document!" }; diff --git a/apps/OpenSignServer/cloud/parsefunction/addFileAdapter.js b/apps/OpenSignServer/cloud/parsefunction/addFileAdapter.js index ab8511e34..7fc5f3de8 100644 --- a/apps/OpenSignServer/cloud/parsefunction/addFileAdapter.js +++ b/apps/OpenSignServer/cloud/parsefunction/addFileAdapter.js @@ -9,6 +9,49 @@ function generateId(length) { return result; } +// `getExtUser` get ext user details +async function getExtUser(request) { + const extUserCls = new Parse.Query('contracts_Users'); + extUserCls.equalTo('UserId', request.user); + extUserCls.include('TenantId'); + return await extUserCls.first({ useMasterKey: true }); +} + +// `saveTenant` save file adapter details in tenant class +async function saveTenant(tenantId, fileAdapters, activeAdapter) { + const tenantCls = new Parse.Object('partners_Tenant'); + tenantCls.id = tenantId; + if (fileAdapters?.length > 0) { + tenantCls.set('FileAdapters', fileAdapters); + } + if (activeAdapter) { + tenantCls.set('ActiveFileAdapter', activeAdapter); + } else { + tenantCls.unset('ActiveFileAdapter'); + } + return await tenantCls.save(null, { useMasterKey: true }); +} + +// `updateTenantSchema` is used add FileAdapter in protected fields +async function updateTenantSchema() { + const tenantSchema = new Parse.Schema('partners_Tenant'); + const currentSchema = await tenantSchema.get(); + let clp = currentSchema.classLevelPermissions; + // Public permission ("*") + const role = '*'; + if (!clp.protectedFields || Object.keys(clp.protectedFields).length === 0) { + // Initialize protectedFields if it doesn't exist + clp.protectedFields = { [role]: [] }; + } + // save FileAdapters field is in protectedFields if not exists + if (!clp.protectedFields[role]?.includes('FileAdapters')) { + clp.protectedFields[role].push('FileAdapters'); + // Update the class schema with the modified CLP + tenantSchema.setCLP(clp); + await tenantSchema.update(); + } +} + export default async function addFileAdapter(request) { if (!request?.user) { throw new Parse.Error(Parse.Error.INVALID_SESSION_TOKEN, 'User is not authenticated.'); @@ -24,24 +67,15 @@ export default async function addFileAdapter(request) { if (fileAdapterName && accessKeyId && secretAccessKey && adapter) { try { - const extUserCls = new Parse.Query('contracts_Users'); - extUserCls.equalTo('UserId', request.user); - extUserCls.include('TenantId'); - const extUser = await extUserCls.first({ useMasterKey: true }); + const extUser = await getExtUser(request); if (extUser) { const _extUser = JSON.parse(JSON.stringify(extUser)); - const tenantCls = new Parse.Object('partners_Tenant'); - tenantCls.id = extUser?.get('TenantId')?.id; - const existsFileAdaptes = _extUser?.TenantId?.FileAdapters - ? _extUser?.TenantId?.FileAdapters - : []; - + const tenantId = extUser?.get('TenantId')?.id; // assign existing file adapters or empty array - let updatedFileAdapters = existsFileAdaptes; + let fileAdapters = _extUser?.TenantId?.FileAdapters || []; const uniqueId = generateId(10); let id = extUser?.get('TenantId')?.id + '_' + uniqueId; - const index = updatedFileAdapters?.findIndex(x => x.fileAdapterName === fileAdapterName); - + const index = fileAdapters?.findIndex(x => x.fileAdapterName === fileAdapterName); if (index !== -1) { // If an object with the same fileAdapterName exists, update it if (bucketName || region || endpoint || baseUrl) { @@ -51,13 +85,13 @@ export default async function addFileAdapter(request) { ); } else { const adapterConfig = { accessKeyId: accessKeyId, secretAccessKey: secretAccessKey }; - updatedFileAdapters[index] = { ...updatedFileAdapters[index], ...adapterConfig }; - id = updatedFileAdapters[index].id; + fileAdapters[index] = { ...fileAdapters[index], ...adapterConfig }; + id = fileAdapters[index].id; } } else { if (bucketName && region && endpoint && baseUrl) { // If the object with the given fileAdapterName doesn't exist, add a new one - updatedFileAdapters.push({ + fileAdapters.push({ id: id, fileAdapterName: fileAdapterName, fileAdapter: adapter, @@ -72,25 +106,8 @@ export default async function addFileAdapter(request) { throw new Parse.Error(Parse.Error.INVALID_QUERY, 'Please provide all parameters.'); } } - tenantCls.set('FileAdapters', updatedFileAdapters); - if (adapter) { - tenantCls.set('ActiveFileAdapter', id); - } else { - tenantCls.unset('ActiveFileAdapter'); - } - const updateTenant = await tenantCls.save(null, { useMasterKey: true }); - const tenantSchema = new Parse.Schema('partners_Tenant'); - tenantSchema.setCLP({ - get: { '*': true }, - find: { '*': true }, - count: { '*': true }, - create: { '*': true }, - update: { '*': true }, - delete: { '*': true }, - addField: { '*': true }, - protectedFields: { '*': ['FileAdapters'] }, - }); - await tenantSchema.update(); + const updateTenant = await saveTenant(tenantId, fileAdapters, id); + await updateTenantSchema(); const ActiveFileAdapter = adapter === 'opensign' ? 'opensign' : id; return { ActiveFileAdapter: ActiveFileAdapter, updateAt: updateTenant.updatedAt }; } else { @@ -104,27 +121,11 @@ export default async function addFileAdapter(request) { } } else if (adapter === 'opensign') { try { - const extUserCls = new Parse.Query('contracts_Users'); - extUserCls.equalTo('UserId', request.user); - extUserCls.include('TenantId'); - const extUser = await extUserCls.first({ useMasterKey: true }); + const extUser = await getExtUser(request); if (extUser) { - const tenantCls = new Parse.Object('partners_Tenant'); - tenantCls.id = extUser?.get('TenantId')?.id; - tenantCls.unset('ActiveFileAdapter'); - const updateTenant = await tenantCls.save(null, { useMasterKey: true }); - const tenantSchema = new Parse.Schema('partners_Tenant'); - tenantSchema.setCLP({ - get: { '*': true }, - find: { '*': true }, - count: { '*': true }, - create: { '*': true }, - update: { '*': true }, - delete: { '*': true }, - addField: { '*': true }, - protectedFields: { '*': ['FileAdapters'] }, - }); - await tenantSchema.update(); + const tenantId = extUser?.get('TenantId')?.id; + const updateTenant = await saveTenant(tenantId); + await updateTenantSchema(); return { ActiveFileAdapter: 'opensign', updateAt: updateTenant.updatedAt }; } else { throw new Parse.Error(Parse.Error.OBJECT_NOT_FOUND, 'User not found.'); diff --git a/apps/OpenSignServer/cloud/parsefunction/addPfxFile.js b/apps/OpenSignServer/cloud/parsefunction/addPfxFile.js new file mode 100644 index 000000000..4503d436d --- /dev/null +++ b/apps/OpenSignServer/cloud/parsefunction/addPfxFile.js @@ -0,0 +1,58 @@ +// `updateTenantSchema` is used add FileAdapter in protected fields +async function updateTenantSchema() { + const tenantSchema = new Parse.Schema('partners_Tenant'); + const currentSchema = await tenantSchema.get(); + let clp = currentSchema.classLevelPermissions; + // Public permission ("*") + const role = '*'; + if (!clp.protectedFields || Object.keys(clp.protectedFields).length === 0) { + // Initialize protectedFields if it doesn't exist + clp.protectedFields = { [role]: [] }; + } + // save PfxFile field is in protectedFields if not exists + if (!clp.protectedFields[role]?.includes('PfxFile')) { + clp.protectedFields[role].push('PfxFile'); + // Update the class schema with the modified CLP + tenantSchema.setCLP(clp); + await tenantSchema.update(); + } +} + +export default async function addPfxFile(request) { + if (!request?.user) { + throw new Parse.Error(Parse.Error.INVALID_SESSION_TOKEN, 'User is not authenticated.'); + } + const pfxBase64 = request.params.pfxBase64; + const title = request.params.title; + const password = request.params.password; + const provider = request.params.provider; + if (provider === 'opensign' || (pfxBase64 && password)) { + try { + const extUserCls = new Parse.Query('contracts_Users'); + extUserCls.equalTo('UserId', request.user); + extUserCls.include('TenantId'); + const extUser = await extUserCls.first({ useMasterKey: true }); + if (extUser) { + const tenantCls = new Parse.Object('partners_Tenant'); + tenantCls.id = extUser?.get('TenantId')?.id; + if (provider === 'opensign') { + tenantCls.unset('PfxFile'); + } else { + tenantCls.set('PfxFile', { title: title, password: password, base64: pfxBase64 }); + } + const updateTenant = await tenantCls.save(null, { useMasterKey: true }); + await updateTenantSchema(); + return { updateAt: updateTenant.updatedAt }; + } else { + throw new Parse.Error(Parse.Error.OBJECT_NOT_FOUND, 'User not found.'); + } + } catch (err) { + console.log('Err in add custom file adapter', err); + const code = err.code || 400; + const msg = err.message || 'Something went wrong.'; + throw new Parse.Error(code, msg); + } + } else { + throw new Parse.Error(Parse.Error.INVALID_QUERY, 'Please provide all parameters.'); + } +} diff --git a/apps/OpenSignServer/cloud/parsefunction/getDocument.js b/apps/OpenSignServer/cloud/parsefunction/getDocument.js index 821d24210..8096ee915 100644 --- a/apps/OpenSignServer/cloud/parsefunction/getDocument.js +++ b/apps/OpenSignServer/cloud/parsefunction/getDocument.js @@ -23,6 +23,7 @@ export default async function getDocument(request) { const IsEnableOTP = res?.get('IsEnableOTP') || false; const document = JSON.parse(JSON.stringify(res)); delete document.ExtUserPtr.TenantId.FileAdapters; + delete document?.ExtUserPtr?.TenantId?.PfxFile; if (!IsEnableOTP) { return document; } else { diff --git a/apps/OpenSignServer/cloud/parsefunction/getPfxFile.js b/apps/OpenSignServer/cloud/parsefunction/getPfxFile.js new file mode 100644 index 000000000..9a2c9da01 --- /dev/null +++ b/apps/OpenSignServer/cloud/parsefunction/getPfxFile.js @@ -0,0 +1,25 @@ +export default async function getPfxFile(request) { + if (!request?.user) { + throw new Parse.Error(Parse.Error.INVALID_SESSION_TOKEN, 'User is not authenticated.'); + } + try { + const extUserCls = new Parse.Query('contracts_Users'); + extUserCls.equalTo('UserId', request.user); + extUserCls.include('TenantId'); + const extUser = await extUserCls.first({ useMasterKey: true }); + if (extUser) { + const _extUser = JSON.parse(JSON.stringify(extUser)); + const title = _extUser?.TenantId?.PfxFile?.title || ''; + const pfxBase64 = _extUser?.TenantId?.PfxFile?.base64 || ''; + const password = _extUser?.TenantId?.PfxFile?.password || ''; + return { title: title, password: password, base64: pfxBase64 }; + } else { + throw new Parse.Error(Parse.Error.OBJECT_NOT_FOUND, 'User not found.'); + } + } catch (err) { + console.log('Err in add custom file adapter', err); + const code = err.code || 400; + const msg = err.message || 'Something went wrong.'; + throw new Parse.Error(code, msg); + } +} diff --git a/apps/OpenSignServer/cloud/parsefunction/getUserDetails.js b/apps/OpenSignServer/cloud/parsefunction/getUserDetails.js index ff1bda173..5feb7e16c 100644 --- a/apps/OpenSignServer/cloud/parsefunction/getUserDetails.js +++ b/apps/OpenSignServer/cloud/parsefunction/getUserDetails.js @@ -16,6 +16,7 @@ async function getUserDetails(request) { userQuery.exclude('CreatedBy.authData'); userQuery.exclude('TenantId.FileAdapters'); userQuery.exclude('google_refresh_token'); + userQuery.exclude('TenantId.PfxFile'); if (userId) { userQuery.equalTo('CreatedBy', { __type: 'Pointer', className: '_User', objectId: userId }); } diff --git a/apps/OpenSignServer/cloud/parsefunction/pdf/PDF.js b/apps/OpenSignServer/cloud/parsefunction/pdf/PDF.js index e5dfbb651..d0f7731e9 100644 --- a/apps/OpenSignServer/cloud/parsefunction/pdf/PDF.js +++ b/apps/OpenSignServer/cloud/parsefunction/pdf/PDF.js @@ -245,7 +245,11 @@ async function sendDoctoWebhook(doc, Url, event, signUser, certificateUrl) { async function sendMailsaveCertifcate(doc, P12Buffer, isCustomMail, mailProvider, adapterConfig) { const certificate = await GenerateCertificate(doc); const certificatePdf = await PDFDocument.load(certificate); - const p12 = new P12Signer(P12Buffer, { passphrase: process.env.PASS_PHRASE || null }); + let passphrase = process.env.PASS_PHRASE; + if (doc?.ExtUserPtr?.TenantId?.PfxFile?.password) { + passphrase = doc?.ExtUserPtr?.TenantId?.PfxFile?.password; + } + const p12 = new P12Signer(P12Buffer, { passphrase: passphrase || null }); // `pdflibAddPlaceholder` is used to add code of only digitial sign in certificate pdflibAddPlaceholder({ pdfDoc: certificatePdf, @@ -341,10 +345,15 @@ async function PDF(req) { // `PdfBuffer` used to create buffer from pdf file let PdfBuffer = Buffer.from(req.params.pdfFile, 'base64'); // `P12Buffer` used to create buffer from p12 certificate - const pfxFile = process.env.PFX_BASE64; + let pfxFile = process.env.PFX_BASE64; + let passphrase = process.env.PASS_PHRASE; + if (_resDoc?.ExtUserPtr?.TenantId?.PfxFile?.base64) { + pfxFile = _resDoc?.ExtUserPtr?.TenantId?.PfxFile?.base64; + passphrase = _resDoc?.ExtUserPtr?.TenantId?.PfxFile?.password; + } // const P12Buffer = fs.readFileSync(); const P12Buffer = Buffer.from(pfxFile, 'base64'); - const p12Cert = new P12Signer(P12Buffer, { passphrase: process.env.PASS_PHRASE || null }); + const p12Cert = new P12Signer(P12Buffer, { passphrase: passphrase || null }); const UserPtr = { __type: 'Pointer', className: className, objectId: signUser.objectId }; const obj = { UserPtr: UserPtr, SignedUrl: '', Activity: 'Signed', ipAddress: userIP }; let updateAuditTrail; @@ -364,7 +373,8 @@ async function PDF(req) { isCompleted = true; } const randomNumber = Math.floor(Math.random() * 5000); - const name = `exported_file_${randomNumber}.pdf`; + const docName = _resDoc?.Name?.replace(/\s+/g, '_')?.toLowerCase(); + const name = `signed_${docName}_${randomNumber}.pdf`; const filePath = `./exports/${name}`; let pdfSize = PdfBuffer.length; if (isCompleted) { diff --git a/apps/OpenSignServer/package-lock.json b/apps/OpenSignServer/package-lock.json index 7b3807520..b7e49a055 100644 --- a/apps/OpenSignServer/package-lock.json +++ b/apps/OpenSignServer/package-lock.json @@ -9,8 +9,8 @@ "version": "1.4.0", "license": "MIT", "dependencies": { - "@aws-sdk/client-s3": "^3.665.0", - "@aws-sdk/s3-request-presigner": "^3.665.0", + "@aws-sdk/client-s3": "^3.670.0", + "@aws-sdk/s3-request-presigner": "^3.670.0", "@parse/fs-files-adapter": "^3.0.0", "@parse/s3-files-adapter": "^2.2.0", "@pdf-lib/fontkit": "^1.1.1", @@ -21,12 +21,12 @@ "axios": "^1.7.7", "cors": "^2.8.5", "dotenv": "^16.4.5", - "express": "^4.21.0", - "form-data": "^4.0.0", + "express": "^4.21.1", + "form-data": "^4.0.1", "generate-api-key": "^1.0.2", "googleapis": "^144.0.0", "mailgun.js": "^10.2.3", - "mongoose": "^8.7.0", + "mongoose": "^8.7.1", "multer": "^1.4.5-lts.1", "multer-s3": "^3.0.1", "node-forge": "^1.3.1", @@ -36,13 +36,13 @@ "parse-server": "^7.3.0", "parse-server-api-mail-adapter": "^4.0.0", "pdf-lib": "^1.17.1", - "posthog-node": "^4.2.0", + "posthog-node": "^4.2.1", "ws": "^8.18.0" }, "devDependencies": { - "@babel/eslint-parser": "^7.25.7", + "@babel/eslint-parser": "^7.25.8", "eslint": "^9.12.0", - "jasmine": "^5.3.1", + "jasmine": "^5.4.0", "mongodb-runner": "^5.7.0", "nodemon": "^3.1.7", "nyc": "^17.1.0", @@ -529,36 +529,36 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.665.0.tgz", - "integrity": "sha512-jlXlF/YiCZyieSmYSU5R0kViU+pKJSKlGHaz+L1uXlpuoMiyNsSC3CGRzvtijBdgMU/vacVcAuj/tC/iov4usg==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.670.0.tgz", + "integrity": "sha512-8Pwu1K+PgbYpXDaGKNy5hEbRH5FXHlfXJOhtV4oEDroL7ngix3ZUVWN9oIVVSDK02y1oQS1jCSEGUiUiauzb0g==", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.665.0", - "@aws-sdk/client-sts": "3.665.0", - "@aws-sdk/core": "3.665.0", - "@aws-sdk/credential-provider-node": "3.665.0", - "@aws-sdk/middleware-bucket-endpoint": "3.664.0", - "@aws-sdk/middleware-expect-continue": "3.664.0", - "@aws-sdk/middleware-flexible-checksums": "3.664.0", - "@aws-sdk/middleware-host-header": "3.664.0", - "@aws-sdk/middleware-location-constraint": "3.664.0", - "@aws-sdk/middleware-logger": "3.664.0", - "@aws-sdk/middleware-recursion-detection": "3.664.0", - "@aws-sdk/middleware-sdk-s3": "3.665.0", - "@aws-sdk/middleware-ssec": "3.664.0", - "@aws-sdk/middleware-user-agent": "3.664.0", - "@aws-sdk/region-config-resolver": "3.664.0", - "@aws-sdk/signature-v4-multi-region": "3.665.0", - "@aws-sdk/types": "3.664.0", - "@aws-sdk/util-endpoints": "3.664.0", - "@aws-sdk/util-user-agent-browser": "3.664.0", - "@aws-sdk/util-user-agent-node": "3.664.0", + "@aws-sdk/client-sso-oidc": "3.670.0", + "@aws-sdk/client-sts": "3.670.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-node": "3.670.0", + "@aws-sdk/middleware-bucket-endpoint": "3.667.0", + "@aws-sdk/middleware-expect-continue": "3.667.0", + "@aws-sdk/middleware-flexible-checksums": "3.669.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-location-constraint": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-sdk-s3": "3.669.0", + "@aws-sdk/middleware-ssec": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/signature-v4-multi-region": "3.669.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", "@aws-sdk/xml-builder": "3.662.0", "@smithy/config-resolver": "^3.0.9", - "@smithy/core": "^2.4.7", + "@smithy/core": "^2.4.8", "@smithy/eventstream-serde-browser": "^3.0.10", "@smithy/eventstream-serde-config-resolver": "^3.0.7", "@smithy/eventstream-serde-node": "^3.0.9", @@ -570,20 +570,20 @@ "@smithy/md5-js": "^3.0.7", "@smithy/middleware-content-length": "^3.0.9", "@smithy/middleware-endpoint": "^3.1.4", - "@smithy/middleware-retry": "^3.0.22", + "@smithy/middleware-retry": "^3.0.23", "@smithy/middleware-serde": "^3.0.7", "@smithy/middleware-stack": "^3.0.7", "@smithy/node-config-provider": "^3.1.8", "@smithy/node-http-handler": "^3.2.4", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/url-parser": "^3.0.7", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.22", - "@smithy/util-defaults-mode-node": "^3.0.22", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", "@smithy/util-endpoints": "^2.1.3", "@smithy/util-middleware": "^3.0.7", "@smithy/util-retry": "^3.0.7", @@ -597,43 +597,43 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.665.0.tgz", - "integrity": "sha512-zje+oaIiyviDv5dmBWhGHifPTb0Idq/HatNPy+VEiwo2dxcQBexibD5CQE5e8CWZK123Br/9DHft+iNKdiY5bA==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.670.0.tgz", + "integrity": "sha512-J+oz6uSsDvk4pimMDnKJb1wsV216zTrejvMTIL4RhUD1QPIVVOpteTdUShcjZUIZnkcJZGI+cym/SFK0kuzTpg==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.665.0", - "@aws-sdk/middleware-host-header": "3.664.0", - "@aws-sdk/middleware-logger": "3.664.0", - "@aws-sdk/middleware-recursion-detection": "3.664.0", - "@aws-sdk/middleware-user-agent": "3.664.0", - "@aws-sdk/region-config-resolver": "3.664.0", - "@aws-sdk/types": "3.664.0", - "@aws-sdk/util-endpoints": "3.664.0", - "@aws-sdk/util-user-agent-browser": "3.664.0", - "@aws-sdk/util-user-agent-node": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", "@smithy/config-resolver": "^3.0.9", - "@smithy/core": "^2.4.7", + "@smithy/core": "^2.4.8", "@smithy/fetch-http-handler": "^3.2.9", "@smithy/hash-node": "^3.0.7", "@smithy/invalid-dependency": "^3.0.7", "@smithy/middleware-content-length": "^3.0.9", "@smithy/middleware-endpoint": "^3.1.4", - "@smithy/middleware-retry": "^3.0.22", + "@smithy/middleware-retry": "^3.0.23", "@smithy/middleware-serde": "^3.0.7", "@smithy/middleware-stack": "^3.0.7", "@smithy/node-config-provider": "^3.1.8", "@smithy/node-http-handler": "^3.2.4", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/url-parser": "^3.0.7", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.22", - "@smithy/util-defaults-mode-node": "^3.0.22", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", "@smithy/util-endpoints": "^2.1.3", "@smithy/util-middleware": "^3.0.7", "@smithy/util-retry": "^3.0.7", @@ -645,44 +645,44 @@ } }, "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.665.0.tgz", - "integrity": "sha512-FQ2YyM9/6y3clWkf3d60/W4c/HZy61hbfIsR4KIh8aGOifwfIx/UpZQ61pCr/TXTNqbaAVU2/sK+J1zFkGEoLw==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.670.0.tgz", + "integrity": "sha512-4qDK2L36Q4J1lfemaHHd9ZxqKRaos3STp44qPAHf/8QyX6Uk5sXgZNVO2yWM7SIEtVKwwBh/fZAsdBkGPBfZcw==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.665.0", - "@aws-sdk/credential-provider-node": "3.665.0", - "@aws-sdk/middleware-host-header": "3.664.0", - "@aws-sdk/middleware-logger": "3.664.0", - "@aws-sdk/middleware-recursion-detection": "3.664.0", - "@aws-sdk/middleware-user-agent": "3.664.0", - "@aws-sdk/region-config-resolver": "3.664.0", - "@aws-sdk/types": "3.664.0", - "@aws-sdk/util-endpoints": "3.664.0", - "@aws-sdk/util-user-agent-browser": "3.664.0", - "@aws-sdk/util-user-agent-node": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-node": "3.670.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", "@smithy/config-resolver": "^3.0.9", - "@smithy/core": "^2.4.7", + "@smithy/core": "^2.4.8", "@smithy/fetch-http-handler": "^3.2.9", "@smithy/hash-node": "^3.0.7", "@smithy/invalid-dependency": "^3.0.7", "@smithy/middleware-content-length": "^3.0.9", "@smithy/middleware-endpoint": "^3.1.4", - "@smithy/middleware-retry": "^3.0.22", + "@smithy/middleware-retry": "^3.0.23", "@smithy/middleware-serde": "^3.0.7", "@smithy/middleware-stack": "^3.0.7", "@smithy/node-config-provider": "^3.1.8", "@smithy/node-http-handler": "^3.2.4", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/url-parser": "^3.0.7", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.22", - "@smithy/util-defaults-mode-node": "^3.0.22", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", "@smithy/util-endpoints": "^2.1.3", "@smithy/util-middleware": "^3.0.7", "@smithy/util-retry": "^3.0.7", @@ -693,49 +693,49 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.665.0" + "@aws-sdk/client-sts": "^3.670.0" } }, "node_modules/@aws-sdk/client-sts": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.665.0.tgz", - "integrity": "sha512-/OQEaWB1euXhZ/hV+wetDw1tynlrkNKzirzoiFuJ1EQsiIb9Ih/qjUF9KLdF1+/bXbnGu5YvIaAx80YReUchjg==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.670.0.tgz", + "integrity": "sha512-bExrNo8ZVWorS3cjMZKQnA2HWqDmAzcZoSN/cPVoPFNkHwdl1lzPxvcLzmhpIr48JHgKfybBjrbluDZfIYeEog==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.665.0", - "@aws-sdk/core": "3.665.0", - "@aws-sdk/credential-provider-node": "3.665.0", - "@aws-sdk/middleware-host-header": "3.664.0", - "@aws-sdk/middleware-logger": "3.664.0", - "@aws-sdk/middleware-recursion-detection": "3.664.0", - "@aws-sdk/middleware-user-agent": "3.664.0", - "@aws-sdk/region-config-resolver": "3.664.0", - "@aws-sdk/types": "3.664.0", - "@aws-sdk/util-endpoints": "3.664.0", - "@aws-sdk/util-user-agent-browser": "3.664.0", - "@aws-sdk/util-user-agent-node": "3.664.0", + "@aws-sdk/client-sso-oidc": "3.670.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-node": "3.670.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", "@smithy/config-resolver": "^3.0.9", - "@smithy/core": "^2.4.7", + "@smithy/core": "^2.4.8", "@smithy/fetch-http-handler": "^3.2.9", "@smithy/hash-node": "^3.0.7", "@smithy/invalid-dependency": "^3.0.7", "@smithy/middleware-content-length": "^3.0.9", "@smithy/middleware-endpoint": "^3.1.4", - "@smithy/middleware-retry": "^3.0.22", + "@smithy/middleware-retry": "^3.0.23", "@smithy/middleware-serde": "^3.0.7", "@smithy/middleware-stack": "^3.0.7", "@smithy/node-config-provider": "^3.1.8", "@smithy/node-http-handler": "^3.2.4", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/url-parser": "^3.0.7", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.22", - "@smithy/util-defaults-mode-node": "^3.0.22", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", "@smithy/util-endpoints": "^2.1.3", "@smithy/util-middleware": "^3.0.7", "@smithy/util-retry": "^3.0.7", @@ -747,17 +747,17 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.665.0.tgz", - "integrity": "sha512-nqmNNf7Ml7qDXTIisDv+OYe/rl3nAW4cmR+HxrOCWdhTHe8xRdR5c45VPoh8nv1KIry5xtd+iqPrzzjydes+Og==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.667.0.tgz", + "integrity": "sha512-pMcDVI7Tmdsc8R3sDv0Omj/4iRParGY+uJtAfF669WnZfDfaBQaix2Mq7+Mu08vdjqO9K3gicFvjk9S1VLmOKA==", "dependencies": { - "@aws-sdk/types": "3.664.0", - "@smithy/core": "^2.4.7", + "@aws-sdk/types": "3.667.0", + "@smithy/core": "^2.4.8", "@smithy/node-config-provider": "^3.1.8", "@smithy/property-provider": "^3.1.7", "@smithy/protocol-http": "^4.1.4", "@smithy/signature-v4": "^4.2.0", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/util-middleware": "^3.0.7", "fast-xml-parser": "4.4.1", @@ -768,11 +768,12 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.664.0.tgz", - "integrity": "sha512-95rE+9Voaco0nmKJrXqfJAxSSkSWqlBy76zomiZrUrv7YuijQtHCW8jte6v6UHAFAaBzgFsY7QqBxs15u9SM7g==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.667.0.tgz", + "integrity": "sha512-zZbrkkaPc54WXm+QAnpuv0LPNfsts0HPPd+oCECGs7IQRaFsGj187cwvPg9RMWDFZqpm64MdBDoA8OQHsqzYCw==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/property-provider": "^3.1.7", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -782,16 +783,17 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.664.0.tgz", - "integrity": "sha512-svaPwVfWV3g/qjd4cYHTUyBtkdOwcVjC+tSj6EjoMrpZwGUXcCbYe04iU0ARZ6tuH/u3vySbTLOGjSa7g8o9Qw==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.667.0.tgz", + "integrity": "sha512-sjtybFfERZWiqTY7fswBxKQLvUkiCucOWyqh3IaPo/4nE1PXRnaZCVG0+kRBPrYIxWqiVwytvZzMJy8sVZcG0A==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/fetch-http-handler": "^3.2.9", "@smithy/node-http-handler": "^3.2.4", "@smithy/property-provider": "^3.1.7", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/util-stream": "^3.1.9", "tslib": "^2.6.2" @@ -801,16 +803,17 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.665.0.tgz", - "integrity": "sha512-CSWBV5GqCkK78TTXq6qx40MWCt90t8rS/O7FIR4nbmoUhG/DysaC1G0om1fSx6k+GWcvIIIsSvD4hdbh8FRWKA==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.670.0.tgz", + "integrity": "sha512-TB1gacUj75leaTt2JsCTzygDSIk4ksv9uZoR7VenlgFPRktyOeT+fapwIVBeB2Qg7b9uxAY2K5XkKstDZyBEEw==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.664.0", - "@aws-sdk/credential-provider-http": "3.664.0", - "@aws-sdk/credential-provider-process": "3.664.0", - "@aws-sdk/credential-provider-sso": "3.665.0", - "@aws-sdk/credential-provider-web-identity": "3.664.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-env": "3.667.0", + "@aws-sdk/credential-provider-http": "3.667.0", + "@aws-sdk/credential-provider-process": "3.667.0", + "@aws-sdk/credential-provider-sso": "3.670.0", + "@aws-sdk/credential-provider-web-identity": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/credential-provider-imds": "^3.2.4", "@smithy/property-provider": "^3.1.7", "@smithy/shared-ini-file-loader": "^3.1.8", @@ -821,21 +824,21 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.665.0" + "@aws-sdk/client-sts": "^3.670.0" } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.665.0.tgz", - "integrity": "sha512-cmJfVi4IM0WaKMQvPXhiS5mdIZyCoa04I3D+IEKpD2GAuVZa6tgwqfPyaApFDLjyedGGNFkC4MRgAjCcCl4WFg==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.670.0.tgz", + "integrity": "sha512-zwNrRYzubk4CaZ7zebeDhxsm8QtNWkbGKopZPOaZSnd5uqUGRcmx4ccVRngWUK68XDP44aEUWC8iU5Pc7btpHQ==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.664.0", - "@aws-sdk/credential-provider-http": "3.664.0", - "@aws-sdk/credential-provider-ini": "3.665.0", - "@aws-sdk/credential-provider-process": "3.664.0", - "@aws-sdk/credential-provider-sso": "3.665.0", - "@aws-sdk/credential-provider-web-identity": "3.664.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/credential-provider-env": "3.667.0", + "@aws-sdk/credential-provider-http": "3.667.0", + "@aws-sdk/credential-provider-ini": "3.670.0", + "@aws-sdk/credential-provider-process": "3.667.0", + "@aws-sdk/credential-provider-sso": "3.670.0", + "@aws-sdk/credential-provider-web-identity": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/credential-provider-imds": "^3.2.4", "@smithy/property-provider": "^3.1.7", "@smithy/shared-ini-file-loader": "^3.1.8", @@ -847,11 +850,12 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.664.0.tgz", - "integrity": "sha512-sQicIw/qWTsmMw8EUQNJXdrWV5SXaZc2zGdCQsQxhR6wwNO2/rZ5JmzdcwUADmleBVyPYk3KGLhcofF/qXT2Ng==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.667.0.tgz", + "integrity": "sha512-HZHnvop32fKgsNHkdhVaul7UzQ25sEc0j9yqA4bjhtbk0ECl42kj3f1pJ+ZU/YD9ut8lMJs/vVqiOdNThVdeBw==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/property-provider": "^3.1.7", "@smithy/shared-ini-file-loader": "^3.1.8", "@smithy/types": "^3.5.0", @@ -862,13 +866,14 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.665.0.tgz", - "integrity": "sha512-Xe8WW4r70bsetGQG3azFeK/gd+Q4OmNiidtRrG64y/V9TIvIqc7Y/yUZNhEgFkpG19o188VmXg/ulnG3E+MvLg==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.670.0.tgz", + "integrity": "sha512-5PkA8BOy4q57Vhe9AESoHKZ7vjRbElNPKjXA4qC01xY+DitClRFz4O3B9sMzFp0PHlz9nDVSXXKgq0yzF/nAag==", "dependencies": { - "@aws-sdk/client-sso": "3.665.0", - "@aws-sdk/token-providers": "3.664.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/client-sso": "3.670.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/token-providers": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/property-provider": "^3.1.7", "@smithy/shared-ini-file-loader": "^3.1.8", "@smithy/types": "^3.5.0", @@ -879,11 +884,12 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.664.0.tgz", - "integrity": "sha512-10ltP1BfSKRJVXd8Yr5oLbo+VSDskWbps0X3szSsxTk0Dju1xvkz7hoIjylWLvtGbvQ+yb2pmsJYKCudW/4DJg==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.667.0.tgz", + "integrity": "sha512-t8CFlZMD/1p/8Cli3rvRiTJpjr/8BO64gw166AHgFZYSN2h95L2l1tcW0jpsc3PprA32nLg1iQVKYt4WGM4ugw==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/property-provider": "^3.1.7", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -892,7 +898,7 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.664.0" + "@aws-sdk/client-sts": "^3.667.0" } }, "node_modules/@aws-sdk/lib-storage": { @@ -933,11 +939,11 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.664.0.tgz", - "integrity": "sha512-KP+foxGaAclhRI63ElZPvVeG5oajkbNhE7wiW34UoSw8wI2l+lmm36zkiebfP4K5HRyADS+KvGw95851N++s2A==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.667.0.tgz", + "integrity": "sha512-XGz4jMAkDoTyFdtLz7ZF+C05IAhCTC1PllpvTBaj821z/L0ilhbqVhrT/f2Buw8Id/K5A390csGXgusXyrFFjA==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@aws-sdk/util-arn-parser": "3.568.0", "@smithy/node-config-provider": "^3.1.8", "@smithy/protocol-http": "^4.1.4", @@ -950,11 +956,11 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.664.0.tgz", - "integrity": "sha512-7hvF+HQhDFvBCzxWFmFOa6tWkVjRAaTR/Ltt03TAZ6JzfIayqnqKFvmdvYFfIeD2w3x4gx24zooRillFk4e3mQ==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.667.0.tgz", + "integrity": "sha512-0TiSL9S5DSG95NHGIz6qTMuV7GDKVn8tvvGSrSSZu/wXO3JaYSH0AElVpYfc4PtPRqVpEyNA7nnc7W56mMCLWQ==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/protocol-http": "^4.1.4", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -964,13 +970,14 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.664.0.tgz", - "integrity": "sha512-XO3T3hFrGKeaTvnWGLbgii//9SAfxock57dz5x3Hutzw+9ckVvNroOWFNHvyTPSDJ+w5Vwq5mLWVDs9tlejBtg==", + "version": "3.669.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.669.0.tgz", + "integrity": "sha512-01UQLoUzVwWMf+b+AEuwJ2lluBD+Cp8AcbyEHqvEaPdjGKHIS4BCvnY70mZYnAfRtL8R2h9tt7iI61oWU3Gjkg==", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", "@smithy/is-array-buffer": "^3.0.0", "@smithy/node-config-provider": "^3.1.8", "@smithy/protocol-http": "^4.1.4", @@ -984,11 +991,11 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.664.0.tgz", - "integrity": "sha512-4tCXJ+DZWTq38eLmFgnEmO8X4jfWpgPbWoCyVYpRHCPHq6xbrU65gfwS9jGx25L4YdEce641ChI9TKLryuUgRA==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.667.0.tgz", + "integrity": "sha512-Z7fIAMQnPegs7JjAQvlOeWXwpMRfegh5eCoIP6VLJIeR6DLfYKbP35JBtt98R6DXslrN2RsbTogjbxPEDQfw1w==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/protocol-http": "^4.1.4", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -998,11 +1005,11 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.664.0.tgz", - "integrity": "sha512-hHMdJqq83cDnSTVhrSDsOrm1DyFtS1rteSwuqN7dGNr093bluCqH1VpnS/8juYzux8QGnzRecs9qV3hncGGxPw==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.667.0.tgz", + "integrity": "sha512-ob85H3HhT3/u5O+x0o557xGZ78vSNeSSwMaSitxdsfs2hOuoUl1uk+OeLpi1hkuJnL41FPpokV7TVII2XrFfmg==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" }, @@ -1011,11 +1018,11 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.664.0.tgz", - "integrity": "sha512-eNykMqQuv7eg9pAcaLro44fscIe1VkFfhm+gYnlxd+PH6xqapRki1E68VHehnIptnVBdqnWfEqLUSLGm9suqhg==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.667.0.tgz", + "integrity": "sha512-PtTRNpNm/5c746jRgZCNg4X9xEJIwggkGJrF0GP9AB1ANg4pc/sF2Fvn1NtqPe9wtQ2stunJprnm5WkCHN7QiA==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" }, @@ -1024,11 +1031,11 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.664.0.tgz", - "integrity": "sha512-jq27WMZhm+dY8BWZ9Ipy3eXtZj0lJzpaKQE3A3tH5AOIlUV/gqrmnJ9CdqVVef4EJsq9Yil4ZzQjKKmPsxveQg==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.667.0.tgz", + "integrity": "sha512-U5glWD3ehFohzpUpopLtmqAlDurGWo2wRGPNgi4SwhWU7UDt6LS7E/UvJjqC0CUrjlzOw+my2A+Ncf+fisMhxQ==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/protocol-http": "^4.1.4", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -1038,18 +1045,18 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.665.0.tgz", - "integrity": "sha512-mOe6qjwabWVivomUwXrD9LNdZ4DkG6w9htpWBeRZ2I/CnqjzNWXjwWQe7sMtmpXtqTI1Sk6W6shu/u1XY3Kfqg==", + "version": "3.669.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.669.0.tgz", + "integrity": "sha512-b2QUQ7DcIcVCUFhvmFEDI90BemvQhO0ntIajllLqQSy88PSNdLDCVx5mIzfxaaK/1tdY/UsEDRRm1kMQHJDQpg==", "dependencies": { - "@aws-sdk/core": "3.665.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/core": "^2.4.7", + "@smithy/core": "^2.4.8", "@smithy/node-config-provider": "^3.1.8", "@smithy/protocol-http": "^4.1.4", "@smithy/signature-v4": "^4.2.0", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/util-config-provider": "^3.0.0", "@smithy/util-middleware": "^3.0.7", @@ -1062,11 +1069,11 @@ } }, "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.664.0.tgz", - "integrity": "sha512-uyMnxku5ygRxr/z4pO9ul8Rgn2CoFcKCaKnfHfTgVo2yV/jKHI3rAvyD3OtOO7k4S0odaJzss2Fw6GsIKZy5AQ==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.667.0.tgz", + "integrity": "sha512-1wuAUZIkmZIvOmGg5qNQU821CGFHhkuKioxXgNh0DpUxZ9+AeiV7yorJr+bqkb2KBFv1i1TnzGRecvKf/KvZIQ==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" }, @@ -1075,13 +1082,14 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.664.0.tgz", - "integrity": "sha512-Kp5UwXwayO6d472nntiwgrxqay2KS9ozXNmKjQfDrUWbEzvgKI+jgKNMia8MMnjSxYoBGpQ1B8NGh8a6KMEJJg==", + "version": "3.669.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.669.0.tgz", + "integrity": "sha512-K8ScPi45zjJrj5Y2gRqVsvKKQCQbvQBfYGcBw9ZOx9TTavH80bOCBjWg/GFnvs4f37tqVc1wMN2oGvcTF6HveQ==", "dependencies": { - "@aws-sdk/types": "3.664.0", - "@aws-sdk/util-endpoints": "3.664.0", - "@smithy/core": "^2.4.7", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@smithy/core": "^2.4.8", "@smithy/protocol-http": "^4.1.4", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -1091,11 +1099,11 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.664.0.tgz", - "integrity": "sha512-o/B8dg8K+9714RGYPgMxZgAChPe/MTSMkf/eHXTUFHNik5i1HgVKfac22njV2iictGy/6GhpFsKa1OWNYAkcUg==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.667.0.tgz", + "integrity": "sha512-iNr+JhhA902JMKHG9IwT9YdaEx6KGl6vjAL5BRNeOjfj4cZYMog6Lz/IlfOAltMtT0w88DAHDEFrBd2uO0l2eg==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/node-config-provider": "^3.1.8", "@smithy/types": "^3.5.0", "@smithy/util-config-provider": "^3.0.0", @@ -1107,16 +1115,16 @@ } }, "node_modules/@aws-sdk/s3-request-presigner": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.665.0.tgz", - "integrity": "sha512-rXHFrncdZ9na4A34hlDhgu2pcDLp312/bhsVXWeqfwBJgLK+/ZYNsWidlhxYu6KNIiOMREGG/UEjran83jrDTw==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.670.0.tgz", + "integrity": "sha512-cTTQWJhmCRNH9NZbTqAhx3aXmC+p7gYzj7kNOyzdTA6D4jJOQZekxFFEQ0T2BPFYPR9Elk77W0yK+Nv9wMVD4g==", "dependencies": { - "@aws-sdk/signature-v4-multi-region": "3.665.0", - "@aws-sdk/types": "3.664.0", - "@aws-sdk/util-format-url": "3.664.0", + "@aws-sdk/signature-v4-multi-region": "3.669.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-format-url": "3.667.0", "@smithy/middleware-endpoint": "^3.1.4", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" }, @@ -1125,12 +1133,12 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.665.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.665.0.tgz", - "integrity": "sha512-36rKRunD1kE1Y55WyaCTpzoYCs4S4I2z9o5KLMJcF5hI8QvVj37tXQ3sgWJSMdsVgmECArIvDBoeuq3gXQM9jg==", + "version": "3.669.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.669.0.tgz", + "integrity": "sha512-TVwlWAxfBHnFjnfTBQWUhzVJzjwVhkq1+KR0JZV7JrfqeyBOdZjAaV9ie3VNY9HUouecq1fDuKaSwe4JiWQsHg==", "dependencies": { - "@aws-sdk/middleware-sdk-s3": "3.665.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/middleware-sdk-s3": "3.669.0", + "@aws-sdk/types": "3.667.0", "@smithy/protocol-http": "^4.1.4", "@smithy/signature-v4": "^4.2.0", "@smithy/types": "^3.5.0", @@ -1141,11 +1149,11 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.664.0.tgz", - "integrity": "sha512-dBAvXW2/6bAxidvKARFxyCY2uCynYBKRFN00NhS1T5ggxm3sUnuTpWw1DTjl02CVPkacBOocZf10h8pQbHSK8w==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.667.0.tgz", + "integrity": "sha512-ZecJlG8p6D4UTYlBHwOWX6nknVtw/OBJ3yPXTSajBjhUlj9lE2xvejI8gl4rqkyLXk7z3bki+KR4tATbMaM9yg==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/property-provider": "^3.1.7", "@smithy/shared-ini-file-loader": "^3.1.8", "@smithy/types": "^3.5.0", @@ -1155,13 +1163,13 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.664.0" + "@aws-sdk/client-sso-oidc": "^3.667.0" } }, "node_modules/@aws-sdk/types": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.664.0.tgz", - "integrity": "sha512-+GtXktvVgpreM2b+NJL9OqZGsOzHwlCUrO8jgQUvH/yA6Kd8QO2YFhQCp0C9sSzTteZJVqGBu8E0CQurxJHPbw==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.667.0.tgz", + "integrity": "sha512-gYq0xCsqFfQaSL/yT1Gl1vIUjtsg7d7RhnUfsXaHt8xTxOKRTdH9GjbesBjXOzgOvB0W0vfssfreSNGFlOOMJg==", "dependencies": { "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -1182,11 +1190,11 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.664.0.tgz", - "integrity": "sha512-KrXoHz6zmAahVHkyWMRT+P6xJaxItgmklxEDrT+npsUB4d5C/lhw16Crcp9TDi828fiZK3GYKRAmmNhvmzvBNg==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.667.0.tgz", + "integrity": "sha512-X22SYDAuQJWnkF1/q17pkX3nGw5XMD9YEUbmt87vUnRq7iyJ3JOpl6UKOBeUBaL838wA5yzdbinmCITJ/VZ1QA==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/types": "^3.5.0", "@smithy/util-endpoints": "^2.1.3", "tslib": "^2.6.2" @@ -1196,11 +1204,11 @@ } }, "node_modules/@aws-sdk/util-format-url": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.664.0.tgz", - "integrity": "sha512-fpaefMtChdaWD4mQ7PdFGl5x/+Z1ZoRWAUn8dXsOM+zoHWlebSN6AbfgKjyCPOvaHOgMJAF91FCP6d39NwaIuQ==", + "version": "3.667.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.667.0.tgz", + "integrity": "sha512-S0D731SnEPnTfbJ/Dldw5dDrOc8uipK6NLXHDs2xIq0t61iwZLMEiN8yWCs2wAZVVJKpldUM1THLaaufU9SSSA==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/querystring-builder": "^3.0.7", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -1221,23 +1229,23 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.664.0.tgz", - "integrity": "sha512-c/PV3+f1ss4PpskHbcOxTZ6fntV2oXy/xcDR9nW+kVaz5cM1G702gF0rvGLKPqoBwkj2rWGe6KZvEBeLzynTUQ==", + "version": "3.670.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.670.0.tgz", + "integrity": "sha512-iRynWWazqEcCKwGMcQcywKTDLdLvqts1Yx474U64I9OKQXXwhOwhXbF5CAPSRta86lkVNAVYJa/0Bsv45pNn1A==", "dependencies": { - "@aws-sdk/types": "3.664.0", + "@aws-sdk/types": "3.667.0", "@smithy/types": "^3.5.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.664.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.664.0.tgz", - "integrity": "sha512-l/m6KkgrTw1p/VTJTk0IoP9I2OnpWp3WbBgzxoNeh9cUcxTufIn++sBxKj5hhDql57LKWsckScG/MhFuH0vZZA==", + "version": "3.669.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.669.0.tgz", + "integrity": "sha512-9jxCYrgggy2xd44ZASqI7AMiRVaSiFp+06Kg8BQSU0ijKpBJlwcsqIS8pDT/n6LxuOw2eV5ipvM2C0r1iKzrGA==", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.664.0", - "@aws-sdk/types": "3.664.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/types": "3.667.0", "@smithy/node-config-provider": "^3.1.8", "@smithy/types": "^3.5.0", "tslib": "^2.6.2" @@ -1316,9 +1324,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.7.tgz", - "integrity": "sha512-B+BO9x86VYsQHimucBAL1fxTJKF4wyKY6ZVzee9QgzdZOUfs3BaR6AQrgoGrRI+7IFS1wUz/VyQ+SoBcSpdPbw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.8.tgz", + "integrity": "sha512-Po3VLMN7fJtv0nsOjBDSbO1J71UhzShE9MuOSkWEV9IZQXzhZklYtzKZ8ZD/Ij3a0JBv1AG3Ny2L3jvAHQVOGg==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -3078,15 +3086,15 @@ } }, "node_modules/@smithy/core": { - "version": "2.4.7", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.7.tgz", - "integrity": "sha512-goqMjX+IoVEnHZjYuzu8xwoZjoteMiLXsPHuXPBkWsGwu0o9c3nTjqkUlP1Ez/V8E501aOU7CJ3INk8mQcW2gw==", + "version": "2.4.8", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.8.tgz", + "integrity": "sha512-x4qWk7p/a4dcf7Vxb2MODIf4OIcqNbK182WxRvZ/3oKPrf/6Fdic5sSElhO1UtXpWKBazWfqg0ZEK9xN1DsuHA==", "dependencies": { "@smithy/middleware-endpoint": "^3.1.4", - "@smithy/middleware-retry": "^3.0.22", + "@smithy/middleware-retry": "^3.0.23", "@smithy/middleware-serde": "^3.0.7", "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-middleware": "^3.0.7", @@ -3285,14 +3293,14 @@ } }, "node_modules/@smithy/middleware-retry": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.22.tgz", - "integrity": "sha512-svEN7O2Tf7BoaBkPzX/8AE2Bv7p16d9/ulFAD1Gmn5g19iMqNk1WIkMxAY7SpB9/tVtUwKx0NaIsBRl88gumZA==", + "version": "3.0.23", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.23.tgz", + "integrity": "sha512-x9PbGXxkcXIpm6L26qRSCC+eaYcHwybRmqU8LO/WM2RRlW0g8lz6FIiKbKgGvHuoK3dLZRiQVSQJveiCzwnA5A==", "dependencies": { "@smithy/node-config-provider": "^3.1.8", "@smithy/protocol-http": "^4.1.4", "@smithy/service-error-classification": "^3.0.7", - "@smithy/smithy-client": "^3.3.6", + "@smithy/smithy-client": "^3.4.0", "@smithy/types": "^3.5.0", "@smithy/util-middleware": "^3.0.7", "@smithy/util-retry": "^3.0.7", @@ -4306,20 +4314,6 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/bowser": { "version": "2.11.0", "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", @@ -4837,9 +4831,9 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -5749,16 +5743,16 @@ } }, "node_modules/express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", + "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -5819,42 +5813,11 @@ "node": ">= 0.8" } }, - "node_modules/express/node_modules/finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/express/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/express/node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/ext": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", @@ -6023,6 +5986,44 @@ "node": ">=8" } }, + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, "node_modules/find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -6181,9 +6182,9 @@ } }, "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -7379,22 +7380,22 @@ } }, "node_modules/jasmine": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-5.3.1.tgz", - "integrity": "sha512-3zeUCfr3d1iga3s+NgDpggCP+ex5sdbNgqNn+Tq4yw/QfnwGrWC/ZvXX1IRm5deSIZ1LnvoeGY55F/ztbVOXPQ==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-5.4.0.tgz", + "integrity": "sha512-E2u4ylX5tgGYvbynImU6EUBKKrSVB1L72FEPjGh4M55ov1VsxR26RA2JU91L9YSPFgcjo4mCLyKn/QXvEYGBkA==", "dev": true, "dependencies": { "glob": "^10.2.2", - "jasmine-core": "~5.3.0" + "jasmine-core": "~5.4.0" }, "bin": { "jasmine": "bin/jasmine.js" } }, "node_modules/jasmine-core": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-5.3.0.tgz", - "integrity": "sha512-zsOmeBKESky4toybvWEikRiZ0jHoBEu79wNArLfMdSnlLMZx3Xcp6CSm2sUcYyoJC+Uyj8LBJap/MUbVSfJ27g==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-5.4.0.tgz", + "integrity": "sha512-T4fio3W++llLd7LGSGsioriDHgWyhoL6YTu4k37uwJLF7DzOzspz7mNxRoM3cQdLWtL/ebazQpIf/yZGJx/gzg==", "dev": true }, "node_modules/jmespath": { @@ -8213,9 +8214,9 @@ } }, "node_modules/mongoose": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.7.0.tgz", - "integrity": "sha512-rUCSF1mMYQXjXYdqEQLLlMD3xbcj2j1/hRn+9VnVj7ipzru/UoUZxlj/hWmteKMAh4EFnDZ+BIrmma9l/0Hi1g==", + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.7.1.tgz", + "integrity": "sha512-RpNMyhyzLVCVbf8xTVbrf/18G3MqQzNw5pJdvOJ60fzbCa3cOZzz9L+8XpqzBXtRlgZGWv0T7MmOtvrT8ocp1Q==", "dependencies": { "bson": "^6.7.0", "kareem": "2.6.3", @@ -9283,6 +9284,76 @@ "node": ">=14.20.1" } }, + "node_modules/parse-server/node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/parse-server/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/parse-server/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/parse-server/node_modules/express": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", + "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.10", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/parse-server/node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + }, "node_modules/parse-server/node_modules/lru-cache": { "version": "10.2.2", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", @@ -9340,6 +9411,11 @@ "whatwg-url": "^11.0.0" } }, + "node_modules/parse-server/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, "node_modules/parse-server/node_modules/path-to-regexp": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", @@ -9774,9 +9850,9 @@ } }, "node_modules/posthog-node": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/posthog-node/-/posthog-node-4.2.0.tgz", - "integrity": "sha512-hgyCYMyzMvuF3qWMw6JvS8gT55v7Mtp5wKWcnDrw+nu39D0Tk9BXD7I0LOBp0lGlHEPaXCEVYUtviNKrhMALGA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/posthog-node/-/posthog-node-4.2.1.tgz", + "integrity": "sha512-l+fsjYEkTik3m/G0pE7gMr4qBJP84LhK779oQm6MBzhBGpd4By4qieTW+4FUAlNCyzQTynn3Nhsa50c0IELSxQ==", "dependencies": { "axios": "^1.7.4", "rusha": "^0.8.14" @@ -9973,11 +10049,11 @@ "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" diff --git a/apps/OpenSignServer/package.json b/apps/OpenSignServer/package.json index d51ded026..ecfbbd8d7 100644 --- a/apps/OpenSignServer/package.json +++ b/apps/OpenSignServer/package.json @@ -18,8 +18,8 @@ "watch": "nodemon index.js" }, "dependencies": { - "@aws-sdk/client-s3": "^3.665.0", - "@aws-sdk/s3-request-presigner": "^3.665.0", + "@aws-sdk/client-s3": "^3.670.0", + "@aws-sdk/s3-request-presigner": "^3.670.0", "@parse/fs-files-adapter": "^3.0.0", "@parse/s3-files-adapter": "^2.2.0", "@pdf-lib/fontkit": "^1.1.1", @@ -30,12 +30,12 @@ "axios": "^1.7.7", "cors": "^2.8.5", "dotenv": "^16.4.5", - "express": "^4.21.0", - "form-data": "^4.0.0", + "express": "^4.21.1", + "form-data": "^4.0.1", "generate-api-key": "^1.0.2", "googleapis": "^144.0.0", "mailgun.js": "^10.2.3", - "mongoose": "^8.7.0", + "mongoose": "^8.7.1", "multer": "^1.4.5-lts.1", "multer-s3": "^3.0.1", "node-forge": "^1.3.1", @@ -45,14 +45,14 @@ "parse-server": "^7.3.0", "parse-server-api-mail-adapter": "^4.0.0", "pdf-lib": "^1.17.1", - "posthog-node": "^4.2.0", + "posthog-node": "^4.2.1", "ws": "^8.18.0" }, "type": "module", "devDependencies": { - "@babel/eslint-parser": "^7.25.7", + "@babel/eslint-parser": "^7.25.8", "eslint": "^9.12.0", - "jasmine": "^5.3.1", + "jasmine": "^5.4.0", "mongodb-runner": "^5.7.0", "nodemon": "^3.1.7", "nyc": "^17.1.0",