From cf889e2225893c46d2edde4e46511703117f78d8 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 2 Oct 2024 17:03:04 +0000 Subject: [PATCH 01/38] Update dependency @sentry/nextjs to v8.33.0 --- pnpm-lock.yaml | 542 +++++++++++++++++++++++++++---------------------- 1 file changed, 294 insertions(+), 248 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce75137..0cbfda9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -40,13 +40,13 @@ importers: version: 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) '@sentry/nextjs': specifier: '8' - version: 8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.94.0) + version: 8.33.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.94.0) '@tanstack/react-query': specifier: ^5.55.4 version: 5.59.0(react@19.0.0-rc-3edc000d-20240926) '@trigger.dev/nextjs': specifier: ^3.0.8 - version: 3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)) + version: 3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)) '@trigger.dev/react': specifier: ^3.0.8 version: 3.0.9(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) @@ -97,7 +97,7 @@ importers: version: 8.7.0 next: specifier: 15.0.0-rc.0 - version: 15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) next-build-id: specifier: ^3.0.0 version: 3.0.0 @@ -164,75 +164,75 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} + '@babel/code-frame@7.25.7': + resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.25.4': - resolution: {integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==} + '@babel/compat-data@7.25.7': + resolution: {integrity: sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==} engines: {node: '>=6.9.0'} - '@babel/core@7.25.2': - resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} + '@babel/core@7.25.7': + resolution: {integrity: sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==} engines: {node: '>=6.9.0'} - '@babel/generator@7.25.6': - resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} + '@babel/generator@7.25.7': + resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + '@babel/helper-compilation-targets@7.25.7': + resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + '@babel/helper-module-imports@7.25.7': + resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} + '@babel/helper-module-transforms@7.25.7': + resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + '@babel/helper-simple-access@7.25.7': + resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.24.8': - resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} + '@babel/helper-validator-option@7.25.7': + resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.25.6': - resolution: {integrity: sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==} + '@babel/helpers@7.25.7': + resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} + '@babel/highlight@7.25.7': + resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.25.6': - resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} + '@babel/parser@7.25.7': + resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + '@babel/template@7.25.7': + resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.6': - resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} + '@babel/traverse@7.25.7': + resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} engines: {node: '>=6.9.0'} - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + '@babel/types@7.25.7': + resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} engines: {node: '>=6.9.0'} '@emnapi/runtime@1.2.0': @@ -543,6 +543,12 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' + '@opentelemetry/context-async-hooks@1.26.0': + resolution: {integrity: sha512-HedpXXYzzbaoutw6DFLWLDket2FwLkLpil4hGCZ1xYEIMTcivdfwEOISgdbLEWyG3HW52gTq2V9mOVJrONgiwg==} + engines: {node: '>=14'} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + '@opentelemetry/core@1.25.1': resolution: {integrity: sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==} engines: {node: '>=14'} @@ -663,6 +669,12 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 + '@opentelemetry/instrumentation-lru-memoizer@0.40.0': + resolution: {integrity: sha512-21xRwZsEdMPnROu/QsaOIODmzw59IYpGFmuC4aFWvMj6stA8+Ei1tX67nkarJttlNjoM94um0N4X26AD7ff54A==} + engines: {node: '>=14'} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + '@opentelemetry/instrumentation-mongodb@0.47.0': resolution: {integrity: sha512-yqyXRx2SulEURjgOQyJzhCECSh5i1uM49NUaq9TqLd6fA7g26OahyJfsr9NE38HFqGRHpi4loyrnfYGdrsoVjQ==} engines: {node: '>=14'} @@ -781,6 +793,12 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' + '@opentelemetry/sdk-metrics@1.26.0': + resolution: {integrity: sha512-0SvDXmou/JjzSDOjUmetAAvcKQW6ZrvosU0rkbDGpXvvZN+pQF6JbK/Kd4hNdK4q/22yeruqvukXEJyySTzyTQ==} + engines: {node: '>=14'} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + '@opentelemetry/sdk-node@0.52.1': resolution: {integrity: sha512-uEG+gtEr6eKd8CVWeKMhH2olcCHM9dEK68pe0qE0be32BcCRsvYURhHaD1Srngh1SQcnQzZ4TP324euxqtBOJA==} engines: {node: '>=14'} @@ -1171,100 +1189,100 @@ packages: '@rushstack/eslint-patch@1.10.4': resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==} - '@sentry-internal/browser-utils@8.32.0': - resolution: {integrity: sha512-DpUGhk5O1OVjT0fo9wsbEdO1R/S9gGBRDtn9+FFVeRtieJHwXpeZiLK+tZhTOvaILmtSoTPUEY3L5sK4j5Xq9g==} + '@sentry-internal/browser-utils@8.33.0': + resolution: {integrity: sha512-zwjmD+XI3pgxxiqKGLXYDGSd+zfO7az9zzbLn1le8Vv9cRL2lZyMLcwiwEaTpwz3B0pPONeDZMT8+bzMGRs8zw==} engines: {node: '>=14.18'} - '@sentry-internal/feedback@8.32.0': - resolution: {integrity: sha512-XB7hiVJQW1tNzpoXIHbvm3rjipIt7PZiJJtFg2vxaqu/FzdgOcYqQiwIKivJVAKuRZ9rIeJtK1jdXQFOc/TRJA==} + '@sentry-internal/feedback@8.33.0': + resolution: {integrity: sha512-KSW/aiNgmJc8PDl2NsM+ONvGure4tPaluj7O1Nw+947Dh8W6CJnQ9srB7xPyoYYWyQW8Hyl1vzxY9W0J+fjlhA==} engines: {node: '>=14.18'} - '@sentry-internal/replay-canvas@8.32.0': - resolution: {integrity: sha512-oBbhtDBkD+5z/T0NVJ5VenBWAid/S9QdVrod/UqxVqU7F8N+E9/INFQI48zCWr4iVlUMcszJPDElvJEsMDvvBQ==} + '@sentry-internal/replay-canvas@8.33.0': + resolution: {integrity: sha512-9fEhMP+gQYQrtn/SQd1Vd7U7emTSGBpLKc5h5f0iV0yDmjYAhNVbq4RgPTYAgnBEcdVo3qgboL6UIz9Dv+dYRQ==} engines: {node: '>=14.18'} - '@sentry-internal/replay@8.32.0': - resolution: {integrity: sha512-yiEUnn2yyo1AIQIFNeRX3tdK8fmyKIkxdFS1WiVQmeYI/hFwYBTZPly0FcO/g3xnRMSA2tvrS+hZEaaXfK4WhA==} + '@sentry-internal/replay@8.33.0': + resolution: {integrity: sha512-GFBaDA4yhlEf3wTXOVXnJVG/diuKxeqZuXcuhsAwJb+YcFR0NhgsRn3wIGuYOZZF8GBXzx9PFnb9yIuFgx5Nbw==} engines: {node: '>=14.18'} '@sentry/babel-plugin-component-annotate@2.22.3': resolution: {integrity: sha512-OlHA+i+vnQHRIdry4glpiS/xTOtgjmpXOt6IBOUqynx5Jd/iK1+fj+t8CckqOx9wRacO/hru2wfW/jFq0iViLg==} engines: {node: '>= 14'} - '@sentry/browser@8.32.0': - resolution: {integrity: sha512-AEKFj64g4iYwEMRvVcxiY0FswmClRXCP1IEvCqujn8OBS8AjMOr1z/RwYieEs0D90yNNB3YEqF8adrKENblJmw==} + '@sentry/browser@8.33.0': + resolution: {integrity: sha512-qu/g20ZskywEU8BWc4Fts1kXFFBtw1vS+XvPq7Ta9zCeRG5dlXhhYDVQ4/v4nAL/cs0o6aLCq73m109CFF0Kig==} engines: {node: '>=14.18'} '@sentry/bundler-plugin-core@2.22.3': resolution: {integrity: sha512-DeoUl0WffcqZZRl5Wy9aHvX4WfZbbWt0QbJ7NJrcEViq+dRAI2FQTYECFLwdZi5Gtb3oyqZICO+P7k8wDnzsjQ==} engines: {node: '>= 14'} - '@sentry/cli-darwin@2.36.3': - resolution: {integrity: sha512-U0Uean/tW99G5Ma3CjNDXg5bjd4Tmf91Sd/9JKK6dGcEsrWiQpn7ao70kkHy/fwMbeOWE37L7O+NPf86CxHzGA==} + '@sentry/cli-darwin@2.36.6': + resolution: {integrity: sha512-2yKECENqMZKrJY5weA19g4gTgQfeuadWvVu7fVQVsgqoBRIaEhSHJc64ZgiHq2ur06qOuYcQr5FO1VrwUE1pZg==} engines: {node: '>=10'} os: [darwin] - '@sentry/cli-linux-arm64@2.36.3': - resolution: {integrity: sha512-bNr9GUYsn+VcK09FjE+llvxUwtPFAva6FMIcYiAKi6iY3wdmtaOou0Mtkd9dQXkxONAZ0T113x/WQANKBjl4+A==} + '@sentry/cli-linux-arm64@2.36.6': + resolution: {integrity: sha512-sLmmbZRE7F6UksovwcqEQ7oYXVBejpeL1CtiKVFwNoq9XB5kTiKlVColn+3yPcfwKCNj4H4HoeKc+xMtdd7wow==} engines: {node: '>=10'} cpu: [arm64] os: [linux, freebsd] - '@sentry/cli-linux-arm@2.36.3': - resolution: {integrity: sha512-Kq8+TG/p/j0GLlJVxnLguAGcp3EqrU4msl4K+7g+6JYnOPLVbUzwZ6ah2WVGtWqlZ3QMFgeeXc7VgPY8KXViqw==} + '@sentry/cli-linux-arm@2.36.6': + resolution: {integrity: sha512-6zB7w5NawmdzhPHxqkjlhbvQugCBiFrFaUGvb3u1Oo/VCehdmq/v4v8ob4PNN2cJhoDRqQj2mPTfL/ppYNMJuw==} engines: {node: '>=10'} cpu: [arm] os: [linux, freebsd] - '@sentry/cli-linux-i686@2.36.3': - resolution: {integrity: sha512-5J5lOzZgvhcjbtuw/JD7jMq1liNbtYXvEuSd+qZa7D8i+Va5cFF8fQui3eev2RxqeYLLwkJWE/djLjeWjMZ7jQ==} + '@sentry/cli-linux-i686@2.36.6': + resolution: {integrity: sha512-M1pdxv7eZdGoG1wDpRb28aRUs/qb0C5jAe+a7sWHIg463jRLAahM8NDkv2bRQv0Xhw3JIkEGGvr46mPkQrOuMQ==} engines: {node: '>=10'} cpu: [x86, ia32] os: [linux, freebsd] - '@sentry/cli-linux-x64@2.36.3': - resolution: {integrity: sha512-48pyk93yRiQ7x7ABobYupVfGg1f/vUrBZG7CcaIsDiQL66/kIRjYoh7d7kH8Da/x/LKMiVf/i8/rh2Vr1pcSEw==} + '@sentry/cli-linux-x64@2.36.6': + resolution: {integrity: sha512-gVy/zAWY2DEERQ/i3V+oruMas/U29/tsRPcRkB67MIUWbW7W46+c3yH490O+t49qMYYhKYG2YfWoTzW6qMtSlA==} engines: {node: '>=10'} cpu: [x64] os: [linux, freebsd] - '@sentry/cli-win32-i686@2.36.3': - resolution: {integrity: sha512-IEuTCeQjgffvBjDGVYV9d2uWBzmFGmwWIyWUTEMjy76tRnIz0MJaW59Lxd7JdTd1s9xO1F2K7Iz+zxd/kufMRg==} + '@sentry/cli-win32-i686@2.36.6': + resolution: {integrity: sha512-urH+i+WtPeW8Dund0xY8zObvvbMM0XxeEIUS4oFBCB3EMYHVxgNw+woQUv9Vyv7v+OBjckB/r27nxlwNBj4pbg==} engines: {node: '>=10'} cpu: [x86, ia32] os: [win32] - '@sentry/cli-win32-x64@2.36.3': - resolution: {integrity: sha512-ygJLd3nazoNcDMJu1sl8xoSWmmjeBJMMUH6MnDhtQdM9T2j+ndqfL0fZZNO0/kyMv0Bo7/n5kRmKiX2m9Dsi/g==} + '@sentry/cli-win32-x64@2.36.6': + resolution: {integrity: sha512-ZauqOqwFAqb/Njyc8Kj2l9Fhbms7T5zB2yu5zwvq1uiqhXqLmsb9mRTF8WJWl9WmO5hwq/GTOEQowvrwK8gblw==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@sentry/cli@2.36.3': - resolution: {integrity: sha512-sbJpeUByP3b6Xif21lben+4EqGYI/rCTfkPKxBk2FsHX7ISMkVOBw+4/WwELIfIINV2S/XM29jkUG6Bd7axJlA==} + '@sentry/cli@2.36.6': + resolution: {integrity: sha512-1fcZVwe4H6a3Z1O+7m/z/2em1u67Tf0Zrt2oGEp82bqvCOHA904Wr2otc6GBEuFESB1/Mo8QgD/qwRd9Tv0Otw==} engines: {node: '>= 10'} hasBin: true - '@sentry/core@8.32.0': - resolution: {integrity: sha512-+xidTr0lZ0c755tq4k75dXPEb8PA+qvIefW3U9+dQMORLokBrYoKYMf5zZTG2k/OfSJS6OSxatUj36NFuCs3aA==} + '@sentry/core@8.33.0': + resolution: {integrity: sha512-618PQGHQLBVCpAq1s+e/rpIUaLUnj19IPUgn97rUGXLLna8ETIAoyQoG70wz4q9niw4Z4GlS5kZNrael2O3+2w==} engines: {node: '>=14.18'} - '@sentry/nextjs@8.32.0': - resolution: {integrity: sha512-rnnSsKFd4u9TXGr0XVQ7lEl/PkTfNyJ4kxwu9gW+OJjzmmjzIAC4RyY4YQTR1+p/q9QrruWrXLEsuCPqAHfqNw==} + '@sentry/nextjs@8.33.0': + resolution: {integrity: sha512-6njy7rYayBImIdjcNtbbxcjMpE7VWeVXqlYmbAuqZCWL4s3VHtjZNy0URTZfi/pX9dqziQ6S2HrX5wVNLexsmg==} engines: {node: '>=14.18'} peerDependencies: next: ^13.2.0 || ^14.0 || ^15.0.0-rc.0 - webpack: 5.94.0 + webpack: '>=5.0.0' peerDependenciesMeta: webpack: optional: true - '@sentry/node@8.32.0': - resolution: {integrity: sha512-a2PoFA9j/HmJVGF/zXJhLP6QhRHGye/2EznQdHOELsH1BkeMgBaXl7D52r2E/b7qki647lXrdbspB6jid8NycA==} + '@sentry/node@8.33.0': + resolution: {integrity: sha512-t8RYLfyRwmQg6hNKRdPGzUxNGuP3W32Rwjx7K6JpJzNLTk0QddTrl0B1L5RoDZMm8WypJnv6kB+QcG8qJ/kMZA==} engines: {node: '>=14.18'} - '@sentry/opentelemetry@8.32.0': - resolution: {integrity: sha512-YCD8EnwJJ2ab3zWWtu5VrvHP/6Ss6GGQH0TYx2cfeGG3c0wTA/5zYx9JR4i3hUtOh1pifN34HlY0yyQHD4yctg==} + '@sentry/opentelemetry@8.33.0': + resolution: {integrity: sha512-OKUyX6iaJOVSLJZExxUSK9Pl1Aa5rUqN5GgBLkYxnfnDrsAP/4sbvCA524s2XyODSaT2nLEMhXbyt8khOpu9lQ==} engines: {node: '>=14.18'} peerDependencies: '@opentelemetry/api': ^1.9.0 @@ -1273,22 +1291,22 @@ packages: '@opentelemetry/sdk-trace-base': ^1.26.0 '@opentelemetry/semantic-conventions': ^1.27.0 - '@sentry/react@8.32.0': - resolution: {integrity: sha512-YljqK+k80XOvyXjK2p2neTncRcSuwlpL7qHtNgwR1MHx18FEi7HXlnm13J4g3kxao4ORMxlCXCEPNXlLT+vqQg==} + '@sentry/react@8.33.0': + resolution: {integrity: sha512-KUFOUgNcW9qdNfi6WHGFSfQQL7wAJyNjQtrOETofsHQru6Ru9NZ6tm4YWWfzMJBqESHwVUNhGO02+o6Vi7kFLw==} engines: {node: '>=14.18'} peerDependencies: react: ^16.14.0 || 17.x || 18.x || 19.x - '@sentry/types@8.32.0': - resolution: {integrity: sha512-hxckvN2MzS5SgGDgVQ0/QpZXk13Vrq4BtZLwXhPhyeTmZtUiUfWvcL5TFQqLinfKdTKPe9q2MxeAJ0D4LalhMg==} + '@sentry/types@8.33.0': + resolution: {integrity: sha512-V/A+72ZdnfGtXeXIpz1kUo3LRdq3WKEYYFUR2RKpCdPh9yeOrHq6u/rmzTWx49+om0yhZN+JhVoxDzt75UoFRg==} engines: {node: '>=14.18'} - '@sentry/utils@8.32.0': - resolution: {integrity: sha512-t1WVERhgmYURxbBj9J4/H2P2X+VKqm7B3ce9iQyrZbdf5NekhcU4jHIecPUWCPHjQkFIqkVTorqeBmDTlg/UmQ==} + '@sentry/utils@8.33.0': + resolution: {integrity: sha512-TdwtGdevJij2wq2x/hDUr+x5TXt47ZhWxZ8zluai/lnIDTUB3Xs/L9yHtj1J+H9hr8obkMASE9IanUrWXzrP6Q==} engines: {node: '>=14.18'} - '@sentry/vercel-edge@8.32.0': - resolution: {integrity: sha512-HxvQWQMjNsLPkYU0vArzjqh+p/vyw9CXyIruu3D89VQU0krL1JFhhhHWZj1UIb7MVTzNO4oq4HeldbOkI0AepA==} + '@sentry/vercel-edge@8.33.0': + resolution: {integrity: sha512-5NGTt4FEZ1R49NIAczE886hpJBqo8wexM1D7ooTq8QmDqxTXQUW8m6Yg9SJkLP0LujrAAUr22PeH0wDiEl4M+w==} engines: {node: '>=14.18'} '@sentry/webpack-plugin@2.22.3': @@ -1688,8 +1706,8 @@ packages: caniuse-lite@1.0.30001657: resolution: {integrity: sha512-DPbJAlP8/BAXy3IgiWmZKItubb3TYGP0WscQQlVGIfT4s/YlFYVuJgyOsQNP7rJRChx/qdMeLJQJP0Sgg2yjNA==} - caniuse-lite@1.0.30001664: - resolution: {integrity: sha512-AmE7k4dXiNKQipgn7a2xg558IRqPN3jMQY/rOsbxDhrd0tyChwbITBfiwtnqz8bi2M5mIWbxAYBvk7W7QBUS2g==} + caniuse-lite@1.0.30001666: + resolution: {integrity: sha512-gD14ICmoV5ZZM1OdzPWmpx+q4GyefaK06zi8hmfHV5xe4/2nOQX3+Dw5o+fSqOws2xVwL9j+anOPFwHzdEdV4g==} canvas@3.0.0-rc2: resolution: {integrity: sha512-esx4bYDznnqgRX4G8kaEaf0W3q8xIc51WpmrIitDzmcoEgwnv9wSKdzT6UxWZ4wkVu5+ileofppX0TpyviJRdQ==} @@ -1904,8 +1922,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.29: - resolution: {integrity: sha512-PF8n2AlIhCKXQ+gTpiJi0VhcHDb69kYX4MtCiivctc2QD3XuNZ/XIOlbGzt7WAjjEev0TtaH6Cu3arZExm5DOw==} + electron-to-chromium@1.5.31: + resolution: {integrity: sha512-QcDoBbQeYt0+3CWcK/rEbuHvwpbT/8SV9T3OSgs6cX1FlcUAkgrkqbg9zLnDrMM/rLamzQwal4LYFCiWk861Tg==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -2326,6 +2344,9 @@ packages: import-in-the-middle@1.11.1: resolution: {integrity: sha512-lGdg70ECFGv/OHQXL/IPhcxkFPeQ7YA4zborlA54XHVr58oM50QNxItRiayHMqj1MspC5Y9zaHf+QHod/gq7Ug==} + import-in-the-middle@1.11.2: + resolution: {integrity: sha512-gK6Rr6EykBcc6cVWRSBR5TWf8nn6hZMYSRYqCcHa0l0d1fPK7JSYo6+Mlmck76jIX9aL/IZ71c06U2VpFwl1zA==} + imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -2509,9 +2530,9 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} + jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + engines: {node: '>=6'} hasBin: true json-buffer@3.0.1: @@ -3636,25 +3657,25 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@babel/code-frame@7.24.7': + '@babel/code-frame@7.25.7': dependencies: - '@babel/highlight': 7.24.7 + '@babel/highlight': 7.25.7 picocolors: 1.1.0 - '@babel/compat-data@7.25.4': {} + '@babel/compat-data@7.25.7': {} - '@babel/core@7.25.2': + '@babel/core@7.25.7': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helpers': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helpers': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 convert-source-map: 2.0.0 debug: 4.3.7 gensync: 1.0.0-beta.2 @@ -3663,89 +3684,89 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/generator@7.25.6': + '@babel/generator@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 + jsesc: 3.0.2 - '@babel/helper-compilation-targets@7.25.2': + '@babel/helper-compilation-targets@7.25.7': dependencies: - '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.24.8 + '@babel/compat-data': 7.25.7 + '@babel/helper-validator-option': 7.25.7 browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-module-imports@7.24.7': + '@babel/helper-module-imports@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': + '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/core': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-simple-access@7.24.7': + '@babel/helper-simple-access@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-string-parser@7.24.8': {} + '@babel/helper-string-parser@7.25.7': {} - '@babel/helper-validator-identifier@7.24.7': {} + '@babel/helper-validator-identifier@7.25.7': {} - '@babel/helper-validator-option@7.24.8': {} + '@babel/helper-validator-option@7.25.7': {} - '@babel/helpers@7.25.6': + '@babel/helpers@7.25.7': dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 - '@babel/highlight@7.24.7': + '@babel/highlight@7.25.7': dependencies: - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-validator-identifier': 7.25.7 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.1.0 - '@babel/parser@7.25.6': + '@babel/parser@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 - '@babel/template@7.25.0': + '@babel/template@7.25.7': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 - '@babel/traverse@7.25.6': + '@babel/traverse@7.25.7': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 debug: 4.3.7 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.25.6': + '@babel/types@7.25.7': dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 to-fast-properties: 2.0.0 '@emnapi/runtime@1.2.0': @@ -4004,6 +4025,10 @@ snapshots: dependencies: '@opentelemetry/api': 1.9.0 + '@opentelemetry/context-async-hooks@1.26.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -4062,7 +4087,7 @@ snapshots: '@opentelemetry/instrumentation-amqplib@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4071,7 +4096,7 @@ snapshots: '@opentelemetry/instrumentation-connect@0.39.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@types/connect': 3.4.36 @@ -4088,7 +4113,7 @@ snapshots: '@opentelemetry/instrumentation-express@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4097,7 +4122,7 @@ snapshots: '@opentelemetry/instrumentation-fastify@0.39.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4106,7 +4131,7 @@ snapshots: '@opentelemetry/instrumentation-fs@0.15.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color @@ -4128,7 +4153,7 @@ snapshots: '@opentelemetry/instrumentation-hapi@0.41.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4164,17 +4189,24 @@ snapshots: '@opentelemetry/instrumentation-koa@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: - supports-color + '@opentelemetry/instrumentation-lru-memoizer@0.40.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + '@opentelemetry/instrumentation-mongodb@0.47.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: - supports-color @@ -4182,7 +4214,7 @@ snapshots: '@opentelemetry/instrumentation-mongoose@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4237,7 +4269,7 @@ snapshots: '@opentelemetry/instrumentation-undici@0.6.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color @@ -4259,7 +4291,7 @@ snapshots: '@opentelemetry/api': 1.9.0 '@opentelemetry/api-logs': 0.53.0 '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.1 + import-in-the-middle: 1.11.2 require-in-the-middle: 7.4.0 semver: 7.6.3 shimmer: 1.2.1 @@ -4329,6 +4361,12 @@ snapshots: '@opentelemetry/resources': 1.25.1(@opentelemetry/api@1.9.0) lodash.merge: 4.6.2 + '@opentelemetry/sdk-metrics@1.26.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-node@0.52.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -4379,7 +4417,7 @@ snapshots: '@opentelemetry/sql-common@0.40.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@pkgjs/parseargs@0.11.0': optional: true @@ -4694,49 +4732,49 @@ snapshots: '@rushstack/eslint-patch@1.10.4': {} - '@sentry-internal/browser-utils@8.32.0': + '@sentry-internal/browser-utils@8.33.0': dependencies: - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 - '@sentry-internal/feedback@8.32.0': + '@sentry-internal/feedback@8.33.0': dependencies: - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 - '@sentry-internal/replay-canvas@8.32.0': + '@sentry-internal/replay-canvas@8.33.0': dependencies: - '@sentry-internal/replay': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry-internal/replay': 8.33.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 - '@sentry-internal/replay@8.32.0': + '@sentry-internal/replay@8.33.0': dependencies: - '@sentry-internal/browser-utils': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry-internal/browser-utils': 8.33.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 '@sentry/babel-plugin-component-annotate@2.22.3': {} - '@sentry/browser@8.32.0': + '@sentry/browser@8.33.0': dependencies: - '@sentry-internal/browser-utils': 8.32.0 - '@sentry-internal/feedback': 8.32.0 - '@sentry-internal/replay': 8.32.0 - '@sentry-internal/replay-canvas': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry-internal/browser-utils': 8.33.0 + '@sentry-internal/feedback': 8.33.0 + '@sentry-internal/replay': 8.33.0 + '@sentry-internal/replay-canvas': 8.33.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 '@sentry/bundler-plugin-core@2.22.3': dependencies: - '@babel/core': 7.25.2 + '@babel/core': 7.25.7 '@sentry/babel-plugin-component-annotate': 2.22.3 - '@sentry/cli': 2.36.3 + '@sentry/cli': 2.36.6 dotenv: 16.4.5 find-up: 5.0.0 glob: 9.3.5 @@ -4746,28 +4784,28 @@ snapshots: - encoding - supports-color - '@sentry/cli-darwin@2.36.3': + '@sentry/cli-darwin@2.36.6': optional: true - '@sentry/cli-linux-arm64@2.36.3': + '@sentry/cli-linux-arm64@2.36.6': optional: true - '@sentry/cli-linux-arm@2.36.3': + '@sentry/cli-linux-arm@2.36.6': optional: true - '@sentry/cli-linux-i686@2.36.3': + '@sentry/cli-linux-i686@2.36.6': optional: true - '@sentry/cli-linux-x64@2.36.3': + '@sentry/cli-linux-x64@2.36.6': optional: true - '@sentry/cli-win32-i686@2.36.3': + '@sentry/cli-win32-i686@2.36.6': optional: true - '@sentry/cli-win32-x64@2.36.3': + '@sentry/cli-win32-x64@2.36.6': optional: true - '@sentry/cli@2.36.3': + '@sentry/cli@2.36.6': dependencies: https-proxy-agent: 5.0.1 node-fetch: 2.7.0 @@ -4775,38 +4813,38 @@ snapshots: proxy-from-env: 1.1.0 which: 2.0.2 optionalDependencies: - '@sentry/cli-darwin': 2.36.3 - '@sentry/cli-linux-arm': 2.36.3 - '@sentry/cli-linux-arm64': 2.36.3 - '@sentry/cli-linux-i686': 2.36.3 - '@sentry/cli-linux-x64': 2.36.3 - '@sentry/cli-win32-i686': 2.36.3 - '@sentry/cli-win32-x64': 2.36.3 + '@sentry/cli-darwin': 2.36.6 + '@sentry/cli-linux-arm': 2.36.6 + '@sentry/cli-linux-arm64': 2.36.6 + '@sentry/cli-linux-i686': 2.36.6 + '@sentry/cli-linux-x64': 2.36.6 + '@sentry/cli-win32-i686': 2.36.6 + '@sentry/cli-win32-x64': 2.36.6 transitivePeerDependencies: - encoding - supports-color - '@sentry/core@8.32.0': + '@sentry/core@8.33.0': dependencies: - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 - '@sentry/nextjs@8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.94.0)': + '@sentry/nextjs@8.33.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.94.0)': dependencies: '@opentelemetry/instrumentation-http': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@rollup/plugin-commonjs': 26.0.1(rollup@3.29.5) - '@sentry-internal/browser-utils': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/node': 8.32.0 - '@sentry/opentelemetry': 8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) - '@sentry/react': 8.32.0(react@19.0.0-rc-3edc000d-20240926) - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 - '@sentry/vercel-edge': 8.32.0 + '@sentry-internal/browser-utils': 8.33.0 + '@sentry/core': 8.33.0 + '@sentry/node': 8.33.0 + '@sentry/opentelemetry': 8.33.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) + '@sentry/react': 8.33.0(react@19.0.0-rc-3edc000d-20240926) + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 + '@sentry/vercel-edge': 8.33.0 '@sentry/webpack-plugin': 2.22.3(webpack@5.94.0) chalk: 3.0.0 - next: 15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + next: 15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) resolve: 1.22.8 rollup: 3.29.5 stacktrace-parser: 0.1.10 @@ -4821,11 +4859,11 @@ snapshots: - react - supports-color - '@sentry/node@8.32.0': + '@sentry/node@8.33.0': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/context-async-hooks': 1.25.1(@opentelemetry/api@1.9.0) - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/context-async-hooks': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-amqplib': 0.42.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-connect': 0.39.0(@opentelemetry/api@1.9.0) @@ -4840,6 +4878,7 @@ snapshots: '@opentelemetry/instrumentation-ioredis': 0.43.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-kafkajs': 0.3.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-koa': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-lru-memoizer': 0.40.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-mongodb': 0.47.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-mongoose': 0.42.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-mysql': 0.41.0(@opentelemetry/api@1.9.0) @@ -4852,45 +4891,45 @@ snapshots: '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@prisma/instrumentation': 5.19.1 - '@sentry/core': 8.32.0 - '@sentry/opentelemetry': 8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 - import-in-the-middle: 1.11.1 + '@sentry/core': 8.33.0 + '@sentry/opentelemetry': 8.33.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 + import-in-the-middle: 1.11.2 transitivePeerDependencies: - supports-color - '@sentry/opentelemetry@8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0)': + '@sentry/opentelemetry@8.33.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 - '@sentry/react@8.32.0(react@19.0.0-rc-3edc000d-20240926)': + '@sentry/react@8.33.0(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@sentry/browser': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/browser': 8.33.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 hoist-non-react-statics: 3.3.2 react: 19.0.0-rc-3edc000d-20240926 - '@sentry/types@8.32.0': {} + '@sentry/types@8.33.0': {} - '@sentry/utils@8.32.0': + '@sentry/utils@8.33.0': dependencies: - '@sentry/types': 8.32.0 + '@sentry/types': 8.33.0 - '@sentry/vercel-edge@8.32.0': + '@sentry/vercel-edge@8.33.0': dependencies: - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.0 + '@sentry/types': 8.33.0 + '@sentry/utils': 8.33.0 '@sentry/webpack-plugin@2.22.3(webpack@5.94.0)': dependencies: @@ -4951,11 +4990,11 @@ snapshots: - supports-color - utf-8-validate - '@trigger.dev/nextjs@3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))': + '@trigger.dev/nextjs@3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))': dependencies: '@trigger.dev/sdk': 3.0.9 debug: 4.3.7 - next: 15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + next: 15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) transitivePeerDependencies: - supports-color @@ -5382,8 +5421,8 @@ snapshots: browserslist@4.24.0: dependencies: - caniuse-lite: 1.0.30001664 - electron-to-chromium: 1.5.29 + caniuse-lite: 1.0.30001666 + electron-to-chromium: 1.5.31 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.0) @@ -5414,7 +5453,7 @@ snapshots: caniuse-lite@1.0.30001657: {} - caniuse-lite@1.0.30001664: {} + caniuse-lite@1.0.30001666: {} canvas@3.0.0-rc2: dependencies: @@ -5633,7 +5672,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.29: {} + electron-to-chromium@1.5.31: {} emoji-regex@8.0.0: {} @@ -5808,7 +5847,7 @@ snapshots: debug: 4.3.7 enhanced-resolve: 5.17.1 eslint: 8.57.1 - eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) fast-glob: 3.3.2 get-tsconfig: 4.8.0 is-bun-module: 1.1.0 @@ -5821,7 +5860,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1): + eslint-module-utils@2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: @@ -5843,7 +5882,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -6230,6 +6269,13 @@ snapshots: cjs-module-lexer: 1.4.1 module-details-from-path: 1.0.3 + import-in-the-middle@1.11.2: + dependencies: + acorn: 8.12.1 + acorn-import-attributes: 1.9.5(acorn@8.12.1) + cjs-module-lexer: 1.4.1 + module-details-from-path: 1.0.3 + imurmurhash@0.1.4: {} inflight@1.0.6: @@ -6405,7 +6451,7 @@ snapshots: dependencies: argparse: 2.0.1 - jsesc@2.5.2: {} + jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -6599,7 +6645,7 @@ snapshots: react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) - next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): + next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): dependencies: '@next/env': 15.0.0-rc.0 '@swc/helpers': 0.5.11 @@ -6609,7 +6655,7 @@ snapshots: postcss: 8.4.31 react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) - styled-jsx: 5.1.3(@babel/core@7.25.2)(react@19.0.0-rc-3edc000d-20240926) + styled-jsx: 5.1.3(@babel/core@7.25.7)(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: '@next/swc-darwin-arm64': 15.0.0-rc.0 '@next/swc-darwin-x64': 15.0.0-rc.0 @@ -7200,12 +7246,12 @@ snapshots: strip-json-comments@3.1.1: {} - styled-jsx@5.1.3(@babel/core@7.25.2)(react@19.0.0-rc-3edc000d-20240926): + styled-jsx@5.1.3(@babel/core@7.25.7)(react@19.0.0-rc-3edc000d-20240926): dependencies: client-only: 0.0.1 react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@babel/core': 7.25.2 + '@babel/core': 7.25.7 sucrase@3.35.0: dependencies: -- 2.45.2 From 1fa36bfdabb83bccb1c600ac7466591fe850ec73 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 3 Oct 2024 09:03:18 +0000 Subject: [PATCH 02/38] Update dependency framer-motion to v11.10.0 --- pnpm-lock.yaml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce75137..f16b434 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -82,7 +82,7 @@ importers: version: 4.0.8 framer-motion: specifier: ^11.5.4 - version: 11.9.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 11.10.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) js-cookie: specifier: ^3.0.5 version: 3.0.5 @@ -2154,8 +2154,8 @@ packages: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} - framer-motion@11.9.0: - resolution: {integrity: sha512-nCfGxvsQecVLjjYDu35G2F5ls+ArE3FBfhxV0RSiisMaUKqteq5DMBFNRKwMyVj+VqKTNhawt+BV480YCHKFlQ==} + framer-motion@11.10.0: + resolution: {integrity: sha512-HOEJGdcDBmIipuMpfcrgQfheuRlPM9TySlzaP8WrZVAdBsLzxfeB4XBuFNVc4YO4OTSpac/oAASPJGAPISvVgQ==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 @@ -5808,7 +5808,7 @@ snapshots: debug: 4.3.7 enhanced-resolve: 5.17.1 eslint: 8.57.1 - eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) fast-glob: 3.3.2 get-tsconfig: 4.8.0 is-bun-module: 1.1.0 @@ -5821,7 +5821,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1): + eslint-module-utils@2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: @@ -5843,7 +5843,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -6055,7 +6055,7 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.1.0 - framer-motion@11.9.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): + framer-motion@11.10.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): dependencies: tslib: 2.7.0 optionalDependencies: -- 2.45.2 From da590d385a5fd3b434b33d6a6ad1d90d65e92a3b Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:39:41 +0100 Subject: [PATCH 03/38] mono repo migration --- .../kubernetes/{ => frontend}/deployment.yaml | 10 +- .gitea/kubernetes/{ => frontend}/ingress.yaml | 4 +- .../{ => frontend}/sealed-secrets.yaml | 4 +- .gitea/kubernetes/{ => frontend}/service.yaml | 4 +- .gitea/workflows/deploy.yml | 18 +- .gitignore | 11 +- .env-example => apps/frontend/.env-example | 0 .../frontend/.eslintrc.json | 0 apps/frontend/.gitignore | 41 + Dockerfile => apps/frontend/Dockerfile | 0 .../frontend/components.json | 0 config.ts => apps/frontend/config.ts | 0 .../frontend/next.config.mjs | 0 apps/frontend/package.json | 67 + .../frontend/postcss.config.mjs | 0 .../frontend/public}/assets/background.jpg | Bin .../frontend/public}/assets/flags/ad.png | Bin .../frontend/public}/assets/flags/ae.png | Bin .../frontend/public}/assets/flags/af.png | Bin .../frontend/public}/assets/flags/ag.png | Bin .../frontend/public}/assets/flags/ai.png | Bin .../frontend/public}/assets/flags/al.png | Bin .../frontend/public}/assets/flags/am.png | Bin .../frontend/public}/assets/flags/ao.png | Bin .../frontend/public}/assets/flags/aq.png | Bin .../frontend/public}/assets/flags/ar.png | Bin .../frontend/public}/assets/flags/as.png | Bin .../frontend/public}/assets/flags/at.png | Bin .../frontend/public}/assets/flags/au.png | Bin .../frontend/public}/assets/flags/aw.png | Bin .../frontend/public}/assets/flags/ax.png | Bin .../frontend/public}/assets/flags/az.png | Bin .../frontend/public}/assets/flags/ba.png | Bin .../frontend/public}/assets/flags/bb.png | Bin .../frontend/public}/assets/flags/bd.png | Bin .../frontend/public}/assets/flags/be.png | Bin .../frontend/public}/assets/flags/bf.png | Bin .../frontend/public}/assets/flags/bg.png | Bin .../frontend/public}/assets/flags/bh.png | Bin .../frontend/public}/assets/flags/bi.png | Bin .../frontend/public}/assets/flags/bj.png | Bin .../frontend/public}/assets/flags/bl.png | Bin .../frontend/public}/assets/flags/bm.png | Bin .../frontend/public}/assets/flags/bn.png | Bin .../frontend/public}/assets/flags/bo.png | Bin .../frontend/public}/assets/flags/bq.png | Bin .../frontend/public}/assets/flags/br.png | Bin .../frontend/public}/assets/flags/bs.png | Bin .../frontend/public}/assets/flags/bt.png | Bin .../frontend/public}/assets/flags/bv.png | Bin .../frontend/public}/assets/flags/bw.png | Bin .../frontend/public}/assets/flags/by.png | Bin .../frontend/public}/assets/flags/bz.png | Bin .../frontend/public}/assets/flags/ca.png | Bin .../frontend/public}/assets/flags/cc.png | Bin .../frontend/public}/assets/flags/cd.png | Bin .../frontend/public}/assets/flags/cf.png | Bin .../frontend/public}/assets/flags/cg.png | Bin .../frontend/public}/assets/flags/ch.png | Bin .../frontend/public}/assets/flags/ci.png | Bin .../frontend/public}/assets/flags/ck.png | Bin .../frontend/public}/assets/flags/cl.png | Bin .../frontend/public}/assets/flags/cm.png | Bin .../frontend/public}/assets/flags/cn.png | Bin .../frontend/public}/assets/flags/co.png | Bin .../frontend/public}/assets/flags/cr.png | Bin .../frontend/public}/assets/flags/cu.png | Bin .../frontend/public}/assets/flags/cv.png | Bin .../frontend/public}/assets/flags/cw.png | Bin .../frontend/public}/assets/flags/cx.png | Bin .../frontend/public}/assets/flags/cy.png | Bin .../frontend/public}/assets/flags/cz.png | Bin .../frontend/public}/assets/flags/de.png | Bin .../frontend/public}/assets/flags/dj.png | Bin .../frontend/public}/assets/flags/dk.png | Bin .../frontend/public}/assets/flags/dm.png | Bin .../frontend/public}/assets/flags/do.png | Bin .../frontend/public}/assets/flags/dz.png | Bin .../frontend/public}/assets/flags/ec.png | Bin .../frontend/public}/assets/flags/ee.png | Bin .../frontend/public}/assets/flags/eg.png | Bin .../frontend/public}/assets/flags/eh.png | Bin .../frontend/public}/assets/flags/er.png | Bin .../frontend/public}/assets/flags/es.png | Bin .../frontend/public}/assets/flags/et.png | Bin .../frontend/public}/assets/flags/fi.png | Bin .../frontend/public}/assets/flags/fj.png | Bin .../frontend/public}/assets/flags/fk.png | Bin .../frontend/public}/assets/flags/fm.png | Bin .../frontend/public}/assets/flags/fo.png | Bin .../frontend/public}/assets/flags/fr.png | Bin .../frontend/public}/assets/flags/ga.png | Bin .../frontend/public}/assets/flags/gb-eng.png | Bin .../frontend/public}/assets/flags/gb-nir.png | Bin .../frontend/public}/assets/flags/gb-sct.png | Bin .../frontend/public}/assets/flags/gb-wls.png | Bin .../frontend/public}/assets/flags/gb.png | Bin .../frontend/public}/assets/flags/gd.png | Bin .../frontend/public}/assets/flags/ge.png | Bin .../frontend/public}/assets/flags/gf.png | Bin .../frontend/public}/assets/flags/gg.png | Bin .../frontend/public}/assets/flags/gh.png | Bin .../frontend/public}/assets/flags/gi.png | Bin .../frontend/public}/assets/flags/gl.png | Bin .../frontend/public}/assets/flags/gm.png | Bin .../frontend/public}/assets/flags/gn.png | Bin .../frontend/public}/assets/flags/gp.png | Bin .../frontend/public}/assets/flags/gq.png | Bin .../frontend/public}/assets/flags/gr.png | Bin .../frontend/public}/assets/flags/gs.png | Bin .../frontend/public}/assets/flags/gt.png | Bin .../frontend/public}/assets/flags/gu.png | Bin .../frontend/public}/assets/flags/gw.png | Bin .../frontend/public}/assets/flags/gy.png | Bin .../frontend/public}/assets/flags/hk.png | Bin .../frontend/public}/assets/flags/hm.png | Bin .../frontend/public}/assets/flags/hn.png | Bin .../frontend/public}/assets/flags/hr.png | Bin .../frontend/public}/assets/flags/ht.png | Bin .../frontend/public}/assets/flags/hu.png | Bin .../frontend/public}/assets/flags/id.png | Bin .../frontend/public}/assets/flags/ie.png | Bin .../frontend/public}/assets/flags/il.png | Bin .../frontend/public}/assets/flags/im.png | Bin .../frontend/public}/assets/flags/in.png | Bin .../frontend/public}/assets/flags/io.png | Bin .../frontend/public}/assets/flags/iq.png | Bin .../frontend/public}/assets/flags/ir.png | Bin .../frontend/public}/assets/flags/is.png | Bin .../frontend/public}/assets/flags/it.png | Bin .../frontend/public}/assets/flags/je.png | Bin .../frontend/public}/assets/flags/jm.png | Bin .../frontend/public}/assets/flags/jo.png | Bin .../frontend/public}/assets/flags/jp.png | Bin .../frontend/public}/assets/flags/ke.png | Bin .../frontend/public}/assets/flags/kg.png | Bin .../frontend/public}/assets/flags/kh.png | Bin .../frontend/public}/assets/flags/ki.png | Bin .../frontend/public}/assets/flags/km.png | Bin .../frontend/public}/assets/flags/kn.png | Bin .../frontend/public}/assets/flags/kp.png | Bin .../frontend/public}/assets/flags/kr.png | Bin .../frontend/public}/assets/flags/kw.png | Bin .../frontend/public}/assets/flags/ky.png | Bin .../frontend/public}/assets/flags/kz.png | Bin .../frontend/public}/assets/flags/la.png | Bin .../frontend/public}/assets/flags/lb.png | Bin .../frontend/public}/assets/flags/lc.png | Bin .../frontend/public}/assets/flags/li.png | Bin .../frontend/public}/assets/flags/lk.png | Bin .../frontend/public}/assets/flags/lr.png | Bin .../frontend/public}/assets/flags/ls.png | Bin .../frontend/public}/assets/flags/lt.png | Bin .../frontend/public}/assets/flags/lu.png | Bin .../frontend/public}/assets/flags/lv.png | Bin .../frontend/public}/assets/flags/ly.png | Bin .../frontend/public}/assets/flags/ma.png | Bin .../frontend/public}/assets/flags/mc.png | Bin .../frontend/public}/assets/flags/md.png | Bin .../frontend/public}/assets/flags/me.png | Bin .../frontend/public}/assets/flags/mf.png | Bin .../frontend/public}/assets/flags/mg.png | Bin .../frontend/public}/assets/flags/mh.png | Bin .../frontend/public}/assets/flags/mk.png | Bin .../frontend/public}/assets/flags/ml.png | Bin .../frontend/public}/assets/flags/mm.png | Bin .../frontend/public}/assets/flags/mn.png | Bin .../frontend/public}/assets/flags/mo.png | Bin .../frontend/public}/assets/flags/mp.png | Bin .../frontend/public}/assets/flags/mq.png | Bin .../frontend/public}/assets/flags/mr.png | Bin .../frontend/public}/assets/flags/ms.png | Bin .../frontend/public}/assets/flags/mt.png | Bin .../frontend/public}/assets/flags/mu.png | Bin .../frontend/public}/assets/flags/mv.png | Bin .../frontend/public}/assets/flags/mw.png | Bin .../frontend/public}/assets/flags/mx.png | Bin .../frontend/public}/assets/flags/my.png | Bin .../frontend/public}/assets/flags/mz.png | Bin .../frontend/public}/assets/flags/na.png | Bin .../frontend/public}/assets/flags/nc.png | Bin .../frontend/public}/assets/flags/ne.png | Bin .../frontend/public}/assets/flags/nf.png | Bin .../frontend/public}/assets/flags/ng.png | Bin .../frontend/public}/assets/flags/ni.png | Bin .../frontend/public}/assets/flags/nl.png | Bin .../frontend/public}/assets/flags/no.png | Bin .../frontend/public}/assets/flags/not set.png | Bin .../frontend/public}/assets/flags/np.png | Bin .../frontend/public}/assets/flags/nr.png | Bin .../frontend/public}/assets/flags/nu.png | Bin .../frontend/public}/assets/flags/nz.png | Bin .../frontend/public}/assets/flags/om.png | Bin .../frontend/public}/assets/flags/pa.png | Bin .../frontend/public}/assets/flags/pe.png | Bin .../frontend/public}/assets/flags/pf.png | Bin .../frontend/public}/assets/flags/pg.png | Bin .../frontend/public}/assets/flags/ph.png | Bin .../frontend/public}/assets/flags/pk.png | Bin .../frontend/public}/assets/flags/pl.png | Bin .../frontend/public}/assets/flags/pm.png | Bin .../frontend/public}/assets/flags/pn.png | Bin .../frontend/public}/assets/flags/pr.png | Bin .../frontend/public}/assets/flags/ps.png | Bin .../frontend/public}/assets/flags/pt.png | Bin .../frontend/public}/assets/flags/pw.png | Bin .../frontend/public}/assets/flags/py.png | Bin .../frontend/public}/assets/flags/qa.png | Bin .../frontend/public}/assets/flags/re.png | Bin .../frontend/public}/assets/flags/ro.png | Bin .../frontend/public}/assets/flags/rs.png | Bin .../frontend/public}/assets/flags/ru.png | Bin .../frontend/public}/assets/flags/rw.png | Bin .../frontend/public}/assets/flags/sa.png | Bin .../frontend/public}/assets/flags/sb.png | Bin .../frontend/public}/assets/flags/sc.png | Bin .../frontend/public}/assets/flags/sd.png | Bin .../frontend/public}/assets/flags/se.png | Bin .../frontend/public}/assets/flags/sg.png | Bin .../frontend/public}/assets/flags/sh.png | Bin .../frontend/public}/assets/flags/si.png | Bin .../frontend/public}/assets/flags/sj.png | Bin .../frontend/public}/assets/flags/sk.png | Bin .../frontend/public}/assets/flags/sl.png | Bin .../frontend/public}/assets/flags/sm.png | Bin .../frontend/public}/assets/flags/sn.png | Bin .../frontend/public}/assets/flags/so.png | Bin .../frontend/public}/assets/flags/sr.png | Bin .../frontend/public}/assets/flags/ss.png | Bin .../frontend/public}/assets/flags/st.png | Bin .../frontend/public}/assets/flags/sv.png | Bin .../frontend/public}/assets/flags/sx.png | Bin .../frontend/public}/assets/flags/sy.png | Bin .../frontend/public}/assets/flags/sz.png | Bin .../frontend/public}/assets/flags/tc.png | Bin .../frontend/public}/assets/flags/td.png | Bin .../frontend/public}/assets/flags/tf.png | Bin .../frontend/public}/assets/flags/tg.png | Bin .../frontend/public}/assets/flags/th.png | Bin .../frontend/public}/assets/flags/tj.png | Bin .../frontend/public}/assets/flags/tk.png | Bin .../frontend/public}/assets/flags/tl.png | Bin .../frontend/public}/assets/flags/tm.png | Bin .../frontend/public}/assets/flags/tn.png | Bin .../frontend/public}/assets/flags/to.png | Bin .../frontend/public}/assets/flags/tr.png | Bin .../frontend/public}/assets/flags/tt.png | Bin .../frontend/public}/assets/flags/tv.png | Bin .../frontend/public}/assets/flags/tw.png | Bin .../frontend/public}/assets/flags/tz.png | Bin .../frontend/public}/assets/flags/ua.png | Bin .../frontend/public}/assets/flags/ug.png | Bin .../frontend/public}/assets/flags/um.png | Bin .../frontend/public}/assets/flags/us.png | Bin .../frontend/public}/assets/flags/uy.png | Bin .../frontend/public}/assets/flags/uz.png | Bin .../frontend/public}/assets/flags/va.png | Bin .../frontend/public}/assets/flags/vc.png | Bin .../frontend/public}/assets/flags/ve.png | Bin .../frontend/public}/assets/flags/vg.png | Bin .../frontend/public}/assets/flags/vi.png | Bin .../frontend/public}/assets/flags/vn.png | Bin .../frontend/public}/assets/flags/vu.png | Bin .../frontend/public}/assets/flags/wf.png | Bin .../frontend/public}/assets/flags/ws.png | Bin .../frontend/public}/assets/flags/xk.png | Bin .../frontend/public}/assets/flags/ye.png | Bin .../frontend/public}/assets/flags/yt.png | Bin .../frontend/public}/assets/flags/za.png | Bin .../frontend/public}/assets/flags/zm.png | Bin .../frontend/public}/assets/flags/zw.png | Bin .../public}/assets/logos/scoresaber.png | Bin {public => apps/frontend/public}/favicon.ico | Bin .../frontend/sentry.client.config.ts | 0 .../frontend/sentry.edge.config.ts | 0 .../frontend/sentry.server.config.ts | 0 .../app/(pages)/api/player/history/route.ts | 0 .../api/player/isbeingtracked/route.ts | 0 .../src}/app/(pages)/api/proxy/route.ts | 0 .../src}/app/(pages)/api/trigger/route.ts | 0 .../(pages)/leaderboard/[...slug]/page.tsx | 0 .../frontend/src}/app/(pages)/page.tsx | 0 .../app/(pages)/player/[...slug]/page.tsx | 0 .../frontend/src}/app/(pages)/search/page.tsx | 0 .../src}/app/(pages)/settings/page.tsx | 0 .../src}/app/components/ui/skeleton.tsx | 0 .../frontend/src}/app/fonts/JetBrainsMono.ttf | Bin .../frontend/src}/app/global-error.tsx | 0 {src => apps/frontend/src}/app/globals.css | 0 {src => apps/frontend/src}/app/layout.tsx | 0 .../frontend/src}/common/browser-utils.ts | 0 {src => apps/frontend/src}/common/colors.ts | 0 .../frontend/src}/common/database/database.ts | 0 .../common/database/types/beatsaver-map.ts | 0 .../src}/common/database/types/settings.ts | 0 .../frontend/src}/common/image-utils.ts | 0 .../model/player/impl/scoresaber-player.ts | 0 .../src}/common/model/player/player.ts | 0 .../model/score/impl/scoresaber-score.ts | 0 .../src}/common/model/score/modifier.ts | 0 .../src}/common/model/score/score-sort.ts | 0 .../frontend/src}/common/model/score/score.ts | 0 .../beatsaver/beat-saver-account-token.ts | 0 .../beat-saver-map-metadata-token.ts | 0 .../beatsaver/beat-saver-map-stats-token.ts | 0 .../token/beatsaver/beat-saver-map-token.ts | 0 .../scoresaber/score-saber-badge-token.ts | 0 .../score-saber-difficulty-token.ts | 0 ...ore-saber-leaderboard-player-info-token.ts | 0 ...ore-saber-leaderboard-scores-page-token.ts | 0 .../score-saber-leaderboard-token.ts | 0 .../scoresaber/score-saber-metadata-token.ts | 0 .../score-saber-player-score-token.ts | 0 .../score-saber-player-scores-page-token.ts | 0 .../score-saber-player-search-token.ts | 0 .../scoresaber/score-saber-player-token.ts | 0 .../score-saber-players-page-token.ts | 0 .../score-saber-score-stats-token.ts | 0 .../scoresaber/score-saber-score-token.ts | 0 {src => apps/frontend/src}/common/mongo.ts | 0 .../frontend/src}/common/number-utils.ts | 0 .../frontend/src}/common/player-utils.ts | 0 .../src}/common/player/player-history.ts | 0 .../common/player/player-tracked-since.ts | 0 .../src}/common/schema/player-schema.ts | 0 .../frontend/src}/common/scoresaber-utils.ts | 0 .../src}/common/service/impl/beatsaver.ts | 5 +- .../src}/common/service/impl/scoresaber.ts | 42 +- .../frontend/src}/common/service/service.ts | 5 +- .../frontend/src}/common/song-utils.ts | 0 .../frontend/src}/common/string-utils.ts | 0 .../frontend/src}/common/time-utils.ts | 0 {src => apps/frontend/src}/common/utils.ts | 0 .../frontend/src}/common/website-utils.ts | 0 .../frontend/src}/common/worker/worker.ts | 0 .../frontend/src}/common/worker/workers.ts | 0 .../frontend/src}/common/youtube-utils.ts | 0 .../src}/components/background-cover.tsx | 0 .../frontend/src}/components/card.tsx | 0 .../src}/components/chart/generic-chart.tsx | 0 .../frontend/src}/components/country-flag.tsx | 0 .../src}/components/fallback-link.tsx | 0 .../frontend/src}/components/footer.tsx | 0 .../src}/components/input/pagination.tsx | 0 .../src}/components/input/search-player.tsx | 0 .../leaderboard/leaderboard-data.tsx | 0 .../leaderboard/leaderboard-info.tsx | 0 .../leaderboard/leaderboard-player.tsx | 0 .../leaderboard/leaderboard-score-stats.tsx | 0 .../leaderboard/leaderboard-score.tsx | 0 .../leaderboard/leaderboard-scores.tsx | 0 .../leaderboard-song-star-count.tsx | 0 .../components/loaders/database-loader.tsx | 0 .../components/loaders/fullscreen-loader.tsx | 0 .../src}/components/logos/beatsaver-logo.tsx | 0 .../src}/components/logos/scoresaber-logo.tsx | 0 .../src}/components/logos/youtube-logo.tsx | 0 .../src}/components/navbar/navbar-button.tsx | 0 .../src}/components/navbar/navbar.tsx | 0 .../src}/components/navbar/profile-button.tsx | 0 .../src}/components/offline-network.tsx | 0 .../player/chart/generic-player-chart.tsx | 0 .../player/chart/player-accuracy-chart.tsx | 0 .../components/player/chart/player-charts.tsx | 0 .../player/chart/player-ranking-chart.tsx | 0 .../src}/components/player/claim-profile.tsx | 0 .../src}/components/player/player-badges.tsx | 0 .../src}/components/player/player-data.tsx | 0 .../src}/components/player/player-header.tsx | 0 .../src}/components/player/player-scores.tsx | 0 .../src}/components/player/player-stats.tsx | 0 .../player/player-tracked-status.tsx | 0 .../src}/components/preload-resources.tsx | 0 .../components/providers/query-provider.tsx | 0 .../components/providers/theme-provider.tsx | 0 .../frontend/src}/components/ranking/mini.tsx | 0 .../ranking/player-ranking-skeleton.tsx | 0 .../components/score/leaderboard-button.tsx | 0 .../src}/components/score/score-animation.tsx | 0 .../src}/components/score/score-badge.tsx | 0 .../src}/components/score/score-button.tsx | 0 .../src}/components/score/score-buttons.tsx | 0 .../src}/components/score/score-info.tsx | 0 .../src}/components/score/score-rank-info.tsx | 0 .../src}/components/score/score-stats.tsx | 0 .../frontend/src}/components/score/score.tsx | 0 .../src}/components/settings/settings.tsx | 0 .../frontend/src}/components/stat-value.tsx | 0 .../frontend/src}/components/tooltip.tsx | 0 .../frontend/src}/components/ui/avatar.tsx | 0 .../frontend/src}/components/ui/button.tsx | 0 .../frontend/src}/components/ui/card.tsx | 0 .../frontend/src}/components/ui/form.tsx | 0 .../frontend/src}/components/ui/input.tsx | 0 .../frontend/src}/components/ui/label.tsx | 0 .../src}/components/ui/pagination.tsx | 0 .../src}/components/ui/scroll-area.tsx | 0 .../frontend/src}/components/ui/toast.tsx | 0 .../frontend/src}/components/ui/toaster.tsx | 0 .../frontend/src}/components/ui/tooltip.tsx | 0 .../frontend/src}/hooks/use-database.ts | 0 .../frontend/src}/hooks/use-is-mobile.ts | 0 .../frontend/src}/hooks/use-is-visible.ts | 0 {src => apps/frontend/src}/hooks/use-toast.ts | 0 .../src}/hooks/use-window-dimensions.ts | 0 {src => apps/frontend/src}/instrumentation.ts | 0 {src => apps/frontend/src}/jobs/index.ts | 0 .../src}/jobs/track-player-statistics.ts | 0 {src => apps/frontend/src}/trigger.ts | 0 .../frontend/tailwind.config.ts | 0 tsconfig.json => apps/frontend/tsconfig.json | 0 package.json | 65 +- packages/common/package.json | 12 + pnpm-lock.yaml | 1106 ++++++++--------- pnpm-workspace.yaml | 3 + turbo.json | 15 + 416 files changed, 721 insertions(+), 691 deletions(-) rename .gitea/kubernetes/{ => frontend}/deployment.yaml (87%) rename .gitea/kubernetes/{ => frontend}/ingress.yaml (82%) rename .gitea/kubernetes/{ => frontend}/sealed-secrets.yaml (98%) rename .gitea/kubernetes/{ => frontend}/service.yaml (65%) rename .env-example => apps/frontend/.env-example (100%) rename .eslintrc.json => apps/frontend/.eslintrc.json (100%) create mode 100644 apps/frontend/.gitignore rename Dockerfile => apps/frontend/Dockerfile (100%) rename components.json => apps/frontend/components.json (100%) rename config.ts => apps/frontend/config.ts (100%) rename next.config.mjs => apps/frontend/next.config.mjs (100%) create mode 100644 apps/frontend/package.json rename postcss.config.mjs => apps/frontend/postcss.config.mjs (100%) rename {public => apps/frontend/public}/assets/background.jpg (100%) rename {public => apps/frontend/public}/assets/flags/ad.png (100%) rename {public => apps/frontend/public}/assets/flags/ae.png (100%) rename {public => apps/frontend/public}/assets/flags/af.png (100%) rename {public => apps/frontend/public}/assets/flags/ag.png (100%) rename {public => apps/frontend/public}/assets/flags/ai.png (100%) rename {public => apps/frontend/public}/assets/flags/al.png (100%) rename {public => apps/frontend/public}/assets/flags/am.png (100%) rename {public => apps/frontend/public}/assets/flags/ao.png (100%) rename {public => apps/frontend/public}/assets/flags/aq.png (100%) rename {public => apps/frontend/public}/assets/flags/ar.png (100%) rename {public => apps/frontend/public}/assets/flags/as.png (100%) rename {public => apps/frontend/public}/assets/flags/at.png (100%) rename {public => apps/frontend/public}/assets/flags/au.png (100%) rename {public => apps/frontend/public}/assets/flags/aw.png (100%) rename {public => apps/frontend/public}/assets/flags/ax.png (100%) rename {public => apps/frontend/public}/assets/flags/az.png (100%) rename {public => apps/frontend/public}/assets/flags/ba.png (100%) rename {public => apps/frontend/public}/assets/flags/bb.png (100%) rename {public => apps/frontend/public}/assets/flags/bd.png (100%) rename {public => apps/frontend/public}/assets/flags/be.png (100%) rename {public => apps/frontend/public}/assets/flags/bf.png (100%) rename {public => apps/frontend/public}/assets/flags/bg.png (100%) rename {public => apps/frontend/public}/assets/flags/bh.png (100%) rename {public => apps/frontend/public}/assets/flags/bi.png (100%) rename {public => apps/frontend/public}/assets/flags/bj.png (100%) rename {public => apps/frontend/public}/assets/flags/bl.png (100%) rename {public => apps/frontend/public}/assets/flags/bm.png (100%) rename {public => apps/frontend/public}/assets/flags/bn.png (100%) rename {public => apps/frontend/public}/assets/flags/bo.png (100%) rename {public => apps/frontend/public}/assets/flags/bq.png (100%) rename {public => apps/frontend/public}/assets/flags/br.png (100%) rename {public => apps/frontend/public}/assets/flags/bs.png (100%) rename {public => apps/frontend/public}/assets/flags/bt.png (100%) rename {public => apps/frontend/public}/assets/flags/bv.png (100%) rename {public => apps/frontend/public}/assets/flags/bw.png (100%) rename {public => apps/frontend/public}/assets/flags/by.png (100%) rename {public => apps/frontend/public}/assets/flags/bz.png (100%) rename {public => apps/frontend/public}/assets/flags/ca.png (100%) rename {public => apps/frontend/public}/assets/flags/cc.png (100%) rename {public => apps/frontend/public}/assets/flags/cd.png (100%) rename {public => apps/frontend/public}/assets/flags/cf.png (100%) rename {public => apps/frontend/public}/assets/flags/cg.png (100%) rename {public => apps/frontend/public}/assets/flags/ch.png (100%) rename {public => apps/frontend/public}/assets/flags/ci.png (100%) rename {public => apps/frontend/public}/assets/flags/ck.png (100%) rename {public => apps/frontend/public}/assets/flags/cl.png (100%) rename {public => apps/frontend/public}/assets/flags/cm.png (100%) rename {public => apps/frontend/public}/assets/flags/cn.png (100%) rename {public => apps/frontend/public}/assets/flags/co.png (100%) rename {public => apps/frontend/public}/assets/flags/cr.png (100%) rename {public => apps/frontend/public}/assets/flags/cu.png (100%) rename {public => apps/frontend/public}/assets/flags/cv.png (100%) rename {public => apps/frontend/public}/assets/flags/cw.png (100%) rename {public => apps/frontend/public}/assets/flags/cx.png (100%) rename {public => apps/frontend/public}/assets/flags/cy.png (100%) rename {public => apps/frontend/public}/assets/flags/cz.png (100%) rename {public => apps/frontend/public}/assets/flags/de.png (100%) rename {public => apps/frontend/public}/assets/flags/dj.png (100%) rename {public => apps/frontend/public}/assets/flags/dk.png (100%) rename {public => apps/frontend/public}/assets/flags/dm.png (100%) rename {public => apps/frontend/public}/assets/flags/do.png (100%) rename {public => apps/frontend/public}/assets/flags/dz.png (100%) rename {public => apps/frontend/public}/assets/flags/ec.png (100%) rename {public => apps/frontend/public}/assets/flags/ee.png (100%) rename {public => apps/frontend/public}/assets/flags/eg.png (100%) rename {public => apps/frontend/public}/assets/flags/eh.png (100%) rename {public => apps/frontend/public}/assets/flags/er.png (100%) rename {public => apps/frontend/public}/assets/flags/es.png (100%) rename {public => apps/frontend/public}/assets/flags/et.png (100%) rename {public => apps/frontend/public}/assets/flags/fi.png (100%) rename {public => apps/frontend/public}/assets/flags/fj.png (100%) rename {public => apps/frontend/public}/assets/flags/fk.png (100%) rename {public => apps/frontend/public}/assets/flags/fm.png (100%) rename {public => apps/frontend/public}/assets/flags/fo.png (100%) rename {public => apps/frontend/public}/assets/flags/fr.png (100%) rename {public => apps/frontend/public}/assets/flags/ga.png (100%) rename {public => apps/frontend/public}/assets/flags/gb-eng.png (100%) rename {public => apps/frontend/public}/assets/flags/gb-nir.png (100%) rename {public => apps/frontend/public}/assets/flags/gb-sct.png (100%) rename {public => apps/frontend/public}/assets/flags/gb-wls.png (100%) rename {public => apps/frontend/public}/assets/flags/gb.png (100%) rename {public => apps/frontend/public}/assets/flags/gd.png (100%) rename {public => apps/frontend/public}/assets/flags/ge.png (100%) rename {public => apps/frontend/public}/assets/flags/gf.png (100%) rename {public => apps/frontend/public}/assets/flags/gg.png (100%) rename {public => apps/frontend/public}/assets/flags/gh.png (100%) rename {public => apps/frontend/public}/assets/flags/gi.png (100%) rename {public => apps/frontend/public}/assets/flags/gl.png (100%) rename {public => apps/frontend/public}/assets/flags/gm.png (100%) rename {public => apps/frontend/public}/assets/flags/gn.png (100%) rename {public => apps/frontend/public}/assets/flags/gp.png (100%) rename {public => apps/frontend/public}/assets/flags/gq.png (100%) rename {public => apps/frontend/public}/assets/flags/gr.png (100%) rename {public => apps/frontend/public}/assets/flags/gs.png (100%) rename {public => apps/frontend/public}/assets/flags/gt.png (100%) rename {public => apps/frontend/public}/assets/flags/gu.png (100%) rename {public => apps/frontend/public}/assets/flags/gw.png (100%) rename {public => apps/frontend/public}/assets/flags/gy.png (100%) rename {public => apps/frontend/public}/assets/flags/hk.png (100%) rename {public => apps/frontend/public}/assets/flags/hm.png (100%) rename {public => apps/frontend/public}/assets/flags/hn.png (100%) rename {public => apps/frontend/public}/assets/flags/hr.png (100%) rename {public => apps/frontend/public}/assets/flags/ht.png (100%) rename {public => apps/frontend/public}/assets/flags/hu.png (100%) rename {public => apps/frontend/public}/assets/flags/id.png (100%) rename {public => apps/frontend/public}/assets/flags/ie.png (100%) rename {public => apps/frontend/public}/assets/flags/il.png (100%) rename {public => apps/frontend/public}/assets/flags/im.png (100%) rename {public => apps/frontend/public}/assets/flags/in.png (100%) rename {public => apps/frontend/public}/assets/flags/io.png (100%) rename {public => apps/frontend/public}/assets/flags/iq.png (100%) rename {public => apps/frontend/public}/assets/flags/ir.png (100%) rename {public => apps/frontend/public}/assets/flags/is.png (100%) rename {public => apps/frontend/public}/assets/flags/it.png (100%) rename {public => apps/frontend/public}/assets/flags/je.png (100%) rename {public => apps/frontend/public}/assets/flags/jm.png (100%) rename {public => apps/frontend/public}/assets/flags/jo.png (100%) rename {public => apps/frontend/public}/assets/flags/jp.png (100%) rename {public => apps/frontend/public}/assets/flags/ke.png (100%) rename {public => apps/frontend/public}/assets/flags/kg.png (100%) rename {public => apps/frontend/public}/assets/flags/kh.png (100%) rename {public => apps/frontend/public}/assets/flags/ki.png (100%) rename {public => apps/frontend/public}/assets/flags/km.png (100%) rename {public => apps/frontend/public}/assets/flags/kn.png (100%) rename {public => apps/frontend/public}/assets/flags/kp.png (100%) rename {public => apps/frontend/public}/assets/flags/kr.png (100%) rename {public => apps/frontend/public}/assets/flags/kw.png (100%) rename {public => apps/frontend/public}/assets/flags/ky.png (100%) rename {public => apps/frontend/public}/assets/flags/kz.png (100%) rename {public => apps/frontend/public}/assets/flags/la.png (100%) rename {public => apps/frontend/public}/assets/flags/lb.png (100%) rename {public => apps/frontend/public}/assets/flags/lc.png (100%) rename {public => apps/frontend/public}/assets/flags/li.png (100%) rename {public => apps/frontend/public}/assets/flags/lk.png (100%) rename {public => apps/frontend/public}/assets/flags/lr.png (100%) rename {public => apps/frontend/public}/assets/flags/ls.png (100%) rename {public => apps/frontend/public}/assets/flags/lt.png (100%) rename {public => apps/frontend/public}/assets/flags/lu.png (100%) rename {public => apps/frontend/public}/assets/flags/lv.png (100%) rename {public => apps/frontend/public}/assets/flags/ly.png (100%) rename {public => apps/frontend/public}/assets/flags/ma.png (100%) rename {public => apps/frontend/public}/assets/flags/mc.png (100%) rename {public => apps/frontend/public}/assets/flags/md.png (100%) rename {public => apps/frontend/public}/assets/flags/me.png (100%) rename {public => apps/frontend/public}/assets/flags/mf.png (100%) rename {public => apps/frontend/public}/assets/flags/mg.png (100%) rename {public => apps/frontend/public}/assets/flags/mh.png (100%) rename {public => apps/frontend/public}/assets/flags/mk.png (100%) rename {public => apps/frontend/public}/assets/flags/ml.png (100%) rename {public => apps/frontend/public}/assets/flags/mm.png (100%) rename {public => apps/frontend/public}/assets/flags/mn.png (100%) rename {public => apps/frontend/public}/assets/flags/mo.png (100%) rename {public => apps/frontend/public}/assets/flags/mp.png (100%) rename {public => apps/frontend/public}/assets/flags/mq.png (100%) rename {public => apps/frontend/public}/assets/flags/mr.png (100%) rename {public => apps/frontend/public}/assets/flags/ms.png (100%) rename {public => apps/frontend/public}/assets/flags/mt.png (100%) rename {public => apps/frontend/public}/assets/flags/mu.png (100%) rename {public => apps/frontend/public}/assets/flags/mv.png (100%) rename {public => apps/frontend/public}/assets/flags/mw.png (100%) rename {public => apps/frontend/public}/assets/flags/mx.png (100%) rename {public => apps/frontend/public}/assets/flags/my.png (100%) rename {public => apps/frontend/public}/assets/flags/mz.png (100%) rename {public => apps/frontend/public}/assets/flags/na.png (100%) rename {public => apps/frontend/public}/assets/flags/nc.png (100%) rename {public => apps/frontend/public}/assets/flags/ne.png (100%) rename {public => apps/frontend/public}/assets/flags/nf.png (100%) rename {public => apps/frontend/public}/assets/flags/ng.png (100%) rename {public => apps/frontend/public}/assets/flags/ni.png (100%) rename {public => apps/frontend/public}/assets/flags/nl.png (100%) rename {public => apps/frontend/public}/assets/flags/no.png (100%) rename {public => apps/frontend/public}/assets/flags/not set.png (100%) rename {public => apps/frontend/public}/assets/flags/np.png (100%) rename {public => apps/frontend/public}/assets/flags/nr.png (100%) rename {public => apps/frontend/public}/assets/flags/nu.png (100%) rename {public => apps/frontend/public}/assets/flags/nz.png (100%) rename {public => apps/frontend/public}/assets/flags/om.png (100%) rename {public => apps/frontend/public}/assets/flags/pa.png (100%) rename {public => apps/frontend/public}/assets/flags/pe.png (100%) rename {public => apps/frontend/public}/assets/flags/pf.png (100%) rename {public => apps/frontend/public}/assets/flags/pg.png (100%) rename {public => apps/frontend/public}/assets/flags/ph.png (100%) rename {public => apps/frontend/public}/assets/flags/pk.png (100%) rename {public => apps/frontend/public}/assets/flags/pl.png (100%) rename {public => apps/frontend/public}/assets/flags/pm.png (100%) rename {public => apps/frontend/public}/assets/flags/pn.png (100%) rename {public => apps/frontend/public}/assets/flags/pr.png (100%) rename {public => apps/frontend/public}/assets/flags/ps.png (100%) rename {public => apps/frontend/public}/assets/flags/pt.png (100%) rename {public => apps/frontend/public}/assets/flags/pw.png (100%) rename {public => apps/frontend/public}/assets/flags/py.png (100%) rename {public => apps/frontend/public}/assets/flags/qa.png (100%) rename {public => apps/frontend/public}/assets/flags/re.png (100%) rename {public => apps/frontend/public}/assets/flags/ro.png (100%) rename {public => apps/frontend/public}/assets/flags/rs.png (100%) rename {public => apps/frontend/public}/assets/flags/ru.png (100%) rename {public => apps/frontend/public}/assets/flags/rw.png (100%) rename {public => apps/frontend/public}/assets/flags/sa.png (100%) rename {public => apps/frontend/public}/assets/flags/sb.png (100%) rename {public => apps/frontend/public}/assets/flags/sc.png (100%) rename {public => apps/frontend/public}/assets/flags/sd.png (100%) rename {public => apps/frontend/public}/assets/flags/se.png (100%) rename {public => apps/frontend/public}/assets/flags/sg.png (100%) rename {public => apps/frontend/public}/assets/flags/sh.png (100%) rename {public => apps/frontend/public}/assets/flags/si.png (100%) rename {public => apps/frontend/public}/assets/flags/sj.png (100%) rename {public => apps/frontend/public}/assets/flags/sk.png (100%) rename {public => apps/frontend/public}/assets/flags/sl.png (100%) rename {public => apps/frontend/public}/assets/flags/sm.png (100%) rename {public => apps/frontend/public}/assets/flags/sn.png (100%) rename {public => apps/frontend/public}/assets/flags/so.png (100%) rename {public => apps/frontend/public}/assets/flags/sr.png (100%) rename {public => apps/frontend/public}/assets/flags/ss.png (100%) rename {public => apps/frontend/public}/assets/flags/st.png (100%) rename {public => apps/frontend/public}/assets/flags/sv.png (100%) rename {public => apps/frontend/public}/assets/flags/sx.png (100%) rename {public => apps/frontend/public}/assets/flags/sy.png (100%) rename {public => apps/frontend/public}/assets/flags/sz.png (100%) rename {public => apps/frontend/public}/assets/flags/tc.png (100%) rename {public => apps/frontend/public}/assets/flags/td.png (100%) rename {public => apps/frontend/public}/assets/flags/tf.png (100%) rename {public => apps/frontend/public}/assets/flags/tg.png (100%) rename {public => apps/frontend/public}/assets/flags/th.png (100%) rename {public => apps/frontend/public}/assets/flags/tj.png (100%) rename {public => apps/frontend/public}/assets/flags/tk.png (100%) rename {public => apps/frontend/public}/assets/flags/tl.png (100%) rename {public => apps/frontend/public}/assets/flags/tm.png (100%) rename {public => apps/frontend/public}/assets/flags/tn.png (100%) rename {public => apps/frontend/public}/assets/flags/to.png (100%) rename {public => apps/frontend/public}/assets/flags/tr.png (100%) rename {public => apps/frontend/public}/assets/flags/tt.png (100%) rename {public => apps/frontend/public}/assets/flags/tv.png (100%) rename {public => apps/frontend/public}/assets/flags/tw.png (100%) rename {public => apps/frontend/public}/assets/flags/tz.png (100%) rename {public => apps/frontend/public}/assets/flags/ua.png (100%) rename {public => apps/frontend/public}/assets/flags/ug.png (100%) rename {public => apps/frontend/public}/assets/flags/um.png (100%) rename {public => apps/frontend/public}/assets/flags/us.png (100%) rename {public => apps/frontend/public}/assets/flags/uy.png (100%) rename {public => apps/frontend/public}/assets/flags/uz.png (100%) rename {public => apps/frontend/public}/assets/flags/va.png (100%) rename {public => apps/frontend/public}/assets/flags/vc.png (100%) rename {public => apps/frontend/public}/assets/flags/ve.png (100%) rename {public => apps/frontend/public}/assets/flags/vg.png (100%) rename {public => apps/frontend/public}/assets/flags/vi.png (100%) rename {public => apps/frontend/public}/assets/flags/vn.png (100%) rename {public => apps/frontend/public}/assets/flags/vu.png (100%) rename {public => apps/frontend/public}/assets/flags/wf.png (100%) rename {public => apps/frontend/public}/assets/flags/ws.png (100%) rename {public => apps/frontend/public}/assets/flags/xk.png (100%) rename {public => apps/frontend/public}/assets/flags/ye.png (100%) rename {public => apps/frontend/public}/assets/flags/yt.png (100%) rename {public => apps/frontend/public}/assets/flags/za.png (100%) rename {public => apps/frontend/public}/assets/flags/zm.png (100%) rename {public => apps/frontend/public}/assets/flags/zw.png (100%) rename {public => apps/frontend/public}/assets/logos/scoresaber.png (100%) rename {public => apps/frontend/public}/favicon.ico (100%) rename sentry.client.config.ts => apps/frontend/sentry.client.config.ts (100%) rename sentry.edge.config.ts => apps/frontend/sentry.edge.config.ts (100%) rename sentry.server.config.ts => apps/frontend/sentry.server.config.ts (100%) rename {src => apps/frontend/src}/app/(pages)/api/player/history/route.ts (100%) rename {src => apps/frontend/src}/app/(pages)/api/player/isbeingtracked/route.ts (100%) rename {src => apps/frontend/src}/app/(pages)/api/proxy/route.ts (100%) rename {src => apps/frontend/src}/app/(pages)/api/trigger/route.ts (100%) rename {src => apps/frontend/src}/app/(pages)/leaderboard/[...slug]/page.tsx (100%) rename {src => apps/frontend/src}/app/(pages)/page.tsx (100%) rename {src => apps/frontend/src}/app/(pages)/player/[...slug]/page.tsx (100%) rename {src => apps/frontend/src}/app/(pages)/search/page.tsx (100%) rename {src => apps/frontend/src}/app/(pages)/settings/page.tsx (100%) rename {src => apps/frontend/src}/app/components/ui/skeleton.tsx (100%) rename {src => apps/frontend/src}/app/fonts/JetBrainsMono.ttf (100%) rename {src => apps/frontend/src}/app/global-error.tsx (100%) rename {src => apps/frontend/src}/app/globals.css (100%) rename {src => apps/frontend/src}/app/layout.tsx (100%) rename {src => apps/frontend/src}/common/browser-utils.ts (100%) rename {src => apps/frontend/src}/common/colors.ts (100%) rename {src => apps/frontend/src}/common/database/database.ts (100%) rename {src => apps/frontend/src}/common/database/types/beatsaver-map.ts (100%) rename {src => apps/frontend/src}/common/database/types/settings.ts (100%) rename {src => apps/frontend/src}/common/image-utils.ts (100%) rename {src => apps/frontend/src}/common/model/player/impl/scoresaber-player.ts (100%) rename {src => apps/frontend/src}/common/model/player/player.ts (100%) rename {src => apps/frontend/src}/common/model/score/impl/scoresaber-score.ts (100%) rename {src => apps/frontend/src}/common/model/score/modifier.ts (100%) rename {src => apps/frontend/src}/common/model/score/score-sort.ts (100%) rename {src => apps/frontend/src}/common/model/score/score.ts (100%) rename {src => apps/frontend/src}/common/model/token/beatsaver/beat-saver-account-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/beatsaver/beat-saver-map-metadata-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/beatsaver/beat-saver-map-stats-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/beatsaver/beat-saver-map-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-badge-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-difficulty-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-leaderboard-player-info-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-leaderboard-scores-page-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-leaderboard-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-metadata-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-player-score-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-player-scores-page-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-player-search-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-player-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-players-page-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-score-stats-token.ts (100%) rename {src => apps/frontend/src}/common/model/token/scoresaber/score-saber-score-token.ts (100%) rename {src => apps/frontend/src}/common/mongo.ts (100%) rename {src => apps/frontend/src}/common/number-utils.ts (100%) rename {src => apps/frontend/src}/common/player-utils.ts (100%) rename {src => apps/frontend/src}/common/player/player-history.ts (100%) rename {src => apps/frontend/src}/common/player/player-tracked-since.ts (100%) rename {src => apps/frontend/src}/common/schema/player-schema.ts (100%) rename {src => apps/frontend/src}/common/scoresaber-utils.ts (100%) rename {src => apps/frontend/src}/common/service/impl/beatsaver.ts (85%) rename {src => apps/frontend/src}/common/service/impl/scoresaber.ts (84%) rename {src => apps/frontend/src}/common/service/service.ts (86%) rename {src => apps/frontend/src}/common/song-utils.ts (100%) rename {src => apps/frontend/src}/common/string-utils.ts (100%) rename {src => apps/frontend/src}/common/time-utils.ts (100%) rename {src => apps/frontend/src}/common/utils.ts (100%) rename {src => apps/frontend/src}/common/website-utils.ts (100%) rename {src => apps/frontend/src}/common/worker/worker.ts (100%) rename {src => apps/frontend/src}/common/worker/workers.ts (100%) rename {src => apps/frontend/src}/common/youtube-utils.ts (100%) rename {src => apps/frontend/src}/components/background-cover.tsx (100%) rename {src => apps/frontend/src}/components/card.tsx (100%) rename {src => apps/frontend/src}/components/chart/generic-chart.tsx (100%) rename {src => apps/frontend/src}/components/country-flag.tsx (100%) rename {src => apps/frontend/src}/components/fallback-link.tsx (100%) rename {src => apps/frontend/src}/components/footer.tsx (100%) rename {src => apps/frontend/src}/components/input/pagination.tsx (100%) rename {src => apps/frontend/src}/components/input/search-player.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-data.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-info.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-player.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-score-stats.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-score.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-scores.tsx (100%) rename {src => apps/frontend/src}/components/leaderboard/leaderboard-song-star-count.tsx (100%) rename {src => apps/frontend/src}/components/loaders/database-loader.tsx (100%) rename {src => apps/frontend/src}/components/loaders/fullscreen-loader.tsx (100%) rename {src => apps/frontend/src}/components/logos/beatsaver-logo.tsx (100%) rename {src => apps/frontend/src}/components/logos/scoresaber-logo.tsx (100%) rename {src => apps/frontend/src}/components/logos/youtube-logo.tsx (100%) rename {src => apps/frontend/src}/components/navbar/navbar-button.tsx (100%) rename {src => apps/frontend/src}/components/navbar/navbar.tsx (100%) rename {src => apps/frontend/src}/components/navbar/profile-button.tsx (100%) rename {src => apps/frontend/src}/components/offline-network.tsx (100%) rename {src => apps/frontend/src}/components/player/chart/generic-player-chart.tsx (100%) rename {src => apps/frontend/src}/components/player/chart/player-accuracy-chart.tsx (100%) rename {src => apps/frontend/src}/components/player/chart/player-charts.tsx (100%) rename {src => apps/frontend/src}/components/player/chart/player-ranking-chart.tsx (100%) rename {src => apps/frontend/src}/components/player/claim-profile.tsx (100%) rename {src => apps/frontend/src}/components/player/player-badges.tsx (100%) rename {src => apps/frontend/src}/components/player/player-data.tsx (100%) rename {src => apps/frontend/src}/components/player/player-header.tsx (100%) rename {src => apps/frontend/src}/components/player/player-scores.tsx (100%) rename {src => apps/frontend/src}/components/player/player-stats.tsx (100%) rename {src => apps/frontend/src}/components/player/player-tracked-status.tsx (100%) rename {src => apps/frontend/src}/components/preload-resources.tsx (100%) rename {src => apps/frontend/src}/components/providers/query-provider.tsx (100%) rename {src => apps/frontend/src}/components/providers/theme-provider.tsx (100%) rename {src => apps/frontend/src}/components/ranking/mini.tsx (100%) rename {src => apps/frontend/src}/components/ranking/player-ranking-skeleton.tsx (100%) rename {src => apps/frontend/src}/components/score/leaderboard-button.tsx (100%) rename {src => apps/frontend/src}/components/score/score-animation.tsx (100%) rename {src => apps/frontend/src}/components/score/score-badge.tsx (100%) rename {src => apps/frontend/src}/components/score/score-button.tsx (100%) rename {src => apps/frontend/src}/components/score/score-buttons.tsx (100%) rename {src => apps/frontend/src}/components/score/score-info.tsx (100%) rename {src => apps/frontend/src}/components/score/score-rank-info.tsx (100%) rename {src => apps/frontend/src}/components/score/score-stats.tsx (100%) rename {src => apps/frontend/src}/components/score/score.tsx (100%) rename {src => apps/frontend/src}/components/settings/settings.tsx (100%) rename {src => apps/frontend/src}/components/stat-value.tsx (100%) rename {src => apps/frontend/src}/components/tooltip.tsx (100%) rename {src => apps/frontend/src}/components/ui/avatar.tsx (100%) rename {src => apps/frontend/src}/components/ui/button.tsx (100%) rename {src => apps/frontend/src}/components/ui/card.tsx (100%) rename {src => apps/frontend/src}/components/ui/form.tsx (100%) rename {src => apps/frontend/src}/components/ui/input.tsx (100%) rename {src => apps/frontend/src}/components/ui/label.tsx (100%) rename {src => apps/frontend/src}/components/ui/pagination.tsx (100%) rename {src => apps/frontend/src}/components/ui/scroll-area.tsx (100%) rename {src => apps/frontend/src}/components/ui/toast.tsx (100%) rename {src => apps/frontend/src}/components/ui/toaster.tsx (100%) rename {src => apps/frontend/src}/components/ui/tooltip.tsx (100%) rename {src => apps/frontend/src}/hooks/use-database.ts (100%) rename {src => apps/frontend/src}/hooks/use-is-mobile.ts (100%) rename {src => apps/frontend/src}/hooks/use-is-visible.ts (100%) rename {src => apps/frontend/src}/hooks/use-toast.ts (100%) rename {src => apps/frontend/src}/hooks/use-window-dimensions.ts (100%) rename {src => apps/frontend/src}/instrumentation.ts (100%) rename {src => apps/frontend/src}/jobs/index.ts (100%) rename {src => apps/frontend/src}/jobs/track-player-statistics.ts (100%) rename {src => apps/frontend/src}/trigger.ts (100%) rename tailwind.config.ts => apps/frontend/tailwind.config.ts (100%) rename tsconfig.json => apps/frontend/tsconfig.json (100%) create mode 100644 packages/common/package.json create mode 100644 pnpm-workspace.yaml create mode 100644 turbo.json diff --git a/.gitea/kubernetes/deployment.yaml b/.gitea/kubernetes/frontend/deployment.yaml similarity index 87% rename from .gitea/kubernetes/deployment.yaml rename to .gitea/kubernetes/frontend/deployment.yaml index 0b6c4cf..79a771e 100644 --- a/.gitea/kubernetes/deployment.yaml +++ b/.gitea/kubernetes/frontend/deployment.yaml @@ -1,21 +1,21 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: scoresaber-reloaded + name: scoresaber-reloaded-frontend namespace: public-services spec: replicas: 1 selector: matchLabels: - app: scoresaber-reloaded + app: scoresaber-reloaded-frontend template: metadata: labels: - app: scoresaber-reloaded + app: scoresaber-reloaded-frontend spec: containers: - - name: scoresaber-reloaded-container - image: git.fascinated.cc/fascinated/scoresaber-reloaded:latest + - name: scoresaber-reloaded-frontend-container + image: git.fascinated.cc/fascinated/scoresaber-reloaded-frontend:latest imagePullPolicy: Always ports: - containerPort: 3000 diff --git a/.gitea/kubernetes/ingress.yaml b/.gitea/kubernetes/frontend/ingress.yaml similarity index 82% rename from .gitea/kubernetes/ingress.yaml rename to .gitea/kubernetes/frontend/ingress.yaml index 81a6c67..3862252 100644 --- a/.gitea/kubernetes/ingress.yaml +++ b/.gitea/kubernetes/frontend/ingress.yaml @@ -2,7 +2,7 @@ apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: - name: scoresaber-reloaded-ingress + name: scoresaber-reloaded-frontend-ingress namespace: public-services annotations: kubernetes.io/ingress.class: traefik-external @@ -18,7 +18,7 @@ spec: - name: compress namespace: traefik services: - - name: scoresaber-reloaded-service + - name: scoresaber-reloaded-frontend-service port: 3000 tls: secretName: fascinated-cc diff --git a/.gitea/kubernetes/sealed-secrets.yaml b/.gitea/kubernetes/frontend/sealed-secrets.yaml similarity index 98% rename from .gitea/kubernetes/sealed-secrets.yaml rename to .gitea/kubernetes/frontend/sealed-secrets.yaml index f2a0a7e..7b9799b 100644 --- a/.gitea/kubernetes/sealed-secrets.yaml +++ b/.gitea/kubernetes/frontend/sealed-secrets.yaml @@ -3,7 +3,7 @@ apiVersion: bitnami.com/v1alpha1 kind: SealedSecret metadata: creationTimestamp: null - name: ssr-secret + name: ssr-frontend-secret namespace: public-services spec: encryptedData: @@ -15,6 +15,6 @@ spec: template: metadata: creationTimestamp: null - name: ssr-secret + name: ssr-frontend-secret namespace: public-services type: Opaque diff --git a/.gitea/kubernetes/service.yaml b/.gitea/kubernetes/frontend/service.yaml similarity index 65% rename from .gitea/kubernetes/service.yaml rename to .gitea/kubernetes/frontend/service.yaml index a73a898..ed20a3e 100644 --- a/.gitea/kubernetes/service.yaml +++ b/.gitea/kubernetes/frontend/service.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: Service metadata: - name: scoresaber-reloaded-service + name: scoresaber-reloaded-frontend-service namespace: public-services spec: type: ClusterIP @@ -10,4 +10,4 @@ spec: - port: 3000 targetPort: 3000 selector: - app: scoresaber-reloaded + app: scoresaber-reloaded-frontend diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index c0742e5..7e74e4d 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -1,4 +1,4 @@ -name: "Deploy" +name: "Deploy Frontend" on: push: @@ -25,11 +25,11 @@ jobs: - name: Build Image uses: docker/build-push-action@v6 with: - context: . + context: ./apps/frontend push: true tags: | - git.fascinated.cc/fascinated/scoresaber-reloaded:${{ github.sha }} - git.fascinated.cc/fascinated/scoresaber-reloaded:latest + git.fascinated.cc/fascinated/scoresaber-reloaded-frontend:${{ github.sha }} + git.fascinated.cc/fascinated/scoresaber-reloaded-frontend:latest build-args: | GIT_REV=${{ gitea.sha }} SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }} @@ -49,9 +49,9 @@ jobs: action: deploy namespace: public-services manifests: | - .gitea/kubernetes/sealed-secrets.yaml - .gitea/kubernetes/deployment.yaml - .gitea/kubernetes/service.yaml - .gitea/kubernetes/ingress.yaml + .gitea/kubernetes/frontend/sealed-secrets.yaml + .gitea/kubernetes/frontend/deployment.yaml + .gitea/kubernetes/frontend/service.yaml + .gitea/kubernetes/frontend/ingress.yaml images: | - git.fascinated.cc/fascinated/scoresaber-reloaded:${{ github.sha }} + git.fascinated.cc/fascinated/scoresaber-reloaded-frontend:${{ github.sha }} diff --git a/.gitignore b/.gitignore index ed766c8..79419d2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,16 +1,15 @@ # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. # dependencies -/node_modules +node_modules /.pnp .pnp.js -.yarn/install-state.gz # testing /coverage # next.js -/.next/ +.next/ /out/ # production @@ -34,8 +33,6 @@ yarn-error.log* # typescript *.tsbuildinfo next-env.d.ts +.turbo -.idea - -# Sentry Config File -.env.sentry-build-plugin +.idea \ No newline at end of file diff --git a/.env-example b/apps/frontend/.env-example similarity index 100% rename from .env-example rename to apps/frontend/.env-example diff --git a/.eslintrc.json b/apps/frontend/.eslintrc.json similarity index 100% rename from .eslintrc.json rename to apps/frontend/.eslintrc.json diff --git a/apps/frontend/.gitignore b/apps/frontend/.gitignore new file mode 100644 index 0000000..ed766c8 --- /dev/null +++ b/apps/frontend/.gitignore @@ -0,0 +1,41 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts + +.idea + +# Sentry Config File +.env.sentry-build-plugin diff --git a/Dockerfile b/apps/frontend/Dockerfile similarity index 100% rename from Dockerfile rename to apps/frontend/Dockerfile diff --git a/components.json b/apps/frontend/components.json similarity index 100% rename from components.json rename to apps/frontend/components.json diff --git a/config.ts b/apps/frontend/config.ts similarity index 100% rename from config.ts rename to apps/frontend/config.ts diff --git a/next.config.mjs b/apps/frontend/next.config.mjs similarity index 100% rename from next.config.mjs rename to apps/frontend/next.config.mjs diff --git a/apps/frontend/package.json b/apps/frontend/package.json new file mode 100644 index 0000000..dca0995 --- /dev/null +++ b/apps/frontend/package.json @@ -0,0 +1,67 @@ +{ + "name": "scoresaber-reloadedv3", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev --turbo", + "build": "next build", + "start": "next start", + "lint": "next lint" + }, + "packageManager": "pnpm@9.12.0", + "dependencies": { + "@formkit/tempo": "^0.1.2", + "@heroicons/react": "^2.1.5", + "@hookform/resolvers": "^3.9.0", + "@radix-ui/react-avatar": "^1.1.0", + "@radix-ui/react-icons": "^1.3.0", + "@radix-ui/react-label": "^2.1.0", + "@radix-ui/react-scroll-area": "^1.1.0", + "@radix-ui/react-slot": "^1.1.0", + "@radix-ui/react-toast": "^1.2.1", + "@radix-ui/react-tooltip": "^1.1.2", + "@sentry/nextjs": "8", + "@tanstack/react-query": "^5.55.4", + "@trigger.dev/nextjs": "^3.0.8", + "@trigger.dev/react": "^3.0.8", + "@trigger.dev/sdk": "^3.0.8", + "@uidotdev/usehooks": "^2.4.1", + "canvas": "3.0.0-rc2", + "chart.js": "^4.4.4", + "class-variance-authority": "^0.7.0", + "clsx": "^2.1.1", + "comlink": "^4.4.1", + "dexie": "^4.0.8", + "dexie-react-hooks": "^1.1.7", + "extract-colors": "^4.0.8", + "framer-motion": "^11.5.4", + "js-cookie": "^3.0.5", + "ky": "^1.7.2", + "lucide-react": "^0.447.0", + "mongoose": "^8.7.0", + "next": "15.0.0-rc.0", + "next-build-id": "^3.0.0", + "next-themes": "^0.3.0", + "react": "19.0.0-rc-3edc000d-20240926", + "react-chartjs-2": "^5.2.0", + "react-dom": "19.0.0-rc-3edc000d-20240926", + "react-hook-form": "^7.53.0", + "tailwind-merge": "^2.5.2", + "tailwindcss-animate": "^1.0.7", + "zod": "^3.23.8" + }, + "devDependencies": { + "@types/js-cookie": "^3.0.6", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "eslint": "^8", + "eslint-config-next": "14.2.14", + "postcss": "^8", + "tailwindcss": "^3.4.1", + "typescript": "^5" + }, + "trigger.dev": { + "endpointId": "scoresaber-reloaded-KB0Z" + } +} diff --git a/postcss.config.mjs b/apps/frontend/postcss.config.mjs similarity index 100% rename from postcss.config.mjs rename to apps/frontend/postcss.config.mjs diff --git a/public/assets/background.jpg b/apps/frontend/public/assets/background.jpg similarity index 100% rename from public/assets/background.jpg rename to apps/frontend/public/assets/background.jpg diff --git a/public/assets/flags/ad.png b/apps/frontend/public/assets/flags/ad.png similarity index 100% rename from public/assets/flags/ad.png rename to apps/frontend/public/assets/flags/ad.png diff --git a/public/assets/flags/ae.png b/apps/frontend/public/assets/flags/ae.png similarity index 100% rename from public/assets/flags/ae.png rename to apps/frontend/public/assets/flags/ae.png diff --git a/public/assets/flags/af.png b/apps/frontend/public/assets/flags/af.png similarity index 100% rename from public/assets/flags/af.png rename to apps/frontend/public/assets/flags/af.png diff --git a/public/assets/flags/ag.png b/apps/frontend/public/assets/flags/ag.png similarity index 100% rename from public/assets/flags/ag.png rename to apps/frontend/public/assets/flags/ag.png diff --git a/public/assets/flags/ai.png b/apps/frontend/public/assets/flags/ai.png similarity index 100% rename from public/assets/flags/ai.png rename to apps/frontend/public/assets/flags/ai.png diff --git a/public/assets/flags/al.png b/apps/frontend/public/assets/flags/al.png similarity index 100% rename from public/assets/flags/al.png rename to apps/frontend/public/assets/flags/al.png diff --git a/public/assets/flags/am.png b/apps/frontend/public/assets/flags/am.png similarity index 100% rename from public/assets/flags/am.png rename to apps/frontend/public/assets/flags/am.png diff --git a/public/assets/flags/ao.png b/apps/frontend/public/assets/flags/ao.png similarity index 100% rename from public/assets/flags/ao.png rename to apps/frontend/public/assets/flags/ao.png diff --git a/public/assets/flags/aq.png b/apps/frontend/public/assets/flags/aq.png similarity index 100% rename from public/assets/flags/aq.png rename to apps/frontend/public/assets/flags/aq.png diff --git a/public/assets/flags/ar.png b/apps/frontend/public/assets/flags/ar.png similarity index 100% rename from public/assets/flags/ar.png rename to apps/frontend/public/assets/flags/ar.png diff --git a/public/assets/flags/as.png b/apps/frontend/public/assets/flags/as.png similarity index 100% rename from public/assets/flags/as.png rename to apps/frontend/public/assets/flags/as.png diff --git a/public/assets/flags/at.png b/apps/frontend/public/assets/flags/at.png similarity index 100% rename from public/assets/flags/at.png rename to apps/frontend/public/assets/flags/at.png diff --git a/public/assets/flags/au.png b/apps/frontend/public/assets/flags/au.png similarity index 100% rename from public/assets/flags/au.png rename to apps/frontend/public/assets/flags/au.png diff --git a/public/assets/flags/aw.png b/apps/frontend/public/assets/flags/aw.png similarity index 100% rename from public/assets/flags/aw.png rename to apps/frontend/public/assets/flags/aw.png diff --git a/public/assets/flags/ax.png b/apps/frontend/public/assets/flags/ax.png similarity index 100% rename from public/assets/flags/ax.png rename to apps/frontend/public/assets/flags/ax.png diff --git a/public/assets/flags/az.png b/apps/frontend/public/assets/flags/az.png similarity index 100% rename from public/assets/flags/az.png rename to apps/frontend/public/assets/flags/az.png diff --git a/public/assets/flags/ba.png b/apps/frontend/public/assets/flags/ba.png similarity index 100% rename from public/assets/flags/ba.png rename to apps/frontend/public/assets/flags/ba.png diff --git a/public/assets/flags/bb.png b/apps/frontend/public/assets/flags/bb.png similarity index 100% rename from public/assets/flags/bb.png rename to apps/frontend/public/assets/flags/bb.png diff --git a/public/assets/flags/bd.png b/apps/frontend/public/assets/flags/bd.png similarity index 100% rename from public/assets/flags/bd.png rename to apps/frontend/public/assets/flags/bd.png diff --git a/public/assets/flags/be.png b/apps/frontend/public/assets/flags/be.png similarity index 100% rename from public/assets/flags/be.png rename to apps/frontend/public/assets/flags/be.png diff --git a/public/assets/flags/bf.png b/apps/frontend/public/assets/flags/bf.png similarity index 100% rename from public/assets/flags/bf.png rename to apps/frontend/public/assets/flags/bf.png diff --git a/public/assets/flags/bg.png b/apps/frontend/public/assets/flags/bg.png similarity index 100% rename from public/assets/flags/bg.png rename to apps/frontend/public/assets/flags/bg.png diff --git a/public/assets/flags/bh.png b/apps/frontend/public/assets/flags/bh.png similarity index 100% rename from public/assets/flags/bh.png rename to apps/frontend/public/assets/flags/bh.png diff --git a/public/assets/flags/bi.png b/apps/frontend/public/assets/flags/bi.png similarity index 100% rename from public/assets/flags/bi.png rename to apps/frontend/public/assets/flags/bi.png diff --git a/public/assets/flags/bj.png b/apps/frontend/public/assets/flags/bj.png similarity index 100% rename from public/assets/flags/bj.png rename to apps/frontend/public/assets/flags/bj.png diff --git a/public/assets/flags/bl.png b/apps/frontend/public/assets/flags/bl.png similarity index 100% rename from public/assets/flags/bl.png rename to apps/frontend/public/assets/flags/bl.png diff --git a/public/assets/flags/bm.png b/apps/frontend/public/assets/flags/bm.png similarity index 100% rename from public/assets/flags/bm.png rename to apps/frontend/public/assets/flags/bm.png diff --git a/public/assets/flags/bn.png b/apps/frontend/public/assets/flags/bn.png similarity index 100% rename from public/assets/flags/bn.png rename to apps/frontend/public/assets/flags/bn.png diff --git a/public/assets/flags/bo.png b/apps/frontend/public/assets/flags/bo.png similarity index 100% rename from public/assets/flags/bo.png rename to apps/frontend/public/assets/flags/bo.png diff --git a/public/assets/flags/bq.png b/apps/frontend/public/assets/flags/bq.png similarity index 100% rename from public/assets/flags/bq.png rename to apps/frontend/public/assets/flags/bq.png diff --git a/public/assets/flags/br.png b/apps/frontend/public/assets/flags/br.png similarity index 100% rename from public/assets/flags/br.png rename to apps/frontend/public/assets/flags/br.png diff --git a/public/assets/flags/bs.png b/apps/frontend/public/assets/flags/bs.png similarity index 100% rename from public/assets/flags/bs.png rename to apps/frontend/public/assets/flags/bs.png diff --git a/public/assets/flags/bt.png b/apps/frontend/public/assets/flags/bt.png similarity index 100% rename from public/assets/flags/bt.png rename to apps/frontend/public/assets/flags/bt.png diff --git a/public/assets/flags/bv.png b/apps/frontend/public/assets/flags/bv.png similarity index 100% rename from public/assets/flags/bv.png rename to apps/frontend/public/assets/flags/bv.png diff --git a/public/assets/flags/bw.png b/apps/frontend/public/assets/flags/bw.png similarity index 100% rename from public/assets/flags/bw.png rename to apps/frontend/public/assets/flags/bw.png diff --git a/public/assets/flags/by.png b/apps/frontend/public/assets/flags/by.png similarity index 100% rename from public/assets/flags/by.png rename to apps/frontend/public/assets/flags/by.png diff --git a/public/assets/flags/bz.png b/apps/frontend/public/assets/flags/bz.png similarity index 100% rename from public/assets/flags/bz.png rename to apps/frontend/public/assets/flags/bz.png diff --git a/public/assets/flags/ca.png b/apps/frontend/public/assets/flags/ca.png similarity index 100% rename from public/assets/flags/ca.png rename to apps/frontend/public/assets/flags/ca.png diff --git a/public/assets/flags/cc.png b/apps/frontend/public/assets/flags/cc.png similarity index 100% rename from public/assets/flags/cc.png rename to apps/frontend/public/assets/flags/cc.png diff --git a/public/assets/flags/cd.png b/apps/frontend/public/assets/flags/cd.png similarity index 100% rename from public/assets/flags/cd.png rename to apps/frontend/public/assets/flags/cd.png diff --git a/public/assets/flags/cf.png b/apps/frontend/public/assets/flags/cf.png similarity index 100% rename from public/assets/flags/cf.png rename to apps/frontend/public/assets/flags/cf.png diff --git a/public/assets/flags/cg.png b/apps/frontend/public/assets/flags/cg.png similarity index 100% rename from public/assets/flags/cg.png rename to apps/frontend/public/assets/flags/cg.png diff --git a/public/assets/flags/ch.png b/apps/frontend/public/assets/flags/ch.png similarity index 100% rename from public/assets/flags/ch.png rename to apps/frontend/public/assets/flags/ch.png diff --git a/public/assets/flags/ci.png b/apps/frontend/public/assets/flags/ci.png similarity index 100% rename from public/assets/flags/ci.png rename to apps/frontend/public/assets/flags/ci.png diff --git a/public/assets/flags/ck.png b/apps/frontend/public/assets/flags/ck.png similarity index 100% rename from public/assets/flags/ck.png rename to apps/frontend/public/assets/flags/ck.png diff --git a/public/assets/flags/cl.png b/apps/frontend/public/assets/flags/cl.png similarity index 100% rename from public/assets/flags/cl.png rename to apps/frontend/public/assets/flags/cl.png diff --git a/public/assets/flags/cm.png b/apps/frontend/public/assets/flags/cm.png similarity index 100% rename from public/assets/flags/cm.png rename to apps/frontend/public/assets/flags/cm.png diff --git a/public/assets/flags/cn.png b/apps/frontend/public/assets/flags/cn.png similarity index 100% rename from public/assets/flags/cn.png rename to apps/frontend/public/assets/flags/cn.png diff --git a/public/assets/flags/co.png b/apps/frontend/public/assets/flags/co.png similarity index 100% rename from public/assets/flags/co.png rename to apps/frontend/public/assets/flags/co.png diff --git a/public/assets/flags/cr.png b/apps/frontend/public/assets/flags/cr.png similarity index 100% rename from public/assets/flags/cr.png rename to apps/frontend/public/assets/flags/cr.png diff --git a/public/assets/flags/cu.png b/apps/frontend/public/assets/flags/cu.png similarity index 100% rename from public/assets/flags/cu.png rename to apps/frontend/public/assets/flags/cu.png diff --git a/public/assets/flags/cv.png b/apps/frontend/public/assets/flags/cv.png similarity index 100% rename from public/assets/flags/cv.png rename to apps/frontend/public/assets/flags/cv.png diff --git a/public/assets/flags/cw.png b/apps/frontend/public/assets/flags/cw.png similarity index 100% rename from public/assets/flags/cw.png rename to apps/frontend/public/assets/flags/cw.png diff --git a/public/assets/flags/cx.png b/apps/frontend/public/assets/flags/cx.png similarity index 100% rename from public/assets/flags/cx.png rename to apps/frontend/public/assets/flags/cx.png diff --git a/public/assets/flags/cy.png b/apps/frontend/public/assets/flags/cy.png similarity index 100% rename from public/assets/flags/cy.png rename to apps/frontend/public/assets/flags/cy.png diff --git a/public/assets/flags/cz.png b/apps/frontend/public/assets/flags/cz.png similarity index 100% rename from public/assets/flags/cz.png rename to apps/frontend/public/assets/flags/cz.png diff --git a/public/assets/flags/de.png b/apps/frontend/public/assets/flags/de.png similarity index 100% rename from public/assets/flags/de.png rename to apps/frontend/public/assets/flags/de.png diff --git a/public/assets/flags/dj.png b/apps/frontend/public/assets/flags/dj.png similarity index 100% rename from public/assets/flags/dj.png rename to apps/frontend/public/assets/flags/dj.png diff --git a/public/assets/flags/dk.png b/apps/frontend/public/assets/flags/dk.png similarity index 100% rename from public/assets/flags/dk.png rename to apps/frontend/public/assets/flags/dk.png diff --git a/public/assets/flags/dm.png b/apps/frontend/public/assets/flags/dm.png similarity index 100% rename from public/assets/flags/dm.png rename to apps/frontend/public/assets/flags/dm.png diff --git a/public/assets/flags/do.png b/apps/frontend/public/assets/flags/do.png similarity index 100% rename from public/assets/flags/do.png rename to apps/frontend/public/assets/flags/do.png diff --git a/public/assets/flags/dz.png b/apps/frontend/public/assets/flags/dz.png similarity index 100% rename from public/assets/flags/dz.png rename to apps/frontend/public/assets/flags/dz.png diff --git a/public/assets/flags/ec.png b/apps/frontend/public/assets/flags/ec.png similarity index 100% rename from public/assets/flags/ec.png rename to apps/frontend/public/assets/flags/ec.png diff --git a/public/assets/flags/ee.png b/apps/frontend/public/assets/flags/ee.png similarity index 100% rename from public/assets/flags/ee.png rename to apps/frontend/public/assets/flags/ee.png diff --git a/public/assets/flags/eg.png b/apps/frontend/public/assets/flags/eg.png similarity index 100% rename from public/assets/flags/eg.png rename to apps/frontend/public/assets/flags/eg.png diff --git a/public/assets/flags/eh.png b/apps/frontend/public/assets/flags/eh.png similarity index 100% rename from public/assets/flags/eh.png rename to apps/frontend/public/assets/flags/eh.png diff --git a/public/assets/flags/er.png b/apps/frontend/public/assets/flags/er.png similarity index 100% rename from public/assets/flags/er.png rename to apps/frontend/public/assets/flags/er.png diff --git a/public/assets/flags/es.png b/apps/frontend/public/assets/flags/es.png similarity index 100% rename from public/assets/flags/es.png rename to apps/frontend/public/assets/flags/es.png diff --git a/public/assets/flags/et.png b/apps/frontend/public/assets/flags/et.png similarity index 100% rename from public/assets/flags/et.png rename to apps/frontend/public/assets/flags/et.png diff --git a/public/assets/flags/fi.png b/apps/frontend/public/assets/flags/fi.png similarity index 100% rename from public/assets/flags/fi.png rename to apps/frontend/public/assets/flags/fi.png diff --git a/public/assets/flags/fj.png b/apps/frontend/public/assets/flags/fj.png similarity index 100% rename from public/assets/flags/fj.png rename to apps/frontend/public/assets/flags/fj.png diff --git a/public/assets/flags/fk.png b/apps/frontend/public/assets/flags/fk.png similarity index 100% rename from public/assets/flags/fk.png rename to apps/frontend/public/assets/flags/fk.png diff --git a/public/assets/flags/fm.png b/apps/frontend/public/assets/flags/fm.png similarity index 100% rename from public/assets/flags/fm.png rename to apps/frontend/public/assets/flags/fm.png diff --git a/public/assets/flags/fo.png b/apps/frontend/public/assets/flags/fo.png similarity index 100% rename from public/assets/flags/fo.png rename to apps/frontend/public/assets/flags/fo.png diff --git a/public/assets/flags/fr.png b/apps/frontend/public/assets/flags/fr.png similarity index 100% rename from public/assets/flags/fr.png rename to apps/frontend/public/assets/flags/fr.png diff --git a/public/assets/flags/ga.png b/apps/frontend/public/assets/flags/ga.png similarity index 100% rename from public/assets/flags/ga.png rename to apps/frontend/public/assets/flags/ga.png diff --git a/public/assets/flags/gb-eng.png b/apps/frontend/public/assets/flags/gb-eng.png similarity index 100% rename from public/assets/flags/gb-eng.png rename to apps/frontend/public/assets/flags/gb-eng.png diff --git a/public/assets/flags/gb-nir.png b/apps/frontend/public/assets/flags/gb-nir.png similarity index 100% rename from public/assets/flags/gb-nir.png rename to apps/frontend/public/assets/flags/gb-nir.png diff --git a/public/assets/flags/gb-sct.png b/apps/frontend/public/assets/flags/gb-sct.png similarity index 100% rename from public/assets/flags/gb-sct.png rename to apps/frontend/public/assets/flags/gb-sct.png diff --git a/public/assets/flags/gb-wls.png b/apps/frontend/public/assets/flags/gb-wls.png similarity index 100% rename from public/assets/flags/gb-wls.png rename to apps/frontend/public/assets/flags/gb-wls.png diff --git a/public/assets/flags/gb.png b/apps/frontend/public/assets/flags/gb.png similarity index 100% rename from public/assets/flags/gb.png rename to apps/frontend/public/assets/flags/gb.png diff --git a/public/assets/flags/gd.png b/apps/frontend/public/assets/flags/gd.png similarity index 100% rename from public/assets/flags/gd.png rename to apps/frontend/public/assets/flags/gd.png diff --git a/public/assets/flags/ge.png b/apps/frontend/public/assets/flags/ge.png similarity index 100% rename from public/assets/flags/ge.png rename to apps/frontend/public/assets/flags/ge.png diff --git a/public/assets/flags/gf.png b/apps/frontend/public/assets/flags/gf.png similarity index 100% rename from public/assets/flags/gf.png rename to apps/frontend/public/assets/flags/gf.png diff --git a/public/assets/flags/gg.png b/apps/frontend/public/assets/flags/gg.png similarity index 100% rename from public/assets/flags/gg.png rename to apps/frontend/public/assets/flags/gg.png diff --git a/public/assets/flags/gh.png b/apps/frontend/public/assets/flags/gh.png similarity index 100% rename from public/assets/flags/gh.png rename to apps/frontend/public/assets/flags/gh.png diff --git a/public/assets/flags/gi.png b/apps/frontend/public/assets/flags/gi.png similarity index 100% rename from public/assets/flags/gi.png rename to apps/frontend/public/assets/flags/gi.png diff --git a/public/assets/flags/gl.png b/apps/frontend/public/assets/flags/gl.png similarity index 100% rename from public/assets/flags/gl.png rename to apps/frontend/public/assets/flags/gl.png diff --git a/public/assets/flags/gm.png b/apps/frontend/public/assets/flags/gm.png similarity index 100% rename from public/assets/flags/gm.png rename to apps/frontend/public/assets/flags/gm.png diff --git a/public/assets/flags/gn.png b/apps/frontend/public/assets/flags/gn.png similarity index 100% rename from public/assets/flags/gn.png rename to apps/frontend/public/assets/flags/gn.png diff --git a/public/assets/flags/gp.png b/apps/frontend/public/assets/flags/gp.png similarity index 100% rename from public/assets/flags/gp.png rename to apps/frontend/public/assets/flags/gp.png diff --git a/public/assets/flags/gq.png b/apps/frontend/public/assets/flags/gq.png similarity index 100% rename from public/assets/flags/gq.png rename to apps/frontend/public/assets/flags/gq.png diff --git a/public/assets/flags/gr.png b/apps/frontend/public/assets/flags/gr.png similarity index 100% rename from public/assets/flags/gr.png rename to apps/frontend/public/assets/flags/gr.png diff --git a/public/assets/flags/gs.png b/apps/frontend/public/assets/flags/gs.png similarity index 100% rename from public/assets/flags/gs.png rename to apps/frontend/public/assets/flags/gs.png diff --git a/public/assets/flags/gt.png b/apps/frontend/public/assets/flags/gt.png similarity index 100% rename from public/assets/flags/gt.png rename to apps/frontend/public/assets/flags/gt.png diff --git a/public/assets/flags/gu.png b/apps/frontend/public/assets/flags/gu.png similarity index 100% rename from public/assets/flags/gu.png rename to apps/frontend/public/assets/flags/gu.png diff --git a/public/assets/flags/gw.png b/apps/frontend/public/assets/flags/gw.png similarity index 100% rename from public/assets/flags/gw.png rename to apps/frontend/public/assets/flags/gw.png diff --git a/public/assets/flags/gy.png b/apps/frontend/public/assets/flags/gy.png similarity index 100% rename from public/assets/flags/gy.png rename to apps/frontend/public/assets/flags/gy.png diff --git a/public/assets/flags/hk.png b/apps/frontend/public/assets/flags/hk.png similarity index 100% rename from public/assets/flags/hk.png rename to apps/frontend/public/assets/flags/hk.png diff --git a/public/assets/flags/hm.png b/apps/frontend/public/assets/flags/hm.png similarity index 100% rename from public/assets/flags/hm.png rename to apps/frontend/public/assets/flags/hm.png diff --git a/public/assets/flags/hn.png b/apps/frontend/public/assets/flags/hn.png similarity index 100% rename from public/assets/flags/hn.png rename to apps/frontend/public/assets/flags/hn.png diff --git a/public/assets/flags/hr.png b/apps/frontend/public/assets/flags/hr.png similarity index 100% rename from public/assets/flags/hr.png rename to apps/frontend/public/assets/flags/hr.png diff --git a/public/assets/flags/ht.png b/apps/frontend/public/assets/flags/ht.png similarity index 100% rename from public/assets/flags/ht.png rename to apps/frontend/public/assets/flags/ht.png diff --git a/public/assets/flags/hu.png b/apps/frontend/public/assets/flags/hu.png similarity index 100% rename from public/assets/flags/hu.png rename to apps/frontend/public/assets/flags/hu.png diff --git a/public/assets/flags/id.png b/apps/frontend/public/assets/flags/id.png similarity index 100% rename from public/assets/flags/id.png rename to apps/frontend/public/assets/flags/id.png diff --git a/public/assets/flags/ie.png b/apps/frontend/public/assets/flags/ie.png similarity index 100% rename from public/assets/flags/ie.png rename to apps/frontend/public/assets/flags/ie.png diff --git a/public/assets/flags/il.png b/apps/frontend/public/assets/flags/il.png similarity index 100% rename from public/assets/flags/il.png rename to apps/frontend/public/assets/flags/il.png diff --git a/public/assets/flags/im.png b/apps/frontend/public/assets/flags/im.png similarity index 100% rename from public/assets/flags/im.png rename to apps/frontend/public/assets/flags/im.png diff --git a/public/assets/flags/in.png b/apps/frontend/public/assets/flags/in.png similarity index 100% rename from public/assets/flags/in.png rename to apps/frontend/public/assets/flags/in.png diff --git a/public/assets/flags/io.png b/apps/frontend/public/assets/flags/io.png similarity index 100% rename from public/assets/flags/io.png rename to apps/frontend/public/assets/flags/io.png diff --git a/public/assets/flags/iq.png b/apps/frontend/public/assets/flags/iq.png similarity index 100% rename from public/assets/flags/iq.png rename to apps/frontend/public/assets/flags/iq.png diff --git a/public/assets/flags/ir.png b/apps/frontend/public/assets/flags/ir.png similarity index 100% rename from public/assets/flags/ir.png rename to apps/frontend/public/assets/flags/ir.png diff --git a/public/assets/flags/is.png b/apps/frontend/public/assets/flags/is.png similarity index 100% rename from public/assets/flags/is.png rename to apps/frontend/public/assets/flags/is.png diff --git a/public/assets/flags/it.png b/apps/frontend/public/assets/flags/it.png similarity index 100% rename from public/assets/flags/it.png rename to apps/frontend/public/assets/flags/it.png diff --git a/public/assets/flags/je.png b/apps/frontend/public/assets/flags/je.png similarity index 100% rename from public/assets/flags/je.png rename to apps/frontend/public/assets/flags/je.png diff --git a/public/assets/flags/jm.png b/apps/frontend/public/assets/flags/jm.png similarity index 100% rename from public/assets/flags/jm.png rename to apps/frontend/public/assets/flags/jm.png diff --git a/public/assets/flags/jo.png b/apps/frontend/public/assets/flags/jo.png similarity index 100% rename from public/assets/flags/jo.png rename to apps/frontend/public/assets/flags/jo.png diff --git a/public/assets/flags/jp.png b/apps/frontend/public/assets/flags/jp.png similarity index 100% rename from public/assets/flags/jp.png rename to apps/frontend/public/assets/flags/jp.png diff --git a/public/assets/flags/ke.png b/apps/frontend/public/assets/flags/ke.png similarity index 100% rename from public/assets/flags/ke.png rename to apps/frontend/public/assets/flags/ke.png diff --git a/public/assets/flags/kg.png b/apps/frontend/public/assets/flags/kg.png similarity index 100% rename from public/assets/flags/kg.png rename to apps/frontend/public/assets/flags/kg.png diff --git a/public/assets/flags/kh.png b/apps/frontend/public/assets/flags/kh.png similarity index 100% rename from public/assets/flags/kh.png rename to apps/frontend/public/assets/flags/kh.png diff --git a/public/assets/flags/ki.png b/apps/frontend/public/assets/flags/ki.png similarity index 100% rename from public/assets/flags/ki.png rename to apps/frontend/public/assets/flags/ki.png diff --git a/public/assets/flags/km.png b/apps/frontend/public/assets/flags/km.png similarity index 100% rename from public/assets/flags/km.png rename to apps/frontend/public/assets/flags/km.png diff --git a/public/assets/flags/kn.png b/apps/frontend/public/assets/flags/kn.png similarity index 100% rename from public/assets/flags/kn.png rename to apps/frontend/public/assets/flags/kn.png diff --git a/public/assets/flags/kp.png b/apps/frontend/public/assets/flags/kp.png similarity index 100% rename from public/assets/flags/kp.png rename to apps/frontend/public/assets/flags/kp.png diff --git a/public/assets/flags/kr.png b/apps/frontend/public/assets/flags/kr.png similarity index 100% rename from public/assets/flags/kr.png rename to apps/frontend/public/assets/flags/kr.png diff --git a/public/assets/flags/kw.png b/apps/frontend/public/assets/flags/kw.png similarity index 100% rename from public/assets/flags/kw.png rename to apps/frontend/public/assets/flags/kw.png diff --git a/public/assets/flags/ky.png b/apps/frontend/public/assets/flags/ky.png similarity index 100% rename from public/assets/flags/ky.png rename to apps/frontend/public/assets/flags/ky.png diff --git a/public/assets/flags/kz.png b/apps/frontend/public/assets/flags/kz.png similarity index 100% rename from public/assets/flags/kz.png rename to apps/frontend/public/assets/flags/kz.png diff --git a/public/assets/flags/la.png b/apps/frontend/public/assets/flags/la.png similarity index 100% rename from public/assets/flags/la.png rename to apps/frontend/public/assets/flags/la.png diff --git a/public/assets/flags/lb.png b/apps/frontend/public/assets/flags/lb.png similarity index 100% rename from public/assets/flags/lb.png rename to apps/frontend/public/assets/flags/lb.png diff --git a/public/assets/flags/lc.png b/apps/frontend/public/assets/flags/lc.png similarity index 100% rename from public/assets/flags/lc.png rename to apps/frontend/public/assets/flags/lc.png diff --git a/public/assets/flags/li.png b/apps/frontend/public/assets/flags/li.png similarity index 100% rename from public/assets/flags/li.png rename to apps/frontend/public/assets/flags/li.png diff --git a/public/assets/flags/lk.png b/apps/frontend/public/assets/flags/lk.png similarity index 100% rename from public/assets/flags/lk.png rename to apps/frontend/public/assets/flags/lk.png diff --git a/public/assets/flags/lr.png b/apps/frontend/public/assets/flags/lr.png similarity index 100% rename from public/assets/flags/lr.png rename to apps/frontend/public/assets/flags/lr.png diff --git a/public/assets/flags/ls.png b/apps/frontend/public/assets/flags/ls.png similarity index 100% rename from public/assets/flags/ls.png rename to apps/frontend/public/assets/flags/ls.png diff --git a/public/assets/flags/lt.png b/apps/frontend/public/assets/flags/lt.png similarity index 100% rename from public/assets/flags/lt.png rename to apps/frontend/public/assets/flags/lt.png diff --git a/public/assets/flags/lu.png b/apps/frontend/public/assets/flags/lu.png similarity index 100% rename from public/assets/flags/lu.png rename to apps/frontend/public/assets/flags/lu.png diff --git a/public/assets/flags/lv.png b/apps/frontend/public/assets/flags/lv.png similarity index 100% rename from public/assets/flags/lv.png rename to apps/frontend/public/assets/flags/lv.png diff --git a/public/assets/flags/ly.png b/apps/frontend/public/assets/flags/ly.png similarity index 100% rename from public/assets/flags/ly.png rename to apps/frontend/public/assets/flags/ly.png diff --git a/public/assets/flags/ma.png b/apps/frontend/public/assets/flags/ma.png similarity index 100% rename from public/assets/flags/ma.png rename to apps/frontend/public/assets/flags/ma.png diff --git a/public/assets/flags/mc.png b/apps/frontend/public/assets/flags/mc.png similarity index 100% rename from public/assets/flags/mc.png rename to apps/frontend/public/assets/flags/mc.png diff --git a/public/assets/flags/md.png b/apps/frontend/public/assets/flags/md.png similarity index 100% rename from public/assets/flags/md.png rename to apps/frontend/public/assets/flags/md.png diff --git a/public/assets/flags/me.png b/apps/frontend/public/assets/flags/me.png similarity index 100% rename from public/assets/flags/me.png rename to apps/frontend/public/assets/flags/me.png diff --git a/public/assets/flags/mf.png b/apps/frontend/public/assets/flags/mf.png similarity index 100% rename from public/assets/flags/mf.png rename to apps/frontend/public/assets/flags/mf.png diff --git a/public/assets/flags/mg.png b/apps/frontend/public/assets/flags/mg.png similarity index 100% rename from public/assets/flags/mg.png rename to apps/frontend/public/assets/flags/mg.png diff --git a/public/assets/flags/mh.png b/apps/frontend/public/assets/flags/mh.png similarity index 100% rename from public/assets/flags/mh.png rename to apps/frontend/public/assets/flags/mh.png diff --git a/public/assets/flags/mk.png b/apps/frontend/public/assets/flags/mk.png similarity index 100% rename from public/assets/flags/mk.png rename to apps/frontend/public/assets/flags/mk.png diff --git a/public/assets/flags/ml.png b/apps/frontend/public/assets/flags/ml.png similarity index 100% rename from public/assets/flags/ml.png rename to apps/frontend/public/assets/flags/ml.png diff --git a/public/assets/flags/mm.png b/apps/frontend/public/assets/flags/mm.png similarity index 100% rename from public/assets/flags/mm.png rename to apps/frontend/public/assets/flags/mm.png diff --git a/public/assets/flags/mn.png b/apps/frontend/public/assets/flags/mn.png similarity index 100% rename from public/assets/flags/mn.png rename to apps/frontend/public/assets/flags/mn.png diff --git a/public/assets/flags/mo.png b/apps/frontend/public/assets/flags/mo.png similarity index 100% rename from public/assets/flags/mo.png rename to apps/frontend/public/assets/flags/mo.png diff --git a/public/assets/flags/mp.png b/apps/frontend/public/assets/flags/mp.png similarity index 100% rename from public/assets/flags/mp.png rename to apps/frontend/public/assets/flags/mp.png diff --git a/public/assets/flags/mq.png b/apps/frontend/public/assets/flags/mq.png similarity index 100% rename from public/assets/flags/mq.png rename to apps/frontend/public/assets/flags/mq.png diff --git a/public/assets/flags/mr.png b/apps/frontend/public/assets/flags/mr.png similarity index 100% rename from public/assets/flags/mr.png rename to apps/frontend/public/assets/flags/mr.png diff --git a/public/assets/flags/ms.png b/apps/frontend/public/assets/flags/ms.png similarity index 100% rename from public/assets/flags/ms.png rename to apps/frontend/public/assets/flags/ms.png diff --git a/public/assets/flags/mt.png b/apps/frontend/public/assets/flags/mt.png similarity index 100% rename from public/assets/flags/mt.png rename to apps/frontend/public/assets/flags/mt.png diff --git a/public/assets/flags/mu.png b/apps/frontend/public/assets/flags/mu.png similarity index 100% rename from public/assets/flags/mu.png rename to apps/frontend/public/assets/flags/mu.png diff --git a/public/assets/flags/mv.png b/apps/frontend/public/assets/flags/mv.png similarity index 100% rename from public/assets/flags/mv.png rename to apps/frontend/public/assets/flags/mv.png diff --git a/public/assets/flags/mw.png b/apps/frontend/public/assets/flags/mw.png similarity index 100% rename from public/assets/flags/mw.png rename to apps/frontend/public/assets/flags/mw.png diff --git a/public/assets/flags/mx.png b/apps/frontend/public/assets/flags/mx.png similarity index 100% rename from public/assets/flags/mx.png rename to apps/frontend/public/assets/flags/mx.png diff --git a/public/assets/flags/my.png b/apps/frontend/public/assets/flags/my.png similarity index 100% rename from public/assets/flags/my.png rename to apps/frontend/public/assets/flags/my.png diff --git a/public/assets/flags/mz.png b/apps/frontend/public/assets/flags/mz.png similarity index 100% rename from public/assets/flags/mz.png rename to apps/frontend/public/assets/flags/mz.png diff --git a/public/assets/flags/na.png b/apps/frontend/public/assets/flags/na.png similarity index 100% rename from public/assets/flags/na.png rename to apps/frontend/public/assets/flags/na.png diff --git a/public/assets/flags/nc.png b/apps/frontend/public/assets/flags/nc.png similarity index 100% rename from public/assets/flags/nc.png rename to apps/frontend/public/assets/flags/nc.png diff --git a/public/assets/flags/ne.png b/apps/frontend/public/assets/flags/ne.png similarity index 100% rename from public/assets/flags/ne.png rename to apps/frontend/public/assets/flags/ne.png diff --git a/public/assets/flags/nf.png b/apps/frontend/public/assets/flags/nf.png similarity index 100% rename from public/assets/flags/nf.png rename to apps/frontend/public/assets/flags/nf.png diff --git a/public/assets/flags/ng.png b/apps/frontend/public/assets/flags/ng.png similarity index 100% rename from public/assets/flags/ng.png rename to apps/frontend/public/assets/flags/ng.png diff --git a/public/assets/flags/ni.png b/apps/frontend/public/assets/flags/ni.png similarity index 100% rename from public/assets/flags/ni.png rename to apps/frontend/public/assets/flags/ni.png diff --git a/public/assets/flags/nl.png b/apps/frontend/public/assets/flags/nl.png similarity index 100% rename from public/assets/flags/nl.png rename to apps/frontend/public/assets/flags/nl.png diff --git a/public/assets/flags/no.png b/apps/frontend/public/assets/flags/no.png similarity index 100% rename from public/assets/flags/no.png rename to apps/frontend/public/assets/flags/no.png diff --git a/public/assets/flags/not set.png b/apps/frontend/public/assets/flags/not set.png similarity index 100% rename from public/assets/flags/not set.png rename to apps/frontend/public/assets/flags/not set.png diff --git a/public/assets/flags/np.png b/apps/frontend/public/assets/flags/np.png similarity index 100% rename from public/assets/flags/np.png rename to apps/frontend/public/assets/flags/np.png diff --git a/public/assets/flags/nr.png b/apps/frontend/public/assets/flags/nr.png similarity index 100% rename from public/assets/flags/nr.png rename to apps/frontend/public/assets/flags/nr.png diff --git a/public/assets/flags/nu.png b/apps/frontend/public/assets/flags/nu.png similarity index 100% rename from public/assets/flags/nu.png rename to apps/frontend/public/assets/flags/nu.png diff --git a/public/assets/flags/nz.png b/apps/frontend/public/assets/flags/nz.png similarity index 100% rename from public/assets/flags/nz.png rename to apps/frontend/public/assets/flags/nz.png diff --git a/public/assets/flags/om.png b/apps/frontend/public/assets/flags/om.png similarity index 100% rename from public/assets/flags/om.png rename to apps/frontend/public/assets/flags/om.png diff --git a/public/assets/flags/pa.png b/apps/frontend/public/assets/flags/pa.png similarity index 100% rename from public/assets/flags/pa.png rename to apps/frontend/public/assets/flags/pa.png diff --git a/public/assets/flags/pe.png b/apps/frontend/public/assets/flags/pe.png similarity index 100% rename from public/assets/flags/pe.png rename to apps/frontend/public/assets/flags/pe.png diff --git a/public/assets/flags/pf.png b/apps/frontend/public/assets/flags/pf.png similarity index 100% rename from public/assets/flags/pf.png rename to apps/frontend/public/assets/flags/pf.png diff --git a/public/assets/flags/pg.png b/apps/frontend/public/assets/flags/pg.png similarity index 100% rename from public/assets/flags/pg.png rename to apps/frontend/public/assets/flags/pg.png diff --git a/public/assets/flags/ph.png b/apps/frontend/public/assets/flags/ph.png similarity index 100% rename from public/assets/flags/ph.png rename to apps/frontend/public/assets/flags/ph.png diff --git a/public/assets/flags/pk.png b/apps/frontend/public/assets/flags/pk.png similarity index 100% rename from public/assets/flags/pk.png rename to apps/frontend/public/assets/flags/pk.png diff --git a/public/assets/flags/pl.png b/apps/frontend/public/assets/flags/pl.png similarity index 100% rename from public/assets/flags/pl.png rename to apps/frontend/public/assets/flags/pl.png diff --git a/public/assets/flags/pm.png b/apps/frontend/public/assets/flags/pm.png similarity index 100% rename from public/assets/flags/pm.png rename to apps/frontend/public/assets/flags/pm.png diff --git a/public/assets/flags/pn.png b/apps/frontend/public/assets/flags/pn.png similarity index 100% rename from public/assets/flags/pn.png rename to apps/frontend/public/assets/flags/pn.png diff --git a/public/assets/flags/pr.png b/apps/frontend/public/assets/flags/pr.png similarity index 100% rename from public/assets/flags/pr.png rename to apps/frontend/public/assets/flags/pr.png diff --git a/public/assets/flags/ps.png b/apps/frontend/public/assets/flags/ps.png similarity index 100% rename from public/assets/flags/ps.png rename to apps/frontend/public/assets/flags/ps.png diff --git a/public/assets/flags/pt.png b/apps/frontend/public/assets/flags/pt.png similarity index 100% rename from public/assets/flags/pt.png rename to apps/frontend/public/assets/flags/pt.png diff --git a/public/assets/flags/pw.png b/apps/frontend/public/assets/flags/pw.png similarity index 100% rename from public/assets/flags/pw.png rename to apps/frontend/public/assets/flags/pw.png diff --git a/public/assets/flags/py.png b/apps/frontend/public/assets/flags/py.png similarity index 100% rename from public/assets/flags/py.png rename to apps/frontend/public/assets/flags/py.png diff --git a/public/assets/flags/qa.png b/apps/frontend/public/assets/flags/qa.png similarity index 100% rename from public/assets/flags/qa.png rename to apps/frontend/public/assets/flags/qa.png diff --git a/public/assets/flags/re.png b/apps/frontend/public/assets/flags/re.png similarity index 100% rename from public/assets/flags/re.png rename to apps/frontend/public/assets/flags/re.png diff --git a/public/assets/flags/ro.png b/apps/frontend/public/assets/flags/ro.png similarity index 100% rename from public/assets/flags/ro.png rename to apps/frontend/public/assets/flags/ro.png diff --git a/public/assets/flags/rs.png b/apps/frontend/public/assets/flags/rs.png similarity index 100% rename from public/assets/flags/rs.png rename to apps/frontend/public/assets/flags/rs.png diff --git a/public/assets/flags/ru.png b/apps/frontend/public/assets/flags/ru.png similarity index 100% rename from public/assets/flags/ru.png rename to apps/frontend/public/assets/flags/ru.png diff --git a/public/assets/flags/rw.png b/apps/frontend/public/assets/flags/rw.png similarity index 100% rename from public/assets/flags/rw.png rename to apps/frontend/public/assets/flags/rw.png diff --git a/public/assets/flags/sa.png b/apps/frontend/public/assets/flags/sa.png similarity index 100% rename from public/assets/flags/sa.png rename to apps/frontend/public/assets/flags/sa.png diff --git a/public/assets/flags/sb.png b/apps/frontend/public/assets/flags/sb.png similarity index 100% rename from public/assets/flags/sb.png rename to apps/frontend/public/assets/flags/sb.png diff --git a/public/assets/flags/sc.png b/apps/frontend/public/assets/flags/sc.png similarity index 100% rename from public/assets/flags/sc.png rename to apps/frontend/public/assets/flags/sc.png diff --git a/public/assets/flags/sd.png b/apps/frontend/public/assets/flags/sd.png similarity index 100% rename from public/assets/flags/sd.png rename to apps/frontend/public/assets/flags/sd.png diff --git a/public/assets/flags/se.png b/apps/frontend/public/assets/flags/se.png similarity index 100% rename from public/assets/flags/se.png rename to apps/frontend/public/assets/flags/se.png diff --git a/public/assets/flags/sg.png b/apps/frontend/public/assets/flags/sg.png similarity index 100% rename from public/assets/flags/sg.png rename to apps/frontend/public/assets/flags/sg.png diff --git a/public/assets/flags/sh.png b/apps/frontend/public/assets/flags/sh.png similarity index 100% rename from public/assets/flags/sh.png rename to apps/frontend/public/assets/flags/sh.png diff --git a/public/assets/flags/si.png b/apps/frontend/public/assets/flags/si.png similarity index 100% rename from public/assets/flags/si.png rename to apps/frontend/public/assets/flags/si.png diff --git a/public/assets/flags/sj.png b/apps/frontend/public/assets/flags/sj.png similarity index 100% rename from public/assets/flags/sj.png rename to apps/frontend/public/assets/flags/sj.png diff --git a/public/assets/flags/sk.png b/apps/frontend/public/assets/flags/sk.png similarity index 100% rename from public/assets/flags/sk.png rename to apps/frontend/public/assets/flags/sk.png diff --git a/public/assets/flags/sl.png b/apps/frontend/public/assets/flags/sl.png similarity index 100% rename from public/assets/flags/sl.png rename to apps/frontend/public/assets/flags/sl.png diff --git a/public/assets/flags/sm.png b/apps/frontend/public/assets/flags/sm.png similarity index 100% rename from public/assets/flags/sm.png rename to apps/frontend/public/assets/flags/sm.png diff --git a/public/assets/flags/sn.png b/apps/frontend/public/assets/flags/sn.png similarity index 100% rename from public/assets/flags/sn.png rename to apps/frontend/public/assets/flags/sn.png diff --git a/public/assets/flags/so.png b/apps/frontend/public/assets/flags/so.png similarity index 100% rename from public/assets/flags/so.png rename to apps/frontend/public/assets/flags/so.png diff --git a/public/assets/flags/sr.png b/apps/frontend/public/assets/flags/sr.png similarity index 100% rename from public/assets/flags/sr.png rename to apps/frontend/public/assets/flags/sr.png diff --git a/public/assets/flags/ss.png b/apps/frontend/public/assets/flags/ss.png similarity index 100% rename from public/assets/flags/ss.png rename to apps/frontend/public/assets/flags/ss.png diff --git a/public/assets/flags/st.png b/apps/frontend/public/assets/flags/st.png similarity index 100% rename from public/assets/flags/st.png rename to apps/frontend/public/assets/flags/st.png diff --git a/public/assets/flags/sv.png b/apps/frontend/public/assets/flags/sv.png similarity index 100% rename from public/assets/flags/sv.png rename to apps/frontend/public/assets/flags/sv.png diff --git a/public/assets/flags/sx.png b/apps/frontend/public/assets/flags/sx.png similarity index 100% rename from public/assets/flags/sx.png rename to apps/frontend/public/assets/flags/sx.png diff --git a/public/assets/flags/sy.png b/apps/frontend/public/assets/flags/sy.png similarity index 100% rename from public/assets/flags/sy.png rename to apps/frontend/public/assets/flags/sy.png diff --git a/public/assets/flags/sz.png b/apps/frontend/public/assets/flags/sz.png similarity index 100% rename from public/assets/flags/sz.png rename to apps/frontend/public/assets/flags/sz.png diff --git a/public/assets/flags/tc.png b/apps/frontend/public/assets/flags/tc.png similarity index 100% rename from public/assets/flags/tc.png rename to apps/frontend/public/assets/flags/tc.png diff --git a/public/assets/flags/td.png b/apps/frontend/public/assets/flags/td.png similarity index 100% rename from public/assets/flags/td.png rename to apps/frontend/public/assets/flags/td.png diff --git a/public/assets/flags/tf.png b/apps/frontend/public/assets/flags/tf.png similarity index 100% rename from public/assets/flags/tf.png rename to apps/frontend/public/assets/flags/tf.png diff --git a/public/assets/flags/tg.png b/apps/frontend/public/assets/flags/tg.png similarity index 100% rename from public/assets/flags/tg.png rename to apps/frontend/public/assets/flags/tg.png diff --git a/public/assets/flags/th.png b/apps/frontend/public/assets/flags/th.png similarity index 100% rename from public/assets/flags/th.png rename to apps/frontend/public/assets/flags/th.png diff --git a/public/assets/flags/tj.png b/apps/frontend/public/assets/flags/tj.png similarity index 100% rename from public/assets/flags/tj.png rename to apps/frontend/public/assets/flags/tj.png diff --git a/public/assets/flags/tk.png b/apps/frontend/public/assets/flags/tk.png similarity index 100% rename from public/assets/flags/tk.png rename to apps/frontend/public/assets/flags/tk.png diff --git a/public/assets/flags/tl.png b/apps/frontend/public/assets/flags/tl.png similarity index 100% rename from public/assets/flags/tl.png rename to apps/frontend/public/assets/flags/tl.png diff --git a/public/assets/flags/tm.png b/apps/frontend/public/assets/flags/tm.png similarity index 100% rename from public/assets/flags/tm.png rename to apps/frontend/public/assets/flags/tm.png diff --git a/public/assets/flags/tn.png b/apps/frontend/public/assets/flags/tn.png similarity index 100% rename from public/assets/flags/tn.png rename to apps/frontend/public/assets/flags/tn.png diff --git a/public/assets/flags/to.png b/apps/frontend/public/assets/flags/to.png similarity index 100% rename from public/assets/flags/to.png rename to apps/frontend/public/assets/flags/to.png diff --git a/public/assets/flags/tr.png b/apps/frontend/public/assets/flags/tr.png similarity index 100% rename from public/assets/flags/tr.png rename to apps/frontend/public/assets/flags/tr.png diff --git a/public/assets/flags/tt.png b/apps/frontend/public/assets/flags/tt.png similarity index 100% rename from public/assets/flags/tt.png rename to apps/frontend/public/assets/flags/tt.png diff --git a/public/assets/flags/tv.png b/apps/frontend/public/assets/flags/tv.png similarity index 100% rename from public/assets/flags/tv.png rename to apps/frontend/public/assets/flags/tv.png diff --git a/public/assets/flags/tw.png b/apps/frontend/public/assets/flags/tw.png similarity index 100% rename from public/assets/flags/tw.png rename to apps/frontend/public/assets/flags/tw.png diff --git a/public/assets/flags/tz.png b/apps/frontend/public/assets/flags/tz.png similarity index 100% rename from public/assets/flags/tz.png rename to apps/frontend/public/assets/flags/tz.png diff --git a/public/assets/flags/ua.png b/apps/frontend/public/assets/flags/ua.png similarity index 100% rename from public/assets/flags/ua.png rename to apps/frontend/public/assets/flags/ua.png diff --git a/public/assets/flags/ug.png b/apps/frontend/public/assets/flags/ug.png similarity index 100% rename from public/assets/flags/ug.png rename to apps/frontend/public/assets/flags/ug.png diff --git a/public/assets/flags/um.png b/apps/frontend/public/assets/flags/um.png similarity index 100% rename from public/assets/flags/um.png rename to apps/frontend/public/assets/flags/um.png diff --git a/public/assets/flags/us.png b/apps/frontend/public/assets/flags/us.png similarity index 100% rename from public/assets/flags/us.png rename to apps/frontend/public/assets/flags/us.png diff --git a/public/assets/flags/uy.png b/apps/frontend/public/assets/flags/uy.png similarity index 100% rename from public/assets/flags/uy.png rename to apps/frontend/public/assets/flags/uy.png diff --git a/public/assets/flags/uz.png b/apps/frontend/public/assets/flags/uz.png similarity index 100% rename from public/assets/flags/uz.png rename to apps/frontend/public/assets/flags/uz.png diff --git a/public/assets/flags/va.png b/apps/frontend/public/assets/flags/va.png similarity index 100% rename from public/assets/flags/va.png rename to apps/frontend/public/assets/flags/va.png diff --git a/public/assets/flags/vc.png b/apps/frontend/public/assets/flags/vc.png similarity index 100% rename from public/assets/flags/vc.png rename to apps/frontend/public/assets/flags/vc.png diff --git a/public/assets/flags/ve.png b/apps/frontend/public/assets/flags/ve.png similarity index 100% rename from public/assets/flags/ve.png rename to apps/frontend/public/assets/flags/ve.png diff --git a/public/assets/flags/vg.png b/apps/frontend/public/assets/flags/vg.png similarity index 100% rename from public/assets/flags/vg.png rename to apps/frontend/public/assets/flags/vg.png diff --git a/public/assets/flags/vi.png b/apps/frontend/public/assets/flags/vi.png similarity index 100% rename from public/assets/flags/vi.png rename to apps/frontend/public/assets/flags/vi.png diff --git a/public/assets/flags/vn.png b/apps/frontend/public/assets/flags/vn.png similarity index 100% rename from public/assets/flags/vn.png rename to apps/frontend/public/assets/flags/vn.png diff --git a/public/assets/flags/vu.png b/apps/frontend/public/assets/flags/vu.png similarity index 100% rename from public/assets/flags/vu.png rename to apps/frontend/public/assets/flags/vu.png diff --git a/public/assets/flags/wf.png b/apps/frontend/public/assets/flags/wf.png similarity index 100% rename from public/assets/flags/wf.png rename to apps/frontend/public/assets/flags/wf.png diff --git a/public/assets/flags/ws.png b/apps/frontend/public/assets/flags/ws.png similarity index 100% rename from public/assets/flags/ws.png rename to apps/frontend/public/assets/flags/ws.png diff --git a/public/assets/flags/xk.png b/apps/frontend/public/assets/flags/xk.png similarity index 100% rename from public/assets/flags/xk.png rename to apps/frontend/public/assets/flags/xk.png diff --git a/public/assets/flags/ye.png b/apps/frontend/public/assets/flags/ye.png similarity index 100% rename from public/assets/flags/ye.png rename to apps/frontend/public/assets/flags/ye.png diff --git a/public/assets/flags/yt.png b/apps/frontend/public/assets/flags/yt.png similarity index 100% rename from public/assets/flags/yt.png rename to apps/frontend/public/assets/flags/yt.png diff --git a/public/assets/flags/za.png b/apps/frontend/public/assets/flags/za.png similarity index 100% rename from public/assets/flags/za.png rename to apps/frontend/public/assets/flags/za.png diff --git a/public/assets/flags/zm.png b/apps/frontend/public/assets/flags/zm.png similarity index 100% rename from public/assets/flags/zm.png rename to apps/frontend/public/assets/flags/zm.png diff --git a/public/assets/flags/zw.png b/apps/frontend/public/assets/flags/zw.png similarity index 100% rename from public/assets/flags/zw.png rename to apps/frontend/public/assets/flags/zw.png diff --git a/public/assets/logos/scoresaber.png b/apps/frontend/public/assets/logos/scoresaber.png similarity index 100% rename from public/assets/logos/scoresaber.png rename to apps/frontend/public/assets/logos/scoresaber.png diff --git a/public/favicon.ico b/apps/frontend/public/favicon.ico similarity index 100% rename from public/favicon.ico rename to apps/frontend/public/favicon.ico diff --git a/sentry.client.config.ts b/apps/frontend/sentry.client.config.ts similarity index 100% rename from sentry.client.config.ts rename to apps/frontend/sentry.client.config.ts diff --git a/sentry.edge.config.ts b/apps/frontend/sentry.edge.config.ts similarity index 100% rename from sentry.edge.config.ts rename to apps/frontend/sentry.edge.config.ts diff --git a/sentry.server.config.ts b/apps/frontend/sentry.server.config.ts similarity index 100% rename from sentry.server.config.ts rename to apps/frontend/sentry.server.config.ts diff --git a/src/app/(pages)/api/player/history/route.ts b/apps/frontend/src/app/(pages)/api/player/history/route.ts similarity index 100% rename from src/app/(pages)/api/player/history/route.ts rename to apps/frontend/src/app/(pages)/api/player/history/route.ts diff --git a/src/app/(pages)/api/player/isbeingtracked/route.ts b/apps/frontend/src/app/(pages)/api/player/isbeingtracked/route.ts similarity index 100% rename from src/app/(pages)/api/player/isbeingtracked/route.ts rename to apps/frontend/src/app/(pages)/api/player/isbeingtracked/route.ts diff --git a/src/app/(pages)/api/proxy/route.ts b/apps/frontend/src/app/(pages)/api/proxy/route.ts similarity index 100% rename from src/app/(pages)/api/proxy/route.ts rename to apps/frontend/src/app/(pages)/api/proxy/route.ts diff --git a/src/app/(pages)/api/trigger/route.ts b/apps/frontend/src/app/(pages)/api/trigger/route.ts similarity index 100% rename from src/app/(pages)/api/trigger/route.ts rename to apps/frontend/src/app/(pages)/api/trigger/route.ts diff --git a/src/app/(pages)/leaderboard/[...slug]/page.tsx b/apps/frontend/src/app/(pages)/leaderboard/[...slug]/page.tsx similarity index 100% rename from src/app/(pages)/leaderboard/[...slug]/page.tsx rename to apps/frontend/src/app/(pages)/leaderboard/[...slug]/page.tsx diff --git a/src/app/(pages)/page.tsx b/apps/frontend/src/app/(pages)/page.tsx similarity index 100% rename from src/app/(pages)/page.tsx rename to apps/frontend/src/app/(pages)/page.tsx diff --git a/src/app/(pages)/player/[...slug]/page.tsx b/apps/frontend/src/app/(pages)/player/[...slug]/page.tsx similarity index 100% rename from src/app/(pages)/player/[...slug]/page.tsx rename to apps/frontend/src/app/(pages)/player/[...slug]/page.tsx diff --git a/src/app/(pages)/search/page.tsx b/apps/frontend/src/app/(pages)/search/page.tsx similarity index 100% rename from src/app/(pages)/search/page.tsx rename to apps/frontend/src/app/(pages)/search/page.tsx diff --git a/src/app/(pages)/settings/page.tsx b/apps/frontend/src/app/(pages)/settings/page.tsx similarity index 100% rename from src/app/(pages)/settings/page.tsx rename to apps/frontend/src/app/(pages)/settings/page.tsx diff --git a/src/app/components/ui/skeleton.tsx b/apps/frontend/src/app/components/ui/skeleton.tsx similarity index 100% rename from src/app/components/ui/skeleton.tsx rename to apps/frontend/src/app/components/ui/skeleton.tsx diff --git a/src/app/fonts/JetBrainsMono.ttf b/apps/frontend/src/app/fonts/JetBrainsMono.ttf similarity index 100% rename from src/app/fonts/JetBrainsMono.ttf rename to apps/frontend/src/app/fonts/JetBrainsMono.ttf diff --git a/src/app/global-error.tsx b/apps/frontend/src/app/global-error.tsx similarity index 100% rename from src/app/global-error.tsx rename to apps/frontend/src/app/global-error.tsx diff --git a/src/app/globals.css b/apps/frontend/src/app/globals.css similarity index 100% rename from src/app/globals.css rename to apps/frontend/src/app/globals.css diff --git a/src/app/layout.tsx b/apps/frontend/src/app/layout.tsx similarity index 100% rename from src/app/layout.tsx rename to apps/frontend/src/app/layout.tsx diff --git a/src/common/browser-utils.ts b/apps/frontend/src/common/browser-utils.ts similarity index 100% rename from src/common/browser-utils.ts rename to apps/frontend/src/common/browser-utils.ts diff --git a/src/common/colors.ts b/apps/frontend/src/common/colors.ts similarity index 100% rename from src/common/colors.ts rename to apps/frontend/src/common/colors.ts diff --git a/src/common/database/database.ts b/apps/frontend/src/common/database/database.ts similarity index 100% rename from src/common/database/database.ts rename to apps/frontend/src/common/database/database.ts diff --git a/src/common/database/types/beatsaver-map.ts b/apps/frontend/src/common/database/types/beatsaver-map.ts similarity index 100% rename from src/common/database/types/beatsaver-map.ts rename to apps/frontend/src/common/database/types/beatsaver-map.ts diff --git a/src/common/database/types/settings.ts b/apps/frontend/src/common/database/types/settings.ts similarity index 100% rename from src/common/database/types/settings.ts rename to apps/frontend/src/common/database/types/settings.ts diff --git a/src/common/image-utils.ts b/apps/frontend/src/common/image-utils.ts similarity index 100% rename from src/common/image-utils.ts rename to apps/frontend/src/common/image-utils.ts diff --git a/src/common/model/player/impl/scoresaber-player.ts b/apps/frontend/src/common/model/player/impl/scoresaber-player.ts similarity index 100% rename from src/common/model/player/impl/scoresaber-player.ts rename to apps/frontend/src/common/model/player/impl/scoresaber-player.ts diff --git a/src/common/model/player/player.ts b/apps/frontend/src/common/model/player/player.ts similarity index 100% rename from src/common/model/player/player.ts rename to apps/frontend/src/common/model/player/player.ts diff --git a/src/common/model/score/impl/scoresaber-score.ts b/apps/frontend/src/common/model/score/impl/scoresaber-score.ts similarity index 100% rename from src/common/model/score/impl/scoresaber-score.ts rename to apps/frontend/src/common/model/score/impl/scoresaber-score.ts diff --git a/src/common/model/score/modifier.ts b/apps/frontend/src/common/model/score/modifier.ts similarity index 100% rename from src/common/model/score/modifier.ts rename to apps/frontend/src/common/model/score/modifier.ts diff --git a/src/common/model/score/score-sort.ts b/apps/frontend/src/common/model/score/score-sort.ts similarity index 100% rename from src/common/model/score/score-sort.ts rename to apps/frontend/src/common/model/score/score-sort.ts diff --git a/src/common/model/score/score.ts b/apps/frontend/src/common/model/score/score.ts similarity index 100% rename from src/common/model/score/score.ts rename to apps/frontend/src/common/model/score/score.ts diff --git a/src/common/model/token/beatsaver/beat-saver-account-token.ts b/apps/frontend/src/common/model/token/beatsaver/beat-saver-account-token.ts similarity index 100% rename from src/common/model/token/beatsaver/beat-saver-account-token.ts rename to apps/frontend/src/common/model/token/beatsaver/beat-saver-account-token.ts diff --git a/src/common/model/token/beatsaver/beat-saver-map-metadata-token.ts b/apps/frontend/src/common/model/token/beatsaver/beat-saver-map-metadata-token.ts similarity index 100% rename from src/common/model/token/beatsaver/beat-saver-map-metadata-token.ts rename to apps/frontend/src/common/model/token/beatsaver/beat-saver-map-metadata-token.ts diff --git a/src/common/model/token/beatsaver/beat-saver-map-stats-token.ts b/apps/frontend/src/common/model/token/beatsaver/beat-saver-map-stats-token.ts similarity index 100% rename from src/common/model/token/beatsaver/beat-saver-map-stats-token.ts rename to apps/frontend/src/common/model/token/beatsaver/beat-saver-map-stats-token.ts diff --git a/src/common/model/token/beatsaver/beat-saver-map-token.ts b/apps/frontend/src/common/model/token/beatsaver/beat-saver-map-token.ts similarity index 100% rename from src/common/model/token/beatsaver/beat-saver-map-token.ts rename to apps/frontend/src/common/model/token/beatsaver/beat-saver-map-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-badge-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-badge-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-badge-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-badge-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-difficulty-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-difficulty-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-difficulty-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-difficulty-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-leaderboard-player-info-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-leaderboard-player-info-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-leaderboard-player-info-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-leaderboard-player-info-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-leaderboard-scores-page-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-leaderboard-scores-page-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-leaderboard-scores-page-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-leaderboard-scores-page-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-leaderboard-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-leaderboard-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-leaderboard-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-leaderboard-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-metadata-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-metadata-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-metadata-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-metadata-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-player-score-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-player-score-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-player-score-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-player-score-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-player-scores-page-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-player-scores-page-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-player-scores-page-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-player-scores-page-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-player-search-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-player-search-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-player-search-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-player-search-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-player-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-player-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-player-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-player-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-players-page-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-players-page-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-players-page-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-players-page-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-score-stats-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-score-stats-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-score-stats-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-score-stats-token.ts diff --git a/src/common/model/token/scoresaber/score-saber-score-token.ts b/apps/frontend/src/common/model/token/scoresaber/score-saber-score-token.ts similarity index 100% rename from src/common/model/token/scoresaber/score-saber-score-token.ts rename to apps/frontend/src/common/model/token/scoresaber/score-saber-score-token.ts diff --git a/src/common/mongo.ts b/apps/frontend/src/common/mongo.ts similarity index 100% rename from src/common/mongo.ts rename to apps/frontend/src/common/mongo.ts diff --git a/src/common/number-utils.ts b/apps/frontend/src/common/number-utils.ts similarity index 100% rename from src/common/number-utils.ts rename to apps/frontend/src/common/number-utils.ts diff --git a/src/common/player-utils.ts b/apps/frontend/src/common/player-utils.ts similarity index 100% rename from src/common/player-utils.ts rename to apps/frontend/src/common/player-utils.ts diff --git a/src/common/player/player-history.ts b/apps/frontend/src/common/player/player-history.ts similarity index 100% rename from src/common/player/player-history.ts rename to apps/frontend/src/common/player/player-history.ts diff --git a/src/common/player/player-tracked-since.ts b/apps/frontend/src/common/player/player-tracked-since.ts similarity index 100% rename from src/common/player/player-tracked-since.ts rename to apps/frontend/src/common/player/player-tracked-since.ts diff --git a/src/common/schema/player-schema.ts b/apps/frontend/src/common/schema/player-schema.ts similarity index 100% rename from src/common/schema/player-schema.ts rename to apps/frontend/src/common/schema/player-schema.ts diff --git a/src/common/scoresaber-utils.ts b/apps/frontend/src/common/scoresaber-utils.ts similarity index 100% rename from src/common/scoresaber-utils.ts rename to apps/frontend/src/common/scoresaber-utils.ts diff --git a/src/common/service/impl/beatsaver.ts b/apps/frontend/src/common/service/impl/beatsaver.ts similarity index 85% rename from src/common/service/impl/beatsaver.ts rename to apps/frontend/src/common/service/impl/beatsaver.ts index 4890f71..95d6335 100644 --- a/src/common/service/impl/beatsaver.ts +++ b/apps/frontend/src/common/service/impl/beatsaver.ts @@ -15,10 +15,9 @@ class BeatSaverService extends Service { * Gets the map that match the query. * * @param query the query to search for - * @param useProxy whether to use the proxy or not * @returns the map that match the query, or undefined if no map were found */ - async lookupMap(query: string, useProxy = true): Promise { + async lookupMap(query: string): Promise { const before = performance.now(); this.log(`Looking up map "${query}"...`); @@ -29,7 +28,7 @@ class BeatSaverService extends Service { return map; } - const response = await this.fetch(useProxy, LOOKUP_MAP_BY_HASH_ENDPOINT.replace(":query", query)); + const response = await this.fetch(LOOKUP_MAP_BY_HASH_ENDPOINT.replace(":query", query)); // Map not found if (response == undefined) { return undefined; diff --git a/src/common/service/impl/scoresaber.ts b/apps/frontend/src/common/service/impl/scoresaber.ts similarity index 84% rename from src/common/service/impl/scoresaber.ts rename to apps/frontend/src/common/service/impl/scoresaber.ts index 3bd82a5..ccfb435 100644 --- a/src/common/service/impl/scoresaber.ts +++ b/apps/frontend/src/common/service/impl/scoresaber.ts @@ -34,16 +34,12 @@ class ScoreSaberService extends Service { * Gets the players that match the query. * * @param query the query to search for - * @param useProxy whether to use the proxy or not * @returns the players that match the query, or undefined if no players were found */ - async searchPlayers(query: string, useProxy = true): Promise { + async searchPlayers(query: string): Promise { const before = performance.now(); this.log(`Searching for players matching "${query}"...`); - const results = await this.fetch( - useProxy, - SEARCH_PLAYERS_ENDPOINT.replace(":query", query) - ); + const results = await this.fetch(SEARCH_PLAYERS_ENDPOINT.replace(":query", query)); if (results === undefined) { return undefined; } @@ -59,13 +55,9 @@ class ScoreSaberService extends Service { * Looks up a player by their ID. * * @param playerId the ID of the player to look up - * @param useProxy whether to use the proxy or not * @returns the player that matches the ID, or undefined */ - async lookupPlayer( - playerId: string, - useProxy = true - ): Promise< + async lookupPlayer(playerId: string): Promise< | { player: ScoreSaberPlayer; rawPlayer: ScoreSaberPlayerToken; @@ -74,7 +66,7 @@ class ScoreSaberService extends Service { > { const before = performance.now(); this.log(`Looking up player "${playerId}"...`); - const token = await this.fetch(useProxy, LOOKUP_PLAYER_ENDPOINT.replace(":id", playerId)); + const token = await this.fetch(LOOKUP_PLAYER_ENDPOINT.replace(":id", playerId)); if (token === undefined) { return undefined; } @@ -89,14 +81,12 @@ class ScoreSaberService extends Service { * Lookup players on a specific page * * @param page the page to get players for - * @param useProxy whether to use the proxy or not * @returns the players on the page, or undefined */ - async lookupPlayers(page: number, useProxy = true): Promise { + async lookupPlayers(page: number): Promise { const before = performance.now(); this.log(`Looking up players on page "${page}"...`); const response = await this.fetch( - useProxy, LOOKUP_PLAYERS_ENDPOINT.replace(":page", page.toString()) ); if (response === undefined) { @@ -111,18 +101,12 @@ class ScoreSaberService extends Service { * * @param page the page to get players for * @param country the country to get players for - * @param useProxy whether to use the proxy or not * @returns the players on the page, or undefined */ - async lookupPlayersByCountry( - page: number, - country: string, - useProxy = true - ): Promise { + async lookupPlayersByCountry(page: number, country: string): Promise { const before = performance.now(); this.log(`Looking up players on page "${page}" for country "${country}"...`); const response = await this.fetch( - useProxy, LOOKUP_PLAYERS_BY_COUNTRY_ENDPOINT.replace(":page", page.toString()).replace(":country", country) ); if (response === undefined) { @@ -138,8 +122,7 @@ class ScoreSaberService extends Service { * @param playerId the ID of the player to look up * @param sort the sort to use * @param page the page to get scores for - * @param search - * @param useProxy whether to use the proxy or not + * @param search the search query * @returns the scores of the player, or undefined */ async lookupPlayerScores({ @@ -147,7 +130,6 @@ class ScoreSaberService extends Service { sort, page, search, - useProxy = true, }: { playerId: string; sort: ScoreSort; @@ -160,7 +142,6 @@ class ScoreSaberService extends Service { `Looking up scores for player "${playerId}", sort "${sort}", page "${page}"${search ? `, search "${search}"` : ""}...` ); const response = await this.fetch( - useProxy, LOOKUP_PLAYER_SCORES_ENDPOINT.replace(":id", playerId) .replace(":limit", 8 + "") .replace(":sort", sort) @@ -179,13 +160,11 @@ class ScoreSaberService extends Service { * Looks up a leaderboard * * @param leaderboardId the ID of the leaderboard to look up - * @param useProxy whether to use the proxy or not */ - async lookupLeaderboard(leaderboardId: string, useProxy = true): Promise { + async lookupLeaderboard(leaderboardId: string): Promise { const before = performance.now(); this.log(`Looking up leaderboard "${leaderboardId}"...`); const response = await this.fetch( - useProxy, LOOKUP_LEADERBOARD_ENDPOINT.replace(":id", leaderboardId) ); if (response === undefined) { @@ -200,18 +179,15 @@ class ScoreSaberService extends Service { * * @param leaderboardId the ID of the leaderboard to look up * @param page the page to get scores for - * @param useProxy whether to use the proxy or not * @returns the scores of the leaderboard, or undefined */ async lookupLeaderboardScores( leaderboardId: string, - page: number, - useProxy = true + page: number ): Promise { const before = performance.now(); this.log(`Looking up scores for leaderboard "${leaderboardId}", page "${page}"...`); const response = await this.fetch( - useProxy, LOOKUP_LEADERBOARD_SCORES_ENDPOINT.replace(":id", leaderboardId).replace(":page", page.toString()) ); if (response === undefined) { diff --git a/src/common/service/service.ts b/apps/frontend/src/common/service/service.ts similarity index 86% rename from src/common/service/service.ts rename to apps/frontend/src/common/service/service.ts index b71601a..929d3c6 100644 --- a/src/common/service/service.ts +++ b/apps/frontend/src/common/service/service.ts @@ -35,14 +35,13 @@ export default class Service { /** * Fetches data from the given url. * - * @param useProxy whether to use proxy or not * @param url the url to fetch * @returns the fetched data */ - public async fetch(useProxy: boolean, url: string): Promise { + public async fetch(url: string): Promise { try { return await ky - .get(this.buildRequestUrl(useProxy, url), { + .get(this.buildRequestUrl(true, url), { next: { revalidate: 60, // 1 minute }, diff --git a/src/common/song-utils.ts b/apps/frontend/src/common/song-utils.ts similarity index 100% rename from src/common/song-utils.ts rename to apps/frontend/src/common/song-utils.ts diff --git a/src/common/string-utils.ts b/apps/frontend/src/common/string-utils.ts similarity index 100% rename from src/common/string-utils.ts rename to apps/frontend/src/common/string-utils.ts diff --git a/src/common/time-utils.ts b/apps/frontend/src/common/time-utils.ts similarity index 100% rename from src/common/time-utils.ts rename to apps/frontend/src/common/time-utils.ts diff --git a/src/common/utils.ts b/apps/frontend/src/common/utils.ts similarity index 100% rename from src/common/utils.ts rename to apps/frontend/src/common/utils.ts diff --git a/src/common/website-utils.ts b/apps/frontend/src/common/website-utils.ts similarity index 100% rename from src/common/website-utils.ts rename to apps/frontend/src/common/website-utils.ts diff --git a/src/common/worker/worker.ts b/apps/frontend/src/common/worker/worker.ts similarity index 100% rename from src/common/worker/worker.ts rename to apps/frontend/src/common/worker/worker.ts diff --git a/src/common/worker/workers.ts b/apps/frontend/src/common/worker/workers.ts similarity index 100% rename from src/common/worker/workers.ts rename to apps/frontend/src/common/worker/workers.ts diff --git a/src/common/youtube-utils.ts b/apps/frontend/src/common/youtube-utils.ts similarity index 100% rename from src/common/youtube-utils.ts rename to apps/frontend/src/common/youtube-utils.ts diff --git a/src/components/background-cover.tsx b/apps/frontend/src/components/background-cover.tsx similarity index 100% rename from src/components/background-cover.tsx rename to apps/frontend/src/components/background-cover.tsx diff --git a/src/components/card.tsx b/apps/frontend/src/components/card.tsx similarity index 100% rename from src/components/card.tsx rename to apps/frontend/src/components/card.tsx diff --git a/src/components/chart/generic-chart.tsx b/apps/frontend/src/components/chart/generic-chart.tsx similarity index 100% rename from src/components/chart/generic-chart.tsx rename to apps/frontend/src/components/chart/generic-chart.tsx diff --git a/src/components/country-flag.tsx b/apps/frontend/src/components/country-flag.tsx similarity index 100% rename from src/components/country-flag.tsx rename to apps/frontend/src/components/country-flag.tsx diff --git a/src/components/fallback-link.tsx b/apps/frontend/src/components/fallback-link.tsx similarity index 100% rename from src/components/fallback-link.tsx rename to apps/frontend/src/components/fallback-link.tsx diff --git a/src/components/footer.tsx b/apps/frontend/src/components/footer.tsx similarity index 100% rename from src/components/footer.tsx rename to apps/frontend/src/components/footer.tsx diff --git a/src/components/input/pagination.tsx b/apps/frontend/src/components/input/pagination.tsx similarity index 100% rename from src/components/input/pagination.tsx rename to apps/frontend/src/components/input/pagination.tsx diff --git a/src/components/input/search-player.tsx b/apps/frontend/src/components/input/search-player.tsx similarity index 100% rename from src/components/input/search-player.tsx rename to apps/frontend/src/components/input/search-player.tsx diff --git a/src/components/leaderboard/leaderboard-data.tsx b/apps/frontend/src/components/leaderboard/leaderboard-data.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-data.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-data.tsx diff --git a/src/components/leaderboard/leaderboard-info.tsx b/apps/frontend/src/components/leaderboard/leaderboard-info.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-info.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-info.tsx diff --git a/src/components/leaderboard/leaderboard-player.tsx b/apps/frontend/src/components/leaderboard/leaderboard-player.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-player.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-player.tsx diff --git a/src/components/leaderboard/leaderboard-score-stats.tsx b/apps/frontend/src/components/leaderboard/leaderboard-score-stats.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-score-stats.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-score-stats.tsx diff --git a/src/components/leaderboard/leaderboard-score.tsx b/apps/frontend/src/components/leaderboard/leaderboard-score.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-score.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-score.tsx diff --git a/src/components/leaderboard/leaderboard-scores.tsx b/apps/frontend/src/components/leaderboard/leaderboard-scores.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-scores.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-scores.tsx diff --git a/src/components/leaderboard/leaderboard-song-star-count.tsx b/apps/frontend/src/components/leaderboard/leaderboard-song-star-count.tsx similarity index 100% rename from src/components/leaderboard/leaderboard-song-star-count.tsx rename to apps/frontend/src/components/leaderboard/leaderboard-song-star-count.tsx diff --git a/src/components/loaders/database-loader.tsx b/apps/frontend/src/components/loaders/database-loader.tsx similarity index 100% rename from src/components/loaders/database-loader.tsx rename to apps/frontend/src/components/loaders/database-loader.tsx diff --git a/src/components/loaders/fullscreen-loader.tsx b/apps/frontend/src/components/loaders/fullscreen-loader.tsx similarity index 100% rename from src/components/loaders/fullscreen-loader.tsx rename to apps/frontend/src/components/loaders/fullscreen-loader.tsx diff --git a/src/components/logos/beatsaver-logo.tsx b/apps/frontend/src/components/logos/beatsaver-logo.tsx similarity index 100% rename from src/components/logos/beatsaver-logo.tsx rename to apps/frontend/src/components/logos/beatsaver-logo.tsx diff --git a/src/components/logos/scoresaber-logo.tsx b/apps/frontend/src/components/logos/scoresaber-logo.tsx similarity index 100% rename from src/components/logos/scoresaber-logo.tsx rename to apps/frontend/src/components/logos/scoresaber-logo.tsx diff --git a/src/components/logos/youtube-logo.tsx b/apps/frontend/src/components/logos/youtube-logo.tsx similarity index 100% rename from src/components/logos/youtube-logo.tsx rename to apps/frontend/src/components/logos/youtube-logo.tsx diff --git a/src/components/navbar/navbar-button.tsx b/apps/frontend/src/components/navbar/navbar-button.tsx similarity index 100% rename from src/components/navbar/navbar-button.tsx rename to apps/frontend/src/components/navbar/navbar-button.tsx diff --git a/src/components/navbar/navbar.tsx b/apps/frontend/src/components/navbar/navbar.tsx similarity index 100% rename from src/components/navbar/navbar.tsx rename to apps/frontend/src/components/navbar/navbar.tsx diff --git a/src/components/navbar/profile-button.tsx b/apps/frontend/src/components/navbar/profile-button.tsx similarity index 100% rename from src/components/navbar/profile-button.tsx rename to apps/frontend/src/components/navbar/profile-button.tsx diff --git a/src/components/offline-network.tsx b/apps/frontend/src/components/offline-network.tsx similarity index 100% rename from src/components/offline-network.tsx rename to apps/frontend/src/components/offline-network.tsx diff --git a/src/components/player/chart/generic-player-chart.tsx b/apps/frontend/src/components/player/chart/generic-player-chart.tsx similarity index 100% rename from src/components/player/chart/generic-player-chart.tsx rename to apps/frontend/src/components/player/chart/generic-player-chart.tsx diff --git a/src/components/player/chart/player-accuracy-chart.tsx b/apps/frontend/src/components/player/chart/player-accuracy-chart.tsx similarity index 100% rename from src/components/player/chart/player-accuracy-chart.tsx rename to apps/frontend/src/components/player/chart/player-accuracy-chart.tsx diff --git a/src/components/player/chart/player-charts.tsx b/apps/frontend/src/components/player/chart/player-charts.tsx similarity index 100% rename from src/components/player/chart/player-charts.tsx rename to apps/frontend/src/components/player/chart/player-charts.tsx diff --git a/src/components/player/chart/player-ranking-chart.tsx b/apps/frontend/src/components/player/chart/player-ranking-chart.tsx similarity index 100% rename from src/components/player/chart/player-ranking-chart.tsx rename to apps/frontend/src/components/player/chart/player-ranking-chart.tsx diff --git a/src/components/player/claim-profile.tsx b/apps/frontend/src/components/player/claim-profile.tsx similarity index 100% rename from src/components/player/claim-profile.tsx rename to apps/frontend/src/components/player/claim-profile.tsx diff --git a/src/components/player/player-badges.tsx b/apps/frontend/src/components/player/player-badges.tsx similarity index 100% rename from src/components/player/player-badges.tsx rename to apps/frontend/src/components/player/player-badges.tsx diff --git a/src/components/player/player-data.tsx b/apps/frontend/src/components/player/player-data.tsx similarity index 100% rename from src/components/player/player-data.tsx rename to apps/frontend/src/components/player/player-data.tsx diff --git a/src/components/player/player-header.tsx b/apps/frontend/src/components/player/player-header.tsx similarity index 100% rename from src/components/player/player-header.tsx rename to apps/frontend/src/components/player/player-header.tsx diff --git a/src/components/player/player-scores.tsx b/apps/frontend/src/components/player/player-scores.tsx similarity index 100% rename from src/components/player/player-scores.tsx rename to apps/frontend/src/components/player/player-scores.tsx diff --git a/src/components/player/player-stats.tsx b/apps/frontend/src/components/player/player-stats.tsx similarity index 100% rename from src/components/player/player-stats.tsx rename to apps/frontend/src/components/player/player-stats.tsx diff --git a/src/components/player/player-tracked-status.tsx b/apps/frontend/src/components/player/player-tracked-status.tsx similarity index 100% rename from src/components/player/player-tracked-status.tsx rename to apps/frontend/src/components/player/player-tracked-status.tsx diff --git a/src/components/preload-resources.tsx b/apps/frontend/src/components/preload-resources.tsx similarity index 100% rename from src/components/preload-resources.tsx rename to apps/frontend/src/components/preload-resources.tsx diff --git a/src/components/providers/query-provider.tsx b/apps/frontend/src/components/providers/query-provider.tsx similarity index 100% rename from src/components/providers/query-provider.tsx rename to apps/frontend/src/components/providers/query-provider.tsx diff --git a/src/components/providers/theme-provider.tsx b/apps/frontend/src/components/providers/theme-provider.tsx similarity index 100% rename from src/components/providers/theme-provider.tsx rename to apps/frontend/src/components/providers/theme-provider.tsx diff --git a/src/components/ranking/mini.tsx b/apps/frontend/src/components/ranking/mini.tsx similarity index 100% rename from src/components/ranking/mini.tsx rename to apps/frontend/src/components/ranking/mini.tsx diff --git a/src/components/ranking/player-ranking-skeleton.tsx b/apps/frontend/src/components/ranking/player-ranking-skeleton.tsx similarity index 100% rename from src/components/ranking/player-ranking-skeleton.tsx rename to apps/frontend/src/components/ranking/player-ranking-skeleton.tsx diff --git a/src/components/score/leaderboard-button.tsx b/apps/frontend/src/components/score/leaderboard-button.tsx similarity index 100% rename from src/components/score/leaderboard-button.tsx rename to apps/frontend/src/components/score/leaderboard-button.tsx diff --git a/src/components/score/score-animation.tsx b/apps/frontend/src/components/score/score-animation.tsx similarity index 100% rename from src/components/score/score-animation.tsx rename to apps/frontend/src/components/score/score-animation.tsx diff --git a/src/components/score/score-badge.tsx b/apps/frontend/src/components/score/score-badge.tsx similarity index 100% rename from src/components/score/score-badge.tsx rename to apps/frontend/src/components/score/score-badge.tsx diff --git a/src/components/score/score-button.tsx b/apps/frontend/src/components/score/score-button.tsx similarity index 100% rename from src/components/score/score-button.tsx rename to apps/frontend/src/components/score/score-button.tsx diff --git a/src/components/score/score-buttons.tsx b/apps/frontend/src/components/score/score-buttons.tsx similarity index 100% rename from src/components/score/score-buttons.tsx rename to apps/frontend/src/components/score/score-buttons.tsx diff --git a/src/components/score/score-info.tsx b/apps/frontend/src/components/score/score-info.tsx similarity index 100% rename from src/components/score/score-info.tsx rename to apps/frontend/src/components/score/score-info.tsx diff --git a/src/components/score/score-rank-info.tsx b/apps/frontend/src/components/score/score-rank-info.tsx similarity index 100% rename from src/components/score/score-rank-info.tsx rename to apps/frontend/src/components/score/score-rank-info.tsx diff --git a/src/components/score/score-stats.tsx b/apps/frontend/src/components/score/score-stats.tsx similarity index 100% rename from src/components/score/score-stats.tsx rename to apps/frontend/src/components/score/score-stats.tsx diff --git a/src/components/score/score.tsx b/apps/frontend/src/components/score/score.tsx similarity index 100% rename from src/components/score/score.tsx rename to apps/frontend/src/components/score/score.tsx diff --git a/src/components/settings/settings.tsx b/apps/frontend/src/components/settings/settings.tsx similarity index 100% rename from src/components/settings/settings.tsx rename to apps/frontend/src/components/settings/settings.tsx diff --git a/src/components/stat-value.tsx b/apps/frontend/src/components/stat-value.tsx similarity index 100% rename from src/components/stat-value.tsx rename to apps/frontend/src/components/stat-value.tsx diff --git a/src/components/tooltip.tsx b/apps/frontend/src/components/tooltip.tsx similarity index 100% rename from src/components/tooltip.tsx rename to apps/frontend/src/components/tooltip.tsx diff --git a/src/components/ui/avatar.tsx b/apps/frontend/src/components/ui/avatar.tsx similarity index 100% rename from src/components/ui/avatar.tsx rename to apps/frontend/src/components/ui/avatar.tsx diff --git a/src/components/ui/button.tsx b/apps/frontend/src/components/ui/button.tsx similarity index 100% rename from src/components/ui/button.tsx rename to apps/frontend/src/components/ui/button.tsx diff --git a/src/components/ui/card.tsx b/apps/frontend/src/components/ui/card.tsx similarity index 100% rename from src/components/ui/card.tsx rename to apps/frontend/src/components/ui/card.tsx diff --git a/src/components/ui/form.tsx b/apps/frontend/src/components/ui/form.tsx similarity index 100% rename from src/components/ui/form.tsx rename to apps/frontend/src/components/ui/form.tsx diff --git a/src/components/ui/input.tsx b/apps/frontend/src/components/ui/input.tsx similarity index 100% rename from src/components/ui/input.tsx rename to apps/frontend/src/components/ui/input.tsx diff --git a/src/components/ui/label.tsx b/apps/frontend/src/components/ui/label.tsx similarity index 100% rename from src/components/ui/label.tsx rename to apps/frontend/src/components/ui/label.tsx diff --git a/src/components/ui/pagination.tsx b/apps/frontend/src/components/ui/pagination.tsx similarity index 100% rename from src/components/ui/pagination.tsx rename to apps/frontend/src/components/ui/pagination.tsx diff --git a/src/components/ui/scroll-area.tsx b/apps/frontend/src/components/ui/scroll-area.tsx similarity index 100% rename from src/components/ui/scroll-area.tsx rename to apps/frontend/src/components/ui/scroll-area.tsx diff --git a/src/components/ui/toast.tsx b/apps/frontend/src/components/ui/toast.tsx similarity index 100% rename from src/components/ui/toast.tsx rename to apps/frontend/src/components/ui/toast.tsx diff --git a/src/components/ui/toaster.tsx b/apps/frontend/src/components/ui/toaster.tsx similarity index 100% rename from src/components/ui/toaster.tsx rename to apps/frontend/src/components/ui/toaster.tsx diff --git a/src/components/ui/tooltip.tsx b/apps/frontend/src/components/ui/tooltip.tsx similarity index 100% rename from src/components/ui/tooltip.tsx rename to apps/frontend/src/components/ui/tooltip.tsx diff --git a/src/hooks/use-database.ts b/apps/frontend/src/hooks/use-database.ts similarity index 100% rename from src/hooks/use-database.ts rename to apps/frontend/src/hooks/use-database.ts diff --git a/src/hooks/use-is-mobile.ts b/apps/frontend/src/hooks/use-is-mobile.ts similarity index 100% rename from src/hooks/use-is-mobile.ts rename to apps/frontend/src/hooks/use-is-mobile.ts diff --git a/src/hooks/use-is-visible.ts b/apps/frontend/src/hooks/use-is-visible.ts similarity index 100% rename from src/hooks/use-is-visible.ts rename to apps/frontend/src/hooks/use-is-visible.ts diff --git a/src/hooks/use-toast.ts b/apps/frontend/src/hooks/use-toast.ts similarity index 100% rename from src/hooks/use-toast.ts rename to apps/frontend/src/hooks/use-toast.ts diff --git a/src/hooks/use-window-dimensions.ts b/apps/frontend/src/hooks/use-window-dimensions.ts similarity index 100% rename from src/hooks/use-window-dimensions.ts rename to apps/frontend/src/hooks/use-window-dimensions.ts diff --git a/src/instrumentation.ts b/apps/frontend/src/instrumentation.ts similarity index 100% rename from src/instrumentation.ts rename to apps/frontend/src/instrumentation.ts diff --git a/src/jobs/index.ts b/apps/frontend/src/jobs/index.ts similarity index 100% rename from src/jobs/index.ts rename to apps/frontend/src/jobs/index.ts diff --git a/src/jobs/track-player-statistics.ts b/apps/frontend/src/jobs/track-player-statistics.ts similarity index 100% rename from src/jobs/track-player-statistics.ts rename to apps/frontend/src/jobs/track-player-statistics.ts diff --git a/src/trigger.ts b/apps/frontend/src/trigger.ts similarity index 100% rename from src/trigger.ts rename to apps/frontend/src/trigger.ts diff --git a/tailwind.config.ts b/apps/frontend/tailwind.config.ts similarity index 100% rename from tailwind.config.ts rename to apps/frontend/tailwind.config.ts diff --git a/tsconfig.json b/apps/frontend/tsconfig.json similarity index 100% rename from tsconfig.json rename to apps/frontend/tsconfig.json diff --git a/package.json b/package.json index 7b555d8..938ffdb 100644 --- a/package.json +++ b/package.json @@ -1,66 +1,9 @@ { - "name": "scoresaber-reloadedv3", + "name": "ssr", "version": "0.1.0", "private": true, + "packageManager": "pnpm@9.12.0", "scripts": { - "dev": "next dev --turbo", - "build": "next build", - "start": "next start", - "lint": "next lint" - }, - "dependencies": { - "@formkit/tempo": "^0.1.2", - "@heroicons/react": "^2.1.5", - "@hookform/resolvers": "^3.9.0", - "@radix-ui/react-avatar": "^1.1.0", - "@radix-ui/react-icons": "^1.3.0", - "@radix-ui/react-label": "^2.1.0", - "@radix-ui/react-scroll-area": "^1.1.0", - "@radix-ui/react-slot": "^1.1.0", - "@radix-ui/react-toast": "^1.2.1", - "@radix-ui/react-tooltip": "^1.1.2", - "@sentry/nextjs": "8", - "@tanstack/react-query": "^5.55.4", - "@trigger.dev/nextjs": "^3.0.8", - "@trigger.dev/react": "^3.0.8", - "@trigger.dev/sdk": "^3.0.8", - "@uidotdev/usehooks": "^2.4.1", - "canvas": "3.0.0-rc2", - "chart.js": "^4.4.4", - "class-variance-authority": "^0.7.0", - "clsx": "^2.1.1", - "comlink": "^4.4.1", - "dexie": "^4.0.8", - "dexie-react-hooks": "^1.1.7", - "extract-colors": "^4.0.8", - "framer-motion": "^11.5.4", - "js-cookie": "^3.0.5", - "ky": "^1.7.2", - "lucide-react": "^0.447.0", - "mongoose": "^8.7.0", - "next": "15.0.0-rc.0", - "next-build-id": "^3.0.0", - "next-themes": "^0.3.0", - "react": "19.0.0-rc-3edc000d-20240926", - "react-chartjs-2": "^5.2.0", - "react-dom": "19.0.0-rc-3edc000d-20240926", - "react-hook-form": "^7.53.0", - "tailwind-merge": "^2.5.2", - "tailwindcss-animate": "^1.0.7", - "zod": "^3.23.8" - }, - "devDependencies": { - "@types/js-cookie": "^3.0.6", - "@types/node": "^20", - "@types/react": "^18", - "@types/react-dom": "^18", - "eslint": "^8", - "eslint-config-next": "14.2.14", - "postcss": "^8", - "tailwindcss": "^3.4.1", - "typescript": "^5" - }, - "trigger.dev": { - "endpointId": "scoresaber-reloaded-KB0Z" + "dev": "turbo dev" } -} \ No newline at end of file +} diff --git a/packages/common/package.json b/packages/common/package.json new file mode 100644 index 0000000..05d0382 --- /dev/null +++ b/packages/common/package.json @@ -0,0 +1,12 @@ +{ + "name": "common", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC" +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce75137..b13847d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,9 @@ settings: importers: - .: + .: {} + + apps/frontend: dependencies: '@formkit/tempo': specifier: ^0.1.2 @@ -19,34 +21,34 @@ importers: version: 3.9.0(react-hook-form@7.53.0(react@19.0.0-rc-3edc000d-20240926)) '@radix-ui/react-avatar': specifier: ^1.1.0 - version: 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/react-icons': specifier: ^1.3.0 version: 1.3.0(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/react-label': specifier: ^2.1.0 - version: 2.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 2.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/react-scroll-area': specifier: ^1.1.0 - version: 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/react-slot': specifier: ^1.1.0 - version: 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + version: 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/react-toast': specifier: ^1.2.1 - version: 1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/react-tooltip': specifier: ^1.1.2 - version: 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) '@sentry/nextjs': specifier: '8' - version: 8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.94.0) + version: 8.33.1(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.95.0) '@tanstack/react-query': specifier: ^5.55.4 version: 5.59.0(react@19.0.0-rc-3edc000d-20240926) '@trigger.dev/nextjs': specifier: ^3.0.8 - version: 3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)) + version: 3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)) '@trigger.dev/react': specifier: ^3.0.8 version: 3.0.9(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) @@ -76,13 +78,13 @@ importers: version: 4.0.8 dexie-react-hooks: specifier: ^1.1.7 - version: 1.1.7(@types/react@18.3.10)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926) + version: 1.1.7(@types/react@18.3.11)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926) extract-colors: specifier: ^4.0.8 version: 4.0.8 framer-motion: specifier: ^11.5.4 - version: 11.9.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 11.11.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) js-cookie: specifier: ^3.0.5 version: 3.0.5 @@ -97,7 +99,7 @@ importers: version: 8.7.0 next: specifier: 15.0.0-rc.0 - version: 15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) next-build-id: specifier: ^3.0.0 version: 3.0.0 @@ -134,7 +136,7 @@ importers: version: 20.16.10 '@types/react': specifier: ^18 - version: 18.3.10 + version: 18.3.11 '@types/react-dom': specifier: ^18 version: 18.3.0 @@ -154,6 +156,8 @@ importers: specifier: ^5 version: 5.6.2 + packages/common: {} + packages: '@alloc/quick-lru@5.2.0': @@ -164,75 +168,75 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} + '@babel/code-frame@7.25.7': + resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.25.4': - resolution: {integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==} + '@babel/compat-data@7.25.7': + resolution: {integrity: sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==} engines: {node: '>=6.9.0'} - '@babel/core@7.25.2': - resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} + '@babel/core@7.25.7': + resolution: {integrity: sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==} engines: {node: '>=6.9.0'} - '@babel/generator@7.25.6': - resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} + '@babel/generator@7.25.7': + resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + '@babel/helper-compilation-targets@7.25.7': + resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + '@babel/helper-module-imports@7.25.7': + resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} + '@babel/helper-module-transforms@7.25.7': + resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + '@babel/helper-simple-access@7.25.7': + resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.24.8': - resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} + '@babel/helper-validator-option@7.25.7': + resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.25.6': - resolution: {integrity: sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==} + '@babel/helpers@7.25.7': + resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} + '@babel/highlight@7.25.7': + resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.25.6': - resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} + '@babel/parser@7.25.7': + resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + '@babel/template@7.25.7': + resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.6': - resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} + '@babel/traverse@7.25.7': + resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} engines: {node: '>=6.9.0'} - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + '@babel/types@7.25.7': + resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} engines: {node: '>=6.9.0'} '@emnapi/runtime@1.2.0': @@ -543,6 +547,12 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' + '@opentelemetry/context-async-hooks@1.26.0': + resolution: {integrity: sha512-HedpXXYzzbaoutw6DFLWLDket2FwLkLpil4hGCZ1xYEIMTcivdfwEOISgdbLEWyG3HW52gTq2V9mOVJrONgiwg==} + engines: {node: '>=14'} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + '@opentelemetry/core@1.25.1': resolution: {integrity: sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==} engines: {node: '>=14'} @@ -663,6 +673,12 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 + '@opentelemetry/instrumentation-lru-memoizer@0.40.0': + resolution: {integrity: sha512-21xRwZsEdMPnROu/QsaOIODmzw59IYpGFmuC4aFWvMj6stA8+Ei1tX67nkarJttlNjoM94um0N4X26AD7ff54A==} + engines: {node: '>=14'} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + '@opentelemetry/instrumentation-mongodb@0.47.0': resolution: {integrity: sha512-yqyXRx2SulEURjgOQyJzhCECSh5i1uM49NUaq9TqLd6fA7g26OahyJfsr9NE38HFqGRHpi4loyrnfYGdrsoVjQ==} engines: {node: '>=14'} @@ -781,6 +797,12 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' + '@opentelemetry/sdk-metrics@1.26.0': + resolution: {integrity: sha512-0SvDXmou/JjzSDOjUmetAAvcKQW6ZrvosU0rkbDGpXvvZN+pQF6JbK/Kd4hNdK4q/22yeruqvukXEJyySTzyTQ==} + engines: {node: '>=14'} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + '@opentelemetry/sdk-node@0.52.1': resolution: {integrity: sha512-uEG+gtEr6eKd8CVWeKMhH2olcCHM9dEK68pe0qE0be32BcCRsvYURhHaD1Srngh1SQcnQzZ4TP324euxqtBOJA==} engines: {node: '>=14'} @@ -1171,100 +1193,100 @@ packages: '@rushstack/eslint-patch@1.10.4': resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==} - '@sentry-internal/browser-utils@8.32.0': - resolution: {integrity: sha512-DpUGhk5O1OVjT0fo9wsbEdO1R/S9gGBRDtn9+FFVeRtieJHwXpeZiLK+tZhTOvaILmtSoTPUEY3L5sK4j5Xq9g==} + '@sentry-internal/browser-utils@8.33.1': + resolution: {integrity: sha512-TW6/r+Gl5jiXv54iK1xZ3mlVgTS/jaBp4vcQ0xGMdgiQ3WchEPcFSeYovL+YHT3tSud0GZqVtDQCz+5i76puqA==} engines: {node: '>=14.18'} - '@sentry-internal/feedback@8.32.0': - resolution: {integrity: sha512-XB7hiVJQW1tNzpoXIHbvm3rjipIt7PZiJJtFg2vxaqu/FzdgOcYqQiwIKivJVAKuRZ9rIeJtK1jdXQFOc/TRJA==} + '@sentry-internal/feedback@8.33.1': + resolution: {integrity: sha512-qauMRTm3qDaLqZ3ibI03cj4gLF40y0ij65nj+cns6iWxGCtPrO8tjvXFWuQsE7Aye9dGMnBgmv7uN+NTUtC3RA==} engines: {node: '>=14.18'} - '@sentry-internal/replay-canvas@8.32.0': - resolution: {integrity: sha512-oBbhtDBkD+5z/T0NVJ5VenBWAid/S9QdVrod/UqxVqU7F8N+E9/INFQI48zCWr4iVlUMcszJPDElvJEsMDvvBQ==} + '@sentry-internal/replay-canvas@8.33.1': + resolution: {integrity: sha512-nsxTFTPCT10Ty/v6+AiST3+yotGP1sUb8xqfKB9fPnS1hZHFryp0NnEls7xFjBsBbZPU1GpFkzrk/E6JFzixDQ==} engines: {node: '>=14.18'} - '@sentry-internal/replay@8.32.0': - resolution: {integrity: sha512-yiEUnn2yyo1AIQIFNeRX3tdK8fmyKIkxdFS1WiVQmeYI/hFwYBTZPly0FcO/g3xnRMSA2tvrS+hZEaaXfK4WhA==} + '@sentry-internal/replay@8.33.1': + resolution: {integrity: sha512-fm4coIOjmanU29NOVN9MyaP4fUCOYytbtFqVSKRFNZQ/xAgNeySiBIbUd6IjujMmnOk9bY0WEUMcdm3Uotjdog==} engines: {node: '>=14.18'} '@sentry/babel-plugin-component-annotate@2.22.3': resolution: {integrity: sha512-OlHA+i+vnQHRIdry4glpiS/xTOtgjmpXOt6IBOUqynx5Jd/iK1+fj+t8CckqOx9wRacO/hru2wfW/jFq0iViLg==} engines: {node: '>= 14'} - '@sentry/browser@8.32.0': - resolution: {integrity: sha512-AEKFj64g4iYwEMRvVcxiY0FswmClRXCP1IEvCqujn8OBS8AjMOr1z/RwYieEs0D90yNNB3YEqF8adrKENblJmw==} + '@sentry/browser@8.33.1': + resolution: {integrity: sha512-c6zI/igexkLwZuGk+u8Rj26ChjxGgkhe6ZbKFsXCYaKAp5ep5X7HQRkkqgbxApiqlC0LduHdd/ymzh139JLg8w==} engines: {node: '>=14.18'} '@sentry/bundler-plugin-core@2.22.3': resolution: {integrity: sha512-DeoUl0WffcqZZRl5Wy9aHvX4WfZbbWt0QbJ7NJrcEViq+dRAI2FQTYECFLwdZi5Gtb3oyqZICO+P7k8wDnzsjQ==} engines: {node: '>= 14'} - '@sentry/cli-darwin@2.36.3': - resolution: {integrity: sha512-U0Uean/tW99G5Ma3CjNDXg5bjd4Tmf91Sd/9JKK6dGcEsrWiQpn7ao70kkHy/fwMbeOWE37L7O+NPf86CxHzGA==} + '@sentry/cli-darwin@2.36.6': + resolution: {integrity: sha512-2yKECENqMZKrJY5weA19g4gTgQfeuadWvVu7fVQVsgqoBRIaEhSHJc64ZgiHq2ur06qOuYcQr5FO1VrwUE1pZg==} engines: {node: '>=10'} os: [darwin] - '@sentry/cli-linux-arm64@2.36.3': - resolution: {integrity: sha512-bNr9GUYsn+VcK09FjE+llvxUwtPFAva6FMIcYiAKi6iY3wdmtaOou0Mtkd9dQXkxONAZ0T113x/WQANKBjl4+A==} + '@sentry/cli-linux-arm64@2.36.6': + resolution: {integrity: sha512-sLmmbZRE7F6UksovwcqEQ7oYXVBejpeL1CtiKVFwNoq9XB5kTiKlVColn+3yPcfwKCNj4H4HoeKc+xMtdd7wow==} engines: {node: '>=10'} cpu: [arm64] os: [linux, freebsd] - '@sentry/cli-linux-arm@2.36.3': - resolution: {integrity: sha512-Kq8+TG/p/j0GLlJVxnLguAGcp3EqrU4msl4K+7g+6JYnOPLVbUzwZ6ah2WVGtWqlZ3QMFgeeXc7VgPY8KXViqw==} + '@sentry/cli-linux-arm@2.36.6': + resolution: {integrity: sha512-6zB7w5NawmdzhPHxqkjlhbvQugCBiFrFaUGvb3u1Oo/VCehdmq/v4v8ob4PNN2cJhoDRqQj2mPTfL/ppYNMJuw==} engines: {node: '>=10'} cpu: [arm] os: [linux, freebsd] - '@sentry/cli-linux-i686@2.36.3': - resolution: {integrity: sha512-5J5lOzZgvhcjbtuw/JD7jMq1liNbtYXvEuSd+qZa7D8i+Va5cFF8fQui3eev2RxqeYLLwkJWE/djLjeWjMZ7jQ==} + '@sentry/cli-linux-i686@2.36.6': + resolution: {integrity: sha512-M1pdxv7eZdGoG1wDpRb28aRUs/qb0C5jAe+a7sWHIg463jRLAahM8NDkv2bRQv0Xhw3JIkEGGvr46mPkQrOuMQ==} engines: {node: '>=10'} cpu: [x86, ia32] os: [linux, freebsd] - '@sentry/cli-linux-x64@2.36.3': - resolution: {integrity: sha512-48pyk93yRiQ7x7ABobYupVfGg1f/vUrBZG7CcaIsDiQL66/kIRjYoh7d7kH8Da/x/LKMiVf/i8/rh2Vr1pcSEw==} + '@sentry/cli-linux-x64@2.36.6': + resolution: {integrity: sha512-gVy/zAWY2DEERQ/i3V+oruMas/U29/tsRPcRkB67MIUWbW7W46+c3yH490O+t49qMYYhKYG2YfWoTzW6qMtSlA==} engines: {node: '>=10'} cpu: [x64] os: [linux, freebsd] - '@sentry/cli-win32-i686@2.36.3': - resolution: {integrity: sha512-IEuTCeQjgffvBjDGVYV9d2uWBzmFGmwWIyWUTEMjy76tRnIz0MJaW59Lxd7JdTd1s9xO1F2K7Iz+zxd/kufMRg==} + '@sentry/cli-win32-i686@2.36.6': + resolution: {integrity: sha512-urH+i+WtPeW8Dund0xY8zObvvbMM0XxeEIUS4oFBCB3EMYHVxgNw+woQUv9Vyv7v+OBjckB/r27nxlwNBj4pbg==} engines: {node: '>=10'} cpu: [x86, ia32] os: [win32] - '@sentry/cli-win32-x64@2.36.3': - resolution: {integrity: sha512-ygJLd3nazoNcDMJu1sl8xoSWmmjeBJMMUH6MnDhtQdM9T2j+ndqfL0fZZNO0/kyMv0Bo7/n5kRmKiX2m9Dsi/g==} + '@sentry/cli-win32-x64@2.36.6': + resolution: {integrity: sha512-ZauqOqwFAqb/Njyc8Kj2l9Fhbms7T5zB2yu5zwvq1uiqhXqLmsb9mRTF8WJWl9WmO5hwq/GTOEQowvrwK8gblw==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@sentry/cli@2.36.3': - resolution: {integrity: sha512-sbJpeUByP3b6Xif21lben+4EqGYI/rCTfkPKxBk2FsHX7ISMkVOBw+4/WwELIfIINV2S/XM29jkUG6Bd7axJlA==} + '@sentry/cli@2.36.6': + resolution: {integrity: sha512-1fcZVwe4H6a3Z1O+7m/z/2em1u67Tf0Zrt2oGEp82bqvCOHA904Wr2otc6GBEuFESB1/Mo8QgD/qwRd9Tv0Otw==} engines: {node: '>= 10'} hasBin: true - '@sentry/core@8.32.0': - resolution: {integrity: sha512-+xidTr0lZ0c755tq4k75dXPEb8PA+qvIefW3U9+dQMORLokBrYoKYMf5zZTG2k/OfSJS6OSxatUj36NFuCs3aA==} + '@sentry/core@8.33.1': + resolution: {integrity: sha512-3SS41suXLFzxL3OQvTMZ6q92ZapELVq2l2SoWlZopcamWhog2Ru0dp2vkunq97kFHb2TzKRTlFH4+4gbT8SJug==} engines: {node: '>=14.18'} - '@sentry/nextjs@8.32.0': - resolution: {integrity: sha512-rnnSsKFd4u9TXGr0XVQ7lEl/PkTfNyJ4kxwu9gW+OJjzmmjzIAC4RyY4YQTR1+p/q9QrruWrXLEsuCPqAHfqNw==} + '@sentry/nextjs@8.33.1': + resolution: {integrity: sha512-XLUyib6bCv2iynKaoYIotVKzLsGc9lr6QI4ZV3/PstiiXKwtTm1TPdBfIlrDJMGIMxH7Z/DmkvJNSESV19Ui6Q==} engines: {node: '>=14.18'} peerDependencies: next: ^13.2.0 || ^14.0 || ^15.0.0-rc.0 - webpack: 5.94.0 + webpack: '>=5.0.0' peerDependenciesMeta: webpack: optional: true - '@sentry/node@8.32.0': - resolution: {integrity: sha512-a2PoFA9j/HmJVGF/zXJhLP6QhRHGye/2EznQdHOELsH1BkeMgBaXl7D52r2E/b7qki647lXrdbspB6jid8NycA==} + '@sentry/node@8.33.1': + resolution: {integrity: sha512-0Xmlrl5nU5Bx6YybaIfztyOIiIXW5X64vcK0u94Sg4uHcDO7YvEbhflKjp669ds2I6ZQ/czqxnaAY8gM6P2SCA==} engines: {node: '>=14.18'} - '@sentry/opentelemetry@8.32.0': - resolution: {integrity: sha512-YCD8EnwJJ2ab3zWWtu5VrvHP/6Ss6GGQH0TYx2cfeGG3c0wTA/5zYx9JR4i3hUtOh1pifN34HlY0yyQHD4yctg==} + '@sentry/opentelemetry@8.33.1': + resolution: {integrity: sha512-D2aE2G0DUHLLnfbOXrTjiNJKAs/RZfOBJMidI4fC2AIwqCmrp55Aex4dRq4hxd8MPLR92Kt/ikHeJxlzWB15KA==} engines: {node: '>=14.18'} peerDependencies: '@opentelemetry/api': ^1.9.0 @@ -1273,22 +1295,22 @@ packages: '@opentelemetry/sdk-trace-base': ^1.26.0 '@opentelemetry/semantic-conventions': ^1.27.0 - '@sentry/react@8.32.0': - resolution: {integrity: sha512-YljqK+k80XOvyXjK2p2neTncRcSuwlpL7qHtNgwR1MHx18FEi7HXlnm13J4g3kxao4ORMxlCXCEPNXlLT+vqQg==} + '@sentry/react@8.33.1': + resolution: {integrity: sha512-SsEX05xfcfOvo7/pK1UyeyTAYWH8iSIsXXlsjvnSRsbuJkjb0c+q6yiZpj3A2PRdbcx43nTVE1n0lSpgaqj2HA==} engines: {node: '>=14.18'} peerDependencies: react: ^16.14.0 || 17.x || 18.x || 19.x - '@sentry/types@8.32.0': - resolution: {integrity: sha512-hxckvN2MzS5SgGDgVQ0/QpZXk13Vrq4BtZLwXhPhyeTmZtUiUfWvcL5TFQqLinfKdTKPe9q2MxeAJ0D4LalhMg==} + '@sentry/types@8.33.1': + resolution: {integrity: sha512-GjoAMvwtpIemoF/IiwZ7A60g4nQv3qwzR21GvJqDVUoKD0e8pv9OLX+HyXoUat4wEDGSuDUcUyUKD2G+od73QA==} engines: {node: '>=14.18'} - '@sentry/utils@8.32.0': - resolution: {integrity: sha512-t1WVERhgmYURxbBj9J4/H2P2X+VKqm7B3ce9iQyrZbdf5NekhcU4jHIecPUWCPHjQkFIqkVTorqeBmDTlg/UmQ==} + '@sentry/utils@8.33.1': + resolution: {integrity: sha512-uzuYpiiJuFY3N4WNHMBWUQX5oNv2t/TbG0OHRp3Rr7yeu+HSfD542TIp9/gMZ+G0Cxd8AmVO3wkKIFbk0TL4Qg==} engines: {node: '>=14.18'} - '@sentry/vercel-edge@8.32.0': - resolution: {integrity: sha512-HxvQWQMjNsLPkYU0vArzjqh+p/vyw9CXyIruu3D89VQU0krL1JFhhhHWZj1UIb7MVTzNO4oq4HeldbOkI0AepA==} + '@sentry/vercel-edge@8.33.1': + resolution: {integrity: sha512-YKAsFAm4ctsKRdoS3LkYF4oG5BD1chT4Uqy4AaBhlz0s5iHxBI7YzZFbcW4YiNnDWT80tdF+FS7AvUAjy+npoA==} engines: {node: '>=14.18'} '@sentry/webpack-plugin@2.22.3': @@ -1379,11 +1401,8 @@ packages: '@types/react-dom@18.3.0': resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} - '@types/react@18.3.10': - resolution: {integrity: sha512-02sAAlBnP39JgXwkAq3PeU9DVaaGpZyF3MGcC0MKgQVkZor5IiiDAipVaxQHtDJAmO4GIy/rVBy/LzVj76Cyqg==} - - '@types/semver@7.5.8': - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + '@types/react@18.3.11': + resolution: {integrity: sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==} '@types/shimmer@1.2.0': resolution: {integrity: sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg==} @@ -1394,63 +1413,62 @@ packages: '@types/whatwg-url@11.0.5': resolution: {integrity: sha512-coYR071JRaHa+xoEvvYqvnIHaVqaYrLPbsufM9BF63HkwI5Lgmy2QR8Q5K/lYDYo5AK82wOvSOS0UsLTpTG7uQ==} - '@typescript-eslint/eslint-plugin@7.2.0': - resolution: {integrity: sha512-mdekAHOqS9UjlmyF/LSs6AIEvfceV749GFxoBAjwAv0nkevfKHWQFDMcBZWUiIC5ft6ePWivXoS36aKQ0Cy3sw==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/eslint-plugin@8.8.0': + resolution: {integrity: sha512-wORFWjU30B2WJ/aXBfOm1LX9v9nyt9D3jsSOxC3cCaTQGCW5k4jNpmjFv3U7p/7s4yvdjHzwtv2Sd2dOyhjS0A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true - '@typescript-eslint/parser@7.2.0': - resolution: {integrity: sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/parser@8.8.0': + resolution: {integrity: sha512-uEFUsgR+tl8GmzmLjRqz+VrDv4eoaMqMXW7ruXfgThaAShO9JTciKpEsB+TvnfFfbg5IpujgMXVV36gOJRLtZg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 + eslint: ^8.57.0 || ^9.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true - '@typescript-eslint/scope-manager@7.2.0': - resolution: {integrity: sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/scope-manager@8.8.0': + resolution: {integrity: sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@7.2.0': - resolution: {integrity: sha512-xHi51adBHo9O9330J8GQYQwrKBqbIPJGZZVQTHHmy200hvkLZFWJIFtAG/7IYTWUyun6DE6w5InDReePJYJlJA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/types@7.2.0': - resolution: {integrity: sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/typescript-estree@7.2.0': - resolution: {integrity: sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/type-utils@8.8.0': + resolution: {integrity: sha512-IKwJSS7bCqyCeG4NVGxnOP6lLT9Okc3Zj8hLO96bpMkJab+10HIfJbMouLrlpyOr3yrQ1cA413YPFiGd1mW9/Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true - '@typescript-eslint/utils@7.2.0': - resolution: {integrity: sha512-YfHpnMAGb1Eekpm3XRK8hcMwGLGsnT6L+7b2XyRv6ouDuJU1tZir1GS2i0+VXRatMwSI1/UfcyPe53ADkU+IuA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^8.56.0 + '@typescript-eslint/types@8.8.0': + resolution: {integrity: sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/visitor-keys@7.2.0': - resolution: {integrity: sha512-c6EIQRHhcpl6+tO8EMR+kjkkV+ugUNXOmeASA1rlzkd8EPIriavpWoiEz1HR/VLhbVIdhqnV6E7JZm00cBDx2A==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/typescript-estree@8.8.0': + resolution: {integrity: sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/utils@8.8.0': + resolution: {integrity: sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + '@typescript-eslint/visitor-keys@8.8.0': + resolution: {integrity: sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@uidotdev/usehooks@2.4.1': resolution: {integrity: sha512-1I+RwWyS+kdv3Mv0Vmc+p0dPYH0DTRAo04HLyXReYBL9AeseDWUJyi4THuksBJcu9F0Pih69Ak150VDnqbVnXg==} @@ -1588,10 +1606,6 @@ packages: resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} engines: {node: '>= 0.4'} - array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - array.prototype.findlast@1.2.5: resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} engines: {node: '>= 0.4'} @@ -1685,11 +1699,8 @@ packages: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} engines: {node: '>= 6'} - caniuse-lite@1.0.30001657: - resolution: {integrity: sha512-DPbJAlP8/BAXy3IgiWmZKItubb3TYGP0WscQQlVGIfT4s/YlFYVuJgyOsQNP7rJRChx/qdMeLJQJP0Sgg2yjNA==} - - caniuse-lite@1.0.30001664: - resolution: {integrity: sha512-AmE7k4dXiNKQipgn7a2xg558IRqPN3jMQY/rOsbxDhrd0tyChwbITBfiwtnqz8bi2M5mIWbxAYBvk7W7QBUS2g==} + caniuse-lite@1.0.30001666: + resolution: {integrity: sha512-gD14ICmoV5ZZM1OdzPWmpx+q4GyefaK06zi8hmfHV5xe4/2nOQX3+Dw5o+fSqOws2xVwL9j+anOPFwHzdEdV4g==} canvas@3.0.0-rc2: resolution: {integrity: sha512-esx4bYDznnqgRX4G8kaEaf0W3q8xIc51WpmrIitDzmcoEgwnv9wSKdzT6UxWZ4wkVu5+ileofppX0TpyviJRdQ==} @@ -1882,10 +1893,6 @@ packages: didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - dlv@1.1.3: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} @@ -1904,8 +1911,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.29: - resolution: {integrity: sha512-PF8n2AlIhCKXQ+gTpiJi0VhcHDb69kYX4MtCiivctc2QD3XuNZ/XIOlbGzt7WAjjEev0TtaH6Cu3arZExm5DOw==} + electron-to-chromium@1.5.32: + resolution: {integrity: sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -2001,8 +2008,8 @@ packages: eslint-plugin-import-x: optional: true - eslint-module-utils@2.9.0: - resolution: {integrity: sha512-McVbYmwA3NEKwRQY5g4aWMdcZE5xZxV8i8l7CqJSrameuGSQJtSWaL/LxTEzSKKaCcOhlpDR8XEfYXWPrdo/ZQ==} + eslint-module-utils@2.12.0: + resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -2022,12 +2029,12 @@ packages: eslint-import-resolver-webpack: optional: true - eslint-plugin-import@2.30.0: - resolution: {integrity: sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==} + eslint-plugin-import@2.31.0: + resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 peerDependenciesMeta: '@typescript-eslint/parser': optional: true @@ -2044,8 +2051,8 @@ packages: peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - eslint-plugin-react@7.35.2: - resolution: {integrity: sha512-Rbj2R9zwP2GYNcIak4xoAMV57hrBh3hTaR0k7hVjwCQgryE/pw5px4b13EYjduOI0hfXyZhwBxaGpOTbWSGzKQ==} + eslint-plugin-react@7.37.1: + resolution: {integrity: sha512-xwTnwDqzbDRA8uJ7BMxPs/EXRB3i8ZfnOIp8BsxEQkT0nHPp+WWceqGgo6rKb9ctNi8GJLDT4Go5HAWELa/WMg==} engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 @@ -2154,8 +2161,8 @@ packages: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} - framer-motion@11.9.0: - resolution: {integrity: sha512-nCfGxvsQecVLjjYDu35G2F5ls+ArE3FBfhxV0RSiisMaUKqteq5DMBFNRKwMyVj+VqKTNhawt+BV480YCHKFlQ==} + framer-motion@11.11.0: + resolution: {integrity: sha512-H6Pv12fcXaebinvnLDabTS9vHwtJKAo7XsnVeNLm5t8Yq5LuVvQ3DtL/2yBa2kGmhdIgx9cw8mbj6I8PYx7jPA==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 @@ -2209,8 +2216,8 @@ packages: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} - get-tsconfig@4.8.0: - resolution: {integrity: sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw==} + get-tsconfig@4.8.1: + resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} github-from-package@0.0.0: resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} @@ -2255,10 +2262,6 @@ packages: resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} @@ -2323,8 +2326,8 @@ packages: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} - import-in-the-middle@1.11.1: - resolution: {integrity: sha512-lGdg70ECFGv/OHQXL/IPhcxkFPeQ7YA4zborlA54XHVr58oM50QNxItRiayHMqj1MspC5Y9zaHf+QHod/gq7Ug==} + import-in-the-middle@1.11.2: + resolution: {integrity: sha512-gK6Rr6EykBcc6cVWRSBR5TWf8nn6hZMYSRYqCcHa0l0d1fPK7JSYo6+Mlmck76jIX9aL/IZ71c06U2VpFwl1zA==} imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} @@ -2370,8 +2373,8 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} - is-bun-module@1.1.0: - resolution: {integrity: sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==} + is-bun-module@1.2.1: + resolution: {integrity: sha512-AmidtEM6D6NmUiLOvvU7+IePxjEjOzra2h0pSrsfSAcXwl/83zLLXDByafUJy9k/rKK0pvXMLdwKwGHlX2Ke6Q==} is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} @@ -2509,9 +2512,9 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} + jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + engines: {node: '>=6'} hasBin: true json-buffer@3.0.1: @@ -2655,10 +2658,6 @@ packages: resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} engines: {node: '>=16 || 14 >=14.17'} - minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} - minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -2859,8 +2858,8 @@ packages: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} @@ -2889,10 +2888,6 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - pg-int8@1.0.1: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} @@ -3063,8 +3058,8 @@ packages: resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} engines: {node: '>= 0.4'} - regexp.prototype.flags@1.5.2: - resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} + regexp.prototype.flags@1.5.3: + resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} engines: {node: '>= 0.4'} require-directory@2.1.1: @@ -3186,10 +3181,6 @@ packages: simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - slug@6.1.0: resolution: {integrity: sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA==} @@ -3408,8 +3399,8 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - tsafe@1.7.2: - resolution: {integrity: sha512-dAPfQLhCfCRre5qs+Z5Q2a7s2CV7RxffZUmvj7puGaePYjECzWREJFd3w4XSFe/T5tbxgowfItA/JSSZ6Ma3dA==} + tsafe@1.7.5: + resolution: {integrity: sha512-tbNyyBSbwfbilFfiuXkSOj82a6++ovgANwcoqBAcO9/REPoZMEQoE8kWPeO0dy5A2D/2Lajr8Ohue5T0ifIvLQ==} tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} @@ -3504,8 +3495,8 @@ packages: webpack-virtual-modules@0.5.0: resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==} - webpack@5.94.0: - resolution: {integrity: sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==} + webpack@5.95.0: + resolution: {integrity: sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -3636,25 +3627,25 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@babel/code-frame@7.24.7': + '@babel/code-frame@7.25.7': dependencies: - '@babel/highlight': 7.24.7 + '@babel/highlight': 7.25.7 picocolors: 1.1.0 - '@babel/compat-data@7.25.4': {} + '@babel/compat-data@7.25.7': {} - '@babel/core@7.25.2': + '@babel/core@7.25.7': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helpers': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helpers': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 convert-source-map: 2.0.0 debug: 4.3.7 gensync: 1.0.0-beta.2 @@ -3663,89 +3654,89 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/generator@7.25.6': + '@babel/generator@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 + jsesc: 3.0.2 - '@babel/helper-compilation-targets@7.25.2': + '@babel/helper-compilation-targets@7.25.7': dependencies: - '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.24.8 + '@babel/compat-data': 7.25.7 + '@babel/helper-validator-option': 7.25.7 browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-module-imports@7.24.7': + '@babel/helper-module-imports@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': + '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/core': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-simple-access@7.24.7': + '@babel/helper-simple-access@7.25.7': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color - '@babel/helper-string-parser@7.24.8': {} + '@babel/helper-string-parser@7.25.7': {} - '@babel/helper-validator-identifier@7.24.7': {} + '@babel/helper-validator-identifier@7.25.7': {} - '@babel/helper-validator-option@7.24.8': {} + '@babel/helper-validator-option@7.25.7': {} - '@babel/helpers@7.25.6': + '@babel/helpers@7.25.7': dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 - '@babel/highlight@7.24.7': + '@babel/highlight@7.25.7': dependencies: - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-validator-identifier': 7.25.7 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.1.0 - '@babel/parser@7.25.6': + '@babel/parser@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 - '@babel/template@7.25.0': + '@babel/template@7.25.7': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 - '@babel/traverse@7.25.6': + '@babel/traverse@7.25.7': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 debug: 4.3.7 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.25.6': + '@babel/types@7.25.7': dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 to-fast-properties: 2.0.0 '@emnapi/runtime@1.2.0': @@ -4004,6 +3995,10 @@ snapshots: dependencies: '@opentelemetry/api': 1.9.0 + '@opentelemetry/context-async-hooks@1.26.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -4062,7 +4057,7 @@ snapshots: '@opentelemetry/instrumentation-amqplib@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4071,7 +4066,7 @@ snapshots: '@opentelemetry/instrumentation-connect@0.39.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@types/connect': 3.4.36 @@ -4088,7 +4083,7 @@ snapshots: '@opentelemetry/instrumentation-express@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4097,7 +4092,7 @@ snapshots: '@opentelemetry/instrumentation-fastify@0.39.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4106,7 +4101,7 @@ snapshots: '@opentelemetry/instrumentation-fs@0.15.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color @@ -4128,7 +4123,7 @@ snapshots: '@opentelemetry/instrumentation-hapi@0.41.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4164,17 +4159,24 @@ snapshots: '@opentelemetry/instrumentation-koa@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: - supports-color + '@opentelemetry/instrumentation-lru-memoizer@0.40.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + '@opentelemetry/instrumentation-mongodb@0.47.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: - supports-color @@ -4182,7 +4184,7 @@ snapshots: '@opentelemetry/instrumentation-mongoose@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: @@ -4237,7 +4239,7 @@ snapshots: '@opentelemetry/instrumentation-undici@0.6.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color @@ -4247,7 +4249,7 @@ snapshots: '@opentelemetry/api': 1.9.0 '@opentelemetry/api-logs': 0.52.1 '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.1 + import-in-the-middle: 1.11.2 require-in-the-middle: 7.4.0 semver: 7.6.3 shimmer: 1.2.1 @@ -4259,7 +4261,7 @@ snapshots: '@opentelemetry/api': 1.9.0 '@opentelemetry/api-logs': 0.53.0 '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.1 + import-in-the-middle: 1.11.2 require-in-the-middle: 7.4.0 semver: 7.6.3 shimmer: 1.2.1 @@ -4329,6 +4331,12 @@ snapshots: '@opentelemetry/resources': 1.25.1(@opentelemetry/api@1.9.0) lodash.merge: 4.6.2 + '@opentelemetry/sdk-metrics@1.26.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-node@0.52.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -4379,7 +4387,7 @@ snapshots: '@opentelemetry/sql-common@0.40.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@pkgjs/parseargs@0.11.0': optional: true @@ -4419,254 +4427,254 @@ snapshots: '@radix-ui/primitive@1.1.0': {} - '@radix-ui/react-arrow@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-arrow@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-avatar@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-avatar@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-context': 1.1.1(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-context': 1.1.1(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-collection@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-collection@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-context': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-compose-refs@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-compose-refs@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-context@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-context@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-context@1.1.1(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-context@1.1.1(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-direction@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-direction@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 '@radix-ui/react-icons@1.3.0(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 - '@radix-ui/react-id@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-id@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-label@2.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-label@2.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-popper@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-popper@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: '@floating-ui/react-dom': 2.1.2(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-arrow': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-context': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-rect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-arrow': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-rect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) '@radix-ui/rect': 1.1.0 react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-portal@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-portal@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-presence@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-presence@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-primitive@2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-primitive@2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-scroll-area@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-scroll-area@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: '@radix-ui/number': 1.1.0 '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-context': 1.1.1(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-slot@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-slot@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-toast@1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-toast@1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-context': 1.1.1(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-tooltip@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-tooltip@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) - '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-context': 1.1.1(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-use-rect@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-use-rect@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: '@radix-ui/rect': 1.1.0 react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-use-size@1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-use-size@1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.10)(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.11)(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': + '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 '@types/react-dom': 18.3.0 '@radix-ui/rect@1.1.0': {} @@ -4694,49 +4702,49 @@ snapshots: '@rushstack/eslint-patch@1.10.4': {} - '@sentry-internal/browser-utils@8.32.0': + '@sentry-internal/browser-utils@8.33.1': dependencies: - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 - '@sentry-internal/feedback@8.32.0': + '@sentry-internal/feedback@8.33.1': dependencies: - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 - '@sentry-internal/replay-canvas@8.32.0': + '@sentry-internal/replay-canvas@8.33.1': dependencies: - '@sentry-internal/replay': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry-internal/replay': 8.33.1 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 - '@sentry-internal/replay@8.32.0': + '@sentry-internal/replay@8.33.1': dependencies: - '@sentry-internal/browser-utils': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry-internal/browser-utils': 8.33.1 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 '@sentry/babel-plugin-component-annotate@2.22.3': {} - '@sentry/browser@8.32.0': + '@sentry/browser@8.33.1': dependencies: - '@sentry-internal/browser-utils': 8.32.0 - '@sentry-internal/feedback': 8.32.0 - '@sentry-internal/replay': 8.32.0 - '@sentry-internal/replay-canvas': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry-internal/browser-utils': 8.33.1 + '@sentry-internal/feedback': 8.33.1 + '@sentry-internal/replay': 8.33.1 + '@sentry-internal/replay-canvas': 8.33.1 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 '@sentry/bundler-plugin-core@2.22.3': dependencies: - '@babel/core': 7.25.2 + '@babel/core': 7.25.7 '@sentry/babel-plugin-component-annotate': 2.22.3 - '@sentry/cli': 2.36.3 + '@sentry/cli': 2.36.6 dotenv: 16.4.5 find-up: 5.0.0 glob: 9.3.5 @@ -4746,28 +4754,28 @@ snapshots: - encoding - supports-color - '@sentry/cli-darwin@2.36.3': + '@sentry/cli-darwin@2.36.6': optional: true - '@sentry/cli-linux-arm64@2.36.3': + '@sentry/cli-linux-arm64@2.36.6': optional: true - '@sentry/cli-linux-arm@2.36.3': + '@sentry/cli-linux-arm@2.36.6': optional: true - '@sentry/cli-linux-i686@2.36.3': + '@sentry/cli-linux-i686@2.36.6': optional: true - '@sentry/cli-linux-x64@2.36.3': + '@sentry/cli-linux-x64@2.36.6': optional: true - '@sentry/cli-win32-i686@2.36.3': + '@sentry/cli-win32-i686@2.36.6': optional: true - '@sentry/cli-win32-x64@2.36.3': + '@sentry/cli-win32-x64@2.36.6': optional: true - '@sentry/cli@2.36.3': + '@sentry/cli@2.36.6': dependencies: https-proxy-agent: 5.0.1 node-fetch: 2.7.0 @@ -4775,43 +4783,43 @@ snapshots: proxy-from-env: 1.1.0 which: 2.0.2 optionalDependencies: - '@sentry/cli-darwin': 2.36.3 - '@sentry/cli-linux-arm': 2.36.3 - '@sentry/cli-linux-arm64': 2.36.3 - '@sentry/cli-linux-i686': 2.36.3 - '@sentry/cli-linux-x64': 2.36.3 - '@sentry/cli-win32-i686': 2.36.3 - '@sentry/cli-win32-x64': 2.36.3 + '@sentry/cli-darwin': 2.36.6 + '@sentry/cli-linux-arm': 2.36.6 + '@sentry/cli-linux-arm64': 2.36.6 + '@sentry/cli-linux-i686': 2.36.6 + '@sentry/cli-linux-x64': 2.36.6 + '@sentry/cli-win32-i686': 2.36.6 + '@sentry/cli-win32-x64': 2.36.6 transitivePeerDependencies: - encoding - supports-color - '@sentry/core@8.32.0': + '@sentry/core@8.33.1': dependencies: - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 - '@sentry/nextjs@8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.94.0)': + '@sentry/nextjs@8.33.1(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)(webpack@5.95.0)': dependencies: '@opentelemetry/instrumentation-http': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@rollup/plugin-commonjs': 26.0.1(rollup@3.29.5) - '@sentry-internal/browser-utils': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/node': 8.32.0 - '@sentry/opentelemetry': 8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) - '@sentry/react': 8.32.0(react@19.0.0-rc-3edc000d-20240926) - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 - '@sentry/vercel-edge': 8.32.0 - '@sentry/webpack-plugin': 2.22.3(webpack@5.94.0) + '@sentry-internal/browser-utils': 8.33.1 + '@sentry/core': 8.33.1 + '@sentry/node': 8.33.1 + '@sentry/opentelemetry': 8.33.1(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) + '@sentry/react': 8.33.1(react@19.0.0-rc-3edc000d-20240926) + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 + '@sentry/vercel-edge': 8.33.1 + '@sentry/webpack-plugin': 2.22.3(webpack@5.95.0) chalk: 3.0.0 - next: 15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + next: 15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) resolve: 1.22.8 rollup: 3.29.5 stacktrace-parser: 0.1.10 optionalDependencies: - webpack: 5.94.0 + webpack: 5.95.0 transitivePeerDependencies: - '@opentelemetry/api' - '@opentelemetry/core' @@ -4821,11 +4829,11 @@ snapshots: - react - supports-color - '@sentry/node@8.32.0': + '@sentry/node@8.33.1': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/context-async-hooks': 1.25.1(@opentelemetry/api@1.9.0) - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/context-async-hooks': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-amqplib': 0.42.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-connect': 0.39.0(@opentelemetry/api@1.9.0) @@ -4840,6 +4848,7 @@ snapshots: '@opentelemetry/instrumentation-ioredis': 0.43.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-kafkajs': 0.3.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-koa': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-lru-memoizer': 0.40.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-mongodb': 0.47.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-mongoose': 0.42.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-mysql': 0.41.0(@opentelemetry/api@1.9.0) @@ -4852,52 +4861,52 @@ snapshots: '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@prisma/instrumentation': 5.19.1 - '@sentry/core': 8.32.0 - '@sentry/opentelemetry': 8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 - import-in-the-middle: 1.11.1 + '@sentry/core': 8.33.1 + '@sentry/opentelemetry': 8.33.1(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0) + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 + import-in-the-middle: 1.11.2 transitivePeerDependencies: - supports-color - '@sentry/opentelemetry@8.32.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0)': + '@sentry/opentelemetry@8.33.1(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.27.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 - '@sentry/react@8.32.0(react@19.0.0-rc-3edc000d-20240926)': + '@sentry/react@8.33.1(react@19.0.0-rc-3edc000d-20240926)': dependencies: - '@sentry/browser': 8.32.0 - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/browser': 8.33.1 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 hoist-non-react-statics: 3.3.2 react: 19.0.0-rc-3edc000d-20240926 - '@sentry/types@8.32.0': {} + '@sentry/types@8.33.1': {} - '@sentry/utils@8.32.0': + '@sentry/utils@8.33.1': dependencies: - '@sentry/types': 8.32.0 + '@sentry/types': 8.33.1 - '@sentry/vercel-edge@8.32.0': + '@sentry/vercel-edge@8.33.1': dependencies: - '@sentry/core': 8.32.0 - '@sentry/types': 8.32.0 - '@sentry/utils': 8.32.0 + '@sentry/core': 8.33.1 + '@sentry/types': 8.33.1 + '@sentry/utils': 8.33.1 - '@sentry/webpack-plugin@2.22.3(webpack@5.94.0)': + '@sentry/webpack-plugin@2.22.3(webpack@5.95.0)': dependencies: '@sentry/bundler-plugin-core': 2.22.3 unplugin: 1.0.1 uuid: 9.0.1 - webpack: 5.94.0 + webpack: 5.95.0 transitivePeerDependencies: - encoding - supports-color @@ -4951,11 +4960,11 @@ snapshots: - supports-color - utf-8-validate - '@trigger.dev/nextjs@3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))': + '@trigger.dev/nextjs@3.0.9(@trigger.dev/sdk@3.0.9)(next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926))': dependencies: '@trigger.dev/sdk': 3.0.9 debug: 4.3.7 - next: 15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + next: 15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) transitivePeerDependencies: - supports-color @@ -5028,15 +5037,13 @@ snapshots: '@types/react-dom@18.3.0': dependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 - '@types/react@18.3.10': + '@types/react@18.3.11': dependencies: '@types/prop-types': 15.7.13 csstype: 3.1.3 - '@types/semver@7.5.8': {} - '@types/shimmer@1.2.0': {} '@types/webidl-conversions@7.0.3': {} @@ -5045,32 +5052,30 @@ snapshots: dependencies: '@types/webidl-conversions': 7.0.3 - '@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint@8.57.1)(typescript@5.6.2)': + '@typescript-eslint/eslint-plugin@8.8.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint@8.57.1)(typescript@5.6.2)': dependencies: '@eslint-community/regexpp': 4.11.1 - '@typescript-eslint/parser': 7.2.0(eslint@8.57.1)(typescript@5.6.2) - '@typescript-eslint/scope-manager': 7.2.0 - '@typescript-eslint/type-utils': 7.2.0(eslint@8.57.1)(typescript@5.6.2) - '@typescript-eslint/utils': 7.2.0(eslint@8.57.1)(typescript@5.6.2) - '@typescript-eslint/visitor-keys': 7.2.0 - debug: 4.3.7 + '@typescript-eslint/parser': 8.8.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/scope-manager': 8.8.0 + '@typescript-eslint/type-utils': 8.8.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 8.8.0 eslint: 8.57.1 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - semver: 7.6.3 ts-api-utils: 1.3.0(typescript@5.6.2) optionalDependencies: typescript: 5.6.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2)': + '@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2)': dependencies: - '@typescript-eslint/scope-manager': 7.2.0 - '@typescript-eslint/types': 7.2.0 - '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.6.2) - '@typescript-eslint/visitor-keys': 7.2.0 + '@typescript-eslint/scope-manager': 8.8.0 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 8.8.0 debug: 4.3.7 eslint: 8.57.1 optionalDependencies: @@ -5078,33 +5083,33 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.2.0': + '@typescript-eslint/scope-manager@8.8.0': dependencies: - '@typescript-eslint/types': 7.2.0 - '@typescript-eslint/visitor-keys': 7.2.0 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/visitor-keys': 8.8.0 - '@typescript-eslint/type-utils@7.2.0(eslint@8.57.1)(typescript@5.6.2)': + '@typescript-eslint/type-utils@8.8.0(eslint@8.57.1)(typescript@5.6.2)': dependencies: - '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.6.2) - '@typescript-eslint/utils': 7.2.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.0(eslint@8.57.1)(typescript@5.6.2) debug: 4.3.7 - eslint: 8.57.1 ts-api-utils: 1.3.0(typescript@5.6.2) optionalDependencies: typescript: 5.6.2 transitivePeerDependencies: + - eslint - supports-color - '@typescript-eslint/types@7.2.0': {} + '@typescript-eslint/types@8.8.0': {} - '@typescript-eslint/typescript-estree@7.2.0(typescript@5.6.2)': + '@typescript-eslint/typescript-estree@8.8.0(typescript@5.6.2)': dependencies: - '@typescript-eslint/types': 7.2.0 - '@typescript-eslint/visitor-keys': 7.2.0 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/visitor-keys': 8.8.0 debug: 4.3.7 - globby: 11.1.0 + fast-glob: 3.3.2 is-glob: 4.0.3 - minimatch: 9.0.3 + minimatch: 9.0.5 semver: 7.6.3 ts-api-utils: 1.3.0(typescript@5.6.2) optionalDependencies: @@ -5112,23 +5117,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.2.0(eslint@8.57.1)(typescript@5.6.2)': + '@typescript-eslint/utils@8.8.0(eslint@8.57.1)(typescript@5.6.2)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 7.2.0 - '@typescript-eslint/types': 7.2.0 - '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.6.2) + '@typescript-eslint/scope-manager': 8.8.0 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) eslint: 8.57.1 - semver: 7.6.3 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@7.2.0': + '@typescript-eslint/visitor-keys@8.8.0': dependencies: - '@typescript-eslint/types': 7.2.0 + '@typescript-eslint/types': 8.8.0 eslint-visitor-keys: 3.4.3 '@uidotdev/usehooks@2.4.1(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926)': @@ -5292,8 +5294,6 @@ snapshots: get-intrinsic: 1.2.4 is-string: 1.0.7 - array-union@2.1.0: {} - array.prototype.findlast@1.2.5: dependencies: call-bind: 1.0.7 @@ -5382,8 +5382,8 @@ snapshots: browserslist@4.24.0: dependencies: - caniuse-lite: 1.0.30001664 - electron-to-chromium: 1.5.29 + caniuse-lite: 1.0.30001666 + electron-to-chromium: 1.5.32 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.0) @@ -5412,9 +5412,7 @@ snapshots: camelcase-css@2.0.1: {} - caniuse-lite@1.0.30001657: {} - - caniuse-lite@1.0.30001664: {} + caniuse-lite@1.0.30001666: {} canvas@3.0.0-rc2: dependencies: @@ -5581,7 +5579,7 @@ snapshots: object-is: 1.1.6 object-keys: 1.1.1 object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 + regexp.prototype.flags: 1.5.3 side-channel: 1.0.6 which-boxed-primitive: 1.0.2 which-collection: 1.0.2 @@ -5605,9 +5603,9 @@ snapshots: detect-libc@2.0.3: {} - dexie-react-hooks@1.1.7(@types/react@18.3.10)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926): + dexie-react-hooks@1.1.7(@types/react@18.3.11)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926): dependencies: - '@types/react': 18.3.10 + '@types/react': 18.3.11 dexie: 4.0.8 react: 19.0.0-rc-3edc000d-20240926 @@ -5615,10 +5613,6 @@ snapshots: didyoumean@1.2.2: {} - dir-glob@3.0.1: - dependencies: - path-type: 4.0.0 - dlv@1.1.3: {} doctrine@2.1.0: @@ -5633,7 +5627,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.29: {} + electron-to-chromium@1.5.32: {} emoji-regex@8.0.0: {} @@ -5698,7 +5692,7 @@ snapshots: object-inspect: 1.13.2 object-keys: 1.1.1 object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 + regexp.prototype.flags: 1.5.3 safe-array-concat: 1.1.2 safe-regex-test: 1.0.3 string.prototype.trim: 1.2.9 @@ -5778,14 +5772,14 @@ snapshots: dependencies: '@next/eslint-plugin-next': 14.2.14 '@rushstack/eslint-patch': 1.10.4 - '@typescript-eslint/eslint-plugin': 7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint@8.57.1)(typescript@5.6.2) - '@typescript-eslint/parser': 7.2.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/eslint-plugin': 8.8.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/parser': 8.8.0(eslint@8.57.1)(typescript@5.6.2) eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1) - eslint-plugin-import: 2.30.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) + eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) eslint-plugin-jsx-a11y: 6.10.0(eslint@8.57.1) - eslint-plugin-react: 7.35.2(eslint@8.57.1) + eslint-plugin-react: 7.37.1(eslint@8.57.1) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.1) optionalDependencies: typescript: 5.6.2 @@ -5802,37 +5796,37 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1): + eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.3.7 enhanced-resolve: 5.17.1 eslint: 8.57.1 - eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1) fast-glob: 3.3.2 - get-tsconfig: 4.8.0 - is-bun-module: 1.1.0 + get-tsconfig: 4.8.1 + is-bun-module: 1.2.1 is-glob: 4.0.3 optionalDependencies: - eslint-plugin-import: 2.30.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) transitivePeerDependencies: - '@typescript-eslint/parser' - eslint-import-resolver-node - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 7.2.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/parser': 8.8.0(eslint@8.57.1)(typescript@5.6.2) eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1) + eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.30.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -5843,7 +5837,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.9.0(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -5852,9 +5846,10 @@ snapshots: object.groupby: 1.0.3 object.values: 1.2.0 semver: 6.3.1 + string.prototype.trimend: 1.0.8 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 7.2.0(eslint@8.57.1)(typescript@5.6.2) + '@typescript-eslint/parser': 8.8.0(eslint@8.57.1)(typescript@5.6.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -5884,7 +5879,7 @@ snapshots: dependencies: eslint: 8.57.1 - eslint-plugin-react@7.35.2(eslint@8.57.1): + eslint-plugin-react@7.37.1(eslint@8.57.1): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 @@ -5989,7 +5984,7 @@ snapshots: dependencies: minimal-polyfills: 2.2.3 run-exclusive: 2.2.19 - tsafe: 1.7.2 + tsafe: 1.7.5 execa@8.0.1: dependencies: @@ -6055,7 +6050,7 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.1.0 - framer-motion@11.9.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): + framer-motion@11.11.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): dependencies: tslib: 2.7.0 optionalDependencies: @@ -6100,7 +6095,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.2.4 - get-tsconfig@4.8.0: + get-tsconfig@4.8.1: dependencies: resolve-pkg-maps: 1.0.0 @@ -6130,7 +6125,7 @@ snapshots: jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 path-scurry: 1.11.1 glob@7.2.3: @@ -6160,15 +6155,6 @@ snapshots: define-properties: 1.2.1 gopd: 1.0.1 - globby@11.1.0: - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.3.2 - merge2: 1.4.1 - slash: 3.0.0 - gopd@1.0.1: dependencies: get-intrinsic: 1.2.4 @@ -6223,7 +6209,7 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 - import-in-the-middle@1.11.1: + import-in-the-middle@1.11.2: dependencies: acorn: 8.12.1 acorn-import-attributes: 1.9.5(acorn@8.12.1) @@ -6277,7 +6263,7 @@ snapshots: call-bind: 1.0.7 has-tostringtag: 1.0.2 - is-bun-module@1.1.0: + is-bun-module@1.2.1: dependencies: semver: 7.6.3 @@ -6405,7 +6391,7 @@ snapshots: dependencies: argparse: 2.0.1 - jsesc@2.5.2: {} + jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -6520,10 +6506,6 @@ snapshots: dependencies: brace-expansion: 2.0.1 - minimatch@9.0.3: - dependencies: - brace-expansion: 2.0.1 - minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 @@ -6599,17 +6581,17 @@ snapshots: react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) - next@15.0.0-rc.0(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): + next@15.0.0-rc.0(@babel/core@7.25.7)(@opentelemetry/api@1.9.0)(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): dependencies: '@next/env': 15.0.0-rc.0 '@swc/helpers': 0.5.11 busboy: 1.6.0 - caniuse-lite: 1.0.30001657 + caniuse-lite: 1.0.30001666 graceful-fs: 4.2.11 postcss: 8.4.31 react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) - styled-jsx: 5.1.3(@babel/core@7.25.2)(react@19.0.0-rc-3edc000d-20240926) + styled-jsx: 5.1.3(@babel/core@7.25.7)(react@19.0.0-rc-3edc000d-20240926) optionalDependencies: '@next/swc-darwin-arm64': 15.0.0-rc.0 '@next/swc-darwin-x64': 15.0.0-rc.0 @@ -6714,7 +6696,7 @@ snapshots: dependencies: p-limit: 3.1.0 - package-json-from-dist@1.0.0: {} + package-json-from-dist@1.0.1: {} parent-module@1.0.1: dependencies: @@ -6735,8 +6717,6 @@ snapshots: lru-cache: 10.4.3 minipass: 7.1.2 - path-type@4.0.0: {} - pg-int8@1.0.1: {} pg-protocol@1.7.0: {} @@ -6916,7 +6896,7 @@ snapshots: globalthis: 1.0.4 which-builtin-type: 1.1.4 - regexp.prototype.flags@1.5.2: + regexp.prototype.flags@1.5.3: dependencies: call-bind: 1.0.7 define-properties: 1.2.1 @@ -7079,8 +7059,6 @@ snapshots: is-arrayish: 0.3.2 optional: true - slash@3.0.0: {} - slug@6.1.0: {} socket.io-client@4.7.5: @@ -7152,7 +7130,7 @@ snapshots: gopd: 1.0.1 has-symbols: 1.0.3 internal-slot: 1.0.7 - regexp.prototype.flags: 1.5.2 + regexp.prototype.flags: 1.5.3 set-function-name: 2.0.2 side-channel: 1.0.6 @@ -7200,12 +7178,12 @@ snapshots: strip-json-comments@3.1.1: {} - styled-jsx@5.1.3(@babel/core@7.25.2)(react@19.0.0-rc-3edc000d-20240926): + styled-jsx@5.1.3(@babel/core@7.25.7)(react@19.0.0-rc-3edc000d-20240926): dependencies: client-only: 0.0.1 react: 19.0.0-rc-3edc000d-20240926 optionalDependencies: - '@babel/core': 7.25.2 + '@babel/core': 7.25.7 sucrase@3.35.0: dependencies: @@ -7295,14 +7273,14 @@ snapshots: ansi-escapes: 5.0.0 supports-hyperlinks: 2.3.0 - terser-webpack-plugin@5.3.10(webpack@5.94.0): + terser-webpack-plugin@5.3.10(webpack@5.95.0): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.34.1 - webpack: 5.94.0 + webpack: 5.95.0 terser@5.34.1: dependencies: @@ -7339,7 +7317,7 @@ snapshots: ts-interface-checker@0.1.13: {} - tsafe@1.7.2: {} + tsafe@1.7.5: {} tsconfig-paths@3.15.0: dependencies: @@ -7443,7 +7421,7 @@ snapshots: webpack-virtual-modules@0.5.0: {} - webpack@5.94.0: + webpack@5.95.0: dependencies: '@types/estree': 1.0.6 '@webassemblyjs/ast': 1.12.1 @@ -7465,7 +7443,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(webpack@5.94.0) + terser-webpack-plugin: 5.3.10(webpack@5.95.0) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..3ff5faa --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +packages: + - "apps/*" + - "packages/*" diff --git a/turbo.json b/turbo.json new file mode 100644 index 0000000..58facaa --- /dev/null +++ b/turbo.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://turbo.build/schema.json", + "globalDependencies": ["**/.env.*local"], + "tasks": { + "build": { + "dependsOn": ["^build"], + "outputs": [".next/**", "!.next/cache/**"] + }, + "lint": {}, + "dev": { + "cache": false, + "persistent": true + } + } +} -- 2.45.2 From 861578cc90afb0dc16c3b152d82316d3e0336d90 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:45:30 +0100 Subject: [PATCH 04/38] attempt 2 --- .gitea/workflows/deploy.yml | 3 +- apps/frontend/Dockerfile | 73 +++++++++++++------------------------ 2 files changed, 28 insertions(+), 48 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 7e74e4d..6ebdd7e 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -25,7 +25,8 @@ jobs: - name: Build Image uses: docker/build-push-action@v6 with: - context: ./apps/frontend + context: . + file: ./apps/frontend/Dockerfile push: true tags: | git.fascinated.cc/fascinated/scoresaber-reloaded-frontend:${{ github.sha }} diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index a41d8ea..9043a41 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -1,65 +1,44 @@ FROM fascinated/docker-images:nodejs_20_with_pnpm AS base -# Install dependencies and build tools for canvas -FROM base AS deps -RUN apk add --no-cache python3 make g++ gcc pkgconfig pixman cairo-dev libjpeg-turbo-dev pango-dev giflib-dev -WORKDIR /app -COPY package.json* pnpm-lock.yaml* ./ -RUN pnpm install --frozen-lockfile --quiet - -# Build from source FROM base AS builder +RUN apk update +RUN apk add --no-cache libc6-compat +# Set working directory WORKDIR /app -COPY --from=deps /app/node_modules ./node_modules + +RUN pnpm global add turbo@^2 COPY . . -# Install runtime dependencies -RUN apk add --no-cache cairo pango libjpeg-turbo giflib +# Generate a partial monorepo with a pruned lockfile for a target workspace. +# Assuming "frontend" is the name entered in the project's package.json: { name: "frontend" } +RUN turbo prune frontend --docker -ENV NEXT_TELEMETRY_DISABLED=1 +# Add lockfile and package.json's of isolated subworkspace +FROM base AS installer +RUN apk update +RUN apk add --no-cache libc6-compat +WORKDIR /app -# Add the commit hash -ARG GIT_REV -ENV GIT_REV=${GIT_REV} +# First install the dependencies (as they change less often) +COPY --from=builder /app/out/json/ . +RUN pnpm install --frozen-lockfile --quiet -# Add the sentry auth token -ARG SENTRY_AUTH_TOKEN -ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} +# Build the project +COPY --from=builder /app/out/full/ . +RUN pnpm turbo run build --filter=frontend... -# Build the app -RUN pnpm run build - -# Final stage to run the app FROM base AS runner WORKDIR /app -# Install runtime dependencies -RUN apk add --no-cache cairo pango libjpeg-turbo giflib - -ENV NODE_ENV=production -ENV NEXT_TELEMETRY_DISABLED=1 - +# Don't run production as root RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs - -RUN mkdir .next -RUN chown nextjs:nodejs .next - -# Add the commit hash -ARG GIT_REV -ENV GIT_REV=${GIT_REV} - -# Copy the built app from the builder stage -COPY --from=builder --chown=nextjs:nodejs /app/node_modules ./node_modules -COPY --from=builder --chown=nextjs:nodejs /app/.next ./.next -COPY --from=builder --chown=nextjs:nodejs /app/public ./public -COPY --from=builder --chown=nextjs:nodejs /app/package.json ./package.json -COPY --from=builder --chown=nextjs:nodejs /app/next.config.mjs ./next.config.mjs - USER nextjs -EXPOSE 3000 -ENV HOSTNAME="0.0.0.0" -ENV PORT=3000 +# Automatically leverage output traces to reduce image size +# https://nextjs.org/docs/advanced-features/output-file-tracing +COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/.next/standalone ./ +COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/.next/static ./apps/frontend/.next/static +COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/public ./apps/frontend/public -CMD ["pnpm", "start"] +CMD node apps/frontend/server.js \ No newline at end of file -- 2.45.2 From a5990e8ae90428f9e12c660ead6cb27c31bfc1e9 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:46:44 +0100 Subject: [PATCH 05/38] attempt 3 --- apps/frontend/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 9043a41..5a50143 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -6,7 +6,7 @@ RUN apk add --no-cache libc6-compat # Set working directory WORKDIR /app -RUN pnpm global add turbo@^2 +RUN pnpm i -g turbo@^2 COPY . . # Generate a partial monorepo with a pruned lockfile for a target workspace. -- 2.45.2 From b09549b69fe23db342afb883b67a9a266d59d9e9 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:50:05 +0100 Subject: [PATCH 06/38] attempt 4 --- apps/frontend/package.json | 2 +- package.json | 19 ++++++++-- pnpm-lock.yaml | 77 +++++++++++++++++++++++++++++++++++++- 3 files changed, 93 insertions(+), 5 deletions(-) diff --git a/apps/frontend/package.json b/apps/frontend/package.json index dca0995..7e84873 100644 --- a/apps/frontend/package.json +++ b/apps/frontend/package.json @@ -1,5 +1,5 @@ { - "name": "scoresaber-reloadedv3", + "name": "frontend", "version": "0.1.0", "private": true, "scripts": { diff --git a/package.json b/package.json index 938ffdb..88a74b3 100644 --- a/package.json +++ b/package.json @@ -2,8 +2,21 @@ "name": "ssr", "version": "0.1.0", "private": true, - "packageManager": "pnpm@9.12.0", + "workspaces": [ + "apps/*", + "packages/*" + ], "scripts": { - "dev": "turbo dev" - } + "build": "turbo run build", + "clean": "turbo run clean", + "dev": "turbo run dev", + "format": "prettier --write \"**/*.{ts,tsx,md}\"", + "lint": "turbo run lint", + "test": "turbo run test" + }, + "devDependencies": { + "prettier": "^3.2.5", + "turbo": "^2.0.3" + }, + "packageManager": "pnpm@9.12.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b13847d..a45a0c3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,14 @@ settings: importers: - .: {} + .: + devDependencies: + prettier: + specifier: ^3.2.5 + version: 3.3.3 + turbo: + specifier: ^2.0.3 + version: 2.1.3 apps/frontend: dependencies: @@ -2988,6 +2995,11 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} + prettier@3.3.3: + resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} + engines: {node: '>=14'} + hasBin: true + progress@2.0.3: resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} engines: {node: '>=0.4.0'} @@ -3411,6 +3423,40 @@ packages: tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + turbo-darwin-64@2.1.3: + resolution: {integrity: sha512-ouJOm0g0YyoBuhmikEujVCBGo3Zr0lbSOWFIsQtWUTItC88F2w2byhjtsYGPXQwMlTbXwmoBU2lOCfWNkeEwHQ==} + cpu: [x64] + os: [darwin] + + turbo-darwin-arm64@2.1.3: + resolution: {integrity: sha512-j2FOJsK4LAOtHQlb3Oom0yWB/Vi0nF1ljInr311mVzHoFAJRZtfW2fRvdZRb/lBUwjSp8be58qWHzANIcrA0OA==} + cpu: [arm64] + os: [darwin] + + turbo-linux-64@2.1.3: + resolution: {integrity: sha512-ubRHkI1gSel7H7wsmxKK8C9UlLWqg/2dkCC88LFupaK6TKgvBKqDqA0Z1M9C/escK0Jsle2k0H8bybV9OYIl4Q==} + cpu: [x64] + os: [linux] + + turbo-linux-arm64@2.1.3: + resolution: {integrity: sha512-LffUL+e5wv7BtD6DgnM2kKOlDkMo2eRjhbAjVnrCD3wi2ug0tl6NDzajnHHjtaMyOnIf4AvzSKdLWsBxafGBQA==} + cpu: [arm64] + os: [linux] + + turbo-windows-64@2.1.3: + resolution: {integrity: sha512-S9SvcZZoaq5jKr6kA6eF7/xgQhVn8Vh7PVy5lono9zybvhyL4eY++y2PaLToIgL8G9IcbLmgOC73ExNjFBg9XQ==} + cpu: [x64] + os: [win32] + + turbo-windows-arm64@2.1.3: + resolution: {integrity: sha512-twlEo8lRrGbrR6T/ZklUIquW3IlFCEtywklgVA81aIrSBm56+GEVpSrHhIlsx1hiYeSNrs+GpDwZGe+V7fvEVQ==} + cpu: [arm64] + os: [win32] + + turbo@2.1.3: + resolution: {integrity: sha512-lY0yj2GH2a2a3NExZ3rGe+rHUVeFE2aXuRAue57n+08E7Z7N7YCmynju0kPC1grAQzERmoLpKrmzmWd+PNiADw==} + hasBin: true + type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -6809,6 +6855,8 @@ snapshots: prelude-ls@1.2.1: {} + prettier@3.3.3: {} + progress@2.0.3: {} prop-types@15.8.1: @@ -7332,6 +7380,33 @@ snapshots: dependencies: safe-buffer: 5.2.1 + turbo-darwin-64@2.1.3: + optional: true + + turbo-darwin-arm64@2.1.3: + optional: true + + turbo-linux-64@2.1.3: + optional: true + + turbo-linux-arm64@2.1.3: + optional: true + + turbo-windows-64@2.1.3: + optional: true + + turbo-windows-arm64@2.1.3: + optional: true + + turbo@2.1.3: + optionalDependencies: + turbo-darwin-64: 2.1.3 + turbo-darwin-arm64: 2.1.3 + turbo-linux-64: 2.1.3 + turbo-linux-arm64: 2.1.3 + turbo-windows-64: 2.1.3 + turbo-windows-arm64: 2.1.3 + type-check@0.4.0: dependencies: prelude-ls: 1.2.1 -- 2.45.2 From d22a155a97b697dc84a0a4b1691bfb2069c49089 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:53:39 +0100 Subject: [PATCH 07/38] attempt 5 --- apps/frontend/Dockerfile | 23 ++++++++++++++++++++++- apps/frontend/next.config.mjs | 1 + 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 5a50143..ac9117c 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -16,13 +16,24 @@ RUN turbo prune frontend --docker # Add lockfile and package.json's of isolated subworkspace FROM base AS installer RUN apk update -RUN apk add --no-cache libc6-compat +RUN apk add --no-cache python3 make g++ gcc pkgconfig pixman cairo-dev libjpeg-turbo-dev pango-dev giflib-dev WORKDIR /app # First install the dependencies (as they change less often) COPY --from=builder /app/out/json/ . RUN pnpm install --frozen-lockfile --quiet +# Add the commit hash +ARG GIT_REV +ENV GIT_REV=${GIT_REV} + +# Add the sentry auth token +ARG SENTRY_AUTH_TOKEN +ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} + +ENV NODE_ENV=production +ENV NEXT_TELEMETRY_DISABLED=1 + # Build the project COPY --from=builder /app/out/full/ . RUN pnpm turbo run build --filter=frontend... @@ -30,6 +41,16 @@ RUN pnpm turbo run build --filter=frontend... FROM base AS runner WORKDIR /app +ENV NODE_ENV=production +ENV NEXT_TELEMETRY_DISABLED=1 + +# Install runtime dependencies +RUN apk add --no-cache cairo pango libjpeg-turbo giflib + +# Add the commit hash +ARG GIT_REV +ENV GIT_REV=${GIT_REV} + # Don't run production as root RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs diff --git a/apps/frontend/next.config.mjs b/apps/frontend/next.config.mjs index 777ecf8..c9e435a 100644 --- a/apps/frontend/next.config.mjs +++ b/apps/frontend/next.config.mjs @@ -9,6 +9,7 @@ const __dirname = path.dirname(__filename); // get the name of the directory /** @type {import('next').NextConfig} */ const nextConfig = { + output: "standalone", experimental: { webpackMemoryOptimizations: true, }, -- 2.45.2 From d400023f513f35c64e04e99d536bd9cc2890712c Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:57:41 +0100 Subject: [PATCH 08/38] attempt 5.5? --- apps/frontend/Dockerfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index ac9117c..7c816b9 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -19,10 +19,6 @@ RUN apk update RUN apk add --no-cache python3 make g++ gcc pkgconfig pixman cairo-dev libjpeg-turbo-dev pango-dev giflib-dev WORKDIR /app -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/json/ . -RUN pnpm install --frozen-lockfile --quiet - # Add the commit hash ARG GIT_REV ENV GIT_REV=${GIT_REV} @@ -34,6 +30,10 @@ ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 +# First install the dependencies (as they change less often) +COPY --from=builder /app/out/json/ . +RUN pnpm install --frozen-lockfile --quiet + # Build the project COPY --from=builder /app/out/full/ . RUN pnpm turbo run build --filter=frontend... -- 2.45.2 From ca11b6dc073e989f13aac3458e77ff48307d7440 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 19:59:56 +0100 Subject: [PATCH 09/38] attempt 5.6? --- apps/frontend/Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 7c816b9..6c64f5d 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -30,6 +30,8 @@ ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 +RUN pnpm i -g turbo@^2 + # First install the dependencies (as they change less often) COPY --from=builder /app/out/json/ . RUN pnpm install --frozen-lockfile --quiet -- 2.45.2 From 5ba781a3a93e14d677a7e39f711850fd70786ec5 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:04:03 +0100 Subject: [PATCH 10/38] idc rn will fix later --- apps/frontend/next.config.mjs | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/apps/frontend/next.config.mjs b/apps/frontend/next.config.mjs index c9e435a..9d87b4d 100644 --- a/apps/frontend/next.config.mjs +++ b/apps/frontend/next.config.mjs @@ -1,11 +1,5 @@ import { withSentryConfig } from "@sentry/nextjs"; import { format } from "@formkit/tempo"; -import nextBuildId from "next-build-id"; -import path from "path"; -import { fileURLToPath } from "url"; - -const __filename = fileURLToPath(import.meta.url); // get the resolved path to the file -const __dirname = path.dirname(__filename); // get the name of the directory /** @type {import('next').NextConfig} */ const nextConfig = { @@ -25,7 +19,7 @@ const nextConfig = { }, env: { NEXT_PUBLIC_BUILD_ID: - process.env.GIT_REV || nextBuildId.sync({ dir: __dirname }), + process.env.GIT_REV || "dev", NEXT_PUBLIC_BUILD_TIME: new Date().toLocaleDateString("en-US", { year: "numeric", month: "long", -- 2.45.2 From 10de5da0465f873a4363ab104d19628664aa307b Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:08:17 +0100 Subject: [PATCH 11/38] now? --- apps/frontend/tsconfig.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index d6bbd13..85f26bd 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -21,6 +21,7 @@ "name": "next" } ], + "baseUrl": "./apps/frontend", "paths": { "@/*": [ "./src/*" -- 2.45.2 From 6463064a1e68228dae0bff63904df66454e844c6 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:16:51 +0100 Subject: [PATCH 12/38] now????? --- apps/frontend/tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 85f26bd..7a828c0 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -21,7 +21,7 @@ "name": "next" } ], - "baseUrl": "./apps/frontend", + "baseUrl": ".", "paths": { "@/*": [ "./src/*" -- 2.45.2 From 0fa838892ce5998bda543a482c144c61d5433f15 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:26:24 +0100 Subject: [PATCH 13/38] now????? --- apps/frontend/.env | 7 +++++++ apps/frontend/src/app/(pages)/api/player/history/route.ts | 2 +- apps/frontend/tsconfig.json | 3 +++ 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 apps/frontend/.env diff --git a/apps/frontend/.env b/apps/frontend/.env new file mode 100644 index 0000000..000a358 --- /dev/null +++ b/apps/frontend/.env @@ -0,0 +1,7 @@ +NEXT_PUBLIC_SITE_URL=http://localhost:3000 +NEXT_PUBLIC_TRIGGER_PUBLIC_API_KEY= + +TRIGGER_API_KEY= +TRIGGER_API_URL=https://trigger.example.com +MONGO_URI=mongodb://root:jGZuYukpb9n4yDJJE8nMeUbj2ACE7DR3@10.0.50.37:27017/ssr-dev?authSource=admin +SENTRY_AUTH_TOKEN= diff --git a/apps/frontend/src/app/(pages)/api/player/history/route.ts b/apps/frontend/src/app/(pages)/api/player/history/route.ts index b7395da..5c30b89 100644 --- a/apps/frontend/src/app/(pages)/api/player/history/route.ts +++ b/apps/frontend/src/app/(pages)/api/player/history/route.ts @@ -21,7 +21,7 @@ export async function GET(request: NextRequest) { _id: id, trackedSince: new Date().toISOString(), }); - const response = await scoresaberService.lookupPlayer(id, true); + const response = await scoresaberService.lookupPlayer(id); if (response != undefined) { const { player, rawPlayer } = response; await seedPlayerHistory(foundPlayer!, player, rawPlayer); diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 7a828c0..e937709 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -14,8 +14,11 @@ "moduleResolution": "bundler", "resolveJsonModule": true, "isolatedModules": true, + "moduleDetection": "force", "jsx": "preserve", "incremental": true, + "declaration": true, + "declarationMap": true, "plugins": [ { "name": "next" -- 2.45.2 From 2b7932a3523b24b0be9e0ec0fd323640c1f98fc3 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:32:38 +0100 Subject: [PATCH 14/38] i donut get it --- apps/frontend/src/app/(pages)/api/player/history/route.ts | 2 +- apps/frontend/tsconfig.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/frontend/src/app/(pages)/api/player/history/route.ts b/apps/frontend/src/app/(pages)/api/player/history/route.ts index 5c30b89..202700a 100644 --- a/apps/frontend/src/app/(pages)/api/player/history/route.ts +++ b/apps/frontend/src/app/(pages)/api/player/history/route.ts @@ -1,8 +1,8 @@ import { NextRequest, NextResponse } from "next/server"; -import { connectMongo } from "@/common/mongo"; import { IPlayer, PlayerModel } from "@/common/schema/player-schema"; import { seedPlayerHistory } from "@/common/player-utils"; import { scoresaberService } from "@/common/service/impl/scoresaber"; +import { connectMongo } from "@/common/mongo"; export async function GET(request: NextRequest) { const playerIdCookie = request.cookies.get("playerId"); diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index e937709..e3d74ca 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -30,7 +30,7 @@ "./src/*" ] }, - "target": "ES2017" + "target": "ES2022" }, "include": [ "next-env.d.ts", -- 2.45.2 From ced74508237f7442a07d9a475c1e07ed69bf800c Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:39:03 +0100 Subject: [PATCH 15/38] i donut get it --- turbo.json | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/turbo.json b/turbo.json index 58facaa..369034b 100644 --- a/turbo.json +++ b/turbo.json @@ -1,15 +1,17 @@ { "$schema": "https://turbo.build/schema.json", - "globalDependencies": ["**/.env.*local"], "tasks": { "build": { "dependsOn": ["^build"], + "inputs": ["$TURBO_DEFAULT$", ".env*"], "outputs": [".next/**", "!.next/cache/**"] }, - "lint": {}, + "lint": { + "dependsOn": ["^lint"] + }, "dev": { "cache": false, "persistent": true } } -} +}k -- 2.45.2 From b26021386e80bfdc1c9af56e801f66411d71b57e Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 3 Oct 2024 20:40:32 +0100 Subject: [PATCH 16/38] oops --- turbo.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/turbo.json b/turbo.json index 369034b..5ef3572 100644 --- a/turbo.json +++ b/turbo.json @@ -14,4 +14,4 @@ "persistent": true } } -}k +} \ No newline at end of file -- 2.45.2 From dac4735e5276ff025941c28f7dc07162e1a8ac21 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:31:14 +0100 Subject: [PATCH 17/38] maybe it will work now --- apps/frontend/.eslintrc.json | 7 ++- apps/frontend/next.config.mjs | 43 +++++++++---------- .../src/app/(pages)/player/[...slug]/page.tsx | 2 +- apps/frontend/src/common/player-utils.ts | 2 +- apps/frontend/tsconfig.json | 2 +- packages/common/package.json | 12 ------ pnpm-lock.yaml | 2 - 7 files changed, 30 insertions(+), 40 deletions(-) delete mode 100644 packages/common/package.json diff --git a/apps/frontend/.eslintrc.json b/apps/frontend/.eslintrc.json index 3722418..c66eb40 100644 --- a/apps/frontend/.eslintrc.json +++ b/apps/frontend/.eslintrc.json @@ -1,3 +1,8 @@ { - "extends": ["next/core-web-vitals", "next/typescript"] + "extends": ["next/core-web-vitals", "next/typescript"], + "rules": { + "@typescript-eslint/no-unused-vars": "off", + "@typescript-eslint/no-empty-object-type": "off", + "@typescript-eslint/no-unused-expressions": "off" + } } diff --git a/apps/frontend/next.config.mjs b/apps/frontend/next.config.mjs index 9d87b4d..e6a6092 100644 --- a/apps/frontend/next.config.mjs +++ b/apps/frontend/next.config.mjs @@ -4,9 +4,6 @@ import { format } from "@formkit/tempo"; /** @type {import('next').NextConfig} */ const nextConfig = { output: "standalone", - experimental: { - webpackMemoryOptimizations: true, - }, images: { remotePatterns: [ { @@ -35,22 +32,24 @@ const nextConfig = { }, }; -export default withSentryConfig(nextConfig, { - org: "scoresaber-reloaded", - project: "frontend", - sentryUrl: "https://glitchtip.fascinated.cc/", - silent: !process.env.CI, - reactComponentAnnotation: { - enabled: true, - }, - tunnelRoute: "/monitoring", - hideSourceMaps: true, - disableLogger: true, - sourcemaps: { - disable: true, - }, - release: { - create: false, - finalize: false, - }, -}); +export default nextConfig; + +// export default withSentryConfig(nextConfig, { +// org: "scoresaber-reloaded", +// project: "frontend", +// sentryUrl: "https://glitchtip.fascinated.cc/", +// silent: !process.env.CI, +// reactComponentAnnotation: { +// enabled: true, +// }, +// tunnelRoute: "/monitoring", +// hideSourceMaps: true, +// disableLogger: true, +// sourcemaps: { +// disable: true, +// }, +// release: { +// create: false, +// finalize: false, +// }, +// }); diff --git a/apps/frontend/src/app/(pages)/player/[...slug]/page.tsx b/apps/frontend/src/app/(pages)/player/[...slug]/page.tsx index 3781990..72ced3e 100644 --- a/apps/frontend/src/app/(pages)/player/[...slug]/page.tsx +++ b/apps/frontend/src/app/(pages)/player/[...slug]/page.tsx @@ -38,7 +38,7 @@ const getPlayerData = cache(async ({ params }: Props, fetchScores: boolean = tru const page = parseInt(slug[2]) || 1; // The page number const search = (slug[3] as string) || ""; // The search query - const player = (await scoresaberService.lookupPlayer(id, false))?.player; + const player = (await scoresaberService.lookupPlayer(id))?.player; let scores: ScoreSaberPlayerScoresPageToken | undefined; if (fetchScores) { scores = await scoresaberService.lookupPlayerScores({ diff --git a/apps/frontend/src/common/player-utils.ts b/apps/frontend/src/common/player-utils.ts index 483e3a2..423524f 100644 --- a/apps/frontend/src/common/player-utils.ts +++ b/apps/frontend/src/common/player-utils.ts @@ -90,7 +90,7 @@ export async function trackScoreSaberPlayer(dateToday: Date, foundPlayer: IPlaye io && (await io.logger.info(`Updating statistics for ${foundPlayer.id}...`)); // Lookup player data from the ScoreSaber service - const response = await scoresaberService.lookupPlayer(foundPlayer.id, true); + const response = await scoresaberService.lookupPlayer(foundPlayer.id); if (response == undefined) { io && (await io.logger.warn(`Player ${foundPlayer.id} not found on ScoreSaber`)); return; diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index e3d74ca..728e860 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -11,7 +11,7 @@ "noEmit": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "bundler", + "moduleResolution": "node", "resolveJsonModule": true, "isolatedModules": true, "moduleDetection": "force", diff --git a/packages/common/package.json b/packages/common/package.json deleted file mode 100644 index 05d0382..0000000 --- a/packages/common/package.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "common", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "keywords": [], - "author": "", - "license": "ISC" -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a45a0c3..2c2d638 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -163,8 +163,6 @@ importers: specifier: ^5 version: 5.6.2 - packages/common: {} - packages: '@alloc/quick-lru@5.2.0': -- 2.45.2 From 53909d08c50aa4d4789eadbcaf2310d6a7d26d09 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:36:08 +0100 Subject: [PATCH 18/38] now?? --- apps/frontend/next.config.mjs | 40 +++++++++++++++++------------------ apps/frontend/tsconfig.json | 4 +++- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/apps/frontend/next.config.mjs b/apps/frontend/next.config.mjs index e6a6092..40410bf 100644 --- a/apps/frontend/next.config.mjs +++ b/apps/frontend/next.config.mjs @@ -32,24 +32,22 @@ const nextConfig = { }, }; -export default nextConfig; - -// export default withSentryConfig(nextConfig, { -// org: "scoresaber-reloaded", -// project: "frontend", -// sentryUrl: "https://glitchtip.fascinated.cc/", -// silent: !process.env.CI, -// reactComponentAnnotation: { -// enabled: true, -// }, -// tunnelRoute: "/monitoring", -// hideSourceMaps: true, -// disableLogger: true, -// sourcemaps: { -// disable: true, -// }, -// release: { -// create: false, -// finalize: false, -// }, -// }); +export default withSentryConfig(nextConfig, { + org: "scoresaber-reloaded", + project: "frontend", + sentryUrl: "https://glitchtip.fascinated.cc/", + silent: !process.env.CI, + reactComponentAnnotation: { + enabled: true, + }, + tunnelRoute: "/monitoring", + hideSourceMaps: true, + disableLogger: true, + sourcemaps: { + disable: true, + }, + release: { + create: false, + finalize: false, + }, +}); diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 728e860..dfb5896 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -30,7 +30,9 @@ "./src/*" ] }, - "target": "ES2022" + "target": "ES2022", + "rootDir": "./src/", + "outDir": "./out/" }, "include": [ "next-env.d.ts", -- 2.45.2 From e41b352806af4d8356dd2356bb4dd87183778bd2 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:39:01 +0100 Subject: [PATCH 19/38] pls just work --- apps/frontend/tsconfig.json | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index dfb5896..39e2502 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -24,7 +24,6 @@ "name": "next" } ], - "baseUrl": ".", "paths": { "@/*": [ "./src/*" -- 2.45.2 From e9e1ea1858cc4a8f73eb483183e388dcc730403d Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:41:25 +0100 Subject: [PATCH 20/38] now??????????? --- apps/frontend/tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 39e2502..454b257 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -11,7 +11,7 @@ "noEmit": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "NodeNext", "resolveJsonModule": true, "isolatedModules": true, "moduleDetection": "force", -- 2.45.2 From 721c8e90762d16f14cfb295696166cba5f362b99 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:48:25 +0100 Subject: [PATCH 21/38] man idek what im doing anymore i just want this shit to work --- apps/frontend/tsconfig.json | 50 ++++++++++++------------------------- apps/frontend/turbo.json | 8 ++++++ 2 files changed, 24 insertions(+), 34 deletions(-) create mode 100644 apps/frontend/turbo.json diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 454b257..ba19dc3 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -1,46 +1,28 @@ { "compilerOptions": { - "lib": [ - "dom", - "dom.iterable", - "esnext" - ], + "lib": ["DOM", "DOM.Iterable", "ES2022"], + "isolatedModules": true, + "esModuleInterop": true, + "jsx": "react-jsx", + "module": "ESNext", + "moduleResolution": "Bundler", + "resolveJsonModule": true, + "target": "ES2022", + "strict": true, "allowJs": true, "skipLibCheck": true, - "strict": true, - "noEmit": true, - "esModuleInterop": true, - "module": "esnext", - "moduleResolution": "NodeNext", - "resolveJsonModule": true, - "isolatedModules": true, - "moduleDetection": "force", - "jsx": "preserve", - "incremental": true, - "declaration": true, - "declarationMap": true, + "forceConsistentCasingInFileNames": true, "plugins": [ { "name": "next" } ], + "outDir": "dist", + "baseUrl": ".", "paths": { - "@/*": [ - "./src/*" - ] - }, - "target": "ES2022", - "rootDir": "./src/", - "outDir": "./out/" + "@/*": ["./src/*"] + } }, - "include": [ - "next-env.d.ts", - "**/*.ts", - "**/*.tsx", - ".next/types/**/*.ts", - "tailwind.config.ts" - ], - "exclude": [ - "node_modules" - ] + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "tailwind.config.ts"], + "exclude": ["node_modules"] } diff --git a/apps/frontend/turbo.json b/apps/frontend/turbo.json new file mode 100644 index 0000000..ff1fc3a --- /dev/null +++ b/apps/frontend/turbo.json @@ -0,0 +1,8 @@ +{ + "extends": ["//"], + "tasks": { + "build": { + "outputs": [".next/**", "!.next/cache/**"] + } + } +} -- 2.45.2 From 413a1b22942d7dd5b80b078992c98a25cb46b719 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:52:17 +0100 Subject: [PATCH 22/38] pls bbg --- apps/frontend/tsconfig.json | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index ba19dc3..ed2cade 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -1,23 +1,20 @@ { "compilerOptions": { - "lib": ["DOM", "DOM.Iterable", "ES2022"], - "isolatedModules": true, + "plugins": [{ "name": "next" }], + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "incremental": true, "esModuleInterop": true, - "jsx": "react-jsx", "module": "ESNext", "moduleResolution": "Bundler", "resolveJsonModule": true, - "target": "ES2022", - "strict": true, - "allowJs": true, - "skipLibCheck": true, - "forceConsistentCasingInFileNames": true, - "plugins": [ - { - "name": "next" - } - ], - "outDir": "dist", + "isolatedModules": true, + "jsx": "preserve", "baseUrl": ".", "paths": { "@/*": ["./src/*"] -- 2.45.2 From 2b29836c82c15bf3384c11270c835c9423835235 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:55:44 +0100 Subject: [PATCH 23/38] pls bbg --- apps/frontend/tsconfig.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index ed2cade..8095e65 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -15,6 +15,13 @@ "resolveJsonModule": true, "isolatedModules": true, "jsx": "preserve", + "composite": false, + "declaration": true, + "declarationMap": true, + "inlineSources": false, + "noUnusedLocals": false, + "noUnusedParameters": false, + "preserveWatchOutput": true, "baseUrl": ".", "paths": { "@/*": ["./src/*"] -- 2.45.2 From 21e120de07d31eeab92e8695ab5dd7b3f7219ef6 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 11:59:32 +0100 Subject: [PATCH 24/38] pls bbg --- apps/frontend/src/instrumentation.ts | 4 ++-- apps/frontend/tsconfig.json | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/frontend/src/instrumentation.ts b/apps/frontend/src/instrumentation.ts index ecb6528..ae8cc8b 100644 --- a/apps/frontend/src/instrumentation.ts +++ b/apps/frontend/src/instrumentation.ts @@ -2,11 +2,11 @@ import * as Sentry from "@sentry/nextjs"; export async function register() { if (process.env.NEXT_RUNTIME === "nodejs") { - await import("../sentry.server.config"); + await import("../sentry.server.config.js"); } if (process.env.NEXT_RUNTIME === "edge") { - await import("../sentry.edge.config"); + await import("../sentry.edge.config.js"); } } diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 8095e65..ad8eae4 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -10,8 +10,8 @@ "noEmit": true, "incremental": true, "esModuleInterop": true, - "module": "ESNext", - "moduleResolution": "Bundler", + "module": "NodeNext", + "moduleResolution": "NodeNext", "resolveJsonModule": true, "isolatedModules": true, "jsx": "preserve", @@ -24,7 +24,7 @@ "preserveWatchOutput": true, "baseUrl": ".", "paths": { - "@/*": ["./src/*"] + "@/*": ["./src/*.ts", "./src/*"] } }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "tailwind.config.ts"], -- 2.45.2 From a7474f67eb8328989ecd00d814feab38bf1d9cd2 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:06:28 +0100 Subject: [PATCH 25/38] yea --- apps/frontend/Dockerfile | 23 +++++++++++------------ apps/frontend/src/instrumentation.ts | 4 ++-- apps/frontend/tsconfig.json | 4 ++-- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 6c64f5d..dabd27d 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -3,15 +3,13 @@ FROM fascinated/docker-images:nodejs_20_with_pnpm AS base FROM base AS builder RUN apk update RUN apk add --no-cache libc6-compat -# Set working directory WORKDIR /app RUN pnpm i -g turbo@^2 COPY . . -# Generate a partial monorepo with a pruned lockfile for a target workspace. -# Assuming "frontend" is the name entered in the project's package.json: { name: "frontend" } -RUN turbo prune frontend --docker +# Temporarily skip prune for debugging +# RUN turbo prune frontend --docker # Add lockfile and package.json's of isolated subworkspace FROM base AS installer @@ -19,11 +17,9 @@ RUN apk update RUN apk add --no-cache python3 make g++ gcc pkgconfig pixman cairo-dev libjpeg-turbo-dev pango-dev giflib-dev WORKDIR /app -# Add the commit hash ARG GIT_REV ENV GIT_REV=${GIT_REV} -# Add the sentry auth token ARG SENTRY_AUTH_TOKEN ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} @@ -32,10 +28,13 @@ ENV NEXT_TELEMETRY_DISABLED=1 RUN pnpm i -g turbo@^2 -# First install the dependencies (as they change less often) +# Install dependencies after copying pruned lockfile COPY --from=builder /app/out/json/ . RUN pnpm install --frozen-lockfile --quiet +# Debug step to verify pruned output +RUN ls -al /app/out/full + # Build the project COPY --from=builder /app/out/full/ . RUN pnpm turbo run build --filter=frontend... @@ -46,22 +45,22 @@ WORKDIR /app ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 -# Install runtime dependencies RUN apk add --no-cache cairo pango libjpeg-turbo giflib -# Add the commit hash ARG GIT_REV ENV GIT_REV=${GIT_REV} +# Debug to check .next output +RUN ls -al /app/apps/frontend/.next/standalone + # Don't run production as root RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs USER nextjs -# Automatically leverage output traces to reduce image size -# https://nextjs.org/docs/advanced-features/output-file-tracing +# Copy build output COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/.next/standalone ./ COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/.next/static ./apps/frontend/.next/static COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/public ./apps/frontend/public -CMD node apps/frontend/server.js \ No newline at end of file +CMD node apps/frontend/server.js diff --git a/apps/frontend/src/instrumentation.ts b/apps/frontend/src/instrumentation.ts index ae8cc8b..ecb6528 100644 --- a/apps/frontend/src/instrumentation.ts +++ b/apps/frontend/src/instrumentation.ts @@ -2,11 +2,11 @@ import * as Sentry from "@sentry/nextjs"; export async function register() { if (process.env.NEXT_RUNTIME === "nodejs") { - await import("../sentry.server.config.js"); + await import("../sentry.server.config"); } if (process.env.NEXT_RUNTIME === "edge") { - await import("../sentry.edge.config.js"); + await import("../sentry.edge.config"); } } diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index ad8eae4..44e4b42 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -10,8 +10,8 @@ "noEmit": true, "incremental": true, "esModuleInterop": true, - "module": "NodeNext", - "moduleResolution": "NodeNext", + "module": "ESNext", + "moduleResolution": "Bundler", "resolveJsonModule": true, "isolatedModules": true, "jsx": "preserve", -- 2.45.2 From 4623e7ee790258e53d07beebf98390aed3270250 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:08:22 +0100 Subject: [PATCH 26/38] ? --- apps/frontend/Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index dabd27d..80a0d55 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -50,9 +50,6 @@ RUN apk add --no-cache cairo pango libjpeg-turbo giflib ARG GIT_REV ENV GIT_REV=${GIT_REV} -# Debug to check .next output -RUN ls -al /app/apps/frontend/.next/standalone - # Don't run production as root RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs -- 2.45.2 From 9d5caf35235c41da464a7c312d3686d85f8c61da Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:09:53 +0100 Subject: [PATCH 27/38] 7 --- apps/frontend/Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 80a0d55..fdbdf3f 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -8,8 +8,7 @@ WORKDIR /app RUN pnpm i -g turbo@^2 COPY . . -# Temporarily skip prune for debugging -# RUN turbo prune frontend --docker +RUN turbo prune frontend --docker # Add lockfile and package.json's of isolated subworkspace FROM base AS installer -- 2.45.2 From 5ae657dcd26c9ea702ad46252153cb44851cd923 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:13:20 +0100 Subject: [PATCH 28/38] 7 --- apps/frontend/Dockerfile | 22 +++++++--------- apps/frontend/src/common/image-utils.ts | 35 +------------------------ 2 files changed, 11 insertions(+), 46 deletions(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index fdbdf3f..b130a39 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -3,37 +3,35 @@ FROM fascinated/docker-images:nodejs_20_with_pnpm AS base FROM base AS builder RUN apk update RUN apk add --no-cache libc6-compat +# Set working directory WORKDIR /app RUN pnpm i -g turbo@^2 COPY . . +# Generate a partial monorepo with a pruned lockfile for a target workspace. +# Assuming "frontend" is the name entered in the project's package.json: { name: "frontend" } RUN turbo prune frontend --docker # Add lockfile and package.json's of isolated subworkspace FROM base AS installer -RUN apk update -RUN apk add --no-cache python3 make g++ gcc pkgconfig pixman cairo-dev libjpeg-turbo-dev pango-dev giflib-dev WORKDIR /app +# Add the commit hash ARG GIT_REV ENV GIT_REV=${GIT_REV} +# Add the sentry auth token ARG SENTRY_AUTH_TOKEN ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 -RUN pnpm i -g turbo@^2 - -# Install dependencies after copying pruned lockfile +# First install the dependencies (as they change less often) COPY --from=builder /app/out/json/ . RUN pnpm install --frozen-lockfile --quiet -# Debug step to verify pruned output -RUN ls -al /app/out/full - # Build the project COPY --from=builder /app/out/full/ . RUN pnpm turbo run build --filter=frontend... @@ -44,8 +42,7 @@ WORKDIR /app ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 -RUN apk add --no-cache cairo pango libjpeg-turbo giflib - +# Add the commit hash ARG GIT_REV ENV GIT_REV=${GIT_REV} @@ -54,9 +51,10 @@ RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs USER nextjs -# Copy build output +# Automatically leverage output traces to reduce image size +# https://nextjs.org/docs/advanced-features/output-file-tracing COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/.next/standalone ./ COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/.next/static ./apps/frontend/.next/static COPY --from=installer --chown=nextjs:nodejs /app/apps/frontend/public ./apps/frontend/public -CMD node apps/frontend/server.js +CMD node apps/frontend/server.js \ No newline at end of file diff --git a/apps/frontend/src/common/image-utils.ts b/apps/frontend/src/common/image-utils.ts index 21f8f4f..cf4f2fe 100644 --- a/apps/frontend/src/common/image-utils.ts +++ b/apps/frontend/src/common/image-utils.ts @@ -1,7 +1,4 @@ -import { createCanvas, loadImage } from "canvas"; import { config } from "../../config"; -import ky from "ky"; -import { extractColors } from "extract-colors"; import { cache } from "react"; /** @@ -21,35 +18,5 @@ export function getImageUrl(originalUrl: string) { * @returns the average color */ export const getAverageColor = cache(async (src: string) => { - const before = performance.now(); - console.log(`Getting average color of "${src}"...`); - try { - const response = await ky.get(`https://img.fascinated.cc/upload/w_64,h_64,o_jpg/${src}`); - if (response.status !== 200) { - return undefined; - } - - const imageBuffer = await response.arrayBuffer(); - - // Create an image from the buffer using canvas - const img = await loadImage(Buffer.from(imageBuffer)); - const canvas = createCanvas(img.width, img.height); - const ctx = canvas.getContext("2d"); - - // Draw the image onto the canvas - ctx.drawImage(img, 0, 0); - - // Get the pixel data from the canvas - const imageData = ctx.getImageData(0, 0, img.width, img.height); - const { data, width, height } = imageData; - - // Use your extractColors function to calculate the average color - const color = await extractColors({ data, width, height }); - - console.log(`Found average color of "${src}" in ${(performance.now() - before).toFixed(0)}ms`); - return color[2]; - } catch (error) { - console.error("Error while getting average color:", error); - return undefined; - } + return "#fff"; }); -- 2.45.2 From 810ce8b2bcdd28d49665415bf50a57c436376c22 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:14:54 +0100 Subject: [PATCH 29/38] 7 --- apps/frontend/package.json | 2 - pnpm-lock.yaml | 255 +------------------------------------ 2 files changed, 2 insertions(+), 255 deletions(-) diff --git a/apps/frontend/package.json b/apps/frontend/package.json index 7e84873..129fee3 100644 --- a/apps/frontend/package.json +++ b/apps/frontend/package.json @@ -26,14 +26,12 @@ "@trigger.dev/react": "^3.0.8", "@trigger.dev/sdk": "^3.0.8", "@uidotdev/usehooks": "^2.4.1", - "canvas": "3.0.0-rc2", "chart.js": "^4.4.4", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", "comlink": "^4.4.1", "dexie": "^4.0.8", "dexie-react-hooks": "^1.1.7", - "extract-colors": "^4.0.8", "framer-motion": "^11.5.4", "js-cookie": "^3.0.5", "ky": "^1.7.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2c2d638..65ddb54 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -65,9 +65,6 @@ importers: '@uidotdev/usehooks': specifier: ^2.4.1 version: 2.4.1(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) - canvas: - specifier: 3.0.0-rc2 - version: 3.0.0-rc2 chart.js: specifier: ^4.4.4 version: 4.4.4 @@ -86,9 +83,6 @@ importers: dexie-react-hooks: specifier: ^1.1.7 version: 1.1.7(@types/react@18.3.11)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926) - extract-colors: - specifier: ^4.0.8 - version: 4.0.8 framer-motion: specifier: ^11.5.4 version: 11.11.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) @@ -1653,16 +1647,10 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - binary-extensions@2.3.0: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} - bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} @@ -1685,9 +1673,6 @@ packages: buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} - busboy@1.6.0: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} @@ -1707,10 +1692,6 @@ packages: caniuse-lite@1.0.30001666: resolution: {integrity: sha512-gD14ICmoV5ZZM1OdzPWmpx+q4GyefaK06zi8hmfHV5xe4/2nOQX3+Dw5o+fSqOws2xVwL9j+anOPFwHzdEdV4g==} - canvas@3.0.0-rc2: - resolution: {integrity: sha512-esx4bYDznnqgRX4G8kaEaf0W3q8xIc51WpmrIitDzmcoEgwnv9wSKdzT6UxWZ4wkVu5+ileofppX0TpyviJRdQ==} - engines: {node: ^18.12.0 || >= 20.9.0} - chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -1735,9 +1716,6 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - chrome-trace-event@1.0.4: resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} engines: {node: '>=6.0'} @@ -1854,22 +1832,10 @@ packages: supports-color: optional: true - decompress-response@4.2.1: - resolution: {integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==} - engines: {node: '>=8'} - - decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} - deep-equal@2.2.3: resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} engines: {node: '>= 0.4'} - deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -1925,9 +1891,6 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - engine.io-client@6.5.4: resolution: {integrity: sha512-GeZeeRjpD2qf49cZQ0Wvh/8NJNfeXkXXcoGh+F77oEAgo9gUHwT1fCRxSNU+YEEaysOJTnsFHmM5oAcPy4ntvQ==} @@ -2117,13 +2080,6 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} - expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} - - extract-colors@4.0.8: - resolution: {integrity: sha512-XW6Ee9bgdx4Z9GchZm2likadze+BjQG1orkSyfxjd9znvxxtc7UBHf//1lFMtQm+lDusO3Fz8giaok0LWyflOA==} - fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -2180,9 +2136,6 @@ packages: react-dom: optional: true - fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} @@ -2224,9 +2177,6 @@ packages: get-tsconfig@4.8.1: resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} - github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -2320,9 +2270,6 @@ packages: humanize-duration@3.32.1: resolution: {integrity: sha512-inh5wue5XdfObhu/IGEMiA1nUXigSGcaKNemcbLRKa7jXYGDZXr3LoT9pTIzq2hPEbld7w/qv9h+ikWGz8fL1g==} - ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} @@ -2345,9 +2292,6 @@ packages: inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - internal-slot@1.0.7: resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} @@ -2645,14 +2589,6 @@ packages: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} - mimic-response@2.1.0: - resolution: {integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==} - engines: {node: '>=8'} - - mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} - minimal-polyfills@2.2.3: resolution: {integrity: sha512-oxdmJ9cL+xV72h0xYxp4tP2d5/fTBpP45H8DIOn9pASuF8a3IYTf+25fMGDYGiWW+MFsuog6KD6nfmhZJQ+uUw==} @@ -2678,9 +2614,6 @@ packages: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} - mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - module-details-from-path@1.0.3: resolution: {integrity: sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==} @@ -2737,9 +2670,6 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} - natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -2777,13 +2707,6 @@ packages: sass: optional: true - node-abi@3.68.0: - resolution: {integrity: sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==} - engines: {node: '>=10'} - - node-addon-api@7.1.1: - resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} - node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -2984,11 +2907,6 @@ packages: resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==} engines: {node: '>=0.10.0'} - prebuild-install@7.1.2: - resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==} - engines: {node: '>=10'} - hasBin: true - prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -3012,9 +2930,6 @@ packages: proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - pump@3.0.2: - resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} - punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -3025,10 +2940,6 @@ packages: randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - react-chartjs-2@5.2.0: resolution: {integrity: sha512-98iN5aguJyVSxp5U3CblRLH67J8gkfyGNbiK3c+l1QI/G4irHMPQw44aEPmjVag+YKTyQ260NcF82GTQ3bdscA==} peerDependencies: @@ -3056,10 +2967,6 @@ packages: read-cache@1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} - readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} @@ -3179,15 +3086,6 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - - simple-get@3.1.1: - resolution: {integrity: sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==} - - simple-get@4.0.1: - resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} - simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} @@ -3257,9 +3155,6 @@ packages: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} engines: {node: '>= 0.4'} - string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -3276,10 +3171,6 @@ packages: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} engines: {node: '>=12'} - strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -3343,13 +3234,6 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} - - tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} - terminal-link@3.0.0: resolution: {integrity: sha512-flFL3m4wuixmf6IfhFJd1YPiLiMuxEc8uHRM1buzIeZPm22Au2pDqBJQgdo7n1WfPU1ONFGv7YDwpFBmHGF6lg==} engines: {node: '>=12'} @@ -3418,9 +3302,6 @@ packages: tslib@2.7.0: resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} - tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - turbo-darwin-64@2.1.3: resolution: {integrity: sha512-ouJOm0g0YyoBuhmikEujVCBGo3Zr0lbSOWFIsQtWUTItC88F2w2byhjtsYGPXQwMlTbXwmoBU2lOCfWNkeEwHQ==} cpu: [x64] @@ -5401,16 +5282,8 @@ snapshots: balanced-match@1.0.2: {} - base64-js@1.5.1: {} - binary-extensions@2.3.0: {} - bl@4.1.0: - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.2 - brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 @@ -5435,11 +5308,6 @@ snapshots: buffer-from@1.1.2: {} - buffer@5.7.1: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - busboy@1.6.0: dependencies: streamsearch: 1.1.0 @@ -5458,12 +5326,6 @@ snapshots: caniuse-lite@1.0.30001666: {} - canvas@3.0.0-rc2: - dependencies: - node-addon-api: 7.1.1 - prebuild-install: 7.1.2 - simple-get: 3.1.1 - chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -5498,8 +5360,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chownr@1.1.4: {} - chrome-trace-event@1.0.4: {} cjs-module-lexer@1.4.1: {} @@ -5600,14 +5460,6 @@ snapshots: dependencies: ms: 2.1.3 - decompress-response@4.2.1: - dependencies: - mimic-response: 2.1.0 - - decompress-response@6.0.0: - dependencies: - mimic-response: 3.1.0 - deep-equal@2.2.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -5629,8 +5481,6 @@ snapshots: which-collection: 1.0.2 which-typed-array: 1.1.15 - deep-extend@0.6.0: {} - deep-is@0.1.4: {} define-data-property@1.1.4: @@ -5645,7 +5495,8 @@ snapshots: has-property-descriptors: 1.0.2 object-keys: 1.1.1 - detect-libc@2.0.3: {} + detect-libc@2.0.3: + optional: true dexie-react-hooks@1.1.7(@types/react@18.3.11)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926): dependencies: @@ -5677,10 +5528,6 @@ snapshots: emoji-regex@9.2.2: {} - end-of-stream@1.4.4: - dependencies: - once: 1.4.0 - engine.io-client@6.5.4: dependencies: '@socket.io/component-emitter': 3.1.2 @@ -6042,10 +5889,6 @@ snapshots: signal-exit: 4.1.0 strip-final-newline: 3.0.0 - expand-template@2.0.3: {} - - extract-colors@4.0.8: {} - fast-deep-equal@3.1.3: {} fast-glob@3.3.2: @@ -6101,8 +5944,6 @@ snapshots: react: 19.0.0-rc-3edc000d-20240926 react-dom: 19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926) - fs-constants@1.0.0: {} - fs.realpath@1.0.0: {} fsevents@2.3.3: @@ -6143,8 +5984,6 @@ snapshots: dependencies: resolve-pkg-maps: 1.0.0 - github-from-package@0.0.0: {} - glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -6244,8 +6083,6 @@ snapshots: humanize-duration@3.32.1: {} - ieee754@1.2.1: {} - ignore@5.3.2: {} import-fresh@3.3.0: @@ -6269,8 +6106,6 @@ snapshots: inherits@2.0.4: {} - ini@1.3.8: {} - internal-slot@1.0.7: dependencies: es-errors: 1.3.0 @@ -6536,10 +6371,6 @@ snapshots: mimic-fn@4.0.0: {} - mimic-response@2.1.0: {} - - mimic-response@3.1.0: {} - minimal-polyfills@2.2.3: {} minimatch@3.1.2: @@ -6560,8 +6391,6 @@ snapshots: minipass@7.1.2: {} - mkdirp-classic@0.5.3: {} - module-details-from-path@1.0.3: {} mongodb-connection-string-url@3.0.1: @@ -6612,8 +6441,6 @@ snapshots: nanoid@3.3.7: {} - napi-build-utils@1.0.2: {} - natural-compare@1.4.0: {} neo-async@2.6.2: {} @@ -6652,12 +6479,6 @@ snapshots: - '@babel/core' - babel-plugin-macros - node-abi@3.68.0: - dependencies: - semver: 7.6.3 - - node-addon-api@7.1.1: {} - node-fetch@2.7.0: dependencies: whatwg-url: 5.0.0 @@ -6836,21 +6657,6 @@ snapshots: dependencies: xtend: 4.0.2 - prebuild-install@7.1.2: - dependencies: - detect-libc: 2.0.3 - expand-template: 2.0.3 - github-from-package: 0.0.0 - minimist: 1.2.8 - mkdirp-classic: 0.5.3 - napi-build-utils: 1.0.2 - node-abi: 3.68.0 - pump: 3.0.2 - rc: 1.2.8 - simple-get: 4.0.1 - tar-fs: 2.1.1 - tunnel-agent: 0.6.0 - prelude-ls@1.2.1: {} prettier@3.3.3: {} @@ -6880,11 +6686,6 @@ snapshots: proxy-from-env@1.1.0: {} - pump@3.0.2: - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - punycode@2.3.1: {} queue-microtask@1.2.3: {} @@ -6893,13 +6694,6 @@ snapshots: dependencies: safe-buffer: 5.2.1 - rc@1.2.8: - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - react-chartjs-2@5.2.0(chart.js@4.4.4)(react@19.0.0-rc-3edc000d-20240926): dependencies: chart.js: 4.4.4 @@ -6922,12 +6716,6 @@ snapshots: dependencies: pify: 2.3.0 - readable-stream@3.6.2: - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - readdirp@3.6.0: dependencies: picomatch: 2.3.1 @@ -7086,20 +6874,6 @@ snapshots: signal-exit@4.1.0: {} - simple-concat@1.0.1: {} - - simple-get@3.1.1: - dependencies: - decompress-response: 4.2.1 - once: 1.4.0 - simple-concat: 1.0.1 - - simple-get@4.0.1: - dependencies: - decompress-response: 6.0.0 - once: 1.4.0 - simple-concat: 1.0.1 - simple-swizzle@0.2.2: dependencies: is-arrayish: 0.3.2 @@ -7204,10 +6978,6 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.0.0 - string_decoder@1.3.0: - dependencies: - safe-buffer: 5.2.1 - strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -7220,8 +6990,6 @@ snapshots: strip-final-newline@3.0.0: {} - strip-json-comments@2.0.1: {} - strip-json-comments@3.1.1: {} styled-jsx@5.1.3(@babel/core@7.25.7)(react@19.0.0-rc-3edc000d-20240926): @@ -7299,21 +7067,6 @@ snapshots: tapable@2.2.1: {} - tar-fs@2.1.1: - dependencies: - chownr: 1.1.4 - mkdirp-classic: 0.5.3 - pump: 3.0.2 - tar-stream: 2.2.0 - - tar-stream@2.2.0: - dependencies: - bl: 4.1.0 - end-of-stream: 1.4.4 - fs-constants: 1.0.0 - inherits: 2.0.4 - readable-stream: 3.6.2 - terminal-link@3.0.0: dependencies: ansi-escapes: 5.0.0 @@ -7374,10 +7127,6 @@ snapshots: tslib@2.7.0: {} - tunnel-agent@0.6.0: - dependencies: - safe-buffer: 5.2.1 - turbo-darwin-64@2.1.3: optional: true -- 2.45.2 From 760b17455383f33adc8be4ee095d1d7b4da07bb4 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:17:51 +0100 Subject: [PATCH 30/38] 7 --- apps/frontend/Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index b130a39..192bd71 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -28,6 +28,8 @@ ENV SENTRY_AUTH_TOKEN=${SENTRY_AUTH_TOKEN} ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 +RUN pnpm i -g turbo@^2 + # First install the dependencies (as they change less often) COPY --from=builder /app/out/json/ . RUN pnpm install --frozen-lockfile --quiet -- 2.45.2 From 0812e5faba56ab466be507c94958d40139c56267 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:21:41 +0100 Subject: [PATCH 31/38] 7 --- apps/frontend/tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 44e4b42..930a14c 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -24,7 +24,7 @@ "preserveWatchOutput": true, "baseUrl": ".", "paths": { - "@/*": ["./src/*.ts", "./src/*"] + "@/*": ["src/*.ts", "src/*"] } }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "tailwind.config.ts"], -- 2.45.2 From d7fee99e18280aec37da48a9cca8db39930dfd6d Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:23:14 +0100 Subject: [PATCH 32/38] 7 --- apps/frontend/tsconfig.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 930a14c..c487974 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -22,9 +22,9 @@ "noUnusedLocals": false, "noUnusedParameters": false, "preserveWatchOutput": true, - "baseUrl": ".", + "baseUrl": "./", "paths": { - "@/*": ["src/*.ts", "src/*"] + "@/*": ["./src/*.ts", "./src/*"] } }, "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "tailwind.config.ts"], -- 2.45.2 From 1a87cda87fe6a73bced9a78d40b4a87944981e4b Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:33:40 +0100 Subject: [PATCH 33/38] 7 --- apps/frontend/package.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/frontend/package.json b/apps/frontend/package.json index 129fee3..aaed9f0 100644 --- a/apps/frontend/package.json +++ b/apps/frontend/package.json @@ -8,6 +8,9 @@ "start": "next start", "lint": "next lint" }, + "imports": { + "@/*": "./src/*" + }, "packageManager": "pnpm@9.12.0", "dependencies": { "@formkit/tempo": "^0.1.2", -- 2.45.2 From 9dca5e4a900c8a0365da0dcdc0919abd6458645c Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:39:11 +0100 Subject: [PATCH 34/38] 7 --- apps/frontend/tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index c487974..6797a01 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -22,7 +22,7 @@ "noUnusedLocals": false, "noUnusedParameters": false, "preserveWatchOutput": true, - "baseUrl": "./", + "baseUrl": "../../", "paths": { "@/*": ["./src/*.ts", "./src/*"] } -- 2.45.2 From 770c02bd7ef138dc8af7156d1321b9fffcf78a73 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:40:55 +0100 Subject: [PATCH 35/38] 7 --- apps/frontend/tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index 6797a01..c3a9fee 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -22,7 +22,7 @@ "noUnusedLocals": false, "noUnusedParameters": false, "preserveWatchOutput": true, - "baseUrl": "../../", + "baseUrl": "../../apps/frontend", "paths": { "@/*": ["./src/*.ts", "./src/*"] } -- 2.45.2 From 2f1c9835ff9440ff129be3f3f378e41b5a8a98e1 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:52:36 +0100 Subject: [PATCH 36/38] 7 --- apps/frontend/Dockerfile | 3 +++ apps/frontend/next.config.mjs | 9 +++++++++ apps/frontend/tsconfig.json | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 192bd71..0234d3e 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -36,6 +36,9 @@ RUN pnpm install --frozen-lockfile --quiet # Build the project COPY --from=builder /app/out/full/ . + +RUN ls -la + RUN pnpm turbo run build --filter=frontend... FROM base AS runner diff --git a/apps/frontend/next.config.mjs b/apps/frontend/next.config.mjs index 40410bf..ef0cfcc 100644 --- a/apps/frontend/next.config.mjs +++ b/apps/frontend/next.config.mjs @@ -1,9 +1,18 @@ import { withSentryConfig } from "@sentry/nextjs"; import { format } from "@formkit/tempo"; +import path from "path"; +import { fileURLToPath } from "url"; + +const __filename = fileURLToPath(import.meta.url); // get the resolved path to the file +const __dirname = path.dirname(__filename); // get the name of the directory /** @type {import('next').NextConfig} */ const nextConfig = { output: "standalone", + webpack: (config) => { + config.resolve.alias['@'] = path.join(__dirname, 'src'); + return config; + }, images: { remotePatterns: [ { diff --git a/apps/frontend/tsconfig.json b/apps/frontend/tsconfig.json index c3a9fee..44e4b42 100644 --- a/apps/frontend/tsconfig.json +++ b/apps/frontend/tsconfig.json @@ -22,7 +22,7 @@ "noUnusedLocals": false, "noUnusedParameters": false, "preserveWatchOutput": true, - "baseUrl": "../../apps/frontend", + "baseUrl": ".", "paths": { "@/*": ["./src/*.ts", "./src/*"] } -- 2.45.2 From a1cdf41c4991cd55c5a41c79d2825fca47bbf309 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 4 Oct 2024 12:54:53 +0100 Subject: [PATCH 37/38] 7 --- apps/frontend/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/frontend/Dockerfile b/apps/frontend/Dockerfile index 0234d3e..ea7b4f5 100644 --- a/apps/frontend/Dockerfile +++ b/apps/frontend/Dockerfile @@ -32,7 +32,7 @@ RUN pnpm i -g turbo@^2 # First install the dependencies (as they change less often) COPY --from=builder /app/out/json/ . -RUN pnpm install --frozen-lockfile --quiet +RUN pnpm install # Build the project COPY --from=builder /app/out/full/ . -- 2.45.2 From 067ba4a548a6cfe371d804db85ee3f17f692816f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 4 Oct 2024 13:02:53 +0000 Subject: [PATCH 38/38] Update dependency framer-motion to v11.11.1 --- pnpm-lock.yaml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 65ddb54..10ab453 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -85,7 +85,7 @@ importers: version: 1.1.7(@types/react@18.3.11)(dexie@4.0.8)(react@19.0.0-rc-3edc000d-20240926) framer-motion: specifier: ^11.5.4 - version: 11.11.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) + version: 11.11.1(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926) js-cookie: specifier: ^3.0.5 version: 3.0.5 @@ -2122,8 +2122,8 @@ packages: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} - framer-motion@11.11.0: - resolution: {integrity: sha512-H6Pv12fcXaebinvnLDabTS9vHwtJKAo7XsnVeNLm5t8Yq5LuVvQ3DtL/2yBa2kGmhdIgx9cw8mbj6I8PYx7jPA==} + framer-motion@11.11.1: + resolution: {integrity: sha512-Ucr9eHSrk0d+l6vyl9fvq6omh/PAWHjS+PlczpsoUdhJo1TuF3ULWJNuAMnpWQ1dGyPOyoUVuYlUKjE/s8dyCA==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 @@ -5693,7 +5693,7 @@ snapshots: debug: 4.3.7 enhanced-resolve: 5.17.1 eslint: 8.57.1 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) fast-glob: 3.3.2 get-tsconfig: 4.8.1 is-bun-module: 1.2.1 @@ -5706,7 +5706,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: @@ -5728,7 +5728,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.8.0(eslint@8.57.1)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -5937,7 +5937,7 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.1.0 - framer-motion@11.11.0(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): + framer-motion@11.11.1(react-dom@19.0.0-rc-3edc000d-20240926(react@19.0.0-rc-3edc000d-20240926))(react@19.0.0-rc-3edc000d-20240926): dependencies: tslib: 2.7.0 optionalDependencies: -- 2.45.2