Removed shamefully-hoist and updated all packages to respect that

This commit is contained in:
giancarlo
2024-04-10 01:45:03 +08:00
parent 9e1199f3f4
commit f729bf6077
33 changed files with 1504 additions and 1470 deletions

1
.npmrc
View File

@@ -1,4 +1,3 @@
shamefully-hoist=true
peer-legacy-deps=true peer-legacy-deps=true
dedupe-peer-dependencies=true dedupe-peer-dependencies=true
use-lockfile-v6=true use-lockfile-v6=true

View File

@@ -10,10 +10,10 @@ import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n'; import { withI18n } from '~/lib/i18n/with-i18n';
export const generateMetadata = async () => { export const generateMetadata = async () => {
const i18n = await createI18nServerInstance(); const { t } = await createI18nServerInstance();
return { return {
title: i18n.t('auth:passwordResetLabel'), title: t('auth:passwordResetLabel'),
}; };
}; };

View File

@@ -1,4 +1,4 @@
import type { Provider } from '@supabase/gotrue-js'; import type { Provider } from '@supabase/supabase-js';
import { z } from 'zod'; import { z } from 'zod';

View File

@@ -38,26 +38,25 @@
"@makerkit/data-loader-supabase-nextjs": "^0.0.9", "@makerkit/data-loader-supabase-nextjs": "^0.0.9",
"@marsidev/react-turnstile": "^0.5.4", "@marsidev/react-turnstile": "^0.5.4",
"@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-icons": "^1.3.0",
"@supabase/ssr": "^0.1.0", "@supabase/ssr": "^0.3.0",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6", "@tanstack/react-query": "5.28.6",
"@tanstack/react-query-next-experimental": "^5.28.14", "@tanstack/react-query-next-experimental": "^5.29.0",
"@tanstack/react-table": "^8.15.3", "@tanstack/react-table": "^8.15.3",
"date-fns": "^3.6.0", "date-fns": "^3.6.0",
"edge-csrf": "^1.0.9", "edge-csrf": "^1.0.9",
"i18next": "^23.10.1", "i18next": "^23.11.0",
"i18next-resources-to-backend": "^1.2.0", "i18next-resources-to-backend": "^1.2.0",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "14.2.0-canary.62", "next": "14.2.0-canary.63",
"next-sitemap": "^4.2.3", "next-sitemap": "^4.2.3",
"next-themes": "0.3.0", "next-themes": "0.3.0",
"react": "18.2.0", "react": "18.2.0",
"react-dom": "18.2.0", "react-dom": "18.2.0",
"react-hook-form": "^7.51.2", "react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0", "react-i18next": "^14.1.0",
"recharts": "^2.12.3", "recharts": "^2.12.4",
"sonner": "^1.4.41", "sonner": "^1.4.41",
"tailwindcss-animate": "^1.0.7",
"zod": "^3.22.4" "zod": "^3.22.4"
}, },
"devDependencies": { "devDependencies": {
@@ -68,7 +67,7 @@
"@next/bundle-analyzer": "14.2.0-canary.54", "@next/bundle-analyzer": "14.2.0-canary.54",
"@types/mdx": "^2.0.12", "@types/mdx": "^2.0.12",
"@types/node": "^20.12.3", "@types/node": "^20.12.3",
"@types/react": "^18.2.73", "@types/react": "^18.2.75",
"@types/react-dom": "^18.2.22", "@types/react-dom": "^18.2.22",
"autoprefixer": "^10.4.19", "autoprefixer": "^10.4.19",
"dotenv-cli": "^7.4.1", "dotenv-cli": "^7.4.1",

View File

@@ -1 +0,0 @@
{}

View File

@@ -37,6 +37,7 @@
"pnpm": "^8.15.6", "pnpm": "^8.15.6",
"prettier": "^3.2.5", "prettier": "^3.2.5",
"turbo": "^1.13.2", "turbo": "^1.13.2",
"typescript": "^5.4.3",
"yarn": "^1.22.22" "yarn": "^1.22.22"
} }
} }

View File

@@ -21,7 +21,12 @@
"@kit/supabase": "^0.1.0", "@kit/supabase": "^0.1.0",
"@kit/ui": "0.1.0", "@kit/ui": "0.1.0",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"date-fns": "^3.6.0",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "^14.1.4",
"react": "^18.2.0",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0",
"zod": "^3.22.4" "zod": "^3.22.4"
}, },
"devDependencies": { "devDependencies": {
@@ -37,7 +42,13 @@
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "workspace:^", "@kit/ui": "workspace:^",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"@types/react": "^18.2.75",
"date-fns": "^3.6.0",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "14.2.0-canary.63",
"react": "18.2.0",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0",
"zod": "^3.22.4" "zod": "^3.22.4"
}, },
"eslintConfig": { "eslintConfig": {

View File

@@ -17,7 +17,9 @@
"@kit/billing": "0.1.0", "@kit/billing": "0.1.0",
"@kit/shared": "0.1.0", "@kit/shared": "0.1.0",
"@kit/supabase": "0.1.0", "@kit/supabase": "0.1.0",
"@kit/ui": "0.1.0" "@kit/ui": "0.1.0",
"react": "^18.2.0",
"zod": "^3.22.4"
}, },
"dependencies": { "dependencies": {
"@lemonsqueezy/lemonsqueezy.js": "2.2.0" "@lemonsqueezy/lemonsqueezy.js": "2.2.0"
@@ -30,7 +32,10 @@
"@kit/supabase": "workspace:^", "@kit/supabase": "workspace:^",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "workspace:^" "@kit/ui": "workspace:^",
"@types/react": "^18.2.75",
"react": "18.2.0",
"zod": "^3.22.4"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

View File

@@ -18,7 +18,10 @@
"@kit/billing": "0.1.0", "@kit/billing": "0.1.0",
"@kit/shared": "0.1.0", "@kit/shared": "0.1.0",
"@kit/supabase": "0.1.0", "@kit/supabase": "0.1.0",
"@kit/ui": "0.1.0" "@kit/ui": "0.1.0",
"date-fns": "^3.6.0",
"react": "^18.2.0",
"zod": "^3.22.4"
}, },
"dependencies": { "dependencies": {
"@stripe/react-stripe-js": "^2.6.2", "@stripe/react-stripe-js": "^2.6.2",
@@ -33,7 +36,11 @@
"@kit/supabase": "workspace:^", "@kit/supabase": "workspace:^",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "workspace:^" "@kit/ui": "workspace:^",
"@types/react": "^18.2.75",
"date-fns": "^3.6.0",
"react": "18.2.0",
"zod": "^3.22.4"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

View File

@@ -28,7 +28,8 @@
"@kit/eslint-config": "workspace:*", "@kit/eslint-config": "workspace:*",
"@kit/prettier-config": "workspace:*", "@kit/prettier-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "*" "@kit/ui": "*",
"mdx": "0.3.1"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

View File

@@ -1,16 +1,7 @@
import type { MDXComponents as MDXComponentsType } from 'mdx/types';
import { getMDXComponent } from 'next-contentlayer/hooks'; import { getMDXComponent } from 'next-contentlayer/hooks';
import { MDXComponents } from '@kit/ui/mdx-components'; export function Mdx({ code }: { code: string }) {
export function Mdx({
code,
}: React.PropsWithChildren<{
code: string;
}>) {
const Component = getMDXComponent(code); const Component = getMDXComponent(code);
return ( return <Component />;
<Component components={MDXComponents as unknown as MDXComponentsType} />
);
} }

View File

@@ -14,34 +14,56 @@
"./personal-account-settings": "./src/components/personal-account-settings/index.ts", "./personal-account-settings": "./src/components/personal-account-settings/index.ts",
"./hooks/*": "./src/hooks/*.ts" "./hooks/*": "./src/hooks/*.ts"
}, },
"dependencies": {
"nanoid": "^5.0.7"
},
"devDependencies": { "devDependencies": {
"@hookform/resolvers": "^3.3.4", "@hookform/resolvers": "^3.3.4",
"@kit/billing-gateway": "workspace:^", "@kit/billing-gateway": "*",
"@kit/email-templates": "workspace:^", "@kit/email-templates": "*",
"@kit/eslint-config": "workspace:*", "@kit/eslint-config": "workspace:*",
"@kit/mailers": "workspace:^", "@kit/mailers": "*",
"@kit/prettier-config": "workspace:*", "@kit/prettier-config": "workspace:*",
"@kit/shared": "workspace:^", "@kit/shared": "*",
"@kit/supabase": "workspace:^", "@kit/supabase": "*",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "workspace:^", "@kit/ui": "*",
"@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-icons": "^1.3.0",
"@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6", "@tanstack/react-query": "5.28.6",
"@types/react": "^18.2.75",
"@types/react-dom": "^18.2.22",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "14.2.0-canary.63",
"next-themes": "0.3.0", "next-themes": "0.3.0",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-hook-form": "^7.51.2", "react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0", "react-i18next": "^14.1.0",
"sonner": "^1.4.41", "sonner": "^1.4.41",
"zod": "^3.22.4" "zod": "^3.22.4"
}, },
"peerDependencies": { "peerDependencies": {
"@hookform/resolvers": "^3.3.4",
"@kit/billing-gateway": "workspace:^",
"@kit/email-templates": "workspace:^",
"@kit/mailers": "workspace:^",
"@kit/shared": "0.1.0", "@kit/shared": "0.1.0",
"@kit/supabase": "0.1.0", "@kit/supabase": "0.1.0",
"@kit/ui": "0.1.0", "@kit/ui": "workspace:^",
"@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-icons": "^1.3.0",
"@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"sonner": "^1.4.41" "next": "^14.1.4",
"next-themes": "0.3.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0",
"sonner": "^1.4.41",
"zod": "^3.22.4"
}, },
"prettier": "@kit/prettier-config", "prettier": "@kit/prettier-config",
"eslintConfig": { "eslintConfig": {

View File

@@ -1,6 +1,6 @@
'use client'; 'use client';
import type { User } from '@supabase/gotrue-js'; import type { User } from '@supabase/supabase-js';
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useForm } from 'react-hook-form'; import { useForm } from 'react-hook-form';

View File

@@ -1,6 +1,6 @@
import { useCallback, useState } from 'react'; import { useCallback, useState } from 'react';
import type { Factor } from '@supabase/gotrue-js'; import type { Factor } from '@supabase/supabase-js';
import { ExclamationTriangleIcon } from '@radix-ui/react-icons'; import { ExclamationTriangleIcon } from '@radix-ui/react-icons';
import { useMutation, useQueryClient } from '@tanstack/react-query'; import { useMutation, useQueryClient } from '@tanstack/react-query';

View File

@@ -2,7 +2,7 @@
import { useState } from 'react'; import { useState } from 'react';
import type { User } from '@supabase/gotrue-js'; import type { User } from '@supabase/supabase-js';
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { ExclamationTriangleIcon } from '@radix-ui/react-icons'; import { ExclamationTriangleIcon } from '@radix-ui/react-icons';

View File

@@ -16,7 +16,11 @@
"@kit/ui": "workspace:*", "@kit/ui": "workspace:*",
"@makerkit/data-loader-supabase-core": "^0.0.7", "@makerkit/data-loader-supabase-core": "^0.0.7",
"@makerkit/data-loader-supabase-nextjs": "^0.0.9", "@makerkit/data-loader-supabase-nextjs": "^0.0.9",
"@tanstack/react-query": "^5.29.0",
"@tanstack/react-table": "^8.15.3",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "^14.1.4",
"react": "^18.2.0",
"react-hook-form": "^7.51.2", "react-hook-form": "^7.51.2",
"zod": "^3.22.4" "zod": "^3.22.4"
}, },
@@ -32,7 +36,12 @@
"@makerkit/data-loader-supabase-core": "^0.0.7", "@makerkit/data-loader-supabase-core": "^0.0.7",
"@makerkit/data-loader-supabase-nextjs": "^0.0.9", "@makerkit/data-loader-supabase-nextjs": "^0.0.9",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6",
"@tanstack/react-table": "^8.15.3",
"@types/react": "^18.2.75",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "14.2.0-canary.63",
"react": "18.2.0",
"react-hook-form": "^7.51.2", "react-hook-form": "^7.51.2",
"zod": "^3.22.4" "zod": "^3.22.4"
}, },

View File

@@ -21,14 +21,35 @@
"@hookform/resolvers": "^3.3.4", "@hookform/resolvers": "^3.3.4",
"@kit/eslint-config": "workspace:*", "@kit/eslint-config": "workspace:*",
"@kit/prettier-config": "workspace:*", "@kit/prettier-config": "workspace:*",
"@kit/shared": "workspace:*", "@kit/shared": "*",
"@kit/supabase": "workspace:*", "@kit/supabase": "*",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "*",
"@marsidev/react-turnstile": "^0.5.4",
"@radix-ui/react-icons": "^1.3.0",
"@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6",
"@types/react": "^18.2.75",
"lucide-react": "^0.363.0",
"next": "14.2.0-canary.63",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0",
"sonner": "^1.4.41",
"zod": "^3.22.4"
},
"peerDependencies": {
"@hookform/resolvers": "^3.3.4",
"@kit/shared": "workspace:*",
"@kit/supabase": "workspace:*",
"@kit/ui": "workspace:*", "@kit/ui": "workspace:*",
"@marsidev/react-turnstile": "^0.5.4", "@marsidev/react-turnstile": "^0.5.4",
"@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-icons": "^1.3.0",
"@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6", "@tanstack/react-query": "5.28.6",
"lucide-react": "^0.363.0",
"next": "^14.1.4",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0", "react-i18next": "^14.1.0",
"sonner": "^1.4.41", "sonner": "^1.4.41",
"zod": "^3.22.4" "zod": "^3.22.4"

View File

@@ -12,33 +12,54 @@
"./components": "./src/components/index.ts", "./components": "./src/components/index.ts",
"./webhooks": "./src/server/services/webhooks/index.ts" "./webhooks": "./src/server/services/webhooks/index.ts"
}, },
"dependencies": {
"nanoid": "^5.0.7"
},
"devDependencies": { "devDependencies": {
"@hookform/resolvers": "^3.3.4", "@hookform/resolvers": "^3.3.4",
"@kit/accounts": "workspace:^", "@kit/accounts": "*",
"@kit/billing-gateway": "workspace:*", "@kit/billing-gateway": "workspace:*",
"@kit/email-templates": "workspace:^", "@kit/email-templates": "*",
"@kit/eslint-config": "workspace:*", "@kit/eslint-config": "workspace:*",
"@kit/mailers": "workspace:^", "@kit/mailers": "*",
"@kit/prettier-config": "workspace:*", "@kit/prettier-config": "workspace:*",
"@kit/shared": "workspace:^", "@kit/shared": "*",
"@kit/supabase": "workspace:^", "@kit/supabase": "*",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@kit/ui": "workspace:^", "@kit/ui": "*",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6", "@tanstack/react-query": "5.28.6",
"@tanstack/react-table": "^8.15.3",
"@types/react": "^18.2.75",
"@types/react-dom": "^18.2.22",
"class-variance-authority": "^0.7.0",
"date-fns": "^3.6.0",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"react-i18next": "^14.1.0" "next": "14.2.0-canary.63",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0",
"sonner": "^1.4.41",
"zod": "^3.22.4"
}, },
"peerDependencies": { "peerDependencies": {
"@hookform/resolvers": "^3.3.4",
"@kit/accounts": "0.1.0", "@kit/accounts": "0.1.0",
"@kit/email-templates": "0.1.0", "@kit/email-templates": "0.1.0",
"@kit/mailers": "0.1.0", "@kit/mailers": "0.1.0",
"@kit/shared": "0.1.0", "@kit/shared": "0.1.0",
"@kit/supabase": "0.1.0", "@kit/supabase": "0.1.0",
"@kit/ui": "0.1.0", "@kit/ui": "workspace:^",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"lucide-react": "^0.363.0" "@tanstack/react-query": "5.28.6",
"lucide-react": "^0.363.0",
"next": "^14.1.4",
"react": "^18.2.0",
"react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0",
"zod": "^3.22.4"
}, },
"prettier": "@kit/prettier-config", "prettier": "@kit/prettier-config",
"eslintConfig": { "eslintConfig": {

View File

@@ -20,7 +20,7 @@
"@kit/shared": "workspace:^", "@kit/shared": "workspace:^",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"i18next": "^23.10.1", "i18next": "^23.11.0",
"i18next-browser-languagedetector": "7.2.0", "i18next-browser-languagedetector": "7.2.0",
"i18next-resources-to-backend": "^1.2.0", "i18next-resources-to-backend": "^1.2.0",
"react-i18next": "^14.1.0" "react-i18next": "^14.1.0"

View File

@@ -26,16 +26,12 @@ export function I18nProvider({
async function withI18nClient(lang: string, resolver: Resolver) { async function withI18nClient(lang: string, resolver: Resolver) {
if (typeof window !== 'undefined') { if (typeof window !== 'undefined') {
client = await loadClientI18n(lang, resolver); const { initializeI18nClient } = await import('./i18n.client');
client = await initializeI18nClient(lang, resolver);
} else { } else {
const { initializeServerI18n } = await import('./i18n.server'); const { initializeServerI18n } = await import('./i18n.server');
client = await initializeServerI18n(lang, resolver); client = await initializeServerI18n(lang, resolver);
} }
} }
async function loadClientI18n(lang: string | undefined, resolver: Resolver) {
const { initializeI18nClient } = await import('./i18n.client');
return initializeI18nClient(lang, resolver);
}

View File

@@ -5,19 +5,17 @@ import { initReactI18next } from 'react-i18next';
import { I18N_COOKIE_NAME, getI18nSettings } from './i18n.settings'; import { I18N_COOKIE_NAME, getI18nSettings } from './i18n.settings';
let promise: Promise<i18n>;
export function initializeI18nClient( export function initializeI18nClient(
lng: string | undefined, lng: string | undefined,
i18nResolver: (lang: string, namespace: string) => Promise<object>, i18nResolver: (lang: string, namespace: string) => Promise<object>,
): Promise<i18n> { ): Promise<i18n> {
const settings = getI18nSettings(lng); const settings = getI18nSettings(lng);
if (promise !== undefined) { if (i18next.isInitialized) {
return promise; return Promise.resolve(i18next);
} }
promise = new Promise<i18n>((resolve, reject) => { return new Promise<i18n>((resolve, reject) => {
void i18next void i18next
.use(initReactI18next) .use(initReactI18next)
.use( .use(
@@ -49,6 +47,4 @@ export function initializeI18nClient(
}, },
); );
}); });
return promise;
} }

View File

@@ -17,6 +17,11 @@ export async function initializeServerI18n(
i18nResolver: (language: string, namespace: string) => Promise<object>, i18nResolver: (language: string, namespace: string) => Promise<object>,
) { ) {
const i18nInstance = createInstance(); const i18nInstance = createInstance();
if (i18nInstance.isInitialized) {
return i18nInstance;
}
const settings = getI18nSettings(lang); const settings = getI18nSettings(lang);
await i18nInstance await i18nInstance

View File

@@ -19,7 +19,6 @@ export const defaultI18nNamespaces = [
'teams', 'teams',
'billing', 'billing',
'marketing', 'marketing',
'admin',
]; ];
export function getI18nSettings( export function getI18nSettings(

View File

@@ -21,7 +21,8 @@
"@kit/prettier-config": "workspace:*", "@kit/prettier-config": "workspace:*",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@types/nodemailer": "6.4.14" "@types/nodemailer": "6.4.14",
"zod": "^3.22.4"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

View File

@@ -16,6 +16,9 @@
"./config/edge": "./src/config/sentry.server.edge.ts" "./config/edge": "./src/config/sentry.server.edge.ts"
}, },
"dependencies": { "dependencies": {
"@opentelemetry/resources": "1.23.0",
"@opentelemetry/sdk-node": "0.50.0",
"@opentelemetry/semantic-conventions": "^1.23.0",
"@sentry/nextjs": "^7.109.0", "@sentry/nextjs": "^7.109.0",
"@sentry/opentelemetry-node": "^7.109.0" "@sentry/opentelemetry-node": "^7.109.0"
}, },

View File

@@ -28,7 +28,6 @@ export async function registerSentryInstrumentation() {
resource: new Resource({ resource: new Resource({
[SEMRESATTRS_SERVICE_NAME]: INSTRUMENTATION_SERVICE_NAME, [SEMRESATTRS_SERVICE_NAME]: INSTRUMENTATION_SERVICE_NAME,
}), }),
// @ts-expect-error: an error in the lib
spanProcessor: new SentrySpanProcessor(), spanProcessor: new SentrySpanProcessor(),
textMapPropagator: new SentryPropagator(), textMapPropagator: new SentryPropagator(),
}); });

View File

@@ -15,7 +15,10 @@
}, },
"peerDependencies": { "peerDependencies": {
"@kit/auth": "workspace:*", "@kit/auth": "workspace:*",
"@kit/supabase": "workspace:*" "@kit/supabase": "workspace:*",
"@supabase/supabase-js": "^2.42.0",
"next": "^14.1.4",
"zod": "^3.22.4"
}, },
"devDependencies": { "devDependencies": {
"@kit/auth": "*", "@kit/auth": "*",
@@ -23,7 +26,10 @@
"@kit/prettier-config": "workspace:*", "@kit/prettier-config": "workspace:*",
"@kit/supabase": "*", "@kit/supabase": "*",
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*" "@kit/tsconfig": "workspace:*",
"@supabase/supabase-js": "^2.42.0",
"next": "14.2.0-canary.63",
"zod": "^3.22.4"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

View File

@@ -29,15 +29,22 @@
"@kit/tailwind-config": "workspace:*", "@kit/tailwind-config": "workspace:*",
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@supabase/gotrue-js": "2.62.2", "@supabase/gotrue-js": "2.62.2",
"@supabase/ssr": "^0.1.0", "@supabase/ssr": "^0.3.0",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "5.28.6" "@tanstack/react-query": "5.28.6",
"@types/react": "^18.2.75",
"next": "14.2.0-canary.63",
"react": "18.2.0",
"zod": "^3.22.4"
}, },
"peerDependencies": { "peerDependencies": {
"@epic-web/invariant": "^1.0.0", "@epic-web/invariant": "^1.0.0",
"@supabase/ssr": "^0.1.0", "@supabase/ssr": "^0.1.0",
"@supabase/supabase-js": "^2.42.0", "@supabase/supabase-js": "^2.42.0",
"@tanstack/react-query": "^5.28.6" "@tanstack/react-query": "^5.28.6",
"next": "^14.1.4",
"react": "^18.2.0",
"zod": "^3.22.4"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

View File

@@ -39,6 +39,8 @@
"class-variance-authority": "^0.7.0", "class-variance-authority": "^0.7.0",
"date-fns": "^3.2.0", "date-fns": "^3.2.0",
"lucide-react": "^0.366.0", "lucide-react": "^0.366.0",
"next": "^14.1.4",
"next-themes": "^0.3.0",
"react-hook-form": "^7.51.2", "react-hook-form": "^7.51.2",
"react-i18next": "^14.1.0", "react-i18next": "^14.1.0",
"sonner": "^1.4.41", "sonner": "^1.4.41",
@@ -51,12 +53,14 @@
"@kit/tsconfig": "workspace:*", "@kit/tsconfig": "workspace:*",
"@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-icons": "^1.3.0",
"@tanstack/react-table": "^8.15.3", "@tanstack/react-table": "^8.15.3",
"@types/react": "^18.2.73", "@types/react": "^18.2.75",
"@types/react-dom": "^18.2.22", "@types/react-dom": "^18.2.22",
"class-variance-authority": "^0.7.0", "class-variance-authority": "^0.7.0",
"date-fns": "^3.6.0", "date-fns": "^3.6.0",
"eslint": "^8.57.0", "eslint": "^8.57.0",
"lucide-react": "^0.363.0", "lucide-react": "^0.363.0",
"next": "14.2.0-canary.63",
"next-themes": "0.3.0",
"prettier": "^3.2.5", "prettier": "^3.2.5",
"react-day-picker": "^8.10.0", "react-day-picker": "^8.10.0",
"react-hook-form": "^7.51.2", "react-hook-form": "^7.51.2",
@@ -119,7 +123,6 @@
"./auth-change-listener": "./src/makerkit/auth-change-listener.tsx", "./auth-change-listener": "./src/makerkit/auth-change-listener.tsx",
"./loading-overlay": "./src/makerkit/loading-overlay.tsx", "./loading-overlay": "./src/makerkit/loading-overlay.tsx",
"./profile-avatar": "./src/makerkit/profile-avatar.tsx", "./profile-avatar": "./src/makerkit/profile-avatar.tsx",
"./mdx-components": "./src/makerkit/mdx-components.tsx",
"./mode-toggle": "./src/makerkit/mode-toggle.tsx", "./mode-toggle": "./src/makerkit/mode-toggle.tsx",
"./enhanced-data-table": "./src/makerkit/data-table.tsx" "./enhanced-data-table": "./src/makerkit/data-table.tsx"
}, },

View File

@@ -1,80 +0,0 @@
import { forwardRef } from 'react';
import Image from 'next/image';
import { cn } from '../utils';
import { LazyRender } from './lazy-render';
const NextImage: React.FC<{
width: number;
height: number;
src: string;
alt: string;
class?: string;
}> = (props) => {
const className = cn(props.class, `object-cover`);
return <Image className={className} src={props.src} alt={props.alt} />;
};
const ExternalLink = forwardRef<
React.ElementRef<'a'>,
React.AnchorHTMLAttributes<unknown>
>(function ExternalLink(props, ref) {
const href = props.href ?? '';
const isRoot = href === '/';
const isInternalLink =
isRoot || href.startsWith(process.env.NEXT_PUBLIC_SITE_URL!);
if (isInternalLink) {
return (
<a {...props} ref={ref} href={href}>
{props.children}
</a>
);
}
return (
<a
href={href}
ref={ref}
{...props}
target="_blank"
rel="noopener noreferrer"
>
{props.children}
</a>
);
});
const Video: React.FC<{
src: string;
width?: string;
type?: string;
}> = ({ src, type, width }) => {
const useType = type ?? 'video/mp4';
return (
<LazyRender rootMargin={'-200px 0px'}>
<video
className="my-4"
width={width ?? `100%`}
height="auto"
playsInline
autoPlay
muted
loop
>
<source src={src} type={useType} />
</video>
</LazyRender>
);
};
export const MDXComponents = {
img: NextImage,
a: ExternalLink,
Video,
Image: NextImage,
};

2637
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,5 @@
import type { Config } from 'tailwindcss'; import type { Config } from 'tailwindcss';
import tailwindCssAnimate from 'tailwindcss-animate';
import { fontFamily } from 'tailwindcss/defaultTheme'; import { fontFamily } from 'tailwindcss/defaultTheme';
export default { export default {
@@ -109,5 +110,5 @@ export default {
}, },
}, },
}, },
plugins: [require('tailwindcss-animate')], plugins: [tailwindCssAnimate],
} satisfies Config; } satisfies Config;

View File

@@ -16,7 +16,8 @@
"dependencies": { "dependencies": {
"autoprefixer": "^10.4.19", "autoprefixer": "^10.4.19",
"postcss": "8.4.33", "postcss": "8.4.33",
"tailwindcss": "3.4.1" "tailwindcss": "3.4.1",
"tailwindcss-animate": "^1.0.7"
}, },
"devDependencies": { "devDependencies": {
"@kit/eslint-config": "workspace:^", "@kit/eslint-config": "workspace:^",