diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json index 79fa3c24..2d542e6c 100644 --- a/apps/dashboard/package.json +++ b/apps/dashboard/package.json @@ -19,6 +19,7 @@ "@openpanel/common": "workspace:^", "@openpanel/constants": "workspace:^", "@openpanel/db": "workspace:^", + "@openpanel/nextjs": "0.0.8-beta", "@openpanel/queue": "workspace:^", "@openpanel/validation": "workspace:^", "@radix-ui/react-accordion": "^1.1.2", diff --git a/apps/dashboard/src/app/providers.tsx b/apps/dashboard/src/app/providers.tsx index 874f5b02..4146bd8f 100644 --- a/apps/dashboard/src/app/providers.tsx +++ b/apps/dashboard/src/app/providers.tsx @@ -14,8 +14,10 @@ import { Provider as ReduxProvider } from 'react-redux'; import { Toaster } from 'sonner'; import superjson from 'superjson'; +import { OpenpanelProvider } from '@openpanel/nextjs'; + function AllProviders({ children }: { children: React.ReactNode }) { - const { getToken } = useAuth(); + const { getToken, userId } = useAuth(); const [queryClient] = useState( () => new QueryClient({ @@ -54,6 +56,12 @@ function AllProviders({ children }: { children: React.ReactNode }) { defaultTheme="light" disableTransitionOnChange > + diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 116fef41..ff898fb7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -144,6 +144,9 @@ importers: '@openpanel/db': specifier: workspace:^ version: link:../../packages/db + '@openpanel/nextjs': + specifier: 0.0.8-beta + version: 0.0.8-beta(next@14.0.4)(react-dom@18.2.0)(react@18.2.0) '@openpanel/queue': specifier: workspace:^ version: link:../../packages/queue @@ -4451,16 +4454,39 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false + /@openpanel/nextjs@0.0.8-beta(next@14.0.4)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-rSPTKtBOEJ6ewYcJuLdAlGv9YO7FfY6dR8kfJ9k9mMtIJjmwRbtGqXMHRhrGhviQ7p2sRPADG/BaNwEoZKi3Cw==} + peerDependencies: + next: ^12.0.0 || ^13.0.0 || ^14.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + '@openpanel/web': 0.0.8-beta + next: 14.0.4(react-dom@18.2.0)(react@18.2.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + /@openpanel/sdk@0.0.6-beta: resolution: {integrity: sha512-siUvMTgaHb7ZT9BVIBPIhEhPz5PaBQLCik9SuibwufsO6QWBz7nYqkMMPtqcuAjGFq6V7LcHWBl+Wq7NGZ8obA==} dev: false + /@openpanel/sdk@0.0.8-beta: + resolution: {integrity: sha512-Cs23tPoQqZLiG3A9C3CTPzyhurX+Q/mScaaK79/Kuvcv4vZjqUztLtLqxRx/zxeXYVbanzwR3blJCeTmABexKQ==} + dev: false + /@openpanel/web@0.0.6-beta: resolution: {integrity: sha512-7FwtbBWb8XqIUZ4DjdzMFsEWZo85RDhKkfgC/m6bV71QlQ3iMr+c/XuH6dO3bL7O+q0uFodD9IPksyF/u+P+KA==} dependencies: '@openpanel/sdk': 0.0.6-beta dev: false + /@openpanel/web@0.0.8-beta: + resolution: {integrity: sha512-7xwG4QhXBan4r6SH+q7MrVZPS87r6UvUGHsu7dCIWDhTex+lW3CeA0NEHRvUSfH6Z+oeQ7xstVczEb0h/VikdA==} + dependencies: + '@openpanel/sdk': 0.0.8-beta + dev: false + /@panva/hkdf@1.1.1: resolution: {integrity: sha512-dhPeilub1NuIG0X5Kvhh9lH4iW3ZsHlnzwgwbOlgwQ2wG1IqFzsgHqmKPk3WzsdWAeaxKJxgM0+W433RmN45GA==} dev: false