diff --git a/db/postgresql/schema.prisma b/db/postgresql/schema.prisma
index 67889196..c297f4c4 100644
--- a/db/postgresql/schema.prisma
+++ b/db/postgresql/schema.prisma
@@ -1,6 +1,6 @@
generator client {
provider = "prisma-client"
- previewFeatures = ["driverAdapters"]
+ previewFeatures = ["queryCompiler", "driverAdapters"]
output = "../src/generated/prisma"
moduleFormat = "esm"
}
@@ -46,7 +46,7 @@ model Session {
websiteEvent WebsiteEvent[]
sessionData SessionData[]
- revenue Revenue[]
+ revenue Revenue[]
@@index([createdAt])
@@index([websiteId])
@@ -224,7 +224,7 @@ model Report {
type String @db.VarChar(200)
name String @db.VarChar(200)
description String @db.VarChar(500)
- parameters Json
+ parameters Json
createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz(6)
@@ -239,13 +239,13 @@ model Report {
}
model Segment {
- id String @id() @unique() @map("segment_id") @db.Uuid
- websiteId String @map("website_id") @db.Uuid
- type String @db.VarChar(200)
- name String @db.VarChar(200)
- filters Json
- createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
- updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz(6)
+ id String @id() @unique() @map("segment_id") @db.Uuid
+ websiteId String @map("website_id") @db.Uuid
+ type String @db.VarChar(200)
+ name String @db.VarChar(200)
+ filters Json
+ createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
+ updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz(6)
website Website @relation(fields: [websiteId], references: [id])
@@ -254,14 +254,14 @@ model Segment {
}
model Revenue {
- id String @id() @unique() @map("revenue_id") @db.Uuid
- websiteId String @map("website_id") @db.Uuid
- sessionId String @map("session_id") @db.Uuid
- eventId String @map("event_id") @db.Uuid
- eventName String @map("event_name") @db.VarChar(50)
- currency String @db.VarChar(100)
- revenue Decimal? @db.Decimal(19, 4)
- createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
+ id String @id() @unique() @map("revenue_id") @db.Uuid
+ websiteId String @map("website_id") @db.Uuid
+ sessionId String @map("session_id") @db.Uuid
+ eventId String @map("event_id") @db.Uuid
+ eventName String @map("event_name") @db.VarChar(50)
+ currency String @db.VarChar(100)
+ revenue Decimal? @db.Decimal(19, 4)
+ createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
website Website @relation(fields: [websiteId], references: [id])
session Session @relation(fields: [sessionId], references: [id])
diff --git a/package.json b/package.json
index 207335a2..a02a9fa8 100644
--- a/package.json
+++ b/package.json
@@ -75,13 +75,13 @@
"@dicebear/core": "^9.2.1",
"@fontsource/inter": "^4.5.15",
"@hello-pangea/dnd": "^17.0.0",
- "@prisma/adapter-pg": "^6.8.2",
- "@prisma/client": "^6.9.0",
+ "@prisma/adapter-pg": "^6.10.0",
+ "@prisma/client": "^6.10.0",
"@prisma/extension-read-replicas": "^0.4.1",
"@react-spring/web": "^9.7.3",
"@svgr/cli": "^8.1.0",
"@tanstack/react-query": "^5.28.6",
- "@umami/react-zen": "^0.137.0",
+ "@umami/react-zen": "^0.138.0",
"@umami/redis-client": "^0.27.0",
"bcryptjs": "^2.4.3",
"chalk": "^4.1.1",
@@ -107,14 +107,14 @@
"isbot": "^5.1.16",
"jsonwebtoken": "^9.0.2",
"kafkajs": "^2.1.0",
- "lucide-react": "^0.511.0",
+ "lucide-react": "^0.517.0",
"maxmind": "^4.3.24",
"md5": "^2.3.0",
"next": "15.3.3",
"node-fetch": "^3.2.8",
"npm-run-all": "^4.1.5",
"pg": "^8.16.0",
- "prisma": "6.9.0",
+ "prisma": "6.10.0",
"pure-rand": "^6.1.0",
"react": "^19.0.0",
"react-basics": "^0.126.0",
@@ -128,9 +128,9 @@
"semver": "^7.5.4",
"serialize-error": "^12.0.0",
"thenby": "^1.3.4",
- "uuid": "^9.0.0",
+ "uuid": "^11.1.0",
"zod": "^3.25.7",
- "zustand": "^4.5.5"
+ "zustand": "^5.0.5"
},
"devDependencies": {
"@formatjs/cli": "^4.2.29",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index af5d6cd1..e3dcc752 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -27,14 +27,14 @@ importers:
specifier: ^17.0.0
version: 17.0.0(@types/react@19.1.5)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
'@prisma/adapter-pg':
- specifier: ^6.8.2
- version: 6.8.2(pg@8.16.0)
+ specifier: ^6.10.0
+ version: 6.10.0(pg@8.16.0)
'@prisma/client':
- specifier: ^6.9.0
- version: 6.9.0(prisma@6.9.0(typescript@5.8.3))(typescript@5.8.3)
+ specifier: ^6.10.0
+ version: 6.10.0(prisma@6.10.0(typescript@5.8.3))(typescript@5.8.3)
'@prisma/extension-read-replicas':
specifier: ^0.4.1
- version: 0.4.1(@prisma/client@6.9.0(prisma@6.9.0(typescript@5.8.3))(typescript@5.8.3))
+ version: 0.4.1(@prisma/client@6.10.0(prisma@6.10.0(typescript@5.8.3))(typescript@5.8.3))
'@react-spring/web':
specifier: ^9.7.3
version: 9.7.5(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
@@ -45,8 +45,8 @@ importers:
specifier: ^5.28.6
version: 5.77.2(react@19.1.0)
'@umami/react-zen':
- specifier: ^0.137.0
- version: 0.137.0(@babel/core@7.27.1)(@types/react@19.1.5)(babel-plugin-react-compiler@19.1.0-rc.2)(immer@9.0.21)(use-sync-external-store@1.5.0(react@19.1.0))
+ specifier: ^0.138.0
+ version: 0.138.0(@babel/core@7.27.1)(@types/react@19.1.5)(babel-plugin-react-compiler@19.1.0-rc.2)(immer@9.0.21)(use-sync-external-store@1.5.0(react@19.1.0))
'@umami/redis-client':
specifier: ^0.27.0
version: 0.27.0
@@ -123,8 +123,8 @@ importers:
specifier: ^2.1.0
version: 2.2.4
lucide-react:
- specifier: ^0.511.0
- version: 0.511.0(react@19.1.0)
+ specifier: ^0.517.0
+ version: 0.517.0(react@19.1.0)
maxmind:
specifier: ^4.3.24
version: 4.3.25
@@ -144,8 +144,8 @@ importers:
specifier: ^8.16.0
version: 8.16.0
prisma:
- specifier: 6.9.0
- version: 6.9.0(typescript@5.8.3)
+ specifier: 6.10.0
+ version: 6.10.0(typescript@5.8.3)
pure-rand:
specifier: ^6.1.0
version: 6.1.0
@@ -186,14 +186,14 @@ importers:
specifier: ^1.3.4
version: 1.3.4
uuid:
- specifier: ^9.0.0
- version: 9.0.1
+ specifier: ^11.1.0
+ version: 11.1.0
zod:
specifier: ^3.25.7
version: 3.25.30
zustand:
- specifier: ^4.5.5
- version: 4.5.7(@types/react@19.1.5)(immer@9.0.21)(react@19.1.0)
+ specifier: ^5.0.5
+ version: 5.0.5(@types/react@19.1.5)(immer@9.0.21)(react@19.1.0)(use-sync-external-store@1.5.0(react@19.1.0))
devDependencies:
'@formatjs/cli':
specifier: ^4.2.29
@@ -355,6 +355,45 @@ importers:
specifier: ^5.5.3
version: 5.8.3
+ dist:
+ dependencies:
+ '@tanstack/react-query':
+ specifier: ^4.33.0
+ version: 4.40.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ classnames:
+ specifier: ^2.3.1
+ version: 2.5.1
+ colord:
+ specifier: ^2.9.2
+ version: 2.9.3
+ date-fns-tz:
+ specifier: ^1.1.4
+ version: 1.3.8(date-fns@2.30.0)
+ immer:
+ specifier: ^9.0.12
+ version: 9.0.21
+ moment-timezone:
+ specifier: ^0.5.35
+ version: 0.5.48
+ next:
+ specifier: ^13.4.0
+ version: 13.5.11(@babel/core@7.27.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ next-basics:
+ specifier: ^0.36.0
+ version: 0.36.0(next@13.5.11(@babel/core@7.27.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react:
+ specifier: ^18.2.0
+ version: 18.3.1
+ react-dom:
+ specifier: ^18.2.0
+ version: 18.3.1(react@18.3.1)
+ react-intl:
+ specifier: ^5.24.7
+ version: 5.25.1(react@18.3.1)(typescript@4.9.5)
+ zustand:
+ specifier: ^4.3.8
+ version: 4.5.7(@types/react@19.1.5)(immer@9.0.21)(react@18.3.1)
+
packages:
'@ampproject/remapping@2.3.0':
@@ -1056,6 +1095,9 @@ packages:
'@formatjs/ecma402-abstract@2.3.4':
resolution: {integrity: sha512-qrycXDeaORzIqNhBOx0btnhpD1c+/qFIHAN9znofuMJX6QBwtbrmlpWfD4oiUUD2vJUOIYFA/gYtg2KAMGG7sA==}
+ '@formatjs/fast-memoize@1.2.1':
+ resolution: {integrity: sha512-Rg0e76nomkz3vF9IPlKeV+Qynok0r7YZjL6syLz4/urSg0IbjPZCB/iYUMNsYA643gh4mgrX3T7KEIFIxJBQeg==}
+
'@formatjs/fast-memoize@2.2.3':
resolution: {integrity: sha512-3jeJ+HyOfu8osl3GNSL4vVHUuWFXR03Iz9jjgI7RwjG6ysu/Ymdr0JRCPHfF5yGbTE6JCrd63EpvX1/WybYRbA==}
@@ -1080,9 +1122,15 @@ packages:
'@formatjs/icu-skeleton-parser@1.8.8':
resolution: {integrity: sha512-vHwK3piXwamFcx5YQdCdJxUQ1WdTl6ANclt5xba5zLGDv5Bsur7qz8AD7BevaKxITwpgDeU0u8My3AIibW9ywA==}
+ '@formatjs/intl-displaynames@5.4.3':
+ resolution: {integrity: sha512-4r12A3mS5dp5hnSaQCWBuBNfi9Amgx2dzhU4lTFfhSxgb5DOAiAbMpg6+7gpWZgl4ahsj3l2r/iHIjdmdXOE2Q==}
+
'@formatjs/intl-displaynames@6.8.5':
resolution: {integrity: sha512-85b+GdAKCsleS6cqVxf/Aw/uBd+20EM0wDpgaxzHo3RIR3bxF4xCJqH/Grbzx8CXurTgDDZHPdPdwJC+May41w==}
+ '@formatjs/intl-listformat@6.5.3':
+ resolution: {integrity: sha512-ozpz515F/+3CU+HnLi5DYPsLa6JoCfBggBSSg/8nOB5LYSFW9+ZgNQJxJ8tdhKYeODT+4qVHX27EeJLoxLGLNg==}
+
'@formatjs/intl-listformat@7.7.5':
resolution: {integrity: sha512-Wzes10SMNeYgnxYiKsda4rnHP3Q3II4XT2tZyOgnH5fWuHDtIkceuWlRQNsvrI3uiwP4hLqp2XdQTCsfkhXulg==}
@@ -1106,6 +1154,14 @@ packages:
typescript:
optional: true
+ '@formatjs/intl@2.2.1':
+ resolution: {integrity: sha512-vgvyUOOrzqVaOFYzTf2d3+ToSkH2JpR7x/4U1RyoHQLmvEaTQvXJ7A2qm1Iy3brGNXC/+/7bUlc3lpH+h/LOJA==}
+ peerDependencies:
+ typescript: ^4.5
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@formatjs/ts-transformer@2.13.0':
resolution: {integrity: sha512-mu7sHXZk1NWZrQ3eUqugpSYo8x5/tXkrI4uIbFqCEC0eNgQaIcoKgVeDFgDAcgG+cEme2atAUYSFF+DFWC4org==}
peerDependencies:
@@ -1381,54 +1437,111 @@ packages:
resolution: {integrity: sha512-9Hgd/J5nP2U/Vv0teytq9uUAGppiKV9t5tzpsuMLqeqUGD9STxXwKmyZd2v8Z4THSW9rw4+8w7dH7LVlFoym2A==}
engines: {node: '>=18.0.0'}
+ '@next/env@13.5.11':
+ resolution: {integrity: sha512-fbb2C7HChgM7CemdCY+y3N1n8pcTKdqtQLbC7/EQtPdLvlMUT9JX/dBYl8MMZAtYG4uVMyPFHXckb68q/NRwqg==}
+
'@next/env@15.3.3':
resolution: {integrity: sha512-OdiMrzCl2Xi0VTjiQQUK0Xh7bJHnOuET2s+3V+Y40WJBAXrJeGA3f+I8MZJ/YQ3mVGi5XGR1L66oFlgqXhQ4Vw==}
'@next/eslint-plugin-next@14.2.29':
resolution: {integrity: sha512-qpxSYiPNJTr9RzqjGi5yom8AIC8Kgdtw4oNIXAB/gDYMDctmfMEv452FRUhT06cWPgcmSsbZiEPYhbFiQtCWTg==}
+ '@next/swc-darwin-arm64@13.5.9':
+ resolution: {integrity: sha512-pVyd8/1y1l5atQRvOaLOvfbmRwefxLhqQOzYo/M7FQ5eaRwA1+wuCn7t39VwEgDd7Aw1+AIWwd+MURXUeXhwDw==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
'@next/swc-darwin-arm64@15.3.3':
resolution: {integrity: sha512-WRJERLuH+O3oYB4yZNVahSVFmtxRNjNF1I1c34tYMoJb0Pve+7/RaLAJJizyYiFhjYNGHRAE1Ri2Fd23zgDqhg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
+ '@next/swc-darwin-x64@13.5.9':
+ resolution: {integrity: sha512-DwdeJqP7v8wmoyTWPbPVodTwCybBZa02xjSJ6YQFIFZFZ7dFgrieKW4Eo0GoIcOJq5+JxkQyejmI+8zwDp3pwA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
'@next/swc-darwin-x64@15.3.3':
resolution: {integrity: sha512-XHdzH/yBc55lu78k/XwtuFR/ZXUTcflpRXcsu0nKmF45U96jt1tsOZhVrn5YH+paw66zOANpOnFQ9i6/j+UYvw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
+ '@next/swc-linux-arm64-gnu@13.5.9':
+ resolution: {integrity: sha512-wdQsKsIsGSNdFojvjW3Ozrh8Q00+GqL3wTaMjDkQxVtRbAqfFBtrLPO0IuWChVUP2UeuQcHpVeUvu0YgOP00+g==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
'@next/swc-linux-arm64-gnu@15.3.3':
resolution: {integrity: sha512-VZ3sYL2LXB8znNGcjhocikEkag/8xiLgnvQts41tq6i+wql63SMS1Q6N8RVXHw5pEUjiof+II3HkDd7GFcgkzw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
+ '@next/swc-linux-arm64-musl@13.5.9':
+ resolution: {integrity: sha512-6VpS+bodQqzOeCwGxoimlRoosiWlSc0C224I7SQWJZoyJuT1ChNCo+45QQH+/GtbR/s7nhaUqmiHdzZC9TXnXA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
'@next/swc-linux-arm64-musl@15.3.3':
resolution: {integrity: sha512-h6Y1fLU4RWAp1HPNJWDYBQ+e3G7sLckyBXhmH9ajn8l/RSMnhbuPBV/fXmy3muMcVwoJdHL+UtzRzs0nXOf9SA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
+ '@next/swc-linux-x64-gnu@13.5.9':
+ resolution: {integrity: sha512-XxG3yj61WDd28NA8gFASIR+2viQaYZEFQagEodhI/R49gXWnYhiflTeeEmCn7Vgnxa/OfK81h1gvhUZ66lozpw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
'@next/swc-linux-x64-gnu@15.3.3':
resolution: {integrity: sha512-jJ8HRiF3N8Zw6hGlytCj5BiHyG/K+fnTKVDEKvUCyiQ/0r5tgwO7OgaRiOjjRoIx2vwLR+Rz8hQoPrnmFbJdfw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
+ '@next/swc-linux-x64-musl@13.5.9':
+ resolution: {integrity: sha512-/dnscWqfO3+U8asd+Fc6dwL2l9AZDl7eKtPNKW8mKLh4Y4wOpjJiamhe8Dx+D+Oq0GYVjuW0WwjIxYWVozt2bA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
'@next/swc-linux-x64-musl@15.3.3':
resolution: {integrity: sha512-HrUcTr4N+RgiiGn3jjeT6Oo208UT/7BuTr7K0mdKRBtTbT4v9zJqCDKO97DUqqoBK1qyzP1RwvrWTvU6EPh/Cw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
+ '@next/swc-win32-arm64-msvc@13.5.9':
+ resolution: {integrity: sha512-T/iPnyurOK5a4HRUcxAlss8uzoEf5h9tkd+W2dSWAfzxv8WLKlUgbfk+DH43JY3Gc2xK5URLuXrxDZ2mGfk/jw==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
'@next/swc-win32-arm64-msvc@15.3.3':
resolution: {integrity: sha512-SxorONgi6K7ZUysMtRF3mIeHC5aA3IQLmKFQzU0OuhuUYwpOBc1ypaLJLP5Bf3M9k53KUUUj4vTPwzGvl/NwlQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
+ '@next/swc-win32-ia32-msvc@13.5.9':
+ resolution: {integrity: sha512-BLiPKJomaPrTAb7ykjA0LPcuuNMLDVK177Z1xe0nAem33+9FIayU4k/OWrtSn9SAJW/U60+1hoey5z+KCHdRLQ==}
+ engines: {node: '>= 10'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@next/swc-win32-x64-msvc@13.5.9':
+ resolution: {integrity: sha512-/72/dZfjXXNY/u+n8gqZDjI6rxKMpYsgBBYNZKWOQw0BpBF7WCnPflRy3ZtvQ2+IYI3ZH2bPyj7K+6a6wNk90Q==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
'@next/swc-win32-x64-msvc@15.3.3':
resolution: {integrity: sha512-4QZG6F8enl9/S2+yIiOiju0iCTFd93d8VC1q9LZS4p/Xuk81W2QDjCFeoogmrWWkAD59z8ZxepBQap2dKS5ruw==}
engines: {node: '>= 10'}
@@ -1455,13 +1568,13 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
- '@prisma/adapter-pg@6.8.2':
- resolution: {integrity: sha512-T0c+oQsP0F47cTsoKPSEtPRmeuhFaCPcMFDev6N1QTnQZi+COkAiO6NKmblf1MM8D9ltYhs1PRsYBzPWB6QKwg==}
+ '@prisma/adapter-pg@6.10.0':
+ resolution: {integrity: sha512-uA8bu8b7GfVFLz3pqlV7vnh4+ohNjXpMks/67snm2/H8UxAPkViWnOhoNG2DKD8RAZQm0Ka+XNK+CK9onF6Teg==}
peerDependencies:
pg: ^8.11.3
- '@prisma/client@6.9.0':
- resolution: {integrity: sha512-Gg7j1hwy3SgF1KHrh0PZsYvAaykeR0PaxusnLXydehS96voYCGt1U5zVR31NIouYc63hWzidcrir1a7AIyCsNQ==}
+ '@prisma/client@6.10.0':
+ resolution: {integrity: sha512-C+3A6sPt8EwUlNwsbT22IoUq0O+wXXA4Sw39UmCATlfa8HVP5r0X/l9xGyELhfSmmO0sjgSAl7qmlCHS6Dkekw==}
engines: {node: '>=18.18'}
peerDependencies:
prisma: '*'
@@ -1472,34 +1585,31 @@ packages:
typescript:
optional: true
- '@prisma/config@6.9.0':
- resolution: {integrity: sha512-Wcfk8/lN3WRJd5w4jmNQkUwhUw0eksaU/+BlAJwPQKW10k0h0LC9PD/6TQFmqKVbHQL0vG2z266r0S1MPzzhbA==}
+ '@prisma/config@6.10.0':
+ resolution: {integrity: sha512-9aA88Vub9O7zdb52PuJg88cN2GCjfY2I45CIttJe7fS5EyvTRRGE/PDQlbjTG9ij9+leD47fGLQCqYDpyCE5Iw==}
- '@prisma/debug@6.8.2':
- resolution: {integrity: sha512-4muBSSUwJJ9BYth5N8tqts8JtiLT8QI/RSAzEogwEfpbYGFo9mYsInsVo8dqXdPO2+Rm5OG5q0qWDDE3nyUbVg==}
+ '@prisma/debug@6.10.0':
+ resolution: {integrity: sha512-vzVu0Z3DfCzyx0m7LPZgdA/M7opv7B2R7agNLjh1PpIapCqHo/dwoXoj3Kl25A6TkmhexJzOZKedmhpXsMBwGA==}
- '@prisma/debug@6.9.0':
- resolution: {integrity: sha512-bFeur/qi/Q+Mqk4JdQ3R38upSYPebv5aOyD1RKywVD+rAMLtRkmTFn28ZuTtVOnZHEdtxnNOCH+bPIeSGz1+Fg==}
+ '@prisma/driver-adapter-utils@6.10.0':
+ resolution: {integrity: sha512-+nApo/19QbfPy6smSwZValpNYbHrcI3ew6vhogYgJEijsB09Mxu2Wo+JDZIGF21DQq6RdRWeBFnJtUHLISlw4Q==}
- '@prisma/driver-adapter-utils@6.8.2':
- resolution: {integrity: sha512-5+CzN/41gBsRmA3ekbVy1TXnSImSPBtMlxWAttVH6tg94bv4zGGRmyk5tUCdT83nl0hG1Sq2oMXR7ml6aqILvw==}
+ '@prisma/engines-version@6.10.0-43.aee10d5a411e4360c6d3445ce4810ca65adbf3e8':
+ resolution: {integrity: sha512-Dy7cS5Sz/kzdj2nrYTiPfycf/ZeQXFoIcXgTLmYHpuDX0rGITEGe7JSTSNnLYRUnjTHerDTPGPJCiDeyb6lPBg==}
- '@prisma/engines-version@6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e':
- resolution: {integrity: sha512-Qp9gMoBHgqhKlrvumZWujmuD7q4DV/gooEyPCLtbkc13EZdSz2RsGUJ5mHb3RJgAbk+dm6XenqG7obJEhXcJ6Q==}
-
- '@prisma/engines@6.9.0':
- resolution: {integrity: sha512-im0X0bwDLA0244CDf8fuvnLuCQcBBdAGgr+ByvGfQY9wWl6EA+kRGwVk8ZIpG65rnlOwtaWIr/ZcEU5pNVvq9g==}
+ '@prisma/engines@6.10.0':
+ resolution: {integrity: sha512-g/VL/J+b1rjzvPLZWSjOt/iWX/As44IF65x0XrsvwjD1UI0hLHzDAVx3AJz4k4cNsFzEQqVl/rLa6ICsLy8v5w==}
'@prisma/extension-read-replicas@0.4.1':
resolution: {integrity: sha512-mCMDloqUKUwx2o5uedTs1FHX3Nxdt1GdRMoeyp1JggjiwOALmIYWhxfIN08M2BZ0w8SKwvJqicJZMjkQYkkijw==}
peerDependencies:
'@prisma/client': ^6.5.0
- '@prisma/fetch-engine@6.9.0':
- resolution: {integrity: sha512-PMKhJdl4fOdeE3J3NkcWZ+tf3W6rx3ht/rLU8w4SXFRcLhd5+3VcqY4Kslpdm8osca4ej3gTfB3+cSk5pGxgFg==}
+ '@prisma/fetch-engine@6.10.0':
+ resolution: {integrity: sha512-7An09F6Xe886gSwcj1HEY/0LBuD4IR0ZnKbNv4d0kMnmNzGCz+IK4XRnd/yOkiptIks0nF+igLEin5MEoBejfA==}
- '@prisma/get-platform@6.9.0':
- resolution: {integrity: sha512-/B4n+5V1LI/1JQcHp+sUpyRT1bBgZVPHbsC4lt4/19Xp4jvNIVcq5KYNtQDk5e/ukTSjo9PZVAxxy9ieFtlpTQ==}
+ '@prisma/get-platform@6.10.0':
+ resolution: {integrity: sha512-6xqX2cxC2l0JHySyyFlXZ4QIESeEmkvSJfGy2r/NsQG+vjxBNDrlwDOgh+aQI1ivbgqwFRjSXuUjl/yd2Za2HQ==}
'@react-aria/autocomplete@3.0.0-beta.3':
resolution: {integrity: sha512-8haBygHNMqVt4Ge90VOk+iVlLW+zhiOGHYz2IKCE6+Sy1dTE6mzhHjxrtwWYnSez/OQLbxjHlwLch4CDd5JkLA==}
@@ -2321,9 +2431,27 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
+ '@swc/helpers@0.5.2':
+ resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==}
+
+ '@tanstack/query-core@4.40.0':
+ resolution: {integrity: sha512-7MJTtZkCSuehMC7IxMOCGsLvHS3jHx4WjveSrGsG1Nc1UQLjaFwwkpLA2LmPfvOAxnH4mszMOBFD6LlZE+aB+Q==}
+
'@tanstack/query-core@5.77.2':
resolution: {integrity: sha512-1lqJwPsR6GX6nZFw06erRt518O19tWU6Q+x0fJUygl4lxHCYF2nhzBPwLKk2NPjYOrpR0K567hxPc5K++xDe9Q==}
+ '@tanstack/react-query@4.40.0':
+ resolution: {integrity: sha512-kt1G/wETT/Ad79cac5zJ8tyaMOm4rgyeomW5yDxgOO9qEhOwufgw9kgPpp+T9U0M0lL7EMoc6YXgv4gYhXu9tg==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
+ react-native: '*'
+ peerDependenciesMeta:
+ react-dom:
+ optional: true
+ react-native:
+ optional: true
+
'@tanstack/react-query@5.77.2':
resolution: {integrity: sha512-BRHxWdy1mHmgAcYA/qy2IPLylT81oebLgkm9K85viN2Qol/Vq48t1dzDFeDIVQjTWDV96AmqsLNPlH5HjyKCxA==}
peerDependencies:
@@ -2540,8 +2668,8 @@ packages:
resolution: {integrity: sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@umami/react-zen@0.137.0':
- resolution: {integrity: sha512-gjjqUTXJoh2DXB0ML4VAgK8xSdnMsZSQ5eBsRmX9iyjSP2iV5en38He+bpCTwVQcOT48Ask/12ILp/7t2f70vw==}
+ '@umami/react-zen@0.138.0':
+ resolution: {integrity: sha512-MlrLu21/WjmzPnYRQgQTofb7o+1fvL8XF7EbCjZFKjW+VHz5Cg6nOZWiFBxGWWCIAWfIVZpvczvK+thi4hHigg==}
'@umami/redis-client@0.27.0':
resolution: {integrity: sha512-SbHTpxhgeZyTBUSp2zdZM+XUtpsaSL4Tad8QXIEhEtjWhvvfoornyT5kLuyYCVtzSAT4daALeGmOO1z6EE1KcA==}
@@ -4045,6 +4173,9 @@ packages:
resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
engines: {node: '>=10.13.0'}
+ glob-to-regexp@0.4.1:
+ resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
+
glob@10.3.10:
resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -4281,6 +4412,9 @@ packages:
intl-messageformat@10.7.7:
resolution: {integrity: sha512-F134jIoeYMro/3I0h08D0Yt4N9o9pjddU/4IIxMMURqbAtI2wu70X8hvG1V48W49zXHXv3RKSF/po+0fDfsGjA==}
+ intl-messageformat@9.13.0:
+ resolution: {integrity: sha512-7sGC7QnSQGa5LZP7bXLDhVDtQOeKGeBFGHF2Y8LVBwYZoQZCgWeKoPGTa5GMG8g/TzDgeXuYJQis7Ggiw2xTOw==}
+
ipaddr.js@2.2.0:
resolution: {integrity: sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==}
engines: {node: '>= 10'}
@@ -4917,6 +5051,11 @@ packages:
peerDependencies:
react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ lucide-react@0.517.0:
+ resolution: {integrity: sha512-TQCwwbwIuVG6SSutUC2Ol6PRXcuZndqoVAnDa7S7xb/RWPaiKTvLwX7byUKeh0pUgvtFh0NZZwFIDuMSeB7Iwg==}
+ peerDependencies:
+ react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
magic-string@0.30.17:
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
@@ -5067,6 +5206,12 @@ packages:
resolution: {integrity: sha512-V6DDh3v8tfZFWbeH6fsL5uBIlWL7SvRgGDaAZWFC5kjQ2xP5dl/mLpWwJQ1Ho6ZbEKVp/351QF1JXYTAmeZ/zA==}
engines: {node: '>=10', npm: '>=6'}
+ moment-timezone@0.5.48:
+ resolution: {integrity: sha512-f22b8LV1gbTO2ms2j2z13MuPogNoh5UzxL3nzNAYKGraILnbGc9NEE6dyiiiLv46DGRb8A4kg8UKWLjPthxBHw==}
+
+ moment@2.30.1:
+ resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==}
+
ms@2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
@@ -5086,6 +5231,28 @@ packages:
natural-compare@1.4.0:
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+ next-basics@0.36.0:
+ resolution: {integrity: sha512-Nwou8pCjFuoD/ZxUw9iKC7hhZeWbo/ng0ze74yck3W89MNc/CepwCDziflAHY5XcmIVNmpXOCu9OfmzTdVRPWQ==}
+ peerDependencies:
+ next: ^13.4.0
+ react: ^18.2.0
+ react-dom: ^18.2.0
+
+ next@13.5.11:
+ resolution: {integrity: sha512-WUPJ6WbAX9tdC86kGTu92qkrRdgRqVrY++nwM+shmWQwmyxt4zhZfR59moXSI4N8GDYCBY3lIAqhzjDd4rTC8Q==}
+ engines: {node: '>=16.14.0'}
+ hasBin: true
+ peerDependencies:
+ '@opentelemetry/api': ^1.1.0
+ react: ^18.2.0
+ react-dom: ^18.2.0
+ sass: ^1.3.0
+ peerDependenciesMeta:
+ '@opentelemetry/api':
+ optional: true
+ sass:
+ optional: true
+
next@15.3.3:
resolution: {integrity: sha512-JqNj29hHNmCLtNvd090SyRbXJiivQ+58XjCcrC50Crb5g5u2zi7Y2YivbsEfzk6AtVI80akdOQbaMZwWB1Hthw==}
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
@@ -5843,8 +6010,8 @@ packages:
resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- prisma@6.9.0:
- resolution: {integrity: sha512-resJAwMyZREC/I40LF6FZ6rZTnlrlrYrb63oW37Gq+U+9xHwbyMSPJjKtM7VZf3gTO86t/Oyz+YeSXr3CmAY1Q==}
+ prisma@6.10.0:
+ resolution: {integrity: sha512-hyfwi+HpH2lHlRUj3O6CtWg44D7iuxi/O+xoLIsDjUNvriyFIVlw4a+8facnByZnm4Lt54+ZzJkFvkKBm7bIug==}
engines: {node: '>=18.18'}
hasBin: true
peerDependencies:
@@ -5921,6 +6088,11 @@ packages:
react: ^18.2.0
react-dom: ^18.2.0
+ react-dom@18.3.1:
+ resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==}
+ peerDependencies:
+ react: ^18.3.1
+
react-dom@19.1.0:
resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==}
peerDependencies:
@@ -5937,8 +6109,8 @@ packages:
peerDependencies:
react: ^16.8.0 || ^17 || ^18 || ^19
- react-hook-form@7.57.0:
- resolution: {integrity: sha512-RbEks3+cbvTP84l/VXGUZ+JMrKOS8ykQCRYdm5aYsxnDquL0vspsyNhGRO7pcH6hsZqWlPOjLye7rJqdtdAmlg==}
+ react-hook-form@7.58.1:
+ resolution: {integrity: sha512-Lml/KZYEEFfPhUVgE0RdCVpnC4yhW+PndRhbiTtdvSlQTL8IfVR+iQkBjLIvmmc6+GGoVeM11z37ktKFPAb0FA==}
engines: {node: '>=18.0.0'}
peerDependencies:
react: ^16.8.0 || ^17 || ^18 || ^19
@@ -5948,6 +6120,15 @@ packages:
peerDependencies:
react: '*'
+ react-intl@5.25.1:
+ resolution: {integrity: sha512-pkjdQDvpJROoXLMltkP/5mZb0/XqrqLoPGKUCfbdkP8m6U9xbK40K51Wu+a4aQqTEvEK5lHBk0fWzUV72SJ3Hg==}
+ peerDependencies:
+ react: ^16.3.0 || 17 || 18
+ typescript: ^4.5
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
react-intl@6.8.9:
resolution: {integrity: sha512-TUfj5E7lyUDvz/GtovC9OMh441kBr08rtIbgh3p0R8iF3hVY+V2W9Am7rb8BpJ/29BH1utJOqOOhmvEVh3GfZg==}
peerDependencies:
@@ -6003,6 +6184,10 @@ packages:
react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react@18.3.1:
+ resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
+ engines: {node: '>=0.10.0'}
+
react@19.1.0:
resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==}
engines: {node: '>=0.10.0'}
@@ -6189,6 +6374,9 @@ packages:
safer-buffer@2.1.2:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+ scheduler@0.23.2:
+ resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==}
+
scheduler@0.26.0:
resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==}
@@ -6448,6 +6636,19 @@ packages:
style-search@0.1.0:
resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==}
+ styled-jsx@5.1.1:
+ resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==}
+ engines: {node: '>= 12.0.0'}
+ peerDependencies:
+ '@babel/core': '*'
+ babel-plugin-macros: '*'
+ react: '>= 16.8.0 || 17.x.x || ^18.0.0-0'
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+ babel-plugin-macros:
+ optional: true
+
styled-jsx@5.1.6:
resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==}
engines: {node: '>= 12.0.0'}
@@ -6784,12 +6985,12 @@ packages:
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
- uuid@8.3.2:
- resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
+ uuid@11.1.0:
+ resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==}
hasBin: true
- uuid@9.0.1:
- resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==}
+ uuid@8.3.2:
+ resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
hasBin: true
v8-compile-cache-lib@3.0.1:
@@ -6821,6 +7022,10 @@ packages:
walker@1.0.8:
resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==}
+ watchpack@2.4.0:
+ resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==}
+ engines: {node: '>=10.13.0'}
+
web-streams-polyfill@3.3.3:
resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==}
engines: {node: '>= 8'}
@@ -7624,6 +7829,10 @@ snapshots:
decimal.js: 10.5.0
tslib: 2.8.1
+ '@formatjs/fast-memoize@1.2.1':
+ dependencies:
+ tslib: 2.8.1
+
'@formatjs/fast-memoize@2.2.3':
dependencies:
tslib: 2.8.1
@@ -7665,12 +7874,24 @@ snapshots:
'@formatjs/ecma402-abstract': 2.2.4
tslib: 2.8.1
+ '@formatjs/intl-displaynames@5.4.3':
+ dependencies:
+ '@formatjs/ecma402-abstract': 1.11.4
+ '@formatjs/intl-localematcher': 0.2.25
+ tslib: 2.8.1
+
'@formatjs/intl-displaynames@6.8.5':
dependencies:
'@formatjs/ecma402-abstract': 2.2.4
'@formatjs/intl-localematcher': 0.5.8
tslib: 2.8.1
+ '@formatjs/intl-listformat@6.5.3':
+ dependencies:
+ '@formatjs/ecma402-abstract': 1.11.4
+ '@formatjs/intl-localematcher': 0.2.25
+ tslib: 2.8.1
+
'@formatjs/intl-listformat@7.7.5':
dependencies:
'@formatjs/ecma402-abstract': 2.2.4
@@ -7706,6 +7927,18 @@ snapshots:
optionalDependencies:
typescript: 5.8.3
+ '@formatjs/intl@2.2.1(typescript@4.9.5)':
+ dependencies:
+ '@formatjs/ecma402-abstract': 1.11.4
+ '@formatjs/fast-memoize': 1.2.1
+ '@formatjs/icu-messageformat-parser': 2.1.0
+ '@formatjs/intl-displaynames': 5.4.3
+ '@formatjs/intl-listformat': 6.5.3
+ intl-messageformat: 9.13.0
+ tslib: 2.8.1
+ optionalDependencies:
+ typescript: 4.9.5
+
'@formatjs/ts-transformer@2.13.0(ts-jest@29.3.4(@babel/core@7.27.1)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.1))(esbuild@0.25.5)(jest@29.7.0(@types/node@22.15.21)(ts-node@10.9.2(@types/node@22.15.21)(typescript@5.8.3)))(typescript@5.8.3))':
dependencies:
intl-messageformat-parser: 6.1.2
@@ -8067,33 +8300,62 @@ snapshots:
'@netlify/plugin-nextjs@5.11.2': {}
+ '@next/env@13.5.11': {}
+
'@next/env@15.3.3': {}
'@next/eslint-plugin-next@14.2.29':
dependencies:
glob: 10.3.10
+ '@next/swc-darwin-arm64@13.5.9':
+ optional: true
+
'@next/swc-darwin-arm64@15.3.3':
optional: true
+ '@next/swc-darwin-x64@13.5.9':
+ optional: true
+
'@next/swc-darwin-x64@15.3.3':
optional: true
+ '@next/swc-linux-arm64-gnu@13.5.9':
+ optional: true
+
'@next/swc-linux-arm64-gnu@15.3.3':
optional: true
+ '@next/swc-linux-arm64-musl@13.5.9':
+ optional: true
+
'@next/swc-linux-arm64-musl@15.3.3':
optional: true
+ '@next/swc-linux-x64-gnu@13.5.9':
+ optional: true
+
'@next/swc-linux-x64-gnu@15.3.3':
optional: true
+ '@next/swc-linux-x64-musl@13.5.9':
+ optional: true
+
'@next/swc-linux-x64-musl@15.3.3':
optional: true
+ '@next/swc-win32-arm64-msvc@13.5.9':
+ optional: true
+
'@next/swc-win32-arm64-msvc@15.3.3':
optional: true
+ '@next/swc-win32-ia32-msvc@13.5.9':
+ optional: true
+
+ '@next/swc-win32-x64-msvc@13.5.9':
+ optional: true
+
'@next/swc-win32-x64-msvc@15.3.3':
optional: true
@@ -8114,51 +8376,49 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
- '@prisma/adapter-pg@6.8.2(pg@8.16.0)':
+ '@prisma/adapter-pg@6.10.0(pg@8.16.0)':
dependencies:
- '@prisma/driver-adapter-utils': 6.8.2
+ '@prisma/driver-adapter-utils': 6.10.0
pg: 8.16.0
postgres-array: 3.0.4
- '@prisma/client@6.9.0(prisma@6.9.0(typescript@5.8.3))(typescript@5.8.3)':
+ '@prisma/client@6.10.0(prisma@6.10.0(typescript@5.8.3))(typescript@5.8.3)':
optionalDependencies:
- prisma: 6.9.0(typescript@5.8.3)
+ prisma: 6.10.0(typescript@5.8.3)
typescript: 5.8.3
- '@prisma/config@6.9.0':
+ '@prisma/config@6.10.0':
dependencies:
jiti: 2.4.2
- '@prisma/debug@6.8.2': {}
+ '@prisma/debug@6.10.0': {}
- '@prisma/debug@6.9.0': {}
-
- '@prisma/driver-adapter-utils@6.8.2':
+ '@prisma/driver-adapter-utils@6.10.0':
dependencies:
- '@prisma/debug': 6.8.2
+ '@prisma/debug': 6.10.0
- '@prisma/engines-version@6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e': {}
+ '@prisma/engines-version@6.10.0-43.aee10d5a411e4360c6d3445ce4810ca65adbf3e8': {}
- '@prisma/engines@6.9.0':
+ '@prisma/engines@6.10.0':
dependencies:
- '@prisma/debug': 6.9.0
- '@prisma/engines-version': 6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e
- '@prisma/fetch-engine': 6.9.0
- '@prisma/get-platform': 6.9.0
+ '@prisma/debug': 6.10.0
+ '@prisma/engines-version': 6.10.0-43.aee10d5a411e4360c6d3445ce4810ca65adbf3e8
+ '@prisma/fetch-engine': 6.10.0
+ '@prisma/get-platform': 6.10.0
- '@prisma/extension-read-replicas@0.4.1(@prisma/client@6.9.0(prisma@6.9.0(typescript@5.8.3))(typescript@5.8.3))':
+ '@prisma/extension-read-replicas@0.4.1(@prisma/client@6.10.0(prisma@6.10.0(typescript@5.8.3))(typescript@5.8.3))':
dependencies:
- '@prisma/client': 6.9.0(prisma@6.9.0(typescript@5.8.3))(typescript@5.8.3)
+ '@prisma/client': 6.10.0(prisma@6.10.0(typescript@5.8.3))(typescript@5.8.3)
- '@prisma/fetch-engine@6.9.0':
+ '@prisma/fetch-engine@6.10.0':
dependencies:
- '@prisma/debug': 6.9.0
- '@prisma/engines-version': 6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e
- '@prisma/get-platform': 6.9.0
+ '@prisma/debug': 6.10.0
+ '@prisma/engines-version': 6.10.0-43.aee10d5a411e4360c6d3445ce4810ca65adbf3e8
+ '@prisma/get-platform': 6.10.0
- '@prisma/get-platform@6.9.0':
+ '@prisma/get-platform@6.10.0':
dependencies:
- '@prisma/debug': 6.9.0
+ '@prisma/debug': 6.10.0
'@react-aria/autocomplete@3.0.0-beta.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
dependencies:
@@ -9450,8 +9710,22 @@ snapshots:
dependencies:
tslib: 2.8.1
+ '@swc/helpers@0.5.2':
+ dependencies:
+ tslib: 2.8.1
+
+ '@tanstack/query-core@4.40.0': {}
+
'@tanstack/query-core@5.77.2': {}
+ '@tanstack/react-query@4.40.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@tanstack/query-core': 4.40.0
+ react: 18.3.1
+ use-sync-external-store: 1.5.0(react@18.3.1)
+ optionalDependencies:
+ react-dom: 18.3.1(react@18.3.1)
+
'@tanstack/react-query@5.77.2(react@19.1.0)':
dependencies:
'@tanstack/query-core': 5.77.2
@@ -9718,7 +9992,7 @@ snapshots:
'@typescript-eslint/types': 8.32.1
eslint-visitor-keys: 4.2.0
- '@umami/react-zen@0.137.0(@babel/core@7.27.1)(@types/react@19.1.5)(babel-plugin-react-compiler@19.1.0-rc.2)(immer@9.0.21)(use-sync-external-store@1.5.0(react@19.1.0))':
+ '@umami/react-zen@0.138.0(@babel/core@7.27.1)(@types/react@19.1.5)(babel-plugin-react-compiler@19.1.0-rc.2)(immer@9.0.21)(use-sync-external-store@1.5.0(react@19.1.0))':
dependencies:
'@fontsource/jetbrains-mono': 5.2.6
'@internationalized/date': 3.8.2
@@ -9732,7 +10006,7 @@ snapshots:
react: 19.1.0
react-aria-components: 1.9.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
react-dom: 19.1.0(react@19.1.0)
- react-hook-form: 7.57.0(react@19.1.0)
+ react-hook-form: 7.58.1(react@19.1.0)
react-icons: 5.5.0(react@19.1.0)
thenby: 1.3.4
zustand: 5.0.5(@types/react@19.1.5)(immer@9.0.21)(react@19.1.0)(use-sync-external-store@1.5.0(react@19.1.0))
@@ -11539,6 +11813,8 @@ snapshots:
dependencies:
is-glob: 4.0.3
+ glob-to-regexp@0.4.1: {}
+
glob@10.3.10:
dependencies:
foreground-child: 3.3.1
@@ -11768,6 +12044,13 @@ snapshots:
'@formatjs/icu-messageformat-parser': 2.9.4
tslib: 2.8.1
+ intl-messageformat@9.13.0:
+ dependencies:
+ '@formatjs/ecma402-abstract': 1.11.4
+ '@formatjs/fast-memoize': 1.2.1
+ '@formatjs/icu-messageformat-parser': 2.1.0
+ tslib: 2.8.1
+
ipaddr.js@2.2.0: {}
is-array-buffer@3.0.5:
@@ -12593,6 +12876,10 @@ snapshots:
dependencies:
react: 19.1.0
+ lucide-react@0.517.0(react@19.1.0):
+ dependencies:
+ react: 19.1.0
+
magic-string@0.30.17:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.0
@@ -12740,6 +13027,12 @@ snapshots:
mmdb-lib@2.2.0: {}
+ moment-timezone@0.5.48:
+ dependencies:
+ moment: 2.30.1
+
+ moment@2.30.1: {}
+
ms@2.1.2: {}
ms@2.1.3: {}
@@ -12750,6 +13043,40 @@ snapshots:
natural-compare@1.4.0: {}
+ next-basics@0.36.0(next@13.5.11(@babel/core@7.27.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ dependencies:
+ bcryptjs: 2.4.3
+ jsonwebtoken: 9.0.2
+ next: 13.5.11(@babel/core@7.27.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ pure-rand: 6.1.0
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
+ next@13.5.11(@babel/core@7.27.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ dependencies:
+ '@next/env': 13.5.11
+ '@swc/helpers': 0.5.2
+ busboy: 1.6.0
+ caniuse-lite: 1.0.30001722
+ postcss: 8.4.31
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ styled-jsx: 5.1.1(@babel/core@7.27.1)(react@18.3.1)
+ watchpack: 2.4.0
+ optionalDependencies:
+ '@next/swc-darwin-arm64': 13.5.9
+ '@next/swc-darwin-x64': 13.5.9
+ '@next/swc-linux-arm64-gnu': 13.5.9
+ '@next/swc-linux-arm64-musl': 13.5.9
+ '@next/swc-linux-x64-gnu': 13.5.9
+ '@next/swc-linux-x64-musl': 13.5.9
+ '@next/swc-win32-arm64-msvc': 13.5.9
+ '@next/swc-win32-ia32-msvc': 13.5.9
+ '@next/swc-win32-x64-msvc': 13.5.9
+ transitivePeerDependencies:
+ - '@babel/core'
+ - babel-plugin-macros
+
next@15.3.3(@babel/core@7.27.1)(babel-plugin-react-compiler@19.1.0-rc.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
dependencies:
'@next/env': 15.3.3
@@ -13496,10 +13823,10 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
- prisma@6.9.0(typescript@5.8.3):
+ prisma@6.10.0(typescript@5.8.3):
dependencies:
- '@prisma/config': 6.9.0
- '@prisma/engines': 6.9.0
+ '@prisma/config': 6.10.0
+ '@prisma/engines': 6.10.0
optionalDependencies:
typescript: 5.8.3
@@ -13635,6 +13962,12 @@ snapshots:
react-hook-form: 7.56.4(react@19.1.0)
react-window: 1.8.11(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ react-dom@18.3.1(react@18.3.1):
+ dependencies:
+ loose-envify: 1.4.0
+ react: 18.3.1
+ scheduler: 0.23.2
+
react-dom@19.1.0(react@19.1.0):
dependencies:
react: 19.1.0
@@ -13649,7 +13982,7 @@ snapshots:
dependencies:
react: 19.1.0
- react-hook-form@7.57.0(react@19.1.0):
+ react-hook-form@7.58.1(react@19.1.0):
dependencies:
react: 19.1.0
@@ -13657,6 +13990,22 @@ snapshots:
dependencies:
react: 19.1.0
+ react-intl@5.25.1(react@18.3.1)(typescript@4.9.5):
+ dependencies:
+ '@formatjs/ecma402-abstract': 1.11.4
+ '@formatjs/icu-messageformat-parser': 2.1.0
+ '@formatjs/intl': 2.2.1(typescript@4.9.5)
+ '@formatjs/intl-displaynames': 5.4.3
+ '@formatjs/intl-listformat': 6.5.3
+ '@types/hoist-non-react-statics': 3.3.6
+ '@types/react': 18.3.22
+ hoist-non-react-statics: 3.3.2
+ intl-messageformat: 9.13.0
+ react: 18.3.1
+ tslib: 2.8.1
+ optionalDependencies:
+ typescript: 4.9.5
+
react-intl@6.8.9(react@19.1.0)(typescript@5.8.3):
dependencies:
'@formatjs/ecma402-abstract': 2.2.4
@@ -13739,6 +14088,10 @@ snapshots:
react: 19.1.0
react-dom: 19.1.0(react@19.1.0)
+ react@18.3.1:
+ dependencies:
+ loose-envify: 1.4.0
+
react@19.1.0: {}
read-babelrc-up@1.1.0:
@@ -13972,6 +14325,10 @@ snapshots:
safer-buffer@2.1.2: {}
+ scheduler@0.23.2:
+ dependencies:
+ loose-envify: 1.4.0
+
scheduler@0.26.0: {}
schema-utils@2.7.1:
@@ -14290,6 +14647,13 @@ snapshots:
style-search@0.1.0: {}
+ styled-jsx@5.1.1(@babel/core@7.27.1)(react@18.3.1):
+ dependencies:
+ client-only: 0.0.1
+ react: 18.3.1
+ optionalDependencies:
+ '@babel/core': 7.27.1
+
styled-jsx@5.1.6(@babel/core@7.27.1)(react@19.1.0):
dependencies:
client-only: 0.0.1
@@ -14671,15 +15035,19 @@ snapshots:
dependencies:
react: 19.1.0
+ use-sync-external-store@1.5.0(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+
use-sync-external-store@1.5.0(react@19.1.0):
dependencies:
react: 19.1.0
util-deprecate@1.0.2: {}
- uuid@8.3.2: {}
+ uuid@11.1.0: {}
- uuid@9.0.1: {}
+ uuid@8.3.2: {}
v8-compile-cache-lib@3.0.1: {}
@@ -14716,6 +15084,11 @@ snapshots:
dependencies:
makeerror: 1.0.12
+ watchpack@2.4.0:
+ dependencies:
+ glob-to-regexp: 0.4.1
+ graceful-fs: 4.2.11
+
web-streams-polyfill@3.3.3: {}
which-boxed-primitive@1.1.1:
@@ -14857,13 +15230,13 @@ snapshots:
zod@3.25.30: {}
- zustand@4.5.7(@types/react@19.1.5)(immer@9.0.21)(react@19.1.0):
+ zustand@4.5.7(@types/react@19.1.5)(immer@9.0.21)(react@18.3.1):
dependencies:
- use-sync-external-store: 1.5.0(react@19.1.0)
+ use-sync-external-store: 1.5.0(react@18.3.1)
optionalDependencies:
'@types/react': 19.1.5
immer: 9.0.21
- react: 19.1.0
+ react: 18.3.1
zustand@5.0.5(@types/react@19.1.5)(immer@9.0.21)(react@19.1.0)(use-sync-external-store@1.5.0(react@19.1.0)):
optionalDependencies:
diff --git a/src/app/(main)/websites/[websiteId]/reports/goals/GoalsPage.tsx b/src/app/(main)/websites/[websiteId]/reports/goals/GoalsPage.tsx
index a843279f..f9923871 100644
--- a/src/app/(main)/websites/[websiteId]/reports/goals/GoalsPage.tsx
+++ b/src/app/(main)/websites/[websiteId]/reports/goals/GoalsPage.tsx
@@ -20,7 +20,7 @@ export function GoalsPage({ websiteId }: { websiteId: string }) {
-
+
{result?.data?.map((report: any) => (
diff --git a/src/app/(main)/websites/[websiteId]/reports/retention/Retention.tsx b/src/app/(main)/websites/[websiteId]/reports/retention/Retention.tsx
index 92b681d7..1667c483 100644
--- a/src/app/(main)/websites/[websiteId]/reports/retention/Retention.tsx
+++ b/src/app/(main)/websites/[websiteId]/reports/retention/Retention.tsx
@@ -27,24 +27,25 @@ export function Retention({ websiteId, days = DAYS, startDate, endDate }: Retent
},
});
- const rows = data.reduce((arr: any[], row: { date: any; visitors: any; day: any }) => {
- const { date, visitors, day } = row;
- if (day === 0) {
- return arr.concat({
- date,
- visitors,
- records: days
- .reduce((arr, day) => {
- arr[day] = data.find(
- (x: { date: any; day: number }) => x.date === date && x.day === day,
- );
- return arr;
- }, [])
- .filter(n => n),
- });
- }
- return arr;
- }, []);
+ const rows =
+ data?.reduce((arr: any[], row: { date: any; visitors: any; day: any }) => {
+ const { date, visitors, day } = row;
+ if (day === 0) {
+ return arr.concat({
+ date,
+ visitors,
+ records: days
+ .reduce((arr, day) => {
+ arr[day] = data.find(
+ (x: { date: any; day: number }) => x.date === date && x.day === day,
+ );
+ return arr;
+ }, [])
+ .filter(n => n),
+ });
+ }
+ return arr;
+ }, []) || [];
const totalDays = rows.length;
diff --git a/src/app/(main)/websites/[websiteId]/reports/revenue/Revenue.tsx b/src/app/(main)/websites/[websiteId]/reports/revenue/Revenue.tsx
index a5e2a834..dd7d6fca 100644
--- a/src/app/(main)/websites/[websiteId]/reports/revenue/Revenue.tsx
+++ b/src/app/(main)/websites/[websiteId]/reports/revenue/Revenue.tsx
@@ -131,6 +131,7 @@ export function Revenue({ websiteId, startDate, endDate }: RevenueProps) {
stacked={true}
currency={currency}
renderXLabel={renderDateLabels(unit, locale)}
+ height="400px"
/>
diff --git a/src/app/(main)/websites/[websiteId]/sessions/[sessionId]/SessionDetailsPage.tsx b/src/app/(main)/websites/[websiteId]/sessions/[sessionId]/SessionDetailsPage.tsx
index 7c00903a..86e3cdbf 100644
--- a/src/app/(main)/websites/[websiteId]/sessions/[sessionId]/SessionDetailsPage.tsx
+++ b/src/app/(main)/websites/[websiteId]/sessions/[sessionId]/SessionDetailsPage.tsx
@@ -21,36 +21,38 @@ export function SessionDetailsPage({
return (
-
-
-
-
-
-
-
-
-
-
-
-
- {formatMessage(labels.activity)}
- {formatMessage(labels.properties)}
-
-
-
-
-
-
-
-
-
-
-
+ {data && (
+
+
+
+
+
+
+
+
+
+
+
+
+ {formatMessage(labels.activity)}
+ {formatMessage(labels.properties)}
+
+
+
+
+
+
+
+
+
+
+
+ )}
);
}