diff --git a/apps/formbricks-com/components/shared/APILayout.tsx b/apps/formbricks-com/components/shared/APILayout.tsx
index b6581a731d..d910c67f88 100644
--- a/apps/formbricks-com/components/shared/APILayout.tsx
+++ b/apps/formbricks-com/components/shared/APILayout.tsx
@@ -10,6 +10,7 @@ interface APICallProps {
label: string;
type: string;
description: string;
+ required?: boolean;
}[];
bodies: {
label: string;
@@ -69,7 +70,13 @@ export function APILayout({ method, url, description, headers, bodies, responses
Headers
{headers.map((q) => (
-
+
))}
diff --git a/apps/formbricks-com/components/shared/LayoutMdx.tsx b/apps/formbricks-com/components/shared/LayoutMdx.tsx
index 6e8f98bbbd..dffad54af3 100644
--- a/apps/formbricks-com/components/shared/LayoutMdx.tsx
+++ b/apps/formbricks-com/components/shared/LayoutMdx.tsx
@@ -26,6 +26,10 @@ interface Props {
meta: {
title: string;
description: string;
+ publishedTime: string;
+ authors: string[];
+ section: string;
+ tags: string[];
};
children: JSX.Element;
}
@@ -34,7 +38,14 @@ export default function LayoutMdx({ meta, children }: Props) {
useExternalLinks(".prose a");
return (
-
+
diff --git a/apps/formbricks-com/components/shared/MetaInformation.tsx b/apps/formbricks-com/components/shared/MetaInformation.tsx
index 5ec3d1a0f1..57ab4a8e16 100644
--- a/apps/formbricks-com/components/shared/MetaInformation.tsx
+++ b/apps/formbricks-com/components/shared/MetaInformation.tsx
@@ -3,10 +3,21 @@ import Head from "next/head";
interface Props {
title: string;
description: string;
+ publishedTime?: string;
+ authors?: string[];
+ section?: string;
+ tags?: string[];
}
-export default function MetaInformation({ title, description }: Props) {
- const pageTitle = `${title} | Open-Source Survey Software`;
+export default function MetaInformation({
+ title,
+ description,
+ publishedTime,
+ authors,
+ section,
+ tags,
+}: Props) {
+ const pageTitle = `${title} | Open-Source Experience Management, Privacy-first`;
return (
{pageTitle}
@@ -14,13 +25,22 @@ export default function MetaInformation({ title, description }: Props) {
-
+
-
+
+
+ {publishedTime && }
+ {authors && }
+ {section && }
+ {tags && }
+
+
+
+
);
}
diff --git a/apps/formbricks-com/next.config.mjs b/apps/formbricks-com/next.config.mjs
index dc3fd37cb4..60309722c6 100644
--- a/apps/formbricks-com/next.config.mjs
+++ b/apps/formbricks-com/next.config.mjs
@@ -91,12 +91,16 @@ const nextConfig = {
destination: "/docs/actions/code",
permanent: true,
},
-
{
source: "/pmf",
destination: "/",
permanent: true,
},
+ {
+ source: "/blog/v1-and-how-we-got-here",
+ destination: "/blog/experience-management-open-source",
+ permanent: true,
+ },
];
},
};
diff --git a/apps/formbricks-com/pages/api/oss-friends/index.ts b/apps/formbricks-com/pages/api/oss-friends/index.ts
index 5ea74d85c0..1f31e4b3dd 100644
--- a/apps/formbricks-com/pages/api/oss-friends/index.ts
+++ b/apps/formbricks-com/pages/api/oss-friends/index.ts
@@ -110,7 +110,7 @@ export default async function handle(req: NextApiRequest, res: NextApiResponse)
"Typebot gives you powerful blocks to create unique chat experiences. Embed them anywhere on your apps and start collecting results like magic.",
href: "https://typebot.io",
},
- {
+ {
name: "Twenty",
description:
"A modern CRM offering the flexibility of open-source, advanced features and sleek design.",
diff --git a/apps/formbricks-com/pages/blog/best-open-source-survey-software-2023/index.mdx b/apps/formbricks-com/pages/blog/best-open-source-survey-software-2023/index.mdx
index 3f2b6cfdae..79233124ae 100644
--- a/apps/formbricks-com/pages/blog/best-open-source-survey-software-2023/index.mdx
+++ b/apps/formbricks-com/pages/blog/best-open-source-survey-software-2023/index.mdx
@@ -9,35 +9,39 @@ import SurveyJS from "./surveyjs-free-opensource-form-survey-tool-software-to-ma
import AuthorBox from "@/components/shared/AuthorBox";
export const meta = {
- title: "Best Open-source Form & Survey Tools (still maintained in 2023)",
+ title: "5 Open Source Survey and Form Tools maintained in 2023",
description:
- "Most open-source projects get abandoned after a while. But these 5 open-source form and survey tools are still alive and kicking in 2023.",
+ "Most open source projects get abandoned after a while. But these 5 open source survey tools are still alive and kicking in 2023.",
date: "2023-04-12",
+ publishedTime: "2023-04-12T12:00:00",
+ authors: ["Johannes"],
+ section: "Open Source Surveys",
+ tags: ["Open Source Surveys", "Formbricks", "Typeform", "SurveyJS", "Typebot", "OpnForm", "LimeSurvey"],
};
-_Most open-source projects get abandoned after a while. But these 5 open-source form and survey tools are still alive and kicking in 2023._
+_Most open source projects get abandoned after a while. But these 5 open source survey tools are still alive and kicking in 2023._
-Looking for the perfect open-source form and survey tool to help you gather valuable insights and improve your business? Look no further!
+Looking for the perfect open source survey tool to help you gather valuable insights and improve your business? Look no further!
-We've compiled a list of the top 5 open-source form and survey tools that are still maintained in 2023. In-product surveys, conversational bots, AI-generated surveys: These tools offer various features that cater to different needs.
+We've compiled a list of the top 5 open source form and survey tools that are still maintained in 2023. In app surveys, conversational bots, AI-generated surveys: These open source tools offer various features that cater to different needs.
-## 1. Formbricks - In-product micro-surveys
+## 1. Formbricks - In app micro surveys
-Formbricks is a powerful open-source form and survey solution designed to help you get better experience data for your business. This tool allows you to survey specific customer segments at any point in the user journey, providing you with invaluable insights into what your customers think and feel.
+Formbricks is a powerful open source survey tool designed to help you get better experience data for your business. This tool allows you to survey specific customer segments at any point in the user journey, providing you with invaluable insights into what your customers think and feel about your product.
- 👍 **Pre-segment users:** Don't ask everyone, all the time. Granularly segment your user base to get deep insights
- 👍 **Event-based surveys:** Trigger surveys based on user behavior, such as page views, clicks, and more
@@ -45,11 +49,15 @@ Formbricks is a powerful open-source form and survey solution designed to help y
- 👍 **Easy self-hosting:** Docker makes it possible to self-host Formbricks in minutes.
- ⚠️ **It's early for Formbricks.** Product developes rapidly but might encounter a bug here and there.
-[Try it out](https://app.formbricks.com), [read more](https://formbricks.com) or dive into the [code base.](https://formbricks.com/github)
+[Try it out](https://app.formbricks.com), [read more](https://formbricks.com) or dive into the [code base](https://formbricks.com/github) or comprehensive [docs](https://formbricks.com/docs).
-## 2. SurveyJS - Build-it-yourself libraries
+## 2. SurveyJS - Build-it-yourself library
-
+
SurveyJS is a collection of JavaScript Librarys to build forms. Building your own form management system has never been easier than with SurveyJS. It packs:
@@ -61,9 +69,13 @@ SurveyJS is a collection of JavaScript Librarys to build forms. Building your ow
[Dive into the code on GitHub](https://github.com/surveyjs)
-## 3. Typebot - Truly conversational Forms
+## 3. Typebot - Truly conversational forms
-
+
Coming in at number three on our list is Typebot, that makes it really easy to create conversational forms and surveys. Typebot helps you engage with your audience in a more interactive way, leading to higher response rates and better data. It comes with:
@@ -77,9 +89,13 @@ Coming in at number three on our list is Typebot, that makes it really easy to c
## 4. OpnForm - Straight-forward survey builder
-
+
-OpnForms is a flexible and powerful open-source form and survey tool designed to make data collection easy and efficient. OpnForm packs lots of features, especially for a Beta:
+OpnForms is a flexible and powerful open source form and survey tool designed to make data collection easy and efficient. OpnForm packs lots of features, especially for a Beta:
- 👍 **Multiple Question Types:** Choose from a wide variety of question types to create highly customizable forms and surveys.
- 👍 **Conditional Logic:** Show or hide questions based on previous responses to create personalized surveys.
@@ -90,7 +106,11 @@ OpnForms is a flexible and powerful open-source form and survey tool designed to
## 5. LimeSurvey - Old (but gold?)
-
+
LimeSurvey has been around for at least a decade. It's a powerful survey tool made for more classical, scientific surveying. It packs:
@@ -104,9 +124,9 @@ LimeSurvey has been around for at least a decade. It's a powerful survey tool ma
## Summary ☟
-In this article, we've rounded up the top 5 open-source form and survey tools that are still rocking it in 2023. Perfect for devs who are always on the lookout for the latest and greatest!
+In this article, we've rounded up the top 5 open source form and survey tools that are still rocking it in 2023. Perfect for devs who are always on the lookout for the latest and greatest!
-1. Formbricks: A game-changer for in-product micro-surveys, letting you target specific customer segments at any point in their journey. It's still early days, but this bad boy is worth keeping an eye on.
+1. Formbricks: A game-changer for in app micro surveys, letting you target specific customer segments at any point in their journey. It's still early days, but this bad boy is worth keeping an eye on.
2. SurveyJS: A must-have for DIY enthusiasts, this collection of JavaScript libraries makes building your own form management system a breeze. Just remember, the starting price is $499/year.
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/email-results-PMF-cal.png b/apps/formbricks-com/pages/blog/experience-management-open-source/email-results-PMF-cal.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/email-results-PMF-cal.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/email-results-PMF-cal.png
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/index.mdx b/apps/formbricks-com/pages/blog/experience-management-open-source/index.mdx
similarity index 98%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/index.mdx
rename to apps/formbricks-com/pages/blog/experience-management-open-source/index.mdx
index 16491492b9..347e8e126f 100644
--- a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/index.mdx
+++ b/apps/formbricks-com/pages/blog/experience-management-open-source/index.mdx
@@ -16,6 +16,10 @@ export const meta = {
description:
"A lot has happened since Matti and I had a chat about open-source surveys in May last year. The release of Formbricks v1.0 is a perfect opportunity to look back on how it all started.",
date: "2023-07-14",
+ publishedTime: "2023-07-14T08:10:33",
+ authors: ["Johannes"],
+ section: "Open Source Experience Management",
+ tags: ["Open Source", "Experience Management", "Formbricks"],
};
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/matti-jojo.jpg b/apps/formbricks-com/pages/blog/experience-management-open-source/matti-jojo.jpg
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/matti-jojo.jpg
rename to apps/formbricks-com/pages/blog/experience-management-open-source/matti-jojo.jpg
diff --git a/apps/formbricks-com/pages/blog/peer-tweet-typeform-open-source.png b/apps/formbricks-com/pages/blog/experience-management-open-source/peer-tweet-typeform-open-source.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/peer-tweet-typeform-open-source.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/peer-tweet-typeform-open-source.png
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/pmf-survey-dashboard.png b/apps/formbricks-com/pages/blog/experience-management-open-source/pmf-survey-dashboard.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/pmf-survey-dashboard.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/pmf-survey-dashboard.png
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/snoopforms-open-source-typeform-alternative.png b/apps/formbricks-com/pages/blog/experience-management-open-source/snoopforms-open-source-typeform-alternative.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/snoopforms-open-source-typeform-alternative.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/snoopforms-open-source-typeform-alternative.png
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/survey-display-peak.png b/apps/formbricks-com/pages/blog/experience-management-open-source/survey-display-peak.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/survey-display-peak.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/survey-display-peak.png
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/surveyjs-free-opensource-form-survey-tool-software-to-make-surveys-2023.png b/apps/formbricks-com/pages/blog/experience-management-open-source/surveyjs-free-opensource-form-survey-tool-software-to-make-surveys-2023.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/surveyjs-free-opensource-form-survey-tool-software-to-make-surveys-2023.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/surveyjs-free-opensource-form-survey-tool-software-to-make-surveys-2023.png
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/twitter-results-PMF-cal.png b/apps/formbricks-com/pages/blog/experience-management-open-source/twitter-results-PMF-cal.png
similarity index 100%
rename from apps/formbricks-com/pages/blog/v1-and-how-we-got-here/twitter-results-PMF-cal.png
rename to apps/formbricks-com/pages/blog/experience-management-open-source/twitter-results-PMF-cal.png
diff --git a/apps/formbricks-com/pages/blog/github-accelerator-experience/index.mdx b/apps/formbricks-com/pages/blog/github-accelerator-experience/index.mdx
index 7479f5127b..baf9ebfd05 100644
--- a/apps/formbricks-com/pages/blog/github-accelerator-experience/index.mdx
+++ b/apps/formbricks-com/pages/blog/github-accelerator-experience/index.mdx
@@ -11,7 +11,11 @@ export const meta = {
title: "Our GitHub Accelerator Experience 👀",
description:
"What we learned during the first GitHub Open-Source Accelerator Programm - our experience and if we would do it again.",
- date: "2023-04-13",
+ date: "2023-06-06",
+ publishedTime: "2023-06-06T05:12:25",
+ authors: ["Johannes"],
+ section: "GitHub Accelerator",
+ tags: ["GitHub Accelerator", "Open-Source", "Startup"],
};
@@ -40,7 +44,7 @@ January and February came and went. On the 22nd of March, we received an email f
Needless to say, we were thrilled! We were selected from over 1000 open-source projects, alongside renowned and popular projects like [Nuxt](https://github.com/nuxt/nuxt), [TRPC](https://github.com/trpc/trpc), and [Responsively App](https://github.com/responsively-org/responsively-app). Here is a summary of what we got:
-### What we got on paper
+### What the GitHub Accelerator offers on paper
✅ Ten sessions with **well-known** figures from the open-source community (Wednesdays)
@@ -108,7 +112,7 @@ Ericas talk was really impressive and so is she: Founder of Bitnami, COO of GitH
**GitHub Demo Day:** All teams presented what they achieved during the 10 week programm. It was great fun to present Formbricks, [you can watch it on Youtube.](https://www.youtube.com/live/Gj6Bez2182k?feature=share&t=1448)
-## Would we do it again? And should you?
+## Would we do the GitHub Accelerator again? And should you?
Yes, absolutely. The sessions were excellent, we met a handful of inspiring builders, and the 20k USD was a helpful financial boost. The application process might evolve, but since all of your code is open-source anyway, you might as well throw your hat in the ring.
diff --git a/apps/formbricks-com/pages/blog/inaugural-batch-github-accelerator/index.mdx b/apps/formbricks-com/pages/blog/inaugural-batch-github-accelerator/index.mdx
index ebae845d1d..2779d99626 100644
--- a/apps/formbricks-com/pages/blog/inaugural-batch-github-accelerator/index.mdx
+++ b/apps/formbricks-com/pages/blog/inaugural-batch-github-accelerator/index.mdx
@@ -9,6 +9,10 @@ export const meta = {
description:
"We're getting ready to take our open-source experience management platform to new heights, thanks to being part of the first-ever GitHub Accelerator program!",
date: "2023-04-13",
+ publishedTime: "2023-04-13T05:12:25",
+ authors: ["Johannes"],
+ section: "GitHub Accelerator",
+ tags: ["GitHub Accelerator", "Open-Source"],
};
diff --git a/apps/formbricks-com/pages/blog/open-source-forms-will-save-the-world/index.mdx b/apps/formbricks-com/pages/blog/open-source-forms-will-save-the-world/index.mdx
index e26e013944..d924ace594 100644
--- a/apps/formbricks-com/pages/blog/open-source-forms-will-save-the-world/index.mdx
+++ b/apps/formbricks-com/pages/blog/open-source-forms-will-save-the-world/index.mdx
@@ -10,6 +10,10 @@ export const meta = {
title: "Open source forms will save the world.",
description: "What motivates us to build open source tech in such a crowded space?",
date: "2022-08-26",
+ publishedTime: "2022-08-26T12:12:25",
+ authors: ["Johannes"],
+ section: "Open Source Survey Tool",
+ tags: ["Open Source", "Survey Tool", "Forms"],
};
diff --git a/apps/formbricks-com/pages/blog/open-source-qualtrics-beats-typeform/index.mdx b/apps/formbricks-com/pages/blog/open-source-qualtrics-beats-typeform/index.mdx
index 885c593e5e..06ca7c9409 100644
--- a/apps/formbricks-com/pages/blog/open-source-qualtrics-beats-typeform/index.mdx
+++ b/apps/formbricks-com/pages/blog/open-source-qualtrics-beats-typeform/index.mdx
@@ -16,6 +16,10 @@ export const meta = {
description:
"We kicked it off with a Typeform open-source alternative. As we build and learn, our focus is shifting. Read why:",
date: "2023-03-24",
+ publishedTime: "2023-03-23T08:20:15",
+ authors: ["Johannes"],
+ section: "Open Source Experience Management",
+ tags: ["Open Source", "Experience Management", "Typeform", "Qualtrics"],
};
diff --git a/apps/formbricks-com/pages/blog/snoopforms-becomes-formbricks/index.mdx b/apps/formbricks-com/pages/blog/snoopforms-becomes-formbricks/index.mdx
index 4a562325e4..6555053b5c 100644
--- a/apps/formbricks-com/pages/blog/snoopforms-becomes-formbricks/index.mdx
+++ b/apps/formbricks-com/pages/blog/snoopforms-becomes-formbricks/index.mdx
@@ -8,6 +8,10 @@ export const meta = {
title: "snoopForms → Formbricks 🎉",
description: "A new name, a new look, key learnings and what's next.",
date: "2022-11-07",
+ publishedTime: "2023-07-11T12:00:06",
+ authors: ["Johannes"],
+ section: "Formbricks",
+ tags: ["Formbricks", "snoopForms", "Open Source"],
};
diff --git a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/peer-tweet-typeform-open-source.png b/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/peer-tweet-typeform-open-source.png
deleted file mode 100644
index 0d40efba27..0000000000
Binary files a/apps/formbricks-com/pages/blog/v1-and-how-we-got-here/peer-tweet-typeform-open-source.png and /dev/null differ
diff --git a/apps/formbricks-com/pages/blog/why-open-source-no-code-is-the-future-of-enterprise-gov-software/index.mdx b/apps/formbricks-com/pages/blog/why-open-source-no-code-is-the-future-of-enterprise-gov-software/index.mdx
index 63446c3d82..bf36ff9520 100644
--- a/apps/formbricks-com/pages/blog/why-open-source-no-code-is-the-future-of-enterprise-gov-software/index.mdx
+++ b/apps/formbricks-com/pages/blog/why-open-source-no-code-is-the-future-of-enterprise-gov-software/index.mdx
@@ -13,6 +13,10 @@ export const meta = {
description:
"Here is why a no-code interface is cheatcode for OSS and why particularly large corporations and governments are to benefit the most",
date: "2022-06-03",
+ publishedTime: "2022-06-03T06:04:08",
+ authors: ["Johannes"],
+ section: "Open-Source",
+ tags: ["Open-Source", "No-Code", "Enterprise", "Government"],
};
diff --git a/apps/formbricks-com/pages/docs/webhook-api/create-webhook/index.mdx b/apps/formbricks-com/pages/docs/webhook-api/create-webhook/index.mdx
index 6c54d52cad..bffe0508a8 100644
--- a/apps/formbricks-com/pages/docs/webhook-api/create-webhook/index.mdx
+++ b/apps/formbricks-com/pages/docs/webhook-api/create-webhook/index.mdx
@@ -41,7 +41,7 @@ export const meta = {
]}
example={`{
"url": "https://mysystem.com/myendpoint",
- "trigger": "responseFinished"
+ "triggers": ["responseFinished"]
}`}
responses={[
{
diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/PreviewSurvey.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/PreviewSurvey.tsx
index 0fb77a681e..6240ec96c0 100644
--- a/apps/web/app/(app)/environments/[environmentId]/surveys/PreviewSurvey.tsx
+++ b/apps/web/app/(app)/environments/[environmentId]/surveys/PreviewSurvey.tsx
@@ -138,7 +138,9 @@ export default function PreviewSurvey({
switch (logic.condition) {
case "equals":
return (
- (Array.isArray(responseValue) && responseValue.length === 1 && responseValue.includes(logic.value)) ||
+ (Array.isArray(responseValue) &&
+ responseValue.length === 1 &&
+ responseValue.includes(logic.value)) ||
responseValue.toString() === logic.value
);
case "notEquals":
diff --git a/apps/web/app/api/cron/weekly_summary/email.ts b/apps/web/app/api/cron/weekly_summary/email.ts
index 91a4d21f62..3e81f63177 100644
--- a/apps/web/app/api/cron/weekly_summary/email.ts
+++ b/apps/web/app/api/cron/weekly_summary/email.ts
@@ -61,10 +61,14 @@ const notificationInsight = (insights: Insights) =>
Completed
${insights.totalCompletedResponses}
-
+ ${
+ insights.totalDisplays !== 0
+ ? ` |
Completion %
- ${insights.totalDisplays === 0 ? "N/A" : `${Math.round(insights.completionRate)}%`}
- |
+ ${Math.round(insights.completionRate)}%
+ `
+ : ""
+ }
diff --git a/apps/web/app/api/cron/weekly_summary/route.ts b/apps/web/app/api/cron/weekly_summary/route.ts
index 4d9d3d0c3c..60bb02f497 100644
--- a/apps/web/app/api/cron/weekly_summary/route.ts
+++ b/apps/web/app/api/cron/weekly_summary/route.ts
@@ -133,6 +133,20 @@ const getProducts = async (): Promise => {
id: true,
surveys: {
where: {
+ NOT: {
+ AND: [
+ { status: "completed" },
+ {
+ responses: {
+ none: {
+ createdAt: {
+ gte: sevenDaysAgo,
+ },
+ },
+ },
+ },
+ ],
+ },
status: {
not: "draft",
},
@@ -190,3 +204,79 @@ const getProducts = async (): Promise => {
},
});
};
+
+/* const getProducts = async (): Promise => {
+ // gets all products together with team members, surveys, responses, and displays for the last 7 days
+ const sevenDaysAgo = new Date();
+ sevenDaysAgo.setDate(sevenDaysAgo.getDate() - 7);
+
+ return await prisma.product.findMany({
+ select: {
+ id: true,
+ name: true,
+ environments: {
+ where: {
+ type: "production",
+ },
+ select: {
+ id: true,
+ surveys: {
+ where: {
+ status: {
+ not: "draft",
+ },
+ },
+ select: {
+ id: true,
+ name: true,
+ questions: true,
+ status: true,
+ responses: {
+ where: {
+ createdAt: {
+ gte: sevenDaysAgo,
+ },
+ },
+ select: {
+ id: true,
+ createdAt: true,
+ updatedAt: true,
+ finished: true,
+ data: true,
+ },
+ orderBy: {
+ createdAt: "desc",
+ },
+ },
+ displays: {
+ where: {
+ createdAt: {
+ gte: sevenDaysAgo,
+ },
+ },
+ select: {
+ status: true,
+ },
+ },
+ },
+ },
+ },
+ },
+ team: {
+ select: {
+ memberships: {
+ select: {
+ user: {
+ select: {
+ email: true,
+ notificationSettings: true,
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+ });
+};
+ */
diff --git a/apps/web/components/preview/MultipleChoiceMultiQuestion.tsx b/apps/web/components/preview/MultipleChoiceMultiQuestion.tsx
index 894a8b5e14..6a69819dc4 100644
--- a/apps/web/components/preview/MultipleChoiceMultiQuestion.tsx
+++ b/apps/web/components/preview/MultipleChoiceMultiQuestion.tsx
@@ -39,7 +39,9 @@ export default function MultipleChoiceMultiQuestion({
.map((choice) => choice.label);
useEffect(() => {
- const nonOtherSavedChoices = storedResponseValue?.filter((answer) => nonOtherChoiceLabels.includes(answer));
+ const nonOtherSavedChoices = storedResponseValue?.filter((answer) =>
+ nonOtherChoiceLabels.includes(answer)
+ );
const savedOtherSpecified = storedResponseValue?.find((answer) => !nonOtherChoiceLabels.includes(answer));
setSelectedChoices(nonOtherSavedChoices ?? []);
diff --git a/apps/web/components/preview/MultipleChoiceSingleQuestion.tsx b/apps/web/components/preview/MultipleChoiceSingleQuestion.tsx
index db91f5e292..7ca404823d 100644
--- a/apps/web/components/preview/MultipleChoiceSingleQuestion.tsx
+++ b/apps/web/components/preview/MultipleChoiceSingleQuestion.tsx
@@ -29,7 +29,9 @@ export default function MultipleChoiceSingleQuestion({
goToNextQuestion,
goToPreviousQuestion,
}: MultipleChoiceSingleProps) {
- const storedResponseValueValue = question.choices.find((choice) => choice.label === storedResponseValue)?.id;
+ const storedResponseValueValue = question.choices.find(
+ (choice) => choice.label === storedResponseValue
+ )?.id;
const [selectedChoice, setSelectedChoice] = useState(null);
const [savedOtherAnswer, setSavedOtherAnswer] = useState(null);
const [questionChoices, setQuestionChoices] = useState(
diff --git a/apps/web/components/preview/NPSQuestion.tsx b/apps/web/components/preview/NPSQuestion.tsx
index 242563eaa3..f33af22337 100644
--- a/apps/web/components/preview/NPSQuestion.tsx
+++ b/apps/web/components/preview/NPSQuestion.tsx
@@ -105,7 +105,9 @@ export default function NPSQuestion({
/>
)}
- {(!question.required || storedResponseValue) && }
+ {(!question.required || storedResponseValue) && (
+
+ )}
);
diff --git a/apps/web/components/preview/RatingQuestion.tsx b/apps/web/components/preview/RatingQuestion.tsx
index c4d98eca43..7c96c129de 100644
--- a/apps/web/components/preview/RatingQuestion.tsx
+++ b/apps/web/components/preview/RatingQuestion.tsx
@@ -154,7 +154,9 @@ export default function RatingQuestion({
/>
)}
- {(!question.required || storedResponseValue) && }
+ {(!question.required || storedResponseValue) && (
+
+ )}
);
diff --git a/apps/web/lib/linkSurvey/linkSurvey.ts b/apps/web/lib/linkSurvey/linkSurvey.ts
index c952cb44fd..a7f30f3dd7 100644
--- a/apps/web/lib/linkSurvey/linkSurvey.ts
+++ b/apps/web/lib/linkSurvey/linkSurvey.ts
@@ -275,7 +275,10 @@ const storeResponse = (surveyId: string, answer: Response["data"]) => {
const storedResponses = localStorage.getItem(`formbricks-${surveyId}-responses`);
if (storedResponses) {
const parsedResponses = JSON.parse(storedResponses);
- localStorage.setItem(`formbricks-${surveyId}-responses`, JSON.stringify({ ...parsedResponses, ...answer }));
+ localStorage.setItem(
+ `formbricks-${surveyId}-responses`,
+ JSON.stringify({ ...parsedResponses, ...answer })
+ );
} else {
localStorage.setItem(`formbricks-${surveyId}-responses`, JSON.stringify(answer));
}
diff --git a/apps/web/package.json b/apps/web/package.json
index f918bfd655..6c4e5fba2b 100644
--- a/apps/web/package.json
+++ b/apps/web/package.json
@@ -25,7 +25,7 @@
"@paralleldrive/cuid2": "^2.2.1",
"@radix-ui/react-collapsible": "^1.0.3",
"@radix-ui/react-dropdown-menu": "^2.0.5",
- "@sentry/nextjs": "^7.60.1",
+ "@sentry/nextjs": "^7.61.0",
"@t3-oss/env-nextjs": "^0.6.0",
"bcryptjs": "^2.4.3",
"eslint-config-next": "^13.4.12",
@@ -35,7 +35,7 @@
"next": "13.4.10",
"next-auth": "^4.22.3",
"nodemailer": "^6.9.4",
- "posthog-js": "^1.75.2",
+ "posthog-js": "^1.75.3",
"prismjs": "^1.29.0",
"react": "18.2.0",
"react-beautiful-dnd": "^13.1.1",
diff --git a/packages/api/package.json b/packages/api/package.json
index b2e587d6d4..b322932bd3 100644
--- a/packages/api/package.json
+++ b/packages/api/package.json
@@ -24,6 +24,6 @@
"@formbricks/types": "workspace:*",
"@formbricks/tsconfig": "workspace:*",
"eslint-config-formbricks": "workspace:*",
- "tsup": "^7.1.0"
+ "tsup": "^7.2.0"
}
}
diff --git a/packages/errors/package.json b/packages/errors/package.json
index e9b1a3e175..94663b9c4d 100644
--- a/packages/errors/package.json
+++ b/packages/errors/package.json
@@ -20,6 +20,6 @@
"devDependencies": {
"@formbricks/tsconfig": "workspace:*",
"eslint-config-formbricks": "workspace:*",
- "tsup": "^7.1.0"
+ "tsup": "^7.2.0"
}
}
diff --git a/packages/eslint-config-formbricks/package.json b/packages/eslint-config-formbricks/package.json
index b0bb7987ab..d35b480d23 100644
--- a/packages/eslint-config-formbricks/package.json
+++ b/packages/eslint-config-formbricks/package.json
@@ -10,7 +10,7 @@
"devDependencies": {
"eslint": "^8.46.0",
"eslint-config-next": "^13.4.12",
- "eslint-config-prettier": "^8.9.0",
+ "eslint-config-prettier": "^8.10.0",
"eslint-plugin-react": "7.33.1",
"eslint-config-turbo": "latest"
}
diff --git a/packages/js/package.json b/packages/js/package.json
index 5aaf4cd4d6..1ca1c7aeb8 100644
--- a/packages/js/package.json
+++ b/packages/js/package.json
@@ -50,8 +50,8 @@
"@formbricks/api": "workspace:*",
"@formbricks/types": "workspace:*",
"@types/jest": "^29.5.3",
- "@typescript-eslint/eslint-plugin": "^6.2.0",
- "@typescript-eslint/parser": "^6.2.0",
+ "@typescript-eslint/eslint-plugin": "^6.2.1",
+ "@typescript-eslint/parser": "^6.2.1",
"autoprefixer": "^10.4.14",
"babel-jest": "^29.6.2",
"cross-env": "^7.0.3",
diff --git a/packages/js/src/components/MultipleChoiceMultiQuestion.tsx b/packages/js/src/components/MultipleChoiceMultiQuestion.tsx
index ce9fceca0d..6a7d6f7964 100644
--- a/packages/js/src/components/MultipleChoiceMultiQuestion.tsx
+++ b/packages/js/src/components/MultipleChoiceMultiQuestion.tsx
@@ -49,7 +49,9 @@ export default function MultipleChoiceMultiQuestion({
.map((choice) => choice.label);
useEffect(() => {
- const nonOtherSavedChoices = storedResponseValue?.filter((answer) => nonOtherChoiceLabels.includes(answer));
+ const nonOtherSavedChoices = storedResponseValue?.filter((answer) =>
+ nonOtherChoiceLabels.includes(answer)
+ );
const savedOtherSpecified = storedResponseValue?.find((answer) => !nonOtherChoiceLabels.includes(answer));
setSelectedChoices(nonOtherSavedChoices ?? []);
diff --git a/packages/js/src/components/MultipleChoiceSingleQuestion.tsx b/packages/js/src/components/MultipleChoiceSingleQuestion.tsx
index 449fe5eed0..e86b652d25 100644
--- a/packages/js/src/components/MultipleChoiceSingleQuestion.tsx
+++ b/packages/js/src/components/MultipleChoiceSingleQuestion.tsx
@@ -27,7 +27,9 @@ export default function MultipleChoiceSingleQuestion({
goToNextQuestion,
goToPreviousQuestion,
}: MultipleChoiceSingleProps) {
- const storedResponseValueValue = question.choices.find((choice) => choice.label === storedResponseValue)?.id;
+ const storedResponseValueValue = question.choices.find(
+ (choice) => choice.label === storedResponseValue
+ )?.id;
const [selectedChoice, setSelectedChoice] = useState(null);
const [savedOtherAnswer, setSavedOtherAnswer] = useState(null);
const [questionChoices, setQuestionChoices] = useState(
diff --git a/packages/js/src/components/SurveyView.tsx b/packages/js/src/components/SurveyView.tsx
index 2a1ec7d498..d0bb02ce61 100644
--- a/packages/js/src/components/SurveyView.tsx
+++ b/packages/js/src/components/SurveyView.tsx
@@ -110,7 +110,9 @@ export default function SurveyView({ config, survey, close, errorHandler }: Surv
switch (logic.condition) {
case "equals":
return (
- (Array.isArray(responseValue) && responseValue.length === 1 && responseValue.includes(logic.value)) ||
+ (Array.isArray(responseValue) &&
+ responseValue.length === 1 &&
+ responseValue.includes(logic.value)) ||
responseValue.toString() === logic.value
);
case "notEquals":
diff --git a/packages/tsconfig/package.json b/packages/tsconfig/package.json
index fde84b6bdb..acb4a9520e 100644
--- a/packages/tsconfig/package.json
+++ b/packages/tsconfig/package.json
@@ -6,8 +6,8 @@
"clean": "rimraf node_modules"
},
"devDependencies": {
- "@types/node": "20.4.5",
- "@types/react": "18.2.17",
+ "@types/node": "20.4.6",
+ "@types/react": "18.2.18",
"@types/react-dom": "18.2.7",
"typescript": "5.1.6"
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index ec67ede3c5..3b818d85d9 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -176,8 +176,8 @@ importers:
specifier: ^2.0.5
version: 2.0.5(react-dom@18.2.0)(react@18.2.0)
'@sentry/nextjs':
- specifier: ^7.60.1
- version: 7.60.1(next@13.4.10)(react@18.2.0)
+ specifier: ^7.61.0
+ version: 7.61.0(next@13.4.10)(react@18.2.0)
'@t3-oss/env-nextjs':
specifier: ^0.6.0
version: 0.6.0(typescript@5.1.6)(zod@3.21.4)
@@ -206,8 +206,8 @@ importers:
specifier: ^6.9.4
version: 6.9.4
posthog-js:
- specifier: ^1.75.2
- version: 1.75.2
+ specifier: ^1.75.3
+ version: 1.75.3
prismjs:
specifier: ^1.29.0
version: 1.29.0
@@ -268,8 +268,8 @@ importers:
specifier: workspace:*
version: link:../eslint-config-formbricks
tsup:
- specifier: ^7.1.0
- version: 7.1.0
+ specifier: ^7.2.0
+ version: 7.2.0
packages/database:
dependencies:
@@ -336,8 +336,8 @@ importers:
specifier: workspace:*
version: link:../eslint-config-formbricks
tsup:
- specifier: ^7.1.0
- version: 7.1.0
+ specifier: ^7.2.0
+ version: 7.2.0
packages/eslint-config-formbricks:
devDependencies:
@@ -348,11 +348,11 @@ importers:
specifier: ^13.4.12
version: 13.4.12(eslint@8.46.0)(typescript@5.1.6)
eslint-config-prettier:
- specifier: ^8.9.0
- version: 8.9.0(eslint@8.46.0)
+ specifier: ^8.10.0
+ version: 8.10.0(eslint@8.46.0)
eslint-config-turbo:
specifier: latest
- version: 1.10.3(eslint@8.46.0)
+ version: 1.10.7(eslint@8.46.0)
eslint-plugin-react:
specifier: 7.33.1
version: 7.33.1(eslint@8.46.0)
@@ -378,11 +378,11 @@ importers:
specifier: ^29.5.3
version: 29.5.3
'@typescript-eslint/eslint-plugin':
- specifier: ^6.2.0
- version: 6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6)
+ specifier: ^6.2.1
+ version: 6.2.1(@typescript-eslint/parser@6.2.1)(eslint@8.46.0)(typescript@5.1.6)
'@typescript-eslint/parser':
- specifier: ^6.2.0
- version: 6.2.0(eslint@8.46.0)(typescript@5.1.6)
+ specifier: ^6.2.1
+ version: 6.2.1(eslint@8.46.0)(typescript@5.1.6)
autoprefixer:
specifier: ^10.4.14
version: 10.4.14(postcss@8.4.27)
@@ -397,7 +397,7 @@ importers:
version: link:../eslint-config-formbricks
eslint-config-preact:
specifier: ^1.3.0
- version: 1.3.0(@typescript-eslint/eslint-plugin@6.2.0)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6)
+ version: 1.3.0(@typescript-eslint/eslint-plugin@6.2.1)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6)
isomorphic-fetch:
specifier: ^3.0.0
version: 3.0.0
@@ -493,11 +493,11 @@ importers:
packages/tsconfig:
devDependencies:
'@types/node':
- specifier: 20.4.5
- version: 20.4.5
+ specifier: 20.4.6
+ version: 20.4.6
'@types/react':
- specifier: 18.2.17
- version: 18.2.17
+ specifier: 18.2.18
+ version: 18.2.18
'@types/react-dom':
specifier: 18.2.7
version: 18.2.7
@@ -2973,7 +2973,7 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
jest-message-util: 29.6.2
jest-util: 29.6.2
@@ -2994,14 +2994,14 @@ packages:
'@jest/test-result': 29.6.2
'@jest/transform': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.7.0
exit: 0.1.2
graceful-fs: 4.2.10
jest-changed-files: 29.5.0
- jest-config: 29.6.2(@types/node@20.4.5)
+ jest-config: 29.6.2(@types/node@20.4.6)
jest-haste-map: 29.6.2
jest-message-util: 29.6.2
jest-regex-util: 29.4.3
@@ -3029,7 +3029,7 @@ packages:
dependencies:
'@jest/fake-timers': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
jest-mock: 29.6.2
dev: true
@@ -3063,7 +3063,7 @@ packages:
dependencies:
'@jest/types': 29.6.1
'@sinonjs/fake-timers': 10.0.2
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
jest-message-util: 29.6.2
jest-mock: 29.6.2
jest-util: 29.6.2
@@ -3096,7 +3096,7 @@ packages:
'@jest/transform': 29.6.2
'@jest/types': 29.6.1
'@jridgewell/trace-mapping': 0.3.18
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
collect-v8-coverage: 1.0.1
exit: 0.1.2
@@ -3191,7 +3191,7 @@ packages:
'@jest/schemas': 29.6.0
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
'@types/yargs': 17.0.24
chalk: 4.1.2
dev: true
@@ -3224,7 +3224,7 @@ packages:
resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==}
dependencies:
'@jridgewell/gen-mapping': 0.3.2
- '@jridgewell/trace-mapping': 0.3.17
+ '@jridgewell/trace-mapping': 0.3.18
/@jridgewell/sourcemap-codec@1.4.14:
resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
@@ -3234,6 +3234,7 @@ packages:
dependencies:
'@jridgewell/resolve-uri': 3.1.0
'@jridgewell/sourcemap-codec': 1.4.14
+ dev: true
/@jridgewell/trace-mapping@0.3.18:
resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==}
@@ -5170,25 +5171,25 @@ packages:
/@rushstack/eslint-patch@1.2.0:
resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==}
- /@sentry-internal/tracing@7.60.1:
- resolution: {integrity: sha512-2vM+3/ddzmoBfi92OOD9FFTHXf0HdQhKtNM26+/RsmkKnTid+/inbvA7nKi+Qa7ExcnlC6eclEHQEg+0X3yDkQ==}
+ /@sentry-internal/tracing@7.61.0:
+ resolution: {integrity: sha512-zTr+MXEG4SxNxif42LIgm2RQn+JRXL2NuGhRaKSD2i4lXKFqHVGlVdoWqY5UfqnnJPokiTWIj9ejR8I5HV8Ogw==}
engines: {node: '>=8'}
dependencies:
- '@sentry/core': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry/core': 7.61.0
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
tslib: 2.5.3
dev: false
- /@sentry/browser@7.60.1:
- resolution: {integrity: sha512-opZQee3S0c459LXt8YGpwOM/qiTlzluHEEnfW2q+D2yVCWh8iegsDX3kbRiv4i/mtQu9yPhM9M761KDnc/0eZw==}
+ /@sentry/browser@7.61.0:
+ resolution: {integrity: sha512-IGEkJZRP16Oe5CkXkmhU3QdV5RugW6Vds16yJFFYsgp87NprWtRZgqzldFDYkINStfBHVdctj/Rh/ZrLf8QlkQ==}
engines: {node: '>=8'}
dependencies:
- '@sentry-internal/tracing': 7.60.1
- '@sentry/core': 7.60.1
- '@sentry/replay': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry-internal/tracing': 7.61.0
+ '@sentry/core': 7.61.0
+ '@sentry/replay': 7.61.0
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
tslib: 2.5.3
dev: false
@@ -5209,27 +5210,27 @@ packages:
- supports-color
dev: false
- /@sentry/core@7.60.1:
- resolution: {integrity: sha512-yr/0VFYWOJyXj+F2nifkRYxXskotsNnDggUnFOZZN2ZgTG94IzRFsOZQ6RslHJ8nrYPTBNO74reU0C0GB++xRw==}
+ /@sentry/core@7.61.0:
+ resolution: {integrity: sha512-zl0ZKRjIoYJQWYTd3K/U6zZfS4GDY9yGd2EH4vuYO4kfYtEp/nJ8A+tfAeDo0c9FGxZ0Q+5t5F4/SfwbgyyQzg==}
engines: {node: '>=8'}
dependencies:
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
tslib: 2.5.3
dev: false
- /@sentry/integrations@7.60.1:
- resolution: {integrity: sha512-GkxGGUOGyRZ2aJrHfGPGJ40wh+r03xDHgjeM7SMHwdJdxTgFhv4xUZAl6NlywbxL5t2jhVwCMZNYIvy/vUrcFQ==}
+ /@sentry/integrations@7.61.0:
+ resolution: {integrity: sha512-NEQ+CatBfUM1TmA4FOOyHfsMvSIwSg4pA55Lxiq9quDykzkEtrXFzUfFpZbTunz4cegG8hucPOqbzKFrDPfGjQ==}
engines: {node: '>=8'}
dependencies:
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
localforage: 1.10.0
tslib: 2.5.3
dev: false
- /@sentry/nextjs@7.60.1(next@13.4.10)(react@18.2.0):
- resolution: {integrity: sha512-AwDbcvYudNOukYPndPId5Re8sRXdhA4iPS87QsRexAetUvPY/bCckFkdaGJok+OlMNBN8o3eudNNCytyZT2s+A==}
+ /@sentry/nextjs@7.61.0(next@13.4.10)(react@18.2.0):
+ resolution: {integrity: sha512-zSEcAITqVmJpR4hhah1jUyCzm/hjlq9vjmO6BmTnQjr84OgOdeKJGWtRdktXId+9zzHdCOehs/JPtmO7y+yG6Q==}
engines: {node: '>=8'}
peerDependencies:
next: ^10.0.8 || ^11.0 || ^12.0 || ^13.0
@@ -5240,12 +5241,12 @@ packages:
optional: true
dependencies:
'@rollup/plugin-commonjs': 24.0.0(rollup@2.78.0)
- '@sentry/core': 7.60.1
- '@sentry/integrations': 7.60.1
- '@sentry/node': 7.60.1
- '@sentry/react': 7.60.1(react@18.2.0)
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry/core': 7.61.0
+ '@sentry/integrations': 7.61.0
+ '@sentry/node': 7.61.0
+ '@sentry/react': 7.61.0(react@18.2.0)
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
'@sentry/webpack-plugin': 1.20.0
chalk: 3.0.0
next: 13.4.10(react-dom@18.2.0)(react@18.2.0)
@@ -5258,14 +5259,14 @@ packages:
- supports-color
dev: false
- /@sentry/node@7.60.1:
- resolution: {integrity: sha512-lBt3RqncY4XbzM+PlTbH/tUWeOsm24anwEzvA2DSDP1NL3WZ5MdvT77q7NqpvpVNd2LeGAQ6x7AXDzE53YBfnQ==}
+ /@sentry/node@7.61.0:
+ resolution: {integrity: sha512-oTCqD/h92uvbRCrtCdiAqN6Mfe3vF7ywVHZ8Nq3hHmJp6XadUT+fCBwNQ7rjMyqJAOYAnx/vp6iN9n8C5qcYZQ==}
engines: {node: '>=8'}
dependencies:
- '@sentry-internal/tracing': 7.60.1
- '@sentry/core': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry-internal/tracing': 7.61.0
+ '@sentry/core': 7.61.0
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
cookie: 0.4.2
https-proxy-agent: 5.0.1
lru_map: 0.3.3
@@ -5274,39 +5275,39 @@ packages:
- supports-color
dev: false
- /@sentry/react@7.60.1(react@18.2.0):
- resolution: {integrity: sha512-977wb5gp7SHv9kHPs1HZtL60slt2WBFY9/YJI9Av7BjjJ/A89OhtBwbVhIcKXZ4hwHQVWuOiFCJdMrIfZXpFPA==}
+ /@sentry/react@7.61.0(react@18.2.0):
+ resolution: {integrity: sha512-17ZPDdzx3hzJSHsVFAiw4hUT701LUVIcm568q38sPlSUmnOmNmPeHx/xcQkuxMoVsw/xgf/82B/BKKnIP5/diA==}
engines: {node: '>=8'}
peerDependencies:
react: 15.x || 16.x || 17.x || 18.x
dependencies:
- '@sentry/browser': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry/browser': 7.61.0
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
hoist-non-react-statics: 3.3.2
react: 18.2.0
tslib: 2.5.3
dev: false
- /@sentry/replay@7.60.1:
- resolution: {integrity: sha512-WHQxEpJbHICs12L17LGgS/ql91yn9wJDH/hgb+1H90HaasjoR54ofWCKul29OvYV0snTWuHd6xauwtzyv9tzvg==}
+ /@sentry/replay@7.61.0:
+ resolution: {integrity: sha512-1ugk0yZssOPkSg6uTVcysjxlBydycXiOgV0PCU7DsXCFOV1ua5YpyPZFReTz9iFTtwD0LwGFM1LW9wJeQ67Fzg==}
engines: {node: '>=12'}
dependencies:
- '@sentry/core': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry/core': 7.61.0
+ '@sentry/types': 7.61.0
+ '@sentry/utils': 7.61.0
dev: false
- /@sentry/types@7.60.1:
- resolution: {integrity: sha512-8lKKSCOhZ953cWxwnfZwoR3ZFFlZG4P3PQFTaFt/u4LxLh/0zYbdtgvtUqXRURjMCi5P6ddeE9Uw9FGnTJCsTw==}
+ /@sentry/types@7.61.0:
+ resolution: {integrity: sha512-/GLlIBNR35NKPE/SfWi9W10dK9hE8qTShzsuPVn5wAJxpT3Lb4+dkwmKCTLUYxdkmvRDEudkfOxgalsfQGTAWA==}
engines: {node: '>=8'}
dev: false
- /@sentry/utils@7.60.1:
- resolution: {integrity: sha512-ik+5sKGBx4DWuvf6UUKPSafaDiASxP+Xvjg3C9ppop2I/JWxP1FfZ5g22n5ZmPmNahD6clTSoTWly8qyDUlUOw==}
+ /@sentry/utils@7.61.0:
+ resolution: {integrity: sha512-jfj14d0XBFiCU0G6dZZ12SizATiF5Mt4stBGzkM5iS9nXFj8rh1oTT7/p+aZoYzP2JTF+sDzkNjWxyKZkcTo0Q==}
engines: {node: '>=8'}
dependencies:
- '@sentry/types': 7.60.1
+ '@sentry/types': 7.61.0
tslib: 2.5.3
dev: false
@@ -5474,32 +5475,32 @@ packages:
resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==}
dependencies:
'@types/connect': 3.4.35
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/bonjour@3.5.10:
resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/connect-history-api-fallback@1.3.5:
resolution: {integrity: sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==}
dependencies:
'@types/express-serve-static-core': 4.17.33
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/connect@3.4.35:
resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/cross-spawn@6.0.2:
resolution: {integrity: sha512-KuwNhp3eza+Rhu8IFI5HUXRP0LIhqH5cAjubUvGXXthh4YYBuP2ntwEX+Cz8GJoZUHlKo247wPWOfA9LYEq4cw==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/debug@4.1.7:
@@ -5547,7 +5548,7 @@ packages:
/@types/express-serve-static-core@4.17.33:
resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
'@types/qs': 6.9.7
'@types/range-parser': 1.2.4
dev: true
@@ -5564,7 +5565,7 @@ packages:
/@types/graceful-fs@4.1.5:
resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/hast@2.3.4:
@@ -5576,14 +5577,14 @@ packages:
/@types/hoist-non-react-statics@3.3.1:
resolution: {integrity: sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==}
dependencies:
- '@types/react': 18.2.17
+ '@types/react': 18.2.18
hoist-non-react-statics: 3.3.2
dev: false
/@types/http-proxy@1.17.10:
resolution: {integrity: sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/is-ci@3.0.0:
@@ -5622,7 +5623,7 @@ packages:
/@types/jsdom@20.0.1:
resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
'@types/tough-cookie': 4.0.2
parse5: 7.1.2
dev: true
@@ -5636,7 +5637,7 @@ packages:
/@types/keyv@3.1.4:
resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
/@types/linkify-it@3.0.2:
resolution: {integrity: sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==}
@@ -5685,6 +5686,9 @@ packages:
/@types/node@20.4.5:
resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==}
+ /@types/node@20.4.6:
+ resolution: {integrity: sha512-q0RkvNgMweWWIvSMDiXhflGUKMdIxBo2M2tYM/0kEGDueQByFzK4KZAgu5YHGFNxziTlppNpTIBcqHQAxlfHdA==}
+
/@types/normalize-package-data@2.4.1:
resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==}
dev: true
@@ -5714,20 +5718,20 @@ packages:
/@types/react-dom@18.2.7:
resolution: {integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==}
dependencies:
- '@types/react': 18.2.17
+ '@types/react': 18.2.18
dev: true
/@types/react-redux@7.1.25:
resolution: {integrity: sha512-bAGh4e+w5D8dajd6InASVIyCo4pZLJ66oLb80F9OBLO1gKESbZcRCJpTT6uLXX+HAB57zw1WTdwJdAsewuTweg==}
dependencies:
'@types/hoist-non-react-statics': 3.3.1
- '@types/react': 18.2.17
+ '@types/react': 18.2.18
hoist-non-react-statics: 3.3.2
redux: 4.2.1
dev: false
- /@types/react@18.2.17:
- resolution: {integrity: sha512-u+e7OlgPPh+aryjOm5UJMX32OvB2E3QASOAqVMY6Ahs90djagxwv2ya0IctglNbNTexC12qCSMZG47KPfy1hAA==}
+ /@types/react@18.2.18:
+ resolution: {integrity: sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ==}
dependencies:
'@types/prop-types': 15.7.5
'@types/scheduler': 0.16.2
@@ -5744,13 +5748,13 @@ packages:
/@types/resolve@1.17.1:
resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/responselike@1.0.0:
resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
/@types/retry@0.12.0:
resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==}
@@ -5773,13 +5777,13 @@ packages:
resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==}
dependencies:
'@types/mime': 3.0.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/sockjs@0.3.33:
resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/source-list-map@0.1.2:
@@ -5815,7 +5819,7 @@ packages:
/@types/webpack-sources@3.2.0:
resolution: {integrity: sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
'@types/source-list-map': 0.1.2
source-map: 0.7.4
dev: true
@@ -5823,7 +5827,7 @@ packages:
/@types/webpack@4.41.33:
resolution: {integrity: sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
'@types/tapable': 1.0.8
'@types/uglify-js': 3.17.1
'@types/webpack-sources': 3.2.0
@@ -5834,7 +5838,7 @@ packages:
/@types/ws@8.5.4:
resolution: {integrity: sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
dev: true
/@types/yargs-parser@21.0.0:
@@ -5847,8 +5851,8 @@ packages:
'@types/yargs-parser': 21.0.0
dev: true
- /@typescript-eslint/eslint-plugin@6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-rClGrMuyS/3j0ETa1Ui7s6GkLhfZGKZL3ZrChLeAiACBE/tRc1wq8SNZESUuluxhLj9FkUefRs2l6bCIArWBiQ==}
+ /@typescript-eslint/eslint-plugin@6.2.1(@typescript-eslint/parser@6.2.1)(eslint@8.46.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-iZVM/ALid9kO0+I81pnp1xmYiFyqibAHzrqX4q5YvvVEyJqY+e6rfTXSCsc2jUxGNqJqTfFSSij/NFkZBiBzLw==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
'@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
@@ -5859,11 +5863,11 @@ packages:
optional: true
dependencies:
'@eslint-community/regexpp': 4.6.2
- '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/scope-manager': 6.2.0
- '@typescript-eslint/type-utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/visitor-keys': 6.2.0
+ '@typescript-eslint/parser': 6.2.1(eslint@8.46.0)(typescript@5.1.6)
+ '@typescript-eslint/scope-manager': 6.2.1
+ '@typescript-eslint/type-utils': 6.2.1(eslint@8.46.0)(typescript@5.1.6)
+ '@typescript-eslint/utils': 6.2.1(eslint@8.46.0)(typescript@5.1.6)
+ '@typescript-eslint/visitor-keys': 6.2.1
debug: 4.3.4
eslint: 8.46.0
graphemer: 1.4.0
@@ -5909,8 +5913,8 @@ packages:
transitivePeerDependencies:
- supports-color
- /@typescript-eslint/parser@6.2.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==}
+ /@typescript-eslint/parser@6.2.1(eslint@8.46.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-Ld+uL1kYFU8e6btqBFpsHkwQ35rw30IWpdQxgOqOh4NfxSDH6uCkah1ks8R/RgQqI5hHPXMaLy9fbFseIe+dIg==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -5919,10 +5923,10 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/scope-manager': 6.2.0
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6)
- '@typescript-eslint/visitor-keys': 6.2.0
+ '@typescript-eslint/scope-manager': 6.2.1
+ '@typescript-eslint/types': 6.2.1
+ '@typescript-eslint/typescript-estree': 6.2.1(typescript@5.1.6)
+ '@typescript-eslint/visitor-keys': 6.2.1
debug: 4.3.4
eslint: 8.46.0
typescript: 5.1.6
@@ -5945,16 +5949,16 @@ packages:
'@typescript-eslint/types': 5.59.9
'@typescript-eslint/visitor-keys': 5.59.9
- /@typescript-eslint/scope-manager@6.2.0:
- resolution: {integrity: sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==}
+ /@typescript-eslint/scope-manager@6.2.1:
+ resolution: {integrity: sha512-UCqBF9WFqv64xNsIEPfBtenbfodPXsJ3nPAr55mGPkQIkiQvgoWNo+astj9ZUfJfVKiYgAZDMnM6dIpsxUMp3Q==}
engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/visitor-keys': 6.2.0
+ '@typescript-eslint/types': 6.2.1
+ '@typescript-eslint/visitor-keys': 6.2.1
dev: true
- /@typescript-eslint/type-utils@6.2.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-DnGZuNU2JN3AYwddYIqrVkYW0uUQdv0AY+kz2M25euVNlujcN2u+rJgfJsBFlUEzBB6OQkUqSZPyuTLf2bP5mw==}
+ /@typescript-eslint/type-utils@6.2.1(eslint@8.46.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-fTfCgomBMIgu2Dh2Or3gMYgoNAnQm3RLtRp+jP7A8fY+LJ2+9PNpi5p6QB5C4RSP+U3cjI0vDlI3mspAkpPVbQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -5963,8 +5967,8 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6)
- '@typescript-eslint/utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
+ '@typescript-eslint/typescript-estree': 6.2.1(typescript@5.1.6)
+ '@typescript-eslint/utils': 6.2.1(eslint@8.46.0)(typescript@5.1.6)
debug: 4.3.4
eslint: 8.46.0
ts-api-utils: 1.0.1(typescript@5.1.6)
@@ -5982,8 +5986,8 @@ packages:
resolution: {integrity: sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- /@typescript-eslint/types@6.2.0:
- resolution: {integrity: sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==}
+ /@typescript-eslint/types@6.2.1:
+ resolution: {integrity: sha512-528bGcoelrpw+sETlyM91k51Arl2ajbNT9L4JwoXE2dvRe1yd8Q64E4OL7vHYw31mlnVsf+BeeLyAZUEQtqahQ==}
engines: {node: ^16.0.0 || >=18.0.0}
dev: true
@@ -6028,8 +6032,8 @@ packages:
transitivePeerDependencies:
- supports-color
- /@typescript-eslint/typescript-estree@6.2.0(typescript@5.1.6):
- resolution: {integrity: sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==}
+ /@typescript-eslint/typescript-estree@6.2.1(typescript@5.1.6):
+ resolution: {integrity: sha512-G+UJeQx9AKBHRQBpmvr8T/3K5bJa485eu+4tQBxFq0KoT22+jJyzo1B50JDT9QdC1DEmWQfdKsa8ybiNWYsi0Q==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
typescript: '*'
@@ -6037,8 +6041,8 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/visitor-keys': 6.2.0
+ '@typescript-eslint/types': 6.2.1
+ '@typescript-eslint/visitor-keys': 6.2.1
debug: 4.3.4
globby: 11.1.0
is-glob: 4.0.3
@@ -6069,8 +6073,8 @@ packages:
- typescript
dev: true
- /@typescript-eslint/utils@6.2.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-RCFrC1lXiX1qEZN8LmLrxYRhOkElEsPKTVSNout8DMzf8PeWoQG7Rxz2SadpJa3VSh5oYKGwt7j7X/VRg+Y3OQ==}
+ /@typescript-eslint/utils@6.2.1(eslint@8.46.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-eBIXQeupYmxVB6S7x+B9SdBeB6qIdXKjgQBge2J+Ouv8h9Cxm5dHf/gfAZA6dkMaag+03HdbVInuXMmqFB/lKQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -6078,9 +6082,9 @@ packages:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0)
'@types/json-schema': 7.0.12
'@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 6.2.0
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6)
+ '@typescript-eslint/scope-manager': 6.2.1
+ '@typescript-eslint/types': 6.2.1
+ '@typescript-eslint/typescript-estree': 6.2.1(typescript@5.1.6)
eslint: 8.46.0
semver: 7.5.4
transitivePeerDependencies:
@@ -6103,11 +6107,11 @@ packages:
'@typescript-eslint/types': 5.59.9
eslint-visitor-keys: 3.4.2
- /@typescript-eslint/visitor-keys@6.2.0:
- resolution: {integrity: sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==}
+ /@typescript-eslint/visitor-keys@6.2.1:
+ resolution: {integrity: sha512-iTN6w3k2JEZ7cyVdZJTVJx2Lv7t6zFA8DCrJEHD2mwfc16AEvvBWVhbFh34XyG2NORCd0viIgQY1+u7kPI0WpA==}
engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@typescript-eslint/types': 6.2.0
+ '@typescript-eslint/types': 6.2.1
eslint-visitor-keys: 3.4.2
dev: true
@@ -6416,11 +6420,6 @@ packages:
engines: {node: '>=0.4.0'}
hasBin: true
- /acorn@8.8.1:
- resolution: {integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==}
- engines: {node: '>=0.4.0'}
- hasBin: true
-
/agent-base@6.0.2:
resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
engines: {node: '>= 6.0.0'}
@@ -9777,7 +9776,7 @@ packages:
- eslint-import-resolver-webpack
- supports-color
- /eslint-config-preact@1.3.0(@typescript-eslint/eslint-plugin@6.2.0)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6):
+ /eslint-config-preact@1.3.0(@typescript-eslint/eslint-plugin@6.2.1)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6):
resolution: {integrity: sha512-yHYXg5qNzEJd3D/30AmsIW0W8MuY858KpApXp7xxBF08IYUljSKCOqMx+dVucXHQnAm7+11wOnMkgVHIBAechw==}
peerDependencies:
eslint: 6.x || 7.x || 8.x
@@ -9789,7 +9788,7 @@ packages:
'@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.9)
eslint: 8.46.0
eslint-plugin-compat: 4.1.2(eslint@8.46.0)
- eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@6.2.0)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6)
+ eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@6.2.1)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6)
eslint-plugin-react: 7.33.1(eslint@8.46.0)
eslint-plugin-react-hooks: 4.6.0(eslint@8.46.0)
transitivePeerDependencies:
@@ -9799,8 +9798,8 @@ packages:
- typescript
dev: true
- /eslint-config-prettier@8.9.0(eslint@8.46.0):
- resolution: {integrity: sha512-+sbni7NfVXnOpnRadUA8S28AUlsZt9GjgFvABIRL9Hkn8KqNzOp+7Lw4QWtrwn20KzU3wqu1QoOj2m+7rKRqkA==}
+ /eslint-config-prettier@8.10.0(eslint@8.46.0):
+ resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
@@ -9808,13 +9807,13 @@ packages:
eslint: 8.46.0
dev: true
- /eslint-config-turbo@1.10.3(eslint@8.46.0):
- resolution: {integrity: sha512-ggzPfTJfMsMS383oZ4zfTP1zQvyMyiigOQJRUnLt1nqII6SKkTzdKZdwmXRDHU24KFwUfEFtT6c8vnm2VhL0uQ==}
+ /eslint-config-turbo@1.10.7(eslint@8.46.0):
+ resolution: {integrity: sha512-0yHt5UlXVph8S4SOvP6gYehLvYjJj6XFKTYOG/WUQbjlcF0OU4pOT1a1juqmmBPWYlvJ0evt7v+RekY4tOopPQ==}
peerDependencies:
eslint: '>6.6.0'
dependencies:
eslint: 8.46.0
- eslint-plugin-turbo: 1.10.3(eslint@8.46.0)
+ eslint-plugin-turbo: 1.10.7(eslint@8.46.0)
dev: true
/eslint-import-resolver-node@0.3.6:
@@ -9919,7 +9918,7 @@ packages:
- eslint-import-resolver-webpack
- supports-color
- /eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@6.2.0)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6):
+ /eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@6.2.1)(eslint@8.46.0)(jest@29.6.2)(typescript@5.1.6):
resolution: {integrity: sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==}
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
peerDependencies:
@@ -9932,7 +9931,7 @@ packages:
jest:
optional: true
dependencies:
- '@typescript-eslint/eslint-plugin': 6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6)
+ '@typescript-eslint/eslint-plugin': 6.2.1(@typescript-eslint/parser@6.2.1)(eslint@8.46.0)(typescript@5.1.6)
'@typescript-eslint/experimental-utils': 5.54.0(eslint@8.46.0)(typescript@5.1.6)
eslint: 8.46.0
jest: 29.6.2
@@ -10002,11 +10001,12 @@ packages:
semver: 6.3.1
string.prototype.matchall: 4.0.8
- /eslint-plugin-turbo@1.10.3(eslint@8.46.0):
- resolution: {integrity: sha512-g3Mnnk7el1FqxHfqbE/MayLvCsYjA/vKmAnUj66kV4AlM7p/EZqdt42NMcMSKtDVEm0w+utQkkzWG2Xsa0Pd/g==}
+ /eslint-plugin-turbo@1.10.7(eslint@8.46.0):
+ resolution: {integrity: sha512-YikBHc75DY9VV1vAFUIBekHLQlxqVT5zTNibK8zBQInCUhF7PvyPJc0xXw5FSz8EYtt4uOV3r0Km3CmFRclS4Q==}
peerDependencies:
eslint: '>6.6.0'
dependencies:
+ dotenv: 16.0.3
eslint: 8.46.0
dev: true
@@ -10275,7 +10275,7 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/expect-utils': 29.6.2
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
jest-get-type: 29.4.3
jest-matcher-utils: 29.6.2
jest-message-util: 29.6.2
@@ -12295,7 +12295,7 @@ packages:
'@jest/expect': 29.6.2
'@jest/test-result': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
co: 4.6.0
dedent: 1.5.1
@@ -12333,7 +12333,7 @@ packages:
exit: 0.1.2
graceful-fs: 4.2.10
import-local: 3.1.0
- jest-config: 29.6.2(@types/node@20.4.5)
+ jest-config: 29.6.2(@types/node@20.4.6)
jest-util: 29.6.2
jest-validate: 29.6.2
prompts: 2.4.2
@@ -12345,7 +12345,7 @@ packages:
- ts-node
dev: true
- /jest-config@29.6.2(@types/node@20.4.5):
+ /jest-config@29.6.2(@types/node@20.4.6):
resolution: {integrity: sha512-VxwFOC8gkiJbuodG9CPtMRjBUNZEHxwfQXmIudSTzFWxaci3Qub1ddTRbFNQlD/zUeaifLndh/eDccFX4wCMQw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
@@ -12360,7 +12360,7 @@ packages:
'@babel/core': 7.22.9
'@jest/test-sequencer': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
babel-jest: 29.6.2(@babel/core@7.22.9)
chalk: 4.1.2
ci-info: 3.7.0
@@ -12453,7 +12453,7 @@ packages:
'@jest/environment': 29.6.2
'@jest/fake-timers': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
jest-mock: 29.6.2
jest-util: 29.6.2
dev: true
@@ -12478,7 +12478,7 @@ packages:
dependencies:
'@jest/types': 29.6.1
'@types/graceful-fs': 4.1.5
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.10
@@ -12554,7 +12554,7 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
jest-util: 29.6.2
dev: true
@@ -12637,7 +12637,7 @@ packages:
'@jest/test-result': 29.6.2
'@jest/transform': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
emittery: 0.13.1
graceful-fs: 4.2.10
@@ -12668,7 +12668,7 @@ packages:
'@jest/test-result': 29.6.2
'@jest/transform': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
cjs-module-lexer: 1.2.2
collect-v8-coverage: 1.0.1
@@ -12720,7 +12720,7 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
ci-info: 3.7.0
graceful-fs: 4.2.10
@@ -12732,7 +12732,7 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
chalk: 4.1.2
ci-info: 3.7.0
graceful-fs: 4.2.10
@@ -12773,7 +12773,7 @@ packages:
dependencies:
'@jest/test-result': 29.6.2
'@jest/types': 29.6.1
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
@@ -12785,7 +12785,7 @@ packages:
resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==}
engines: {node: '>= 10.13.0'}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
merge-stream: 2.0.0
supports-color: 7.2.0
dev: true
@@ -12794,7 +12794,7 @@ packages:
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
engines: {node: '>= 10.13.0'}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
merge-stream: 2.0.0
supports-color: 8.1.1
dev: false
@@ -12803,7 +12803,7 @@ packages:
resolution: {integrity: sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@types/node': 20.4.5
+ '@types/node': 20.4.6
jest-util: 29.6.2
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -16560,8 +16560,8 @@ packages:
source-map-js: 1.0.2
dev: true
- /posthog-js@1.75.2:
- resolution: {integrity: sha512-tvLsKu9FXrsz1ytkjRc0xqo1eZJ/FZjTdrrKRrXrzgbpwnqeN5pgs6Mq4hMNxQeFuDhoCMwGnyChk1NnDL5hEw==}
+ /posthog-js@1.75.3:
+ resolution: {integrity: sha512-q5xP4R/Tx8E6H0goZQjY+URMLATFiYXc2raHA+31aNvpBs118fPTmExa4RK6MgRZDFhBiMUBZNT6aj7dM3SyUQ==}
dependencies:
fflate: 0.4.8
dev: false
@@ -19422,7 +19422,7 @@ packages:
hasBin: true
dependencies:
'@jridgewell/source-map': 0.3.2
- acorn: 8.8.1
+ acorn: 8.10.0
commander: 2.20.3
source-map-support: 0.5.21
@@ -19685,8 +19685,8 @@ packages:
/tslib@2.5.3:
resolution: {integrity: sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==}
- /tsup@7.1.0:
- resolution: {integrity: sha512-mazl/GRAk70j8S43/AbSYXGgvRP54oQeX8Un4iZxzATHt0roW0t6HYDVZIXMw0ZQIpvr1nFMniIVnN5186lW7w==}
+ /tsup@7.2.0:
+ resolution: {integrity: sha512-vDHlczXbgUvY3rWvqFEbSqmC1L7woozbzngMqTtL2PGBODTtWlRwGDDawhvWzr5c1QjKe4OAKqJGfE1xeXUvtQ==}
engines: {node: '>=16.14'}
hasBin: true
peerDependencies: