Refactor code and update dependencies

Rearranged imports for better organization and readability across multiple files. Updated the `react-i18next` dependency to version 15.0.1 in various `package.json` files. Adjusted formatting in multiple TypeScript files to ensure code style consistency.
This commit is contained in:
gbuomprisco
2024-08-11 12:04:49 +02:00
parent e3503d8d47
commit babdecb78f
34 changed files with 2460 additions and 2385 deletions

View File

@@ -4,7 +4,7 @@ export function SitePageHeader({
title,
subtitle,
container = true,
className = ''
className = '',
}: {
title: string;
subtitle: string;
@@ -15,7 +15,9 @@ export function SitePageHeader({
return (
<div className={cn('border-b py-8 xl:py-10 2xl:py-12', className)}>
<div className={cn('flex flex-col space-y-2 lg:space-y-4', containerClass)}>
<div
className={cn('flex flex-col space-y-2 lg:space-y-4', containerClass)}
>
<h1
className={
'font-heading text-3xl font-medium tracking-tighter dark:text-white xl:text-5xl'

View File

@@ -3,11 +3,11 @@ import {
CurrentLifetimeOrderCard,
CurrentSubscriptionCard,
} from '@kit/billing-gateway/components';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { If } from '@kit/ui/if';
import { PageBody } from '@kit/ui/page';
import { Trans } from '@kit/ui/trans';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import billingConfig from '~/config/billing.config';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';

View File

@@ -1,6 +1,6 @@
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { Trans } from '@kit/ui/trans';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { withI18n } from '~/lib/i18n/with-i18n';
// local imports

View File

@@ -501,99 +501,102 @@ function Trend(
}
export function VisitorsChart() {
const chartData = useMemo(() => [
{ date: '2024-04-01', desktop: 222, mobile: 150 },
{ date: '2024-04-02', desktop: 97, mobile: 180 },
{ date: '2024-04-03', desktop: 167, mobile: 120 },
{ date: '2024-04-04', desktop: 242, mobile: 260 },
{ date: '2024-04-05', desktop: 373, mobile: 290 },
{ date: '2024-04-06', desktop: 301, mobile: 340 },
{ date: '2024-04-07', desktop: 245, mobile: 180 },
{ date: '2024-04-08', desktop: 409, mobile: 320 },
{ date: '2024-04-09', desktop: 59, mobile: 110 },
{ date: '2024-04-10', desktop: 261, mobile: 190 },
{ date: '2024-04-11', desktop: 327, mobile: 350 },
{ date: '2024-04-12', desktop: 292, mobile: 210 },
{ date: '2024-04-13', desktop: 342, mobile: 380 },
{ date: '2024-04-14', desktop: 137, mobile: 220 },
{ date: '2024-04-15', desktop: 120, mobile: 170 },
{ date: '2024-04-16', desktop: 138, mobile: 190 },
{ date: '2024-04-17', desktop: 446, mobile: 360 },
{ date: '2024-04-18', desktop: 364, mobile: 410 },
{ date: '2024-04-19', desktop: 243, mobile: 180 },
{ date: '2024-04-20', desktop: 89, mobile: 150 },
{ date: '2024-04-21', desktop: 137, mobile: 200 },
{ date: '2024-04-22', desktop: 224, mobile: 170 },
{ date: '2024-04-23', desktop: 138, mobile: 230 },
{ date: '2024-04-24', desktop: 387, mobile: 290 },
{ date: '2024-04-25', desktop: 215, mobile: 250 },
{ date: '2024-04-26', desktop: 75, mobile: 130 },
{ date: '2024-04-27', desktop: 383, mobile: 420 },
{ date: '2024-04-28', desktop: 122, mobile: 180 },
{ date: '2024-04-29', desktop: 315, mobile: 240 },
{ date: '2024-04-30', desktop: 454, mobile: 380 },
{ date: '2024-05-01', desktop: 165, mobile: 220 },
{ date: '2024-05-02', desktop: 293, mobile: 310 },
{ date: '2024-05-03', desktop: 247, mobile: 190 },
{ date: '2024-05-04', desktop: 385, mobile: 420 },
{ date: '2024-05-05', desktop: 481, mobile: 390 },
{ date: '2024-05-06', desktop: 498, mobile: 520 },
{ date: '2024-05-07', desktop: 388, mobile: 300 },
{ date: '2024-05-08', desktop: 149, mobile: 210 },
{ date: '2024-05-09', desktop: 227, mobile: 180 },
{ date: '2024-05-10', desktop: 293, mobile: 330 },
{ date: '2024-05-11', desktop: 335, mobile: 270 },
{ date: '2024-05-12', desktop: 197, mobile: 240 },
{ date: '2024-05-13', desktop: 197, mobile: 160 },
{ date: '2024-05-14', desktop: 448, mobile: 490 },
{ date: '2024-05-15', desktop: 473, mobile: 380 },
{ date: '2024-05-16', desktop: 338, mobile: 400 },
{ date: '2024-05-17', desktop: 499, mobile: 420 },
{ date: '2024-05-18', desktop: 315, mobile: 350 },
{ date: '2024-05-19', desktop: 235, mobile: 180 },
{ date: '2024-05-20', desktop: 177, mobile: 230 },
{ date: '2024-05-21', desktop: 82, mobile: 140 },
{ date: '2024-05-22', desktop: 81, mobile: 120 },
{ date: '2024-05-23', desktop: 252, mobile: 290 },
{ date: '2024-05-24', desktop: 294, mobile: 220 },
{ date: '2024-05-25', desktop: 201, mobile: 250 },
{ date: '2024-05-26', desktop: 213, mobile: 170 },
{ date: '2024-05-27', desktop: 420, mobile: 460 },
{ date: '2024-05-28', desktop: 233, mobile: 190 },
{ date: '2024-05-29', desktop: 78, mobile: 130 },
{ date: '2024-05-30', desktop: 340, mobile: 280 },
{ date: '2024-05-31', desktop: 178, mobile: 230 },
{ date: '2024-06-01', desktop: 178, mobile: 200 },
{ date: '2024-06-02', desktop: 470, mobile: 410 },
{ date: '2024-06-03', desktop: 103, mobile: 160 },
{ date: '2024-06-04', desktop: 439, mobile: 380 },
{ date: '2024-06-05', desktop: 88, mobile: 140 },
{ date: '2024-06-06', desktop: 294, mobile: 250 },
{ date: '2024-06-07', desktop: 323, mobile: 370 },
{ date: '2024-06-08', desktop: 385, mobile: 320 },
{ date: '2024-06-09', desktop: 438, mobile: 480 },
{ date: '2024-06-10', desktop: 155, mobile: 200 },
{ date: '2024-06-11', desktop: 92, mobile: 150 },
{ date: '2024-06-12', desktop: 492, mobile: 420 },
{ date: '2024-06-13', desktop: 81, mobile: 130 },
{ date: '2024-06-14', desktop: 426, mobile: 380 },
{ date: '2024-06-15', desktop: 307, mobile: 350 },
{ date: '2024-06-16', desktop: 371, mobile: 310 },
{ date: '2024-06-17', desktop: 475, mobile: 520 },
{ date: '2024-06-18', desktop: 107, mobile: 170 },
{ date: '2024-06-19', desktop: 341, mobile: 290 },
{ date: '2024-06-20', desktop: 408, mobile: 450 },
{ date: '2024-06-21', desktop: 169, mobile: 210 },
{ date: '2024-06-22', desktop: 317, mobile: 270 },
{ date: '2024-06-23', desktop: 480, mobile: 530 },
{ date: '2024-06-24', desktop: 132, mobile: 180 },
{ date: '2024-06-25', desktop: 141, mobile: 190 },
{ date: '2024-06-26', desktop: 434, mobile: 380 },
{ date: '2024-06-27', desktop: 448, mobile: 490 },
{ date: '2024-06-28', desktop: 149, mobile: 200 },
{ date: '2024-06-29', desktop: 103, mobile: 160 },
{ date: '2024-06-30', desktop: 446, mobile: 400 },
], []);
const chartData = useMemo(
() => [
{ date: '2024-04-01', desktop: 222, mobile: 150 },
{ date: '2024-04-02', desktop: 97, mobile: 180 },
{ date: '2024-04-03', desktop: 167, mobile: 120 },
{ date: '2024-04-04', desktop: 242, mobile: 260 },
{ date: '2024-04-05', desktop: 373, mobile: 290 },
{ date: '2024-04-06', desktop: 301, mobile: 340 },
{ date: '2024-04-07', desktop: 245, mobile: 180 },
{ date: '2024-04-08', desktop: 409, mobile: 320 },
{ date: '2024-04-09', desktop: 59, mobile: 110 },
{ date: '2024-04-10', desktop: 261, mobile: 190 },
{ date: '2024-04-11', desktop: 327, mobile: 350 },
{ date: '2024-04-12', desktop: 292, mobile: 210 },
{ date: '2024-04-13', desktop: 342, mobile: 380 },
{ date: '2024-04-14', desktop: 137, mobile: 220 },
{ date: '2024-04-15', desktop: 120, mobile: 170 },
{ date: '2024-04-16', desktop: 138, mobile: 190 },
{ date: '2024-04-17', desktop: 446, mobile: 360 },
{ date: '2024-04-18', desktop: 364, mobile: 410 },
{ date: '2024-04-19', desktop: 243, mobile: 180 },
{ date: '2024-04-20', desktop: 89, mobile: 150 },
{ date: '2024-04-21', desktop: 137, mobile: 200 },
{ date: '2024-04-22', desktop: 224, mobile: 170 },
{ date: '2024-04-23', desktop: 138, mobile: 230 },
{ date: '2024-04-24', desktop: 387, mobile: 290 },
{ date: '2024-04-25', desktop: 215, mobile: 250 },
{ date: '2024-04-26', desktop: 75, mobile: 130 },
{ date: '2024-04-27', desktop: 383, mobile: 420 },
{ date: '2024-04-28', desktop: 122, mobile: 180 },
{ date: '2024-04-29', desktop: 315, mobile: 240 },
{ date: '2024-04-30', desktop: 454, mobile: 380 },
{ date: '2024-05-01', desktop: 165, mobile: 220 },
{ date: '2024-05-02', desktop: 293, mobile: 310 },
{ date: '2024-05-03', desktop: 247, mobile: 190 },
{ date: '2024-05-04', desktop: 385, mobile: 420 },
{ date: '2024-05-05', desktop: 481, mobile: 390 },
{ date: '2024-05-06', desktop: 498, mobile: 520 },
{ date: '2024-05-07', desktop: 388, mobile: 300 },
{ date: '2024-05-08', desktop: 149, mobile: 210 },
{ date: '2024-05-09', desktop: 227, mobile: 180 },
{ date: '2024-05-10', desktop: 293, mobile: 330 },
{ date: '2024-05-11', desktop: 335, mobile: 270 },
{ date: '2024-05-12', desktop: 197, mobile: 240 },
{ date: '2024-05-13', desktop: 197, mobile: 160 },
{ date: '2024-05-14', desktop: 448, mobile: 490 },
{ date: '2024-05-15', desktop: 473, mobile: 380 },
{ date: '2024-05-16', desktop: 338, mobile: 400 },
{ date: '2024-05-17', desktop: 499, mobile: 420 },
{ date: '2024-05-18', desktop: 315, mobile: 350 },
{ date: '2024-05-19', desktop: 235, mobile: 180 },
{ date: '2024-05-20', desktop: 177, mobile: 230 },
{ date: '2024-05-21', desktop: 82, mobile: 140 },
{ date: '2024-05-22', desktop: 81, mobile: 120 },
{ date: '2024-05-23', desktop: 252, mobile: 290 },
{ date: '2024-05-24', desktop: 294, mobile: 220 },
{ date: '2024-05-25', desktop: 201, mobile: 250 },
{ date: '2024-05-26', desktop: 213, mobile: 170 },
{ date: '2024-05-27', desktop: 420, mobile: 460 },
{ date: '2024-05-28', desktop: 233, mobile: 190 },
{ date: '2024-05-29', desktop: 78, mobile: 130 },
{ date: '2024-05-30', desktop: 340, mobile: 280 },
{ date: '2024-05-31', desktop: 178, mobile: 230 },
{ date: '2024-06-01', desktop: 178, mobile: 200 },
{ date: '2024-06-02', desktop: 470, mobile: 410 },
{ date: '2024-06-03', desktop: 103, mobile: 160 },
{ date: '2024-06-04', desktop: 439, mobile: 380 },
{ date: '2024-06-05', desktop: 88, mobile: 140 },
{ date: '2024-06-06', desktop: 294, mobile: 250 },
{ date: '2024-06-07', desktop: 323, mobile: 370 },
{ date: '2024-06-08', desktop: 385, mobile: 320 },
{ date: '2024-06-09', desktop: 438, mobile: 480 },
{ date: '2024-06-10', desktop: 155, mobile: 200 },
{ date: '2024-06-11', desktop: 92, mobile: 150 },
{ date: '2024-06-12', desktop: 492, mobile: 420 },
{ date: '2024-06-13', desktop: 81, mobile: 130 },
{ date: '2024-06-14', desktop: 426, mobile: 380 },
{ date: '2024-06-15', desktop: 307, mobile: 350 },
{ date: '2024-06-16', desktop: 371, mobile: 310 },
{ date: '2024-06-17', desktop: 475, mobile: 520 },
{ date: '2024-06-18', desktop: 107, mobile: 170 },
{ date: '2024-06-19', desktop: 341, mobile: 290 },
{ date: '2024-06-20', desktop: 408, mobile: 450 },
{ date: '2024-06-21', desktop: 169, mobile: 210 },
{ date: '2024-06-22', desktop: 317, mobile: 270 },
{ date: '2024-06-23', desktop: 480, mobile: 530 },
{ date: '2024-06-24', desktop: 132, mobile: 180 },
{ date: '2024-06-25', desktop: 141, mobile: 190 },
{ date: '2024-06-26', desktop: 434, mobile: 380 },
{ date: '2024-06-27', desktop: 448, mobile: 490 },
{ date: '2024-06-28', desktop: 149, mobile: 200 },
{ date: '2024-06-29', desktop: 103, mobile: 160 },
{ date: '2024-06-30', desktop: 446, mobile: 400 },
],
[],
);
const chartConfig = {
visitors: {

View File

@@ -6,13 +6,12 @@ import {
CurrentSubscriptionCard,
} from '@kit/billing-gateway/components';
import { Alert, AlertDescription, AlertTitle } from '@kit/ui/alert';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { If } from '@kit/ui/if';
import { PageBody } from '@kit/ui/page';
import { Trans } from '@kit/ui/trans';
import { cn } from '@kit/ui/utils';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import billingConfig from '~/config/billing.config';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';

View File

@@ -6,6 +6,7 @@ import {
AccountMembersTable,
InviteMembersDialogContainer,
} from '@kit/team-accounts/components';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { Button } from '@kit/ui/button';
import {
Card,
@@ -18,7 +19,6 @@ import { If } from '@kit/ui/if';
import { PageBody } from '@kit/ui/page';
import { Trans } from '@kit/ui/trans';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';

View File

@@ -1,10 +1,10 @@
import { getSupabaseServerComponentClient } from '@kit/supabase/server-component-client';
import { createTeamAccountsApi } from '@kit/team-accounts/api';
import { TeamAccountSettingsContainer } from '@kit/team-accounts/components';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import { PageBody } from '@kit/ui/page';
import { Trans } from '@kit/ui/trans';
import { AppBreadcrumbs } from '@kit/ui/app-breadcrumbs';
import featuresFlagConfig from '~/config/feature-flags.config';
import pathsConfig from '~/config/paths.config';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';

View File

@@ -128,7 +128,7 @@ export default createBillingSchema({
{
id: 'price_enterprise_yearly',
name: 'Base',
cost: 299.90,
cost: 299.9,
type: 'flat',
},
],

View File

@@ -14,7 +14,8 @@ const FeatureFlagsSchema = z.object({
}),
enableTeamDeletion: z.boolean({
description: 'Enable team deletion.',
required_error: 'Provide the variable NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_DELETION',
required_error:
'Provide the variable NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_DELETION',
}),
enableTeamAccounts: z.boolean({
description: 'Enable team accounts.',

File diff suppressed because it is too large Load Diff

View File

@@ -57,7 +57,7 @@
"@radix-ui/react-icons": "^1.3.0",
"@supabase/supabase-js": "^2.45.1",
"@tanstack/react-query": "5.51.21",
"@tanstack/react-query-next-experimental": "^5.51.21",
"@tanstack/react-query-next-experimental": "^5.51.23",
"@tanstack/react-table": "^8.20.1",
"date-fns": "^3.6.0",
"lucide-react": "^0.424.0",
@@ -67,7 +67,7 @@
"react": "18.3.1",
"react-dom": "18.3.1",
"react-hook-form": "^7.52.2",
"react-i18next": "^15.0.0",
"react-i18next": "^15.0.1",
"recharts": "^2.12.7",
"sonner": "^1.5.0",
"tailwind-merge": "^2.4.0",

View File

@@ -47,10 +47,7 @@ export function createAnalyticsManager<T extends string, Config extends object>(
registerActiveServices(options);
return {
addProvider: (
provider: T,
config: Config,
) => {
addProvider: (provider: T, config: Config) => {
const factory = options.providers[provider];
if (!factory) {

View File

@@ -34,7 +34,7 @@
"next": "14.2.5",
"react": "18.3.1",
"react-hook-form": "^7.52.2",
"react-i18next": "^15.0.0",
"react-i18next": "^15.0.1",
"zod": "^3.23.8"
},
"eslintConfig": {

View File

@@ -16,8 +16,8 @@
},
"dependencies": {
"@stripe/react-stripe-js": "^2.7.3",
"@stripe/stripe-js": "^4.1.0",
"stripe": "^16.6.0"
"@stripe/stripe-js": "^4.2.0",
"stripe": "^16.7.0"
},
"devDependencies": {
"@kit/billing": "workspace:^",

View File

@@ -44,7 +44,7 @@
"react": "18.3.1",
"react-dom": "18.3.1",
"react-hook-form": "^7.52.2",
"react-i18next": "^15.0.0",
"react-i18next": "^15.0.1",
"sonner": "^1.5.0",
"zod": "^3.23.8"
},

View File

@@ -103,7 +103,7 @@ export function AccountSelector({
role="combobox"
aria-expanded={open}
className={cn(
'dark:shadow-primary/10 group w-full lg:w-auto min-w-0 lg:max-w-fit px-2',
'dark:shadow-primary/10 group w-full min-w-0 px-2 lg:w-auto lg:max-w-fit',
{
'justify-start': !collapsed,
'justify-center': collapsed,

View File

@@ -93,7 +93,7 @@ export function PersonalAccountDropdown({
)}
>
<ProfileAvatar
className={'border border-transparent group-hover:border-primary/10'}
className={'group-hover:border-primary/10 border border-transparent'}
displayName={displayName ?? user?.email ?? ''}
pictureUrl={personalAccountData?.picture_url}
/>

View File

@@ -34,7 +34,7 @@
"lucide-react": "^0.424.0",
"next": "14.2.5",
"react-hook-form": "^7.52.2",
"react-i18next": "^15.0.0",
"react-i18next": "^15.0.1",
"sonner": "^1.5.0",
"zod": "^3.23.8"
},

View File

@@ -26,7 +26,7 @@
"lucide-react": "^0.424.0",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-i18next": "^15.0.0"
"react-i18next": "^15.0.1"
},
"prettier": "@kit/prettier-config",
"eslintConfig": {

View File

@@ -44,7 +44,7 @@
"react": "18.3.1",
"react-dom": "18.3.1",
"react-hook-form": "^7.52.2",
"react-i18next": "^15.0.0",
"react-i18next": "^15.0.1",
"sonner": "^1.5.0",
"zod": "^3.23.8"
},

View File

@@ -28,7 +28,7 @@ export function TeamAccountSettingsContainer(props: {
features: {
enableTeamDeletion: boolean;
}
};
}) {
return (
<div className={'flex w-full flex-col space-y-4'}>

View File

@@ -22,7 +22,7 @@
"@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*",
"@tanstack/react-query": "5.51.21",
"react-i18next": "^15.0.0"
"react-i18next": "^15.0.1"
},
"dependencies": {
"i18next": "^23.12.2",

View File

@@ -16,7 +16,7 @@
"./config/server": "./src/sentry.client.server.ts"
},
"dependencies": {
"@sentry/nextjs": "^8.24.0"
"@sentry/nextjs": "^8.25.0"
},
"devDependencies": {
"@kit/eslint-config": "workspace:*",

File diff suppressed because it is too large Load Diff

View File

@@ -54,7 +54,7 @@
"prettier": "^3.3.3",
"react-day-picker": "^8.10.1",
"react-hook-form": "^7.52.2",
"react-i18next": "^15.0.0",
"react-i18next": "^15.0.1",
"sonner": "^1.5.0",
"tailwindcss": "3.4.7",
"tailwindcss-animate": "^1.0.7",

View File

@@ -1,5 +1,7 @@
'use client';
import { Fragment } from 'react';
import { usePathname } from 'next/navigation';
import {
@@ -12,7 +14,6 @@ import {
} from '../shadcn/breadcrumb';
import { If } from './if';
import { Trans } from './trans';
import { Fragment } from 'react';
const unslugify = (slug: string) => slug.replace(/-/g, ' ');

View File

@@ -59,7 +59,12 @@ export function PageMobileNavigation(
}>,
) {
return (
<div className={cn('w-full py-2 lg:hidden flex items-center border-b', props.className)}>
<div
className={cn(
'flex w-full items-center border-b py-2 lg:hidden',
props.className,
)}
>
{props.children}
</div>
);
@@ -77,7 +82,7 @@ function PageWithHeader(props: PageProps) {
>
<div
className={cn(
'flex h-14 items-center justify-between bg-muted/40 px-4 lg:shadow-sm dark:border-border dark:shadow-primary/10 lg:justify-start',
'flex h-14 items-center justify-between bg-muted/40 px-4 dark:border-border dark:shadow-primary/10 lg:justify-start lg:shadow-sm',
{
'sticky top-0 z-10 backdrop-blur-md': props.sticky ?? true,
},
@@ -151,7 +156,7 @@ export function PageHeader({
return (
<div
className={cn(
'flex items-center justify-between lg:px-4 py-4',
'flex items-center justify-between py-4 lg:px-4',
className,
)}
>

View File

@@ -1,5 +1,5 @@
import { Avatar, AvatarFallback, AvatarImage } from '../shadcn/avatar';
import {cn} from "../utils";
import { cn } from '../utils';
type SessionProps = {
displayName: string | null;
@@ -15,7 +15,10 @@ type ProfileAvatarProps = (SessionProps | TextProps) & {
};
export function ProfileAvatar(props: ProfileAvatarProps) {
const avatarClassName = cn(props.className, 'mx-auto w-9 h-9 group-focus:ring-2');
const avatarClassName = cn(
props.className,
'mx-auto w-9 h-9 group-focus:ring-2',
);
if ('text' in props) {
return (

View File

@@ -60,7 +60,9 @@ export function SidebarContent({
className?: string;
}>) {
return (
<div className={cn('flex w-full flex-col space-y-1.5 px-4 py-1', className)}>
<div
className={cn('flex w-full flex-col space-y-1.5 px-4 py-1', className)}
>
{children}
</div>
);
@@ -194,22 +196,14 @@ export function SidebarItem({
}
function getClassNameBuilder(className: string) {
return cva(
[
cn(
'flex box-content h-screen flex-col relative',
className,
),
],
{
variants: {
collapsed: {
true: `w-[6rem]`,
false: `w-2/12 lg:w-[17rem]`,
},
return cva([cn('flex box-content h-screen flex-col relative', className)], {
variants: {
collapsed: {
true: `w-[6rem]`,
false: `w-2/12 lg:w-[17rem]`,
},
},
);
});
}
export function SidebarNavigation({

View File

@@ -27,4 +27,4 @@ export function Spinner(
</svg>
</div>
);
}
}

View File

@@ -51,7 +51,10 @@ const BreadcrumbLink = React.forwardRef<
return (
<Comp
ref={ref}
className={cn('transition-colors text-foreground hover:underline', className)}
className={cn(
'text-foreground transition-colors hover:underline',
className,
)}
{...props}
/>
);

View File

@@ -8,10 +8,7 @@ const Card = React.forwardRef<
>(({ className, ...props }, ref) => (
<div
ref={ref}
className={cn(
'rounded-xl border bg-card text-card-foreground',
className,
)}
className={cn('rounded-xl border bg-card text-card-foreground', className)}
{...props}
/>
));

366
pnpm-lock.yaml generated
View File

@@ -17,7 +17,7 @@ importers:
version: 0.21.4
'@turbo/gen':
specifier: ^2.0.12
version: 2.0.12(@types/node@22.1.0)(typescript@5.5.4)
version: 2.0.12(@types/node@22.2.0)(typescript@5.5.4)
cross-env:
specifier: ^7.0.3
version: 7.0.3
@@ -127,8 +127,8 @@ importers:
specifier: 5.51.21
version: 5.51.21(react@18.3.1)
'@tanstack/react-query-next-experimental':
specifier: ^5.51.21
version: 5.51.21(@tanstack/react-query@5.51.21(react@18.3.1))(next@14.2.5(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
specifier: ^5.51.23
version: 5.51.23(@tanstack/react-query@5.51.21(react@18.3.1))(next@14.2.5(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
'@tanstack/react-table':
specifier: ^8.20.1
version: 8.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -157,8 +157,8 @@ importers:
specifier: ^7.52.2
version: 7.52.2(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
recharts:
specifier: ^2.12.7
version: 2.12.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -320,8 +320,8 @@ importers:
specifier: ^7.52.2
version: 7.52.2(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
zod:
specifier: ^3.23.8
version: 3.23.8
@@ -373,13 +373,13 @@ importers:
dependencies:
'@stripe/react-stripe-js':
specifier: ^2.7.3
version: 2.7.3(@stripe/stripe-js@4.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
version: 2.7.3(@stripe/stripe-js@4.2.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@stripe/stripe-js':
specifier: ^4.1.0
version: 4.1.0
specifier: ^4.2.0
version: 4.2.0
stripe:
specifier: ^16.6.0
version: 16.6.0
specifier: ^16.7.0
version: 16.7.0
devDependencies:
'@kit/billing':
specifier: workspace:^
@@ -640,8 +640,8 @@ importers:
specifier: ^7.52.2
version: 7.52.2(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
sonner:
specifier: ^1.5.0
version: 1.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -766,8 +766,8 @@ importers:
specifier: ^7.52.2
version: 7.52.2(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
sonner:
specifier: ^1.5.0
version: 1.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -814,8 +814,8 @@ importers:
specifier: 18.3.1
version: 18.3.1(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
packages/features/team-accounts:
dependencies:
@@ -902,8 +902,8 @@ importers:
specifier: ^7.52.2
version: 7.52.2(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
sonner:
specifier: ^1.5.0
version: 1.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -942,8 +942,8 @@ importers:
specifier: 5.51.21
version: 5.51.21(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
packages/mailers:
dependencies:
@@ -1061,8 +1061,8 @@ importers:
packages/monitoring/sentry:
dependencies:
'@sentry/nextjs':
specifier: ^8.24.0
version: 8.24.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.93.0)
specifier: ^8.25.0
version: 8.25.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.93.0)
devDependencies:
'@kit/eslint-config':
specifier: workspace:*
@@ -1316,17 +1316,17 @@ importers:
specifier: ^7.52.2
version: 7.52.2(react@18.3.1)
react-i18next:
specifier: ^15.0.0
version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
specifier: ^15.0.1
version: 15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
sonner:
specifier: ^1.5.0
version: 1.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
tailwindcss:
specifier: 3.4.7
version: 3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4))
version: 3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4))
tailwindcss-animate:
specifier: ^1.0.7
version: 1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4)))
version: 1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4)))
typescript:
specifier: ^5.5.4
version: 5.5.4
@@ -1389,8 +1389,8 @@ importers:
specifier: ^3.3.3
version: 3.3.3
prettier-plugin-tailwindcss:
specifier: ^0.6.5
version: 0.6.5(@ianvs/prettier-plugin-sort-imports@4.3.1(prettier@3.3.3))(@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.3.3))(prettier-plugin-astro@0.14.1)(prettier@3.3.3)
specifier: ^0.6.6
version: 0.6.6(@ianvs/prettier-plugin-sort-imports@4.3.1(prettier@3.3.3))(@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.3.3))(prettier-plugin-astro@0.14.1)(prettier@3.3.3)
devDependencies:
'@kit/tsconfig':
specifier: workspace:^
@@ -1409,10 +1409,10 @@ importers:
version: 8.4.41
tailwindcss:
specifier: 3.4.7
version: 3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4))
version: 3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4))
tailwindcss-animate:
specifier: ^1.0.7
version: 1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4)))
version: 1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4)))
devDependencies:
'@kit/eslint-config':
specifier: workspace:^
@@ -3710,28 +3710,28 @@ packages:
'@selderee/plugin-htmlparser2@0.11.0':
resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
'@sentry-internal/browser-utils@8.24.0':
resolution: {integrity: sha512-U5dVZ4JM+UeN3YWBUHZcNLF038C3ccTTsTICIw+zfCQbpPhPms8DOEDVpd0So18XoNDzYmLo07hC1BwByRAfGw==}
'@sentry-internal/browser-utils@8.25.0':
resolution: {integrity: sha512-nlWgp1lVhNQOTUplW85G3qm0fOIgAhJ/sl/31OIuScVrITYhYDF2bO+Zv/jQ8YsdUBAUXqY1tPT9wwPJklnPhw==}
engines: {node: '>=14.18'}
'@sentry-internal/feedback@8.24.0':
resolution: {integrity: sha512-0tWRp8SOSTSPTViRJnB6+HHixFgkEWjKPciuLsAZkobRhi+VVedPj3zVztORy5AvARGr6AgyVSdnviilcrKl6g==}
'@sentry-internal/feedback@8.25.0':
resolution: {integrity: sha512-327I5XJAFrsgjc5qUKxZ9rff3WNCfGvf1fIii70LQ2YQhQgG4XHZILmkD06ETEyXb+H1tkrNQQEJ1/d4ai+q5g==}
engines: {node: '>=14.18'}
'@sentry-internal/replay-canvas@8.24.0':
resolution: {integrity: sha512-MI+j9tUab1d5oer2xKQ2lxdXSzBeZ1DF2dwlVxQDOfSAQqRfZJpmLcmSPb6M+GJsf2xHg6n4dAQvWQuM0qGQPQ==}
'@sentry-internal/replay-canvas@8.25.0':
resolution: {integrity: sha512-dPXlkAbkFL1DBum8rGTaHS+apJKaXEZJF9gLcBBKTruhTCizrugFLxajzIfVSiFVuwNKuJWa2fzhzbeQM0ee7w==}
engines: {node: '>=14.18'}
'@sentry-internal/replay@8.24.0':
resolution: {integrity: sha512-+3d+3Ln7iDOZo2wOBv7EWojVHigEskjKsz8vR3WFdxYyue8e3zPQ/xg/t9A6BtEVRPQsEyhM3oN6LyjqFv2nfg==}
'@sentry-internal/replay@8.25.0':
resolution: {integrity: sha512-3f7x8EYthyj157uV9V8vBjun+1gJnHhh2+i0qxYLhMGx7N2Fq0J3Bvvo1rosSg+fYh5HzPNZDufwIRdg5C/MQw==}
engines: {node: '>=14.18'}
'@sentry/babel-plugin-component-annotate@2.20.1':
resolution: {integrity: sha512-4mhEwYTK00bIb5Y9UWIELVUfru587Vaeg0DQGswv4aIRHIiMKLyNqCEejaaybQ/fNChIZOKmvyqXk430YVd7Qg==}
engines: {node: '>= 14'}
'@sentry/browser@8.24.0':
resolution: {integrity: sha512-WdCLUoMAE0ZWsZDb3G/FQI5YgkH59VVEpnPqrWI08m2KuqLz8eU724JZvNzaDv/L2yzksgS4HDDUXkNRzDeCrQ==}
'@sentry/browser@8.25.0':
resolution: {integrity: sha512-51bdVGXjyooqVGzaSGsnExqRTt9NvZ1zGFsxbbCSXi5UoEFN6zdMUz6jKYsL2K80eeELP2VKOVlobHlEzeJQfw==}
engines: {node: '>=14.18'}
'@sentry/bundler-plugin-core@2.20.1':
@@ -3784,12 +3784,12 @@ packages:
engines: {node: '>= 10'}
hasBin: true
'@sentry/core@8.24.0':
resolution: {integrity: sha512-nyy7po78Ef5KNzehHJCCyLGGR/FceHyw2IRzDQUVD6M4tos8G1OML1gcnALChWhyeq1SIoDsC1ofxFlbkIWuog==}
'@sentry/core@8.25.0':
resolution: {integrity: sha512-7KtglbrW1eX4DOHkf6i4rRIExEf2CgtQ99qZ8gn5FUaAmNMg0rK7bb1yZMx0RZtp5G1TSz/S0jQQgxHWebaEig==}
engines: {node: '>=14.18'}
'@sentry/nextjs@8.24.0':
resolution: {integrity: sha512-L26RHJb0wmubw4su4TolSQOl3vx1xESV3ZdogeGd5wlS0lnxT35C/XG7R+g1e/qCNIszUH5g73A7ejh/eakfaQ==}
'@sentry/nextjs@8.25.0':
resolution: {integrity: sha512-fs1vI85aXT2cMq1sK5x3nCtNk5G1ih17LXzRms1YpwCwLTLs7200ysLpRxg7McYa+USe++O/ZnvEROfLWOmp7g==}
engines: {node: '>=14.18'}
peerDependencies:
next: ^13.2.0 || ^14.0 || ^15.0.0-rc.0
@@ -3798,12 +3798,12 @@ packages:
webpack:
optional: true
'@sentry/node@8.24.0':
resolution: {integrity: sha512-BKemIyeUyitsO52VEYlJTkIpaJELNi5xYHzMTG60N+JxNs+ytNaDMeS9cDVXXKY1LD9oG+vlqp6RQVT4LfieNw==}
'@sentry/node@8.25.0':
resolution: {integrity: sha512-KFeJpYU/7CKi/v8D72ztniA+QqH0yBv2wzEP0PUe3DWZ/Fwl0OQSVWNNuDfJBQUvk3NrytCH5A6klZjU0/rwlw==}
engines: {node: '>=14.18'}
'@sentry/opentelemetry@8.24.0':
resolution: {integrity: sha512-Qiixv3v7x6ZZT5C9VDhoayxOcA5i18Paie8MegejwWRpZwWK28OQiP9MhZQQtstzNSDsw2+9/+K9r6gWf/kJMQ==}
'@sentry/opentelemetry@8.25.0':
resolution: {integrity: sha512-6g4TXwQMHtvmlu2i1OKqvFD2W2RTrGBxDtJ1tBQmqCfHKyiqQ37gy6AozuwrQ3po1KKbawaQGIFNEzb4wnSrfA==}
engines: {node: '>=14.18'}
peerDependencies:
'@opentelemetry/api': ^1.9.0
@@ -3812,22 +3812,22 @@ packages:
'@opentelemetry/sdk-trace-base': ^1.25.1
'@opentelemetry/semantic-conventions': ^1.25.1
'@sentry/react@8.24.0':
resolution: {integrity: sha512-UaNmGEtYUFMoE1lKlsedOYGvQX72/A+/CiDg5umQwwS33XfGY4geh3zMo3jjEKTjhR1T5gofBz74sXnTCyrW4A==}
'@sentry/react@8.25.0':
resolution: {integrity: sha512-A3QeSCJEa+lpo5nh0kxKeqsmnuW2nycKNN/0bpXPv5T5jiEfExSmEBVM0zutrQpf+J0WRIl1AGunUYGPO+GPQg==}
engines: {node: '>=14.18'}
peerDependencies:
react: 18.3.1
'@sentry/types@8.24.0':
resolution: {integrity: sha512-5QWXARoFrvTvnS19ip+ha0x4nWIv/RvoCTnqCsgrNTjypbk1+KMSMQQhGMo8OuEBFhdGyTs1BqfxVV82URHh3w==}
'@sentry/types@8.25.0':
resolution: {integrity: sha512-ojim0gDcRhGJPguYrtms4FsprX4xZz3LGNk9Z0hwTbSVEdlhQIInsQ7CYcdM3sjUs+qT7kfpxTRZGUeZNRRJcA==}
engines: {node: '>=14.18'}
'@sentry/utils@8.24.0':
resolution: {integrity: sha512-AGo5PldxCJYn3g0IYXeBkeALNa+NieJaaCDpYyzrKAFdxoA6Qp+Z/wmN9m5BYZ9eHx9N+xMOoz2aIh4hG48VbQ==}
'@sentry/utils@8.25.0':
resolution: {integrity: sha512-mVlkV7S62ZZ2jM38/kOwWx2xoW8fUv2cjw2IwFKoAIPyLBh3mo1WJtvfdtN/rXGjQWZJBKW53EWaWnD00rkjyA==}
engines: {node: '>=14.18'}
'@sentry/vercel-edge@8.24.0':
resolution: {integrity: sha512-JQ+78SlpBs3WNiCwx+sYzj38x3AhA4Dvdcsgqr9hYXyo9Ijr0YB5j/bSOzBBPiaksFC+q6Yg+Rdd5MkYJsBqyQ==}
'@sentry/vercel-edge@8.25.0':
resolution: {integrity: sha512-mWz/ACi/ybCFbitdMCvoVWBkn9fapmFsXgVN3adVpmLf7MKE2ezw2zrXHLjNbnACbzs3b+hz1dYmvlUdw1pdqA==}
engines: {node: '>=14.18'}
'@sentry/webpack-plugin@2.20.1':
@@ -3855,8 +3855,8 @@ packages:
react: 18.3.1
react-dom: 18.3.1
'@stripe/stripe-js@4.1.0':
resolution: {integrity: sha512-HhstGRUz/4JdbZpb26OcOf8Qb/cFR02arvHvgz4sPFLSnI6ZNHC53Jc6JP/FGNwxtrF719YyUnK0gGy4oyhucQ==}
'@stripe/stripe-js@4.2.0':
resolution: {integrity: sha512-MdTpmXqtm+B9rIAmaSlCkF6qv3793UrghA95SFI4Ge7KGYWZAMYyxbX/z9FXs6XnU5gUbKtGtlVgZQp1T88UfQ==}
engines: {node: '>=12.16'}
'@supabase/auth-js@2.64.4':
@@ -3908,10 +3908,10 @@ packages:
'@tanstack/query-core@5.51.21':
resolution: {integrity: sha512-POQxm42IUp6n89kKWF4IZi18v3fxQWFRolvBA6phNVmA8psdfB1MvDnGacCJdS+EOX12w/CyHM62z//rHmYmvw==}
'@tanstack/react-query-next-experimental@5.51.21':
resolution: {integrity: sha512-cS+OK8uM3xaiu3kqpHs2vq3jV5KOWviJIYQrJC18RPN/fnv72A2j6runggDDnW8ubVTPfO4ofidhRDxixygdYw==}
'@tanstack/react-query-next-experimental@5.51.23':
resolution: {integrity: sha512-5fPPLbnASRdea24AxdpMd3gs21q1ZB8ZsWDQDzrYih1SkaT3gADOixMsqM0l5MUvfj2O/u1ZcAizG/IA0EA1bw==}
peerDependencies:
'@tanstack/react-query': ^5.51.21
'@tanstack/react-query': ^5.51.23
next: ^13 || ^14 || ^15
react: 18.3.1
@@ -4021,6 +4021,9 @@ packages:
'@types/eslint@8.56.10':
resolution: {integrity: sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==}
'@types/eslint@9.6.0':
resolution: {integrity: sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg==}
'@types/estree-jsx@1.0.5':
resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
@@ -4078,6 +4081,9 @@ packages:
'@types/node@22.1.0':
resolution: {integrity: sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw==}
'@types/node@22.2.0':
resolution: {integrity: sha512-bm6EG6/pCpkxDf/0gDNDdtDILMOHgaQBVOJGdwsqClnxA3xL6jtMv76rLBc006RVMWbmaf0xbmom4Z/5o2nRkQ==}
'@types/nodemailer@6.4.15':
resolution: {integrity: sha512-0EBJxawVNjPkng1zm2vopRctuWVCxk34JcIlRuXSf54habUWdz1FB7wHDqOqvDa8Mtpt0Q3LTXQkAs2LNyK5jQ==}
@@ -6623,8 +6629,8 @@ packages:
resolution: {integrity: sha512-RiBETaaP9veVstE4vUwSIcdATj6dKmXljouXc/DDNwBSPTp8FRkLGDSGFClKsAFeeg+13SB0Z1JZvbD76bigJw==}
engines: {node: ^14.15.0 || >=16.0.0}
prettier-plugin-tailwindcss@0.6.5:
resolution: {integrity: sha512-axfeOArc/RiGHjOIy9HytehlC0ZLeMaqY09mm8YCkMzznKiDkwFzOpBvtuhuv3xG5qB73+Mj7OCe2j/L1ryfuQ==}
prettier-plugin-tailwindcss@0.6.6:
resolution: {integrity: sha512-OPva5S7WAsPLEsOuOWXATi13QrCKACCiIonFgIR6V4lYv4QLp++UXVhZSzRbZxXGimkQtQT86CC6fQqTOybGng==}
engines: {node: '>=14.21.3'}
peerDependencies:
'@ianvs/prettier-plugin-sort-imports': '*'
@@ -6638,6 +6644,7 @@ packages:
prettier-plugin-import-sort: '*'
prettier-plugin-jsdoc: '*'
prettier-plugin-marko: '*'
prettier-plugin-multiline-arrays: '*'
prettier-plugin-organize-attributes: '*'
prettier-plugin-organize-imports: '*'
prettier-plugin-sort-imports: '*'
@@ -6664,6 +6671,8 @@ packages:
optional: true
prettier-plugin-marko:
optional: true
prettier-plugin-multiline-arrays:
optional: true
prettier-plugin-organize-attributes:
optional: true
prettier-plugin-organize-imports:
@@ -6786,8 +6795,8 @@ packages:
peerDependencies:
react: 18.3.1
react-i18next@15.0.0:
resolution: {integrity: sha512-2O3IgF4zivg57Q6p6i+ChDgJ371IDcEWbuWC6gvoh5NbkDMs0Q+O7RPr4v61+Se32E0V+LmtwePAeqWZW0bi6g==}
react-i18next@15.0.1:
resolution: {integrity: sha512-NwxLqNM6CLbeGA9xPsjits0EnXdKgCRSS6cgkgOdNcPXqL+1fYNl8fBg1wmnnHvFy812Bt4IWTPE9zjoPmFj3w==}
peerDependencies:
i18next: '>= 23.2.3'
react: 18.3.1
@@ -7247,8 +7256,8 @@ packages:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
stripe@16.6.0:
resolution: {integrity: sha512-6hWEt6n7InVyP4p2MfMpyl1GwKRJA2w4VAwxJUbXA9xhT7ToWOdrTXqTz2EnyJkw4PMM03twi3eOWQAXN/+uEg==}
stripe@16.7.0:
resolution: {integrity: sha512-BJCSEtqN8LJsPuPkjQmB/LlBl00uxi9FIPa6LNcF80ofMKqfnuervDhwWSZqCs6xJk/i9vx1D9lRoDnqSmym2w==}
engines: {node: '>=12.*'}
styled-jsx@5.1.1:
@@ -7343,8 +7352,8 @@ packages:
uglify-js:
optional: true
terser@5.31.3:
resolution: {integrity: sha512-pAfYn3NIZLyZpa83ZKigvj6Rn9c/vd5KfYGX7cN1mnzqgDcxWvrU5ZtAfIKhEXz9nRecw4z3LXkjaq96/qZqAA==}
terser@5.31.5:
resolution: {integrity: sha512-YPmas0L0rE1UyLL/llTWA0SiDOqIcAQYLeUj7cJYzXHlRTAnMSg9pPe4VJ5PlKvTrPQsdVFuiRiwyeNlYgwh2Q==}
engines: {node: '>=10'}
hasBin: true
@@ -10908,43 +10917,43 @@ snapshots:
domhandler: 5.0.3
selderee: 0.11.0
'@sentry-internal/browser-utils@8.24.0':
'@sentry-internal/browser-utils@8.25.0':
dependencies:
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry-internal/feedback@8.24.0':
'@sentry-internal/feedback@8.25.0':
dependencies:
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry-internal/replay-canvas@8.24.0':
'@sentry-internal/replay-canvas@8.25.0':
dependencies:
'@sentry-internal/replay': 8.24.0
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry-internal/replay': 8.25.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry-internal/replay@8.24.0':
'@sentry-internal/replay@8.25.0':
dependencies:
'@sentry-internal/browser-utils': 8.24.0
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry-internal/browser-utils': 8.25.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry/babel-plugin-component-annotate@2.20.1': {}
'@sentry/browser@8.24.0':
'@sentry/browser@8.25.0':
dependencies:
'@sentry-internal/browser-utils': 8.24.0
'@sentry-internal/feedback': 8.24.0
'@sentry-internal/replay': 8.24.0
'@sentry-internal/replay-canvas': 8.24.0
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry-internal/browser-utils': 8.25.0
'@sentry-internal/feedback': 8.25.0
'@sentry-internal/replay': 8.25.0
'@sentry-internal/replay-canvas': 8.25.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry/bundler-plugin-core@2.20.1':
dependencies:
@@ -11000,23 +11009,23 @@ snapshots:
- encoding
- supports-color
'@sentry/core@8.24.0':
'@sentry/core@8.25.0':
dependencies:
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry/nextjs@8.24.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.93.0)':
'@sentry/nextjs@8.25.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.93.0)':
dependencies:
'@opentelemetry/instrumentation-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
'@rollup/plugin-commonjs': 26.0.1(rollup@3.29.4)
'@sentry/core': 8.24.0
'@sentry/node': 8.24.0
'@sentry/opentelemetry': 8.24.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1)
'@sentry/react': 8.24.0(react@18.3.1)
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/vercel-edge': 8.24.0
'@sentry/core': 8.25.0
'@sentry/node': 8.25.0
'@sentry/opentelemetry': 8.25.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1)
'@sentry/react': 8.25.0(react@18.3.1)
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry/vercel-edge': 8.25.0
'@sentry/webpack-plugin': 2.20.1(webpack@5.93.0)
chalk: 3.0.0
next: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -11034,7 +11043,7 @@ snapshots:
- react
- supports-color
'@sentry/node@8.24.0':
'@sentry/node@8.25.0':
dependencies:
'@opentelemetry/api': 1.9.0
'@opentelemetry/context-async-hooks': 1.25.1(@opentelemetry/api@1.9.0)
@@ -11059,47 +11068,47 @@ snapshots:
'@opentelemetry/sdk-trace-base': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
'@prisma/instrumentation': 5.17.0
'@sentry/core': 8.24.0
'@sentry/opentelemetry': 8.24.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1)
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/core': 8.25.0
'@sentry/opentelemetry': 8.25.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1)
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
import-in-the-middle: 1.11.0
optionalDependencies:
opentelemetry-instrumentation-fetch-node: 1.2.3(@opentelemetry/api@1.9.0)
transitivePeerDependencies:
- supports-color
'@sentry/opentelemetry@8.24.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1)':
'@sentry/opentelemetry@8.25.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1)':
dependencies:
'@opentelemetry/api': 1.9.0
'@opentelemetry/core': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/instrumentation': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/sdk-trace-base': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry/react@8.24.0(react@18.3.1)':
'@sentry/react@8.25.0(react@18.3.1)':
dependencies:
'@sentry/browser': 8.24.0
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/browser': 8.25.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
hoist-non-react-statics: 3.3.2
react: 18.3.1
'@sentry/types@8.24.0': {}
'@sentry/types@8.25.0': {}
'@sentry/utils@8.24.0':
'@sentry/utils@8.25.0':
dependencies:
'@sentry/types': 8.24.0
'@sentry/types': 8.25.0
'@sentry/vercel-edge@8.24.0':
'@sentry/vercel-edge@8.25.0':
dependencies:
'@sentry/core': 8.24.0
'@sentry/types': 8.24.0
'@sentry/utils': 8.24.0
'@sentry/core': 8.25.0
'@sentry/types': 8.25.0
'@sentry/utils': 8.25.0
'@sentry/webpack-plugin@2.20.1(webpack@5.93.0)':
dependencies:
@@ -11123,14 +11132,14 @@ snapshots:
escape-string-regexp: 2.0.0
lodash.deburr: 4.1.0
'@stripe/react-stripe-js@2.7.3(@stripe/stripe-js@4.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
'@stripe/react-stripe-js@2.7.3(@stripe/stripe-js@4.2.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@stripe/stripe-js': 4.1.0
'@stripe/stripe-js': 4.2.0
prop-types: 15.8.1
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
'@stripe/stripe-js@4.1.0': {}
'@stripe/stripe-js@4.2.0': {}
'@supabase/auth-js@2.64.4':
dependencies:
@@ -11206,7 +11215,7 @@ snapshots:
'@tanstack/query-core@5.51.21': {}
'@tanstack/react-query-next-experimental@5.51.21(@tanstack/react-query@5.51.21(react@18.3.1))(next@14.2.5(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
'@tanstack/react-query-next-experimental@5.51.23(@tanstack/react-query@5.51.21(react@18.3.1))(next@14.2.5(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
dependencies:
'@tanstack/react-query': 5.51.21(react@18.3.1)
next: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -11262,7 +11271,7 @@ snapshots:
'@tsconfig/node16@1.0.4': {}
'@turbo/gen@2.0.12(@types/node@22.1.0)(typescript@5.5.4)':
'@turbo/gen@2.0.12(@types/node@22.2.0)(typescript@5.5.4)':
dependencies:
'@turbo/workspaces': 2.0.12
commander: 10.0.1
@@ -11272,7 +11281,7 @@ snapshots:
node-plop: 0.26.3
picocolors: 1.0.1
proxy-agent: 6.4.0
ts-node: 10.9.2(@types/node@22.1.0)(typescript@5.5.4)
ts-node: 10.9.2(@types/node@22.2.0)(typescript@5.5.4)
update-check: 1.5.4
validate-npm-package-name: 5.0.1
transitivePeerDependencies:
@@ -11305,7 +11314,7 @@ snapshots:
'@types/connect@3.4.36':
dependencies:
'@types/node': 22.1.0
'@types/node': 22.2.0
'@types/d3-array@3.2.1': {}
@@ -11337,7 +11346,7 @@ snapshots:
'@types/eslint-scope@3.7.7':
dependencies:
'@types/eslint': 8.56.10
'@types/eslint': 9.6.0
'@types/estree': 1.0.5
'@types/eslint@8.56.10':
@@ -11345,6 +11354,11 @@ snapshots:
'@types/estree': 1.0.5
'@types/json-schema': 7.0.15
'@types/eslint@9.6.0':
dependencies:
'@types/estree': 1.0.5
'@types/json-schema': 7.0.15
'@types/estree-jsx@1.0.5':
dependencies:
'@types/estree': 1.0.5
@@ -11399,12 +11413,16 @@ snapshots:
'@types/mysql@2.15.22':
dependencies:
'@types/node': 22.1.0
'@types/node': 22.2.0
'@types/node@22.1.0':
dependencies:
undici-types: 6.13.0
'@types/node@22.2.0':
dependencies:
undici-types: 6.13.0
'@types/nodemailer@6.4.15':
dependencies:
'@types/node': 22.1.0
@@ -11417,7 +11435,7 @@ snapshots:
'@types/pg@8.6.1':
dependencies:
'@types/node': 22.1.0
'@types/node': 22.2.0
pg-protocol: 1.6.1
pg-types: 2.2.0
@@ -13344,7 +13362,7 @@ snapshots:
jest-worker@27.5.1:
dependencies:
'@types/node': 22.1.0
'@types/node': 22.2.0
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -14397,6 +14415,14 @@ snapshots:
postcss: 8.4.40
ts-node: 10.9.2(@types/node@22.1.0)(typescript@5.5.4)
postcss-load-config@4.0.2(postcss@8.4.40)(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4)):
dependencies:
lilconfig: 3.1.2
yaml: 2.5.0
optionalDependencies:
postcss: 8.4.40
ts-node: 10.9.2(@types/node@22.2.0)(typescript@5.5.4)
postcss-nested@6.2.0(postcss@8.4.40):
dependencies:
postcss: 8.4.40
@@ -14446,7 +14472,7 @@ snapshots:
sass-formatter: 0.7.9
optional: true
prettier-plugin-tailwindcss@0.6.5(@ianvs/prettier-plugin-sort-imports@4.3.1(prettier@3.3.3))(@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.3.3))(prettier-plugin-astro@0.14.1)(prettier@3.3.3):
prettier-plugin-tailwindcss@0.6.6(@ianvs/prettier-plugin-sort-imports@4.3.1(prettier@3.3.3))(@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.3.3))(prettier-plugin-astro@0.14.1)(prettier@3.3.3):
dependencies:
prettier: 3.3.3
optionalDependencies:
@@ -14593,7 +14619,7 @@ snapshots:
dependencies:
react: 18.3.1
react-i18next@15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
react-i18next@15.0.1(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
'@babel/runtime': 7.24.8
html-parse-stringify: 3.0.1
@@ -15111,7 +15137,7 @@ snapshots:
strip-json-comments@3.1.1: {}
stripe@16.6.0:
stripe@16.7.0:
dependencies:
'@types/node': 22.1.0
qs: 6.13.0
@@ -15174,9 +15200,9 @@ snapshots:
tailwind-merge@2.4.0: {}
tailwindcss-animate@1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4))):
tailwindcss-animate@1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4))):
dependencies:
tailwindcss: 3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4))
tailwindcss: 3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4))
tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.1.0)(typescript@5.5.4)):
dependencies:
@@ -15205,6 +15231,33 @@ snapshots:
transitivePeerDependencies:
- ts-node
tailwindcss@3.4.7(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4)):
dependencies:
'@alloc/quick-lru': 5.2.0
arg: 5.0.2
chokidar: 3.6.0
didyoumean: 1.2.2
dlv: 1.1.3
fast-glob: 3.3.2
glob-parent: 6.0.2
is-glob: 4.0.3
jiti: 1.21.6
lilconfig: 2.1.0
micromatch: 4.0.7
normalize-path: 3.0.0
object-hash: 3.0.0
picocolors: 1.0.1
postcss: 8.4.40
postcss-import: 15.1.0(postcss@8.4.40)
postcss-js: 4.0.1(postcss@8.4.40)
postcss-load-config: 4.0.2(postcss@8.4.40)(ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4))
postcss-nested: 6.2.0(postcss@8.4.40)
postcss-selector-parser: 6.1.1
resolve: 1.22.8
sucrase: 3.35.0
transitivePeerDependencies:
- ts-node
tapable@2.2.1: {}
tar@7.4.3:
@@ -15222,10 +15275,10 @@ snapshots:
jest-worker: 27.5.1
schema-utils: 3.3.0
serialize-javascript: 6.0.2
terser: 5.31.3
terser: 5.31.5
webpack: 5.93.0
terser@5.31.3:
terser@5.31.5:
dependencies:
'@jridgewell/source-map': 0.3.6
acorn: 8.12.1
@@ -15305,6 +15358,25 @@ snapshots:
typescript: 5.5.4
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
optional: true
ts-node@10.9.2(@types/node@22.2.0)(typescript@5.5.4):
dependencies:
'@cspotcode/source-map-support': 0.8.1
'@tsconfig/node10': 1.0.11
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
'@tsconfig/node16': 1.0.4
'@types/node': 22.2.0
acorn: 8.12.1
acorn-walk: 8.3.3
arg: 4.1.3
create-require: 1.1.1
diff: 4.0.2
make-error: 1.3.6
typescript: 5.5.4
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
tsconfig-paths@3.15.0:
dependencies:

View File

@@ -11,7 +11,7 @@
"dependencies": {
"@ianvs/prettier-plugin-sort-imports": "^4.3.1",
"prettier": "^3.3.3",
"prettier-plugin-tailwindcss": "^0.6.5"
"prettier-plugin-tailwindcss": "^0.6.6"
},
"devDependencies": {
"@kit/tsconfig": "workspace:^",