diff --git a/app/(auth)/login/page-client.tsx b/app/(auth)/login/page-client.tsx index 5c2a4aa00..19210770f 100644 --- a/app/(auth)/login/page-client.tsx +++ b/app/(auth)/login/page-client.tsx @@ -54,20 +54,46 @@ export default function Login() { return (
{/* Left part */} -
+
-
-
+
+
Papermark Logo +
+ SOC2 Compliant + GDPR Compliant + HIPAA Compliant + CCPA Compliant +
+

+ ★★★★★ + trusted by 55,000+ companies to secure deals +

Welcome to Papermark @@ -92,7 +118,7 @@ export default function Login() {
)}
{ e.preventDefault(); if (!emailValidation.success) { @@ -153,10 +179,8 @@ export default function Login() { loading={clickedMethod === "email"} disabled={!emailValidation.success || !!clickedMethod} className={cn( - "focus:shadow-outline w-full transform rounded px-4 py-2 text-white transition-colors duration-300 ease-in-out focus:outline-none", - clickedMethod === "email" - ? "bg-black" - : "bg-gray-800 hover:bg-gray-900", + "focus:shadow-outline w-full transform rounded px-4 py-2 text-white transition-colors duration-300 ease-in-out focus:outline-none disabled:opacity-100", + "bg-black hover:bg-gray-900", )} > {emailButtonText} @@ -236,19 +260,20 @@ export default function Login() {

- By clicking continue, you acknowledge that you have read and agree - to Papermark's{" "} + By continuing, you agree to Papermark's{" "} Terms of Service {" "} and{" "} Privacy Policy @@ -257,60 +282,37 @@ export default function Login() {

-
-
-
- {/* Testimonial top 2/3 */} -
- {/* Image container */} -
- Backtrace Capital -
- {/* Text content */} -
-
-

- "We raised our €30M Fund with Papermark Data Rooms. - Love the customization, security and ease of use." -

-
-
-
- Michael Münnix -
-
- Partner, Backtrace Capital -
-
-
+
+
+
+
+ Backtrace Capital
- {/* White block with logos bottom 1/3, full width/height */} -
-
- Trusted by teams at -
- - {/* Trusted teams illustration */} +
+
+

+ "We raised €50M Fund with Papermark Data Rooms. +
+ Secure, branded, and incredibly easy to use." +

+
+
+
+ Michael Münnix +
+
+ Partner, Backtrace Capital +
+
+
+ +
diff --git a/components/shared/logo-cloud.tsx b/components/shared/logo-cloud.tsx index 8f24368ca..b9b24f182 100644 --- a/components/shared/logo-cloud.tsx +++ b/components/shared/logo-cloud.tsx @@ -1,85 +1,141 @@ +"use client"; + +import { useEffect, useState } from "react"; + +const logos = [ + { + name: "DP World", + type: "img" as const, + src: "/_static/logos/dp-world.svg", + className: "h-7", + }, + { + name: "BCG", + type: "svg" as const, + className: "h-6", + }, + { + name: "Foundamental", + type: "svg" as const, + className: "h-20 w-28", + }, + { + name: "DoorDash", + type: "svg" as const, + className: "h-4", + }, + { + name: "Mistral AI", + type: "img" as const, + src: "/_static/logos/mistral-logo-color-black.svg", + className: "h-5", + }, + { + name: "Brevo", + type: "img" as const, + src: "/_static/logos/brevo.svg", + className: "h-5", + }, +]; + export const LogoCloud = () => { + const [visibleCount, setVisibleCount] = useState(0); + + useEffect(() => { + const timers: NodeJS.Timeout[] = []; + logos.forEach((_, i) => { + timers.push( + setTimeout(() => { + setVisibleCount((prev) => Math.max(prev, i + 1)); + }, 150 * (i + 1)), + ); + }); + return () => timers.forEach(clearTimeout); + }, []); + return (
-
- + {/* Mistral AI */} + + + {/* BCG — smaller */} +
= 2 ? 1 : 0, + transform: visibleCount >= 2 ? "translateY(0)" : "translateY(8px)", + transition: "opacity 0.4s ease-out, transform 0.4s ease-out", + }} > - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - + + {/* Foundamental */} +
= 3 ? 1 : 0, + transform: visibleCount >= 3 ? "translateY(0)" : "translateY(8px)", + transition: "opacity 0.4s ease-out, transform 0.4s ease-out", + }} > - {/* SVG with updated CSS class */} { d="M81.5,16L68.8.5h-4.9v25.6h5.8v-15.5l12.7,15.5h4.8V.5h-5.8v15.5ZM206.6,16L193.9.5h-4.9v25.6h5.8v-15.5l12.7,15.5h4.8V.5h-5.8v15.5ZM237.1.5h-22.2v4.8h8.2v20.8h5.9V5.3h8.2V.5ZM113.2,6.6c-1.2-1.9-2.8-3.4-4.9-4.5-2.1-1.1-4.6-1.6-7.3-1.6h-11.6v25.6h11.6c2.8,0,5.2-.5,7.3-1.6.7-.4,1.4-.8,2.1-1.3l4.6-10c0-2.5-.6-4.7-1.8-6.6ZM106.7,19.1c-1.5,1.4-3.5,2.1-6.1,2.1h-5.4V5.4h5.4c2.5,0,4.6.7,6.1,2.1,1.5,1.4,2.3,3.4,2.3,5.8s-.8,4.4-2.3,5.8ZM162.7.5l-9.4,15.9L143.7.5h-4.9v16.8l4.1,8.8h1.5v-15l7.5,12.3h2.7l7.5-12.7v15.4h5.6V.5h-4.9ZM123,.5l-11.9,25.6h5.6l2.5-5.4h13.3l2.5,5.4h5.6L128.8.5h-5.8ZM121.5,15.7l4.4-9.4,4.4,9.4h-8.7ZM.8,26.1h5.9v-10.5h8.3v-5H6.7v-5.1h9.7V.5H.8v25.6ZM175.6,15.6h10.4v-5h-10.4v-5.1h11.1V.5h-17v25.6h17s0-5,0-5h-11.2s0-5.5,0-5.5ZM243.1.5l-11.9,25.6h5.6l2.5-5.4h13.3l2.5,5.4h5.6L248.9.5h-5.8ZM241.6,15.7l4.4-9.4,4.4,9.4h-8.7ZM264.3,21.2V.5h-5.5v16.8l4.1,8.8h14v-4.8h-12.6Z" /> - - {/* - - - - - - - - - - - - - - - - - */} - + + {/* DoorDash */} + - {/* = 5 ? 1 : 0, + transform: visibleCount >= 5 ? "translateY(0)" : "translateY(8px)", + transition: "opacity 0.4s ease-out, transform 0.4s ease-out", + }} > - - - - - - - - - - - - - - - - - - - - - - - - - - - - */} - - - - - - - - - - - - - - - - - - - + DP World +
- - - - - - - - = 6 ? 1 : 0, + transform: visibleCount >= 6 ? "translateY(0)" : "translateY(8px)", + transition: "opacity 0.4s ease-out, transform 0.4s ease-out", + }} > - - - - - - - - - - - - - - - - - - - - - - - - - - - + Brevo +
diff --git a/package-lock.json b/package-lock.json index 42b625d29..8604b8a7d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1571,6 +1571,7 @@ "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1002.0.tgz", "integrity": "sha512-tc+vZgvjcm+1Ot+YhQjXZxVELKGGGO3D5cuR4p5xaeitXYX2+RRiz4/WdSak9slumIClnlXsdqhJ0OHognUT+w==", "license": "Apache-2.0", + "peer": true, "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", @@ -3090,6 +3091,7 @@ "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.10.1.tgz", "integrity": "sha512-Nh5PhEOeY6PrnxNPsEHRr9eimxLwgLlpmguQaHKBinFYA/RU9+kOYVOQqOrTsCL+KSxrLLl1gD8Dk5BFW/7l/w==", "license": "MIT", + "peer": true, "dependencies": { "@azure/abort-controller": "^2.1.2", "@azure/core-auth": "^1.10.0", @@ -3151,6 +3153,7 @@ "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.22.2.tgz", "integrity": "sha512-MzHym+wOi8CLUlKCQu12de0nwcq9k9Kuv43j4Wa++CsCpJwps2eeBQwD2Bu8snkxTtDKDx4GwjuR9E8yC8LNrg==", "license": "MIT", + "peer": true, "dependencies": { "@azure/abort-controller": "^2.1.2", "@azure/core-auth": "^1.10.0", @@ -3406,6 +3409,7 @@ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", "license": "MIT", + "peer": true, "engines": { "node": ">=6.9.0" } @@ -3581,6 +3585,7 @@ "resolved": "https://registry.npmjs.org/@dnd-kit/core/-/core-6.3.1.tgz", "integrity": "sha512-xkGBRQQab4RLwgXxoqETICr6S5JlogafbhNsidmrkVv2YRs5MLwpjoF2qpiGjQt8S9AoxtIV603s0GIUpY5eYQ==", "license": "MIT", + "peer": true, "dependencies": { "@dnd-kit/accessibility": "^3.1.1", "@dnd-kit/utilities": "^3.2.2", @@ -4215,6 +4220,7 @@ "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", "license": "MIT", + "peer": true, "dependencies": { "@floating-ui/core": "^1.7.5", "@floating-ui/utils": "^0.2.11" @@ -5503,6 +5509,7 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=8.0.0" } @@ -6876,6 +6883,7 @@ "integrity": "sha512-M6w1Ql/BeiGoZmhMdAZUXHu5sz5HubyVcKukbLs3l0ELcQb8hTUJxtGEChhv4SVJ0QJlwtLnwOLgIRQhpsm9dw==", "hasInstallScript": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=18.18" }, @@ -8690,6 +8698,7 @@ "resolved": "https://registry.npmjs.org/@react-email/body/-/body-0.2.1.tgz", "integrity": "sha512-ljDiQiJDu/Fq//vSIIP0z5Nuvt4+DX1RqGasstChDGJB/14ogd4VdNS9aacoede/ZjGy3o3Qb+cxyS+XgM6SwQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8702,6 +8711,7 @@ "resolved": "https://registry.npmjs.org/@react-email/button/-/button-0.2.1.tgz", "integrity": "sha512-qXyj7RZLE7POy9BMKSoqQ00tOXThjOZSUnI2Yu9i29IHngPlmrNayIWBoVKtElES7OWwypUcpiajwi1mUWx6/A==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8714,6 +8724,7 @@ "resolved": "https://registry.npmjs.org/@react-email/code-block/-/code-block-0.2.1.tgz", "integrity": "sha512-M3B7JpVH4ytgn83/ujRR1k1DQHvTeABiDM61OvAbjLRPhC/5KLHU5KkzIbbuGIrjWwxAbL1kSQzU8MhLEtSxyw==", "license": "MIT", + "peer": true, "dependencies": { "prismjs": "^1.30.0" }, @@ -8729,6 +8740,7 @@ "resolved": "https://registry.npmjs.org/@react-email/code-inline/-/code-inline-0.0.6.tgz", "integrity": "sha512-jfhebvv3dVsp3OdPgKXnk8+e2pBiDVZejDOBFzBa/IblrAJ9cQDkN6rBD5IyEg8hTOxwbw3iaI/yZFmDmIguIA==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8787,6 +8799,7 @@ "resolved": "https://registry.npmjs.org/@react-email/container/-/container-0.0.16.tgz", "integrity": "sha512-QWBB56RkkU0AJ9h+qy33gfT5iuZknPC7Un/IjZv9B0QmMIK+WWacc0cH6y2SV5Cv/b99hU94fjEMOOO4enpkbQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8823,6 +8836,7 @@ "resolved": "https://registry.npmjs.org/@react-email/heading/-/heading-0.0.16.tgz", "integrity": "sha512-jmsKnQm1ykpBzw4hCYHwBkt5pW2jScXffPeEH5ZRF5tZeF5b1pvlFTO9han7C0pCkZYo1kEvWiRtx69yfCIwuw==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8835,6 +8849,7 @@ "resolved": "https://registry.npmjs.org/@react-email/hr/-/hr-0.0.12.tgz", "integrity": "sha512-TwmOmBDibavUQpXBxpmZYi2Iks/yeZOzFYh+di9EltMSnEabH8dMZXrl+pxNXzCgZ2XE8HY7VmUL65Lenfu5PA==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8859,6 +8874,7 @@ "resolved": "https://registry.npmjs.org/@react-email/img/-/img-0.0.12.tgz", "integrity": "sha512-sRCpEARNVTf3FQhZOC+JTvu5r6ubiYWkT0ucYXg8ctkyi4G8QG+jgYPiNUqVeTLA2STOfmPM/nrk1nb84y6CPQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8871,6 +8887,7 @@ "resolved": "https://registry.npmjs.org/@react-email/link/-/link-0.0.13.tgz", "integrity": "sha512-lkWc/NjOcefRZMkQoSDDbuKBEBDES9aXnFEOuPH845wD3TxPwh+QTf0fStuzjoRLUZWpHnio4z7qGGRYusn/sw==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -8898,6 +8915,7 @@ "resolved": "https://registry.npmjs.org/@react-email/preview/-/preview-0.0.14.tgz", "integrity": "sha512-aYK8q0IPkBXyMsbpMXgxazwHxYJxTrXrV95GFuu2HbEiIToMwSyUgb8HDFYwPqqfV03/jbwqlsXmFxsOd+VNaw==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -9305,6 +9323,7 @@ "resolved": "https://registry.npmjs.org/@react-email/text/-/text-0.1.6.tgz", "integrity": "sha512-TYqkioRS45wTR5il3dYk/SbUjjEdhSwh9BtRNB99qNH1pXAwA45H7rAuxehiu8iJQJH0IyIr+6n62gBz9ezmsw==", "license": "MIT", + "peer": true, "engines": { "node": ">=20.0.0" }, @@ -9356,6 +9375,7 @@ "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.1.tgz", "integrity": "sha512-/KCsg3xSlR+nCK8/8ZYSknYxvXHwubJrU82F3Lm1Fp6789VQ0/3RJKfsmRXjqfaTA++23CvC3hqmqe/2GEt6Kw==", "license": "MIT", + "peer": true, "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -10473,6 +10493,7 @@ "resolved": "https://registry.npmjs.org/@tiptap/core/-/core-3.20.0.tgz", "integrity": "sha512-aC9aROgia/SpJqhsXFiX9TsligL8d+oeoI8W3u00WI45s0VfsqjgeKQLDLF7Tu7hC+7F02teC84SAHuup003VQ==", "license": "MIT", + "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" @@ -10708,6 +10729,7 @@ "resolved": "https://registry.npmjs.org/@tiptap/extension-list/-/extension-list-3.20.0.tgz", "integrity": "sha512-+V0/gsVWAv+7vcY0MAe6D52LYTIicMSHw00wz3ISZgprSb2yQhJ4+4gurOnUrQ4Du3AnRQvxPROaofwxIQ66WQ==", "license": "MIT", + "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" @@ -10839,6 +10861,7 @@ "resolved": "https://registry.npmjs.org/@tiptap/extensions/-/extensions-3.20.0.tgz", "integrity": "sha512-HIsXX942w3nbxEQBlMAAR/aa6qiMBEP7CsSMxaxmTIVAmW35p6yUASw6GdV1u0o3lCZjXq2OSRMTskzIqi5uLg==", "license": "MIT", + "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" @@ -10853,6 +10876,7 @@ "resolved": "https://registry.npmjs.org/@tiptap/pm/-/pm-3.20.0.tgz", "integrity": "sha512-jn+2KnQZn+b+VXr8EFOJKsnjVNaA4diAEr6FOazupMt8W8ro1hfpYtZ25JL87Kao/WbMze55sd8M8BDXLUKu1A==", "license": "MIT", + "peer": true, "dependencies": { "prosemirror-changeset": "^2.3.0", "prosemirror-collab": "^1.3.1", @@ -11009,6 +11033,7 @@ "resolved": "https://registry.npmjs.org/@trigger.dev/build/-/build-3.3.17.tgz", "integrity": "sha512-dfreMuVeLAcZypS3kkUA9nWNviiuOPIQ3ldy2ywPCmwmbHyd0BE8tI5D3A4kmVq/f53TdRMls4c+cYafxlwubQ==", "license": "MIT", + "peer": true, "dependencies": { "@trigger.dev/core": "3.3.17", "pkg-types": "^1.1.3", @@ -11217,6 +11242,7 @@ "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-3.3.17.tgz", "integrity": "sha512-wjIjlQWKybYWw/J7LxFIOO1pXzxXoj9lxbFMvjb51JtfebxnQnh6aExN47nOGhVhV38wHYstfBI/8ClWwBnFYw==", "license": "MIT", + "peer": true, "dependencies": { "@opentelemetry/api": "1.9.0", "@opentelemetry/api-logs": "0.52.1", @@ -11267,6 +11293,7 @@ "integrity": "sha512-3DgfkukFyC/sE/VuYjaUUWoFfuVjPK55vOFDsxD56XXynFMCZDYFogH2l/hDfOsQAm1myoU/1xByJ3tWqtulXA==", "dev": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@babel/generator": "^7.28.0", "@babel/parser": "^7.28.0", @@ -11589,6 +11616,7 @@ "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", "license": "MIT", + "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.2.2" @@ -11599,6 +11627,7 @@ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", "license": "MIT", + "peer": true, "peerDependencies": { "@types/react": "^18.0.0" } @@ -11726,6 +11755,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.56.1.tgz", "integrity": "sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg==", "license": "MIT", + "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.56.1", "@typescript-eslint/types": "8.56.1", @@ -12283,6 +12313,7 @@ "resolved": "https://registry.npmjs.org/@upstash/redis/-/redis-1.36.3.tgz", "integrity": "sha512-wxo1ei4OHDHm4UGMgrNVz9QUEela9N/Iwi4p1JlHNSowQiPi+eljlGnfbZVkV0V4PIrjGtGFJt5GjWM5k28enA==", "license": "MIT", + "peer": true, "dependencies": { "uncrypto": "^0.1.3" } @@ -12445,6 +12476,7 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -13378,6 +13410,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -14508,6 +14541,7 @@ "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", "license": "MIT", + "peer": true, "funding": { "type": "github", "url": "https://github.com/sponsors/kossnocorp" @@ -14993,7 +15027,8 @@ "version": "8.6.0", "resolved": "https://registry.npmjs.org/embla-carousel/-/embla-carousel-8.6.0.tgz", "integrity": "sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA==", - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/embla-carousel-react": { "version": "8.6.0", @@ -15348,6 +15383,7 @@ "integrity": "sha512-9RiGKvCwaqxO2owP61uQ4BgNborAQskMR6QusfWzQqv7AZOg5oGehdY2pRJMTKuwxd1IDBP4rSbI5lHzU7SMsQ==", "hasInstallScript": true, "license": "MIT", + "peer": true, "bin": { "esbuild": "bin/esbuild" }, @@ -15429,6 +15465,7 @@ "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -15591,6 +15628,7 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "license": "MIT", + "peer": true, "dependencies": { "@rtsao/scc": "^1.1.0", "array-includes": "^3.1.9", @@ -16841,7 +16879,6 @@ "integrity": "sha512-FNTkdNEnBdlqF2oatizolQqNANMrcqJt6AAYt99B3y1aLLC8Hc5IOBb+ZnnzllodEEf6xMBp6wRcBbc16fa65w==", "license": "Apache-2.0", "optional": true, - "peer": true, "dependencies": { "gaxios": "^5.0.0", "json-bigint": "^1.0.0" @@ -16856,7 +16893,6 @@ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "license": "MIT", "optional": true, - "peer": true, "dependencies": { "debug": "4" }, @@ -16870,7 +16906,6 @@ "integrity": "sha512-95hVgBRgEIRQQQHIbnxBXeHbW4TqFk4ZDJW7wmVtvYar72FdhRIo1UGOLS2eRAKCPEdPBWu+M7+A33D9CdX9rA==", "license": "Apache-2.0", "optional": true, - "peer": true, "dependencies": { "extend": "^3.0.2", "https-proxy-agent": "^5.0.0", @@ -16887,7 +16922,6 @@ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "license": "MIT", "optional": true, - "peer": true, "dependencies": { "agent-base": "6", "debug": "4" @@ -16902,7 +16936,6 @@ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "license": "MIT", "optional": true, - "peer": true, "engines": { "node": ">=8" }, @@ -17958,31 +17991,6 @@ "node": ">=12" } }, - "node_modules/ioredis": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.10.0.tgz", - "integrity": "sha512-HVBe9OFuqs+Z6n64q09PQvP1/R4Bm+30PAyyD4wIEqssh3v9L21QjCVk4kRLucMBcDokJTcLjsGeVRlq/nH6DA==", - "license": "MIT", - "optional": true, - "dependencies": { - "@ioredis/commands": "1.5.1", - "cluster-key-slot": "^1.1.0", - "debug": "^4.3.4", - "denque": "^2.1.0", - "lodash.defaults": "^4.2.0", - "lodash.isarguments": "^3.1.0", - "redis-errors": "^1.2.0", - "redis-parser": "^3.0.0", - "standard-as-callback": "^2.1.0" - }, - "engines": { - "node": ">=12.22.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ioredis" - } - }, "node_modules/ip-address": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz", @@ -18975,6 +18983,7 @@ "https://github.com/sponsors/katex" ], "license": "MIT", + "peer": true, "dependencies": { "commander": "^8.3.0" }, @@ -20895,6 +20904,7 @@ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.16.0.tgz", "integrity": "sha512-D1PNcdT0y4Grhou5Zi/qgipZOYeWrhLEpk33n3nm6LGtz61jvO88WlrWCK/bigMjpnOdAUKKQwsGIl0NtWMyYw==", "license": "Apache-2.0", + "peer": true, "dependencies": { "@mongodb-js/saslprep": "^1.1.9", "bson": "^6.10.3", @@ -20998,6 +21008,7 @@ "resolved": "https://registry.npmjs.org/mssql/-/mssql-11.0.1.tgz", "integrity": "sha512-KlGNsugoT90enKlR8/G36H0kTxPthDhmtNUCwEHvgRza5Cjpjoj+P2X6eMpFUDN7pFrJZsKadL4x990G8RBE1w==", "license": "MIT", + "peer": true, "dependencies": { "@tediousjs/connection-string": "^0.5.0", "commander": "^11.0.0", @@ -21048,6 +21059,7 @@ "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-3.14.1.tgz", "integrity": "sha512-7ytuPQJjQB8TNAYX/H2yhL+iQOnIBjAMam361R7UAL0lOVXWjtdrmoL9HYKqKoLp/8UUTRcvo1QPvK9KL7wA8w==", "license": "MIT", + "peer": true, "dependencies": { "aws-ssl-profiles": "^1.1.1", "denque": "^2.1.0", @@ -21167,6 +21179,7 @@ "resolved": "https://registry.npmjs.org/next/-/next-14.2.35.tgz", "integrity": "sha512-KhYd2Hjt/O1/1aZVX3dCwGXM1QmOV4eNM2UTacK5gipDdPN/oHHK/4oVGy7X8GMfPMsUTUEmGlsy0EY1YGAkig==", "license": "MIT", + "peer": true, "dependencies": { "@next/env": "14.2.35", "@swc/helpers": "0.5.5", @@ -21217,6 +21230,7 @@ "resolved": "https://registry.npmjs.org/next-auth/-/next-auth-4.24.13.tgz", "integrity": "sha512-sgObCfcfL7BzIK76SS5TnQtc3yo2Oifp/yIpfv6fMfeBOiBJkDWF3A2y9+yqnmJ4JKc2C+nMjSjmgDeTwgN1rQ==", "license": "ISC", + "peer": true, "dependencies": { "@babel/runtime": "^7.20.13", "@panva/hkdf": "^1.0.2", @@ -21660,6 +21674,7 @@ "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-7.0.13.tgz", "integrity": "sha512-PNDFSJdP+KFgdsG3ZzMXCgquO7I6McjY2vlqILjtJd0hy8wEvtugS9xKRF2NWlPNGxvLCXlTNIae4serI7dinw==", "license": "MIT-0", + "peer": true, "engines": { "node": ">=6.0.0" } @@ -22647,6 +22662,7 @@ "resolved": "https://registry.npmjs.org/pg/-/pg-8.16.0.tgz", "integrity": "sha512-7SKfdvP8CTNXjMUzfcVTaI+TDzBEeaUnVwiVGZQD1Hh33Kpev7liQba9uLd4CfN8r9mCVsD0JIpq03+Unpz+kg==", "license": "MIT", + "peer": true, "dependencies": { "pg-connection-string": "^2.9.0", "pg-pool": "^3.10.0", @@ -22841,6 +22857,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -23302,6 +23319,7 @@ "resolved": "https://registry.npmjs.org/preact/-/preact-10.28.4.tgz", "integrity": "sha512-uKFfOHWuSNpRFVTnljsCluEFq57OKT+0QdOiQo8XWnQ/pSvg7OpX5eNOejELXJMWy+BwM2nobz0FkvzmnpCNsQ==", "license": "MIT", + "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" @@ -23412,6 +23430,7 @@ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.1.tgz", "integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==", "license": "MIT", + "peer": true, "bin": { "prettier": "bin/prettier.cjs" }, @@ -23514,6 +23533,7 @@ "devOptional": true, "hasInstallScript": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@prisma/config": "6.5.0", "@prisma/engines": "6.5.0" @@ -23763,6 +23783,7 @@ "resolved": "https://registry.npmjs.org/prosemirror-model/-/prosemirror-model-1.25.4.tgz", "integrity": "sha512-PIM7E43PBxKce8OQeezAs9j4TP+5yDpZVbuurd1h5phUxEKIu+G2a+EUZzIC5nS1mJktDJWzbqS23n1tsAf5QA==", "license": "MIT", + "peer": true, "dependencies": { "orderedmap": "^2.0.0" } @@ -23792,6 +23813,7 @@ "resolved": "https://registry.npmjs.org/prosemirror-state/-/prosemirror-state-1.4.4.tgz", "integrity": "sha512-6jiYHH2CIGbCfnxdHbXZ12gySFY/fz/ulZE333G6bPqIZ4F+TXo9ifiR86nAHpWnfoNjOb3o5ESi7J8Uz1jXHw==", "license": "MIT", + "peer": true, "dependencies": { "prosemirror-model": "^1.0.0", "prosemirror-transform": "^1.0.0", @@ -23852,6 +23874,7 @@ "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.41.6.tgz", "integrity": "sha512-mxpcDG4hNQa/CPtzxjdlir5bJFDlm0/x5nGBbStB2BWX+XOQ9M8ekEG+ojqB5BcVu2Rc80/jssCMZzSstJuSYg==", "license": "MIT", + "peer": true, "dependencies": { "prosemirror-model": "^1.20.0", "prosemirror-state": "^1.0.0", @@ -24010,6 +24033,7 @@ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, @@ -24046,6 +24070,7 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" @@ -24262,6 +24287,7 @@ "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.71.2.tgz", "integrity": "sha512-1CHvcDYzuRUNOflt4MOq3ZM46AronNJtQ1S7tnX6YN4y72qhgiUItpacZUAQ0TyWYci3yz1X+rXaSxiuEm86PA==", "license": "MIT", + "peer": true, "engines": { "node": ">=18.0.0" }, @@ -24775,7 +24801,8 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==", - "license": "Apache-2.0" + "license": "Apache-2.0", + "peer": true }, "node_modules/reflect.getprototypeof": { "version": "1.0.10", @@ -25799,21 +25826,6 @@ "node": ">=10.0.0" } }, - "node_modules/socks": { - "version": "2.8.7", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", - "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", - "license": "MIT", - "optional": true, - "dependencies": { - "ip-address": "^10.0.1", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.0.0", - "npm": ">= 3.0.0" - } - }, "node_modules/socks-proxy-agent": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", @@ -25917,6 +25929,7 @@ "integrity": "sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==", "hasInstallScript": true, "license": "BSD-3-Clause", + "peer": true, "dependencies": { "bindings": "^1.5.0", "node-addon-api": "^7.0.0", @@ -26577,6 +26590,7 @@ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.19.tgz", "integrity": "sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==", "license": "MIT", + "peer": true, "dependencies": { "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", @@ -26970,6 +26984,7 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -27469,6 +27484,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -27765,6 +27781,7 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -28621,6 +28638,7 @@ "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", "devOptional": true, "license": "ISC", + "peer": true, "bin": { "yaml": "bin.mjs" }, @@ -28785,6 +28803,7 @@ "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", "license": "MIT", + "peer": true, "funding": { "url": "https://github.com/sponsors/colinhacks" } diff --git a/public/_static/logos/brevo.svg b/public/_static/logos/brevo.svg new file mode 100644 index 000000000..a86cb89a4 --- /dev/null +++ b/public/_static/logos/brevo.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/_static/logos/dp-world.svg b/public/_static/logos/dp-world.svg new file mode 100644 index 000000000..841a5d0df --- /dev/null +++ b/public/_static/logos/dp-world.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/_static/logos/mistral-logo-color-black.svg b/public/_static/logos/mistral-logo-color-black.svg new file mode 100644 index 000000000..14d6f8763 --- /dev/null +++ b/public/_static/logos/mistral-logo-color-black.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/_static/security-icons/CCPA.svg b/public/_static/security-icons/CCPA.svg new file mode 100644 index 000000000..753faf220 --- /dev/null +++ b/public/_static/security-icons/CCPA.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/_static/security-icons/GDPR.svg b/public/_static/security-icons/GDPR.svg new file mode 100644 index 000000000..e2d74c2c2 --- /dev/null +++ b/public/_static/security-icons/GDPR.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/_static/security-icons/HIPAA.svg b/public/_static/security-icons/HIPAA.svg new file mode 100644 index 000000000..9aae838c6 --- /dev/null +++ b/public/_static/security-icons/HIPAA.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/_static/security-icons/soc2-dark-new3.png b/public/_static/security-icons/soc2-dark-new3.png new file mode 100644 index 000000000..155c7d746 Binary files /dev/null and b/public/_static/security-icons/soc2-dark-new3.png differ diff --git a/public/_static/security-icons/soc2new3.svg b/public/_static/security-icons/soc2new3.svg new file mode 100644 index 000000000..0954be59c --- /dev/null +++ b/public/_static/security-icons/soc2new3.svg @@ -0,0 +1 @@ + \ No newline at end of file