Openstatus www.openstatus.dev

(wip) add openpanel to docs (astro) and add web analytics to nextjs (#1246)

* add openpanel to docs (astro) and add web analytics to nextjs

* ci: apply automated fixes

* update openpanel/nextjs

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Thibault Le Ouay <thibaultleouay@gmail.com>

+108 -327
+1
apps/docs/.env.example
··· 1 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID=
+9 -1
apps/docs/astro.config.mjs
··· 1 1 import sitemap from "@astrojs/sitemap"; 2 2 import starlight from "@astrojs/starlight"; 3 3 import tailwind from "@astrojs/tailwind"; 4 - import { defineConfig } from "astro/config"; 4 + import { defineConfig, envField } from "astro/config"; 5 5 import starlightSidebarTopics from "starlight-sidebar-topics"; 6 6 import Icons from "unplugin-icons/vite"; 7 7 ··· 10 10 site: "https://docs.openstatus.dev", 11 11 vite: { 12 12 plugins: [Icons({ compiler: "astro" })], 13 + }, 14 + env: { 15 + schema: { 16 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID: envField.string({ 17 + access: "public", 18 + context: "client", 19 + }), 20 + }, 13 21 }, 14 22 integrations: [ 15 23 sitemap(),
+1
apps/docs/package.json
··· 16 16 "@astrojs/starlight": "0.32.6", 17 17 "@astrojs/starlight-tailwind": "3.0.1", 18 18 "@astrojs/tailwind": "6.0.0", 19 + "@openpanel/astro": "1.0.1", 19 20 "astro": "5.6.1", 20 21 "sharp": "0.33.5", 21 22 "starlight-showcases": "0.3.0",
+4 -1
apps/docs/src/components/Head.astro
··· 1 1 --- 2 + import { NEXT_PUBLIC_OPENPANEL_CLIENT_ID } from "astro:env/client"; 2 3 import Default from "@astrojs/starlight/components/Head.astro"; 3 - 4 + import { OpenPanelComponent } from "@openpanel/astro"; 4 5 const title = Astro.locals.starlightRoute.title; 5 6 const { siteTitle } = Astro.locals.starlightRoute; 6 7 ··· 17 18 <!-- REMINDER: prevent unexpected font flashes for our 'OpenStatus' logo on each page load --> 18 19 <link rel="preload" href="/fonts/CalSans-SemiBold.ttf" as="font" type="font/ttf" crossorigin> 19 20 <script defer async src="https://buttons.github.io/buttons.js" /> 21 + 22 + <OpenPanelComponent clientId={NEXT_PUBLIC_OPENPANEL_CLIENT_ID!} trackScreenViews trackOutgoingLinks trackAttributes />
+1 -1
apps/server/.env.example
··· 12 12 SCREENSHOT_SERVICE_URL=http://your.endpoint 13 13 QSTASH_TOKEN=your_token 14 14 15 - OPENPANEL_CLIENT_ID= 15 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID= 16 16 OPENPANEL_CLIENT_SECRET=
+1 -1
apps/server/.env.test
··· 11 11 RESEND_API_KEY=test 12 12 SQLD_HTTP_AUTH=basic:token 13 13 SCREENSHOT_SERVICE_URL=http://your.endpoint 14 - OPENPANEL_CLIENT_ID=test 14 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID=test 15 15 OPENPANEL_CLIENT_SECRET=test
+1 -1
apps/web/.env.example
··· 74 74 # https://turbo.build/repo/docs/crafting-your-repository/using-environment-variables#loose-mode 75 75 TURBO_ENV_MODE=loose 76 76 77 - OPENPANEL_CLIENT_ID=something 77 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID=something 78 78 OPENPANEL_CLIENT_SECRET=something
+2 -1
apps/web/package.json
··· 16 16 "@google-cloud/tasks": "4.0.1", 17 17 "@hookform/resolvers": "3.9.1", 18 18 "@libsql/client": "0.14.0", 19 + "@openpanel/nextjs": "^1.0.8", 19 20 "@openstatus/analytics": "workspace:*", 20 21 "@openstatus/api": "workspace:*", 21 22 "@openstatus/assertions": "workspace:*", ··· 26 27 "@openstatus/notification-discord": "workspace:*", 27 28 "@openstatus/notification-emails": "workspace:*", 28 29 "@openstatus/notification-ntfy": "workspace:*", 30 + "@openstatus/notification-opsgenie": "workspace:*", 29 31 "@openstatus/notification-pagerduty": "workspace:*", 30 32 "@openstatus/notification-slack": "workspace:*", 31 - "@openstatus/notification-opsgenie": "workspace:*", 32 33 "@openstatus/notification-webhook": "workspace:*", 33 34 "@openstatus/react": "workspace:*", 34 35 "@openstatus/tinybird": "workspace:*",
+8 -2
apps/web/src/app/app/layout.tsx
··· 1 1 import { SessionProvider } from "next-auth/react"; 2 2 3 3 import { Bubble } from "@/components/support/bubble"; 4 + import { auth } from "@/lib/auth"; 5 + import { IdentifyComponent } from "@openpanel/nextjs"; 4 6 5 - export default function AuthLayout({ 7 + export default async function AuthLayout({ 6 8 children, // will be a page or nested layout 7 9 }: { 8 10 children: React.ReactNode; 9 11 }) { 12 + const session = await auth(); 10 13 return ( 11 - <SessionProvider> 14 + <SessionProvider session={session}> 12 15 {children} 13 16 <Bubble /> 17 + {session?.user?.id && ( 18 + <IdentifyComponent profileId={`usr_${session?.user?.id}`} /> 19 + )} 14 20 </SessionProvider> 15 21 ); 16 22 }
+11 -2
apps/web/src/app/layout.tsx
··· 1 1 import "@/styles/globals.css"; 2 2 3 + import { Toaster } from "@/components/ui/sonner"; 4 + import { OpenPanelComponent } from "@openpanel/nextjs"; 3 5 import type { Metadata } from "next"; 4 6 import { Inter } from "next/font/google"; 5 7 import LocalFont from "next/font/local"; 6 - 7 - import { Toaster } from "@/components/ui/sonner"; 8 8 9 9 import { 10 10 defaultMetadata, ··· 13 13 } from "@/app/shared-metadata"; 14 14 import { TailwindIndicator } from "@/components/tailwind-indicator"; 15 15 import { ThemeProvider } from "@/components/theme-provider"; 16 + import { env } from "@/env"; 16 17 import { TRPCReactQueryProvider } from "@/trpc/rq-client"; 17 18 import { NuqsAdapter } from "nuqs/adapters/next/app"; 18 19 import Background from "./_components/background"; ··· 56 57 </TRPCReactQueryProvider> 57 58 </ThemeProvider> 58 59 </NuqsAdapter> 60 + {env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID && ( 61 + <OpenPanelComponent 62 + clientId={env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID} 63 + trackScreenViews 64 + trackOutgoingLinks 65 + trackAttributes 66 + /> 67 + )} 59 68 </body> 60 69 </html> 61 70 );
+1 -1
apps/web/src/content/posts/event-analytics-implementation.mdx
··· 53 53 import { type EventProps } from "@openstatus/analytics"; 54 54 55 55 const op = new OpenPanel({ 56 - clientId: process.env.OPENPANEL_CLIENT_ID, 56 + clientId: process.env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID, 57 57 clientSecret: process.env.OPENPANEL_CLIENT_SECRET, 58 58 }); 59 59
+3
apps/web/src/env.ts
··· 30 30 NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY: z.string(), 31 31 NEXT_PUBLIC_URL: z.string(), 32 32 NEXT_PUBLIC_SENTRY_DSN: z.string(), 33 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID: z.string(), 33 34 }, 34 35 runtimeEnv: { 36 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID: 37 + process.env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID, 35 38 TINY_BIRD_API_KEY: process.env.TINY_BIRD_API_KEY, 36 39 RESEND_API_KEY: process.env.RESEND_API_KEY, 37 40 QSTASH_CURRENT_SIGNING_KEY: process.env.QSTASH_CURRENT_SIGNING_KEY,
+1 -1
apps/workflows/.env.test
··· 11 11 RESEND_API_KEY=test 12 12 SQLD_HTTP_AUTH=basic:token 13 13 SCREENSHOT_SERVICE_URL=http://your.endpoint 14 - OPENPANEL_CLIENT_ID=test 14 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID=test 15 15 OPENPANEL_CLIENT_SECRET=test
+1 -1
packages/analytics/.env.example
··· 1 - OPENPANEL_CLIENT_ID=something 1 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID=something 2 2 OPENPANEL_CLIENT_SECRET=something
+6 -2
packages/analytics/env.ts
··· 3 3 4 4 export const env = createEnv({ 5 5 server: { 6 - OPENPANEL_CLIENT_ID: z.string(), 7 6 OPENPANEL_CLIENT_SECRET: z.string(), 8 7 }, 8 + client: { 9 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID: z.string(), 10 + }, 11 + clientPrefix: "NEXT_PUBLIC_", 9 12 runtimeEnv: { 10 - OPENPANEL_CLIENT_ID: process.env.OPENPANEL_CLIENT_ID, 11 13 OPENPANEL_CLIENT_SECRET: process.env.OPENPANEL_CLIENT_SECRET, 14 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID: 15 + process.env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID, 12 16 }, 13 17 });
+2 -2
packages/analytics/src/server.ts
··· 3 3 import type { EventProps } from "./events"; 4 4 5 5 const op = new OpenPanel({ 6 - clientId: env.OPENPANEL_CLIENT_ID, 6 + clientId: env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID, 7 7 clientSecret: env.OPENPANEL_CLIENT_SECRET, 8 8 }); 9 9 ··· 17 17 fullName?: string | null; 18 18 email?: string; 19 19 workspaceId?: string; 20 - plan?: string; 20 + plan?: "free" | "starter" | "team"; 21 21 // headers from the request 22 22 location?: string; 23 23 userAgent?: string;
+1 -1
packages/api/.env.test
··· 1 1 RESEND_API_KEY='test' 2 - OPENPANEL_CLIENT_ID='test' 2 + NEXT_PUBLIC_OPENPANEL_CLIENT_ID='test' 3 3 OPENPANEL_CLIENT_SECRET='test'
+54 -309
pnpm-lock.yaml
··· 47 47 '@astrojs/tailwind': 48 48 specifier: 6.0.0 49 49 version: 6.0.0(astro@5.6.1(@types/node@22.10.2)(jiti@1.21.7)(rollup@4.34.8)(terser@5.37.0)(typescript@5.6.2)(yaml@2.6.1))(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.6.2)))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.6.2)) 50 + '@openpanel/astro': 51 + specifier: 1.0.1 52 + version: 1.0.1(astro@5.6.1(@types/node@22.10.2)(jiti@1.21.7)(rollup@4.34.8)(terser@5.37.0)(typescript@5.6.2)(yaml@2.6.1)) 50 53 astro: 51 54 specifier: 5.6.1 52 55 version: 5.6.1(@types/node@22.10.2)(jiti@1.21.7)(rollup@4.34.8)(terser@5.37.0)(typescript@5.6.2)(yaml@2.6.1) ··· 95 98 version: 2.6.2 96 99 drizzle-orm: 97 100 specifier: 0.35.3 98 - version: 0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.5))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.7.0)(bun-types@1.2.5)(react@19.1.0) 101 + version: 0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.5))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.7.0)(bun-types@1.2.12)(react@19.1.0) 99 102 hono: 100 103 specifier: 4.5.3 101 104 version: 4.5.3 ··· 209 212 '@libsql/client': 210 213 specifier: 0.14.0 211 214 version: 0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) 215 + '@openpanel/nextjs': 216 + specifier: ^1.0.8 217 + version: 1.0.8(next@15.2.4(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0) 212 218 '@openstatus/analytics': 213 219 specifier: workspace:* 214 220 version: link:../../packages/analytics ··· 528 534 version: link:../../packages/tsconfig 529 535 '@types/bun': 530 536 specifier: latest 531 - version: 1.2.5 537 + version: 1.2.12 532 538 typescript: 533 539 specifier: 5.6.2 534 540 version: 5.6.2 ··· 642 648 version: 0.7.0(typescript@5.6.2)(zod@3.23.8) 643 649 drizzle-orm: 644 650 specifier: 0.35.3 645 - version: 0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.5)(react@19.1.0) 651 + version: 0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.12)(react@19.1.0) 646 652 drizzle-zod: 647 653 specifier: 0.5.1 648 - version: 0.5.1(drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.5)(react@19.1.0))(zod@3.23.8) 654 + version: 0.5.1(drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.12)(react@19.1.0))(zod@3.23.8) 649 655 zod: 650 656 specifier: 3.23.8 651 657 version: 3.23.8 ··· 1887 1893 cpu: [ppc64] 1888 1894 os: [aix] 1889 1895 1890 - '@esbuild/aix-ppc64@0.24.2': 1891 - resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} 1892 - engines: {node: '>=18'} 1893 - cpu: [ppc64] 1894 - os: [aix] 1895 - 1896 1896 '@esbuild/aix-ppc64@0.25.0': 1897 1897 resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} 1898 1898 engines: {node: '>=18'} ··· 1923 1923 cpu: [arm64] 1924 1924 os: [android] 1925 1925 1926 - '@esbuild/android-arm64@0.24.2': 1927 - resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} 1928 - engines: {node: '>=18'} 1929 - cpu: [arm64] 1930 - os: [android] 1931 - 1932 1926 '@esbuild/android-arm64@0.25.0': 1933 1927 resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==} 1934 1928 engines: {node: '>=18'} ··· 1959 1953 cpu: [arm] 1960 1954 os: [android] 1961 1955 1962 - '@esbuild/android-arm@0.24.2': 1963 - resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} 1964 - engines: {node: '>=18'} 1965 - cpu: [arm] 1966 - os: [android] 1967 - 1968 1956 '@esbuild/android-arm@0.25.0': 1969 1957 resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==} 1970 1958 engines: {node: '>=18'} ··· 1995 1983 cpu: [x64] 1996 1984 os: [android] 1997 1985 1998 - '@esbuild/android-x64@0.24.2': 1999 - resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} 2000 - engines: {node: '>=18'} 2001 - cpu: [x64] 2002 - os: [android] 2003 - 2004 1986 '@esbuild/android-x64@0.25.0': 2005 1987 resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==} 2006 1988 engines: {node: '>=18'} ··· 2028 2010 '@esbuild/darwin-arm64@0.21.5': 2029 2011 resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} 2030 2012 engines: {node: '>=12'} 2031 - cpu: [arm64] 2032 - os: [darwin] 2033 - 2034 - '@esbuild/darwin-arm64@0.24.2': 2035 - resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} 2036 - engines: {node: '>=18'} 2037 2013 cpu: [arm64] 2038 2014 os: [darwin] 2039 2015 ··· 2067 2043 cpu: [x64] 2068 2044 os: [darwin] 2069 2045 2070 - '@esbuild/darwin-x64@0.24.2': 2071 - resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} 2072 - engines: {node: '>=18'} 2073 - cpu: [x64] 2074 - os: [darwin] 2075 - 2076 2046 '@esbuild/darwin-x64@0.25.0': 2077 2047 resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==} 2078 2048 engines: {node: '>=18'} ··· 2103 2073 cpu: [arm64] 2104 2074 os: [freebsd] 2105 2075 2106 - '@esbuild/freebsd-arm64@0.24.2': 2107 - resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} 2108 - engines: {node: '>=18'} 2109 - cpu: [arm64] 2110 - os: [freebsd] 2111 - 2112 2076 '@esbuild/freebsd-arm64@0.25.0': 2113 2077 resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==} 2114 2078 engines: {node: '>=18'} ··· 2139 2103 cpu: [x64] 2140 2104 os: [freebsd] 2141 2105 2142 - '@esbuild/freebsd-x64@0.24.2': 2143 - resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} 2144 - engines: {node: '>=18'} 2145 - cpu: [x64] 2146 - os: [freebsd] 2147 - 2148 2106 '@esbuild/freebsd-x64@0.25.0': 2149 2107 resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==} 2150 2108 engines: {node: '>=18'} ··· 2175 2133 cpu: [arm64] 2176 2134 os: [linux] 2177 2135 2178 - '@esbuild/linux-arm64@0.24.2': 2179 - resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} 2180 - engines: {node: '>=18'} 2181 - cpu: [arm64] 2182 - os: [linux] 2183 - 2184 2136 '@esbuild/linux-arm64@0.25.0': 2185 2137 resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==} 2186 2138 engines: {node: '>=18'} ··· 2211 2163 cpu: [arm] 2212 2164 os: [linux] 2213 2165 2214 - '@esbuild/linux-arm@0.24.2': 2215 - resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} 2216 - engines: {node: '>=18'} 2217 - cpu: [arm] 2218 - os: [linux] 2219 - 2220 2166 '@esbuild/linux-arm@0.25.0': 2221 2167 resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==} 2222 2168 engines: {node: '>=18'} ··· 2247 2193 cpu: [ia32] 2248 2194 os: [linux] 2249 2195 2250 - '@esbuild/linux-ia32@0.24.2': 2251 - resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} 2252 - engines: {node: '>=18'} 2253 - cpu: [ia32] 2254 - os: [linux] 2255 - 2256 2196 '@esbuild/linux-ia32@0.25.0': 2257 2197 resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==} 2258 2198 engines: {node: '>=18'} ··· 2283 2223 cpu: [loong64] 2284 2224 os: [linux] 2285 2225 2286 - '@esbuild/linux-loong64@0.24.2': 2287 - resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} 2288 - engines: {node: '>=18'} 2289 - cpu: [loong64] 2290 - os: [linux] 2291 - 2292 2226 '@esbuild/linux-loong64@0.25.0': 2293 2227 resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==} 2294 2228 engines: {node: '>=18'} ··· 2319 2253 cpu: [mips64el] 2320 2254 os: [linux] 2321 2255 2322 - '@esbuild/linux-mips64el@0.24.2': 2323 - resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} 2324 - engines: {node: '>=18'} 2325 - cpu: [mips64el] 2326 - os: [linux] 2327 - 2328 2256 '@esbuild/linux-mips64el@0.25.0': 2329 2257 resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==} 2330 2258 engines: {node: '>=18'} ··· 2355 2283 cpu: [ppc64] 2356 2284 os: [linux] 2357 2285 2358 - '@esbuild/linux-ppc64@0.24.2': 2359 - resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} 2360 - engines: {node: '>=18'} 2361 - cpu: [ppc64] 2362 - os: [linux] 2363 - 2364 2286 '@esbuild/linux-ppc64@0.25.0': 2365 2287 resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==} 2366 2288 engines: {node: '>=18'} ··· 2391 2313 cpu: [riscv64] 2392 2314 os: [linux] 2393 2315 2394 - '@esbuild/linux-riscv64@0.24.2': 2395 - resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} 2396 - engines: {node: '>=18'} 2397 - cpu: [riscv64] 2398 - os: [linux] 2399 - 2400 2316 '@esbuild/linux-riscv64@0.25.0': 2401 2317 resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==} 2402 2318 engines: {node: '>=18'} ··· 2427 2343 cpu: [s390x] 2428 2344 os: [linux] 2429 2345 2430 - '@esbuild/linux-s390x@0.24.2': 2431 - resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} 2432 - engines: {node: '>=18'} 2433 - cpu: [s390x] 2434 - os: [linux] 2435 - 2436 2346 '@esbuild/linux-s390x@0.25.0': 2437 2347 resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==} 2438 2348 engines: {node: '>=18'} ··· 2463 2373 cpu: [x64] 2464 2374 os: [linux] 2465 2375 2466 - '@esbuild/linux-x64@0.24.2': 2467 - resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} 2468 - engines: {node: '>=18'} 2469 - cpu: [x64] 2470 - os: [linux] 2471 - 2472 2376 '@esbuild/linux-x64@0.25.0': 2473 2377 resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==} 2474 2378 engines: {node: '>=18'} ··· 2480 2384 engines: {node: '>=18'} 2481 2385 cpu: [x64] 2482 2386 os: [linux] 2483 - 2484 - '@esbuild/netbsd-arm64@0.24.2': 2485 - resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} 2486 - engines: {node: '>=18'} 2487 - cpu: [arm64] 2488 - os: [netbsd] 2489 2387 2490 2388 '@esbuild/netbsd-arm64@0.25.0': 2491 2389 resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==} ··· 2517 2415 cpu: [x64] 2518 2416 os: [netbsd] 2519 2417 2520 - '@esbuild/netbsd-x64@0.24.2': 2521 - resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} 2522 - engines: {node: '>=18'} 2523 - cpu: [x64] 2524 - os: [netbsd] 2525 - 2526 2418 '@esbuild/netbsd-x64@0.25.0': 2527 2419 resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==} 2528 2420 engines: {node: '>=18'} ··· 2534 2426 engines: {node: '>=18'} 2535 2427 cpu: [x64] 2536 2428 os: [netbsd] 2537 - 2538 - '@esbuild/openbsd-arm64@0.24.2': 2539 - resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} 2540 - engines: {node: '>=18'} 2541 - cpu: [arm64] 2542 - os: [openbsd] 2543 2429 2544 2430 '@esbuild/openbsd-arm64@0.25.0': 2545 2431 resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==} ··· 2571 2457 cpu: [x64] 2572 2458 os: [openbsd] 2573 2459 2574 - '@esbuild/openbsd-x64@0.24.2': 2575 - resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} 2576 - engines: {node: '>=18'} 2577 - cpu: [x64] 2578 - os: [openbsd] 2579 - 2580 2460 '@esbuild/openbsd-x64@0.25.0': 2581 2461 resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==} 2582 2462 engines: {node: '>=18'} ··· 2607 2487 cpu: [x64] 2608 2488 os: [sunos] 2609 2489 2610 - '@esbuild/sunos-x64@0.24.2': 2611 - resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} 2612 - engines: {node: '>=18'} 2613 - cpu: [x64] 2614 - os: [sunos] 2615 - 2616 2490 '@esbuild/sunos-x64@0.25.0': 2617 2491 resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==} 2618 2492 engines: {node: '>=18'} ··· 2643 2517 cpu: [arm64] 2644 2518 os: [win32] 2645 2519 2646 - '@esbuild/win32-arm64@0.24.2': 2647 - resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} 2648 - engines: {node: '>=18'} 2649 - cpu: [arm64] 2650 - os: [win32] 2651 - 2652 2520 '@esbuild/win32-arm64@0.25.0': 2653 2521 resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==} 2654 2522 engines: {node: '>=18'} ··· 2679 2547 cpu: [ia32] 2680 2548 os: [win32] 2681 2549 2682 - '@esbuild/win32-ia32@0.24.2': 2683 - resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} 2684 - engines: {node: '>=18'} 2685 - cpu: [ia32] 2686 - os: [win32] 2687 - 2688 2550 '@esbuild/win32-ia32@0.25.0': 2689 2551 resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==} 2690 2552 engines: {node: '>=18'} ··· 2712 2574 '@esbuild/win32-x64@0.21.5': 2713 2575 resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} 2714 2576 engines: {node: '>=12'} 2715 - cpu: [x64] 2716 - os: [win32] 2717 - 2718 - '@esbuild/win32-x64@0.24.2': 2719 - resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} 2720 - engines: {node: '>=18'} 2721 2577 cpu: [x64] 2722 2578 os: [win32] 2723 2579 ··· 3107 2963 '@one-ini/wasm@0.1.1': 3108 2964 resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==} 3109 2965 2966 + '@openpanel/astro@1.0.1': 2967 + resolution: {integrity: sha512-PLSOJFj4RoFbQPZXBwJNsaqprnrjq5Hj1x6oY1a1IJpWSqFqO3Wa1OSMsLh2G2QXAowsg+cfiu7Mp6h/kK1tow==} 2968 + peerDependencies: 2969 + astro: ^4.0.0 || ^5.0.0 2970 + 2971 + '@openpanel/nextjs@1.0.8': 2972 + resolution: {integrity: sha512-1y5T6ARQFysg1DjdLrepP/En7XPUQd1yShvSgC1bkW6k9cwW1v7fbRSCUHmRzhhCt0rs1FGUOuFFwpEF7GRvdA==} 2973 + peerDependencies: 2974 + next: ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0 2975 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 2976 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 2977 + 3110 2978 '@openpanel/sdk@1.0.0': 3111 2979 resolution: {integrity: sha512-FNmmfjdXoC/VHEjA+WkrQ4lyM5lxEmV7xDd57uj4E+lIS0sU3DLG2mV/dpS8AscnZbUvuMn3kPhiLCqYzuv/gg==} 2980 + 2981 + '@openpanel/web@1.0.1': 2982 + resolution: {integrity: sha512-cVZ7Kr9SicczJ/RDIfEtZs8+1iGDzwkabVA/j3NqSl8VSucsC8m1+LVbjmCDzCJNnK4yVn6tEcc9PJRi2rtllw==} 3112 2983 3113 2984 '@opentelemetry/api-logs@0.52.1': 3114 2985 resolution: {integrity: sha512-qnSqB2DQ9TPP96dl8cDubDvrUyWc0/sK81xHTK8eSUspzDM3bsewX903qclQFvVhgStjRWdC5bLb3kQqMkfV5A==} ··· 4819 4690 '@types/babel__traverse@7.20.6': 4820 4691 resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} 4821 4692 4822 - '@types/bun@1.2.5': 4823 - resolution: {integrity: sha512-w2OZTzrZTVtbnJew1pdFmgV99H0/L+Pvw+z1P67HaR18MHOzYnTYOi6qzErhK8HyT+DB782ADVPPE92Xu2/Opg==} 4693 + '@types/bun@1.2.12': 4694 + resolution: {integrity: sha512-lY/GQTXDGsolT/TiH72p1tuyUORuRrdV7VwOTOjDOt8uTBJQOJc5zz3ufwwDl0VBaoxotSk4LdP0hhjLJ6ypIQ==} 4824 4695 4825 4696 '@types/caseless@0.12.4': 4826 4697 resolution: {integrity: sha512-2in/lrHRNmDvHPgyormtEralhPcN3An1gLjJzj2Bw145VBxkQ75JEXW6CTdMAwShiHQcYsl2d10IjQSdJSJz4g==} ··· 5435 5306 bun-types@1.0.8: 5436 5307 resolution: {integrity: sha512-2dNB+dBwAcFW7RSd4y5vKycRjouKVklSwPk4EjBKWvcMYUBOqZGGNzV7+b2tfKBG3BeRXnozbnegVKR1azuATg==} 5437 5308 5438 - bun-types@1.2.5: 5439 - resolution: {integrity: sha512-3oO6LVGGRRKI4kHINx5PIdIgnLRb7l/SprhzqXapmoYkFl5m4j6EvALvbDVuuBFaamB46Ap6HCUxIXNLCGy+tg==} 5309 + bun-types@1.2.12: 5310 + resolution: {integrity: sha512-tvWMx5vPqbRXgE8WUZI94iS1xAYs8bkqESR9cxBB1Wi+urvfTrF1uzuDgBHFAdO0+d2lmsbG3HmeKMvUyj6pWA==} 5440 5311 5441 5312 bundle-require@4.0.2: 5442 5313 resolution: {integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==} ··· 6141 6012 esbuild@0.21.5: 6142 6013 resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} 6143 6014 engines: {node: '>=12'} 6144 - hasBin: true 6145 - 6146 - esbuild@0.24.2: 6147 - resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} 6148 - engines: {node: '>=18'} 6149 6015 hasBin: true 6150 6016 6151 6017 esbuild@0.25.0: ··· 10942 10808 '@esbuild/aix-ppc64@0.21.5': 10943 10809 optional: true 10944 10810 10945 - '@esbuild/aix-ppc64@0.24.2': 10946 - optional: true 10947 - 10948 10811 '@esbuild/aix-ppc64@0.25.0': 10949 10812 optional: true 10950 10813 ··· 10960 10823 '@esbuild/android-arm64@0.21.5': 10961 10824 optional: true 10962 10825 10963 - '@esbuild/android-arm64@0.24.2': 10964 - optional: true 10965 - 10966 10826 '@esbuild/android-arm64@0.25.0': 10967 10827 optional: true 10968 10828 ··· 10978 10838 '@esbuild/android-arm@0.21.5': 10979 10839 optional: true 10980 10840 10981 - '@esbuild/android-arm@0.24.2': 10982 - optional: true 10983 - 10984 10841 '@esbuild/android-arm@0.25.0': 10985 10842 optional: true 10986 10843 ··· 10996 10853 '@esbuild/android-x64@0.21.5': 10997 10854 optional: true 10998 10855 10999 - '@esbuild/android-x64@0.24.2': 11000 - optional: true 11001 - 11002 10856 '@esbuild/android-x64@0.25.0': 11003 10857 optional: true 11004 10858 ··· 11012 10866 optional: true 11013 10867 11014 10868 '@esbuild/darwin-arm64@0.21.5': 11015 - optional: true 11016 - 11017 - '@esbuild/darwin-arm64@0.24.2': 11018 10869 optional: true 11019 10870 11020 10871 '@esbuild/darwin-arm64@0.25.0': ··· 11032 10883 '@esbuild/darwin-x64@0.21.5': 11033 10884 optional: true 11034 10885 11035 - '@esbuild/darwin-x64@0.24.2': 11036 - optional: true 11037 - 11038 10886 '@esbuild/darwin-x64@0.25.0': 11039 10887 optional: true 11040 10888 ··· 11050 10898 '@esbuild/freebsd-arm64@0.21.5': 11051 10899 optional: true 11052 10900 11053 - '@esbuild/freebsd-arm64@0.24.2': 11054 - optional: true 11055 - 11056 10901 '@esbuild/freebsd-arm64@0.25.0': 11057 10902 optional: true 11058 10903 ··· 11066 10911 optional: true 11067 10912 11068 10913 '@esbuild/freebsd-x64@0.21.5': 11069 - optional: true 11070 - 11071 - '@esbuild/freebsd-x64@0.24.2': 11072 10914 optional: true 11073 10915 11074 10916 '@esbuild/freebsd-x64@0.25.0': ··· 11086 10928 '@esbuild/linux-arm64@0.21.5': 11087 10929 optional: true 11088 10930 11089 - '@esbuild/linux-arm64@0.24.2': 11090 - optional: true 11091 - 11092 10931 '@esbuild/linux-arm64@0.25.0': 11093 10932 optional: true 11094 10933 ··· 11104 10943 '@esbuild/linux-arm@0.21.5': 11105 10944 optional: true 11106 10945 11107 - '@esbuild/linux-arm@0.24.2': 11108 - optional: true 11109 - 11110 10946 '@esbuild/linux-arm@0.25.0': 11111 10947 optional: true 11112 10948 ··· 11122 10958 '@esbuild/linux-ia32@0.21.5': 11123 10959 optional: true 11124 10960 11125 - '@esbuild/linux-ia32@0.24.2': 11126 - optional: true 11127 - 11128 10961 '@esbuild/linux-ia32@0.25.0': 11129 10962 optional: true 11130 10963 ··· 11140 10973 '@esbuild/linux-loong64@0.21.5': 11141 10974 optional: true 11142 10975 11143 - '@esbuild/linux-loong64@0.24.2': 11144 - optional: true 11145 - 11146 10976 '@esbuild/linux-loong64@0.25.0': 11147 10977 optional: true 11148 10978 ··· 11158 10988 '@esbuild/linux-mips64el@0.21.5': 11159 10989 optional: true 11160 10990 11161 - '@esbuild/linux-mips64el@0.24.2': 11162 - optional: true 11163 - 11164 10991 '@esbuild/linux-mips64el@0.25.0': 11165 10992 optional: true 11166 10993 ··· 11176 11003 '@esbuild/linux-ppc64@0.21.5': 11177 11004 optional: true 11178 11005 11179 - '@esbuild/linux-ppc64@0.24.2': 11180 - optional: true 11181 - 11182 11006 '@esbuild/linux-ppc64@0.25.0': 11183 11007 optional: true 11184 11008 ··· 11194 11018 '@esbuild/linux-riscv64@0.21.5': 11195 11019 optional: true 11196 11020 11197 - '@esbuild/linux-riscv64@0.24.2': 11198 - optional: true 11199 - 11200 11021 '@esbuild/linux-riscv64@0.25.0': 11201 11022 optional: true 11202 11023 ··· 11210 11031 optional: true 11211 11032 11212 11033 '@esbuild/linux-s390x@0.21.5': 11213 - optional: true 11214 - 11215 - '@esbuild/linux-s390x@0.24.2': 11216 11034 optional: true 11217 11035 11218 11036 '@esbuild/linux-s390x@0.25.0': ··· 11230 11048 '@esbuild/linux-x64@0.21.5': 11231 11049 optional: true 11232 11050 11233 - '@esbuild/linux-x64@0.24.2': 11234 - optional: true 11235 - 11236 11051 '@esbuild/linux-x64@0.25.0': 11237 11052 optional: true 11238 11053 11239 11054 '@esbuild/linux-x64@0.25.2': 11240 - optional: true 11241 - 11242 - '@esbuild/netbsd-arm64@0.24.2': 11243 11055 optional: true 11244 11056 11245 11057 '@esbuild/netbsd-arm64@0.25.0': ··· 11255 11067 optional: true 11256 11068 11257 11069 '@esbuild/netbsd-x64@0.21.5': 11258 - optional: true 11259 - 11260 - '@esbuild/netbsd-x64@0.24.2': 11261 11070 optional: true 11262 11071 11263 11072 '@esbuild/netbsd-x64@0.25.0': ··· 11266 11075 '@esbuild/netbsd-x64@0.25.2': 11267 11076 optional: true 11268 11077 11269 - '@esbuild/openbsd-arm64@0.24.2': 11270 - optional: true 11271 - 11272 11078 '@esbuild/openbsd-arm64@0.25.0': 11273 11079 optional: true 11274 11080 ··· 11284 11090 '@esbuild/openbsd-x64@0.21.5': 11285 11091 optional: true 11286 11092 11287 - '@esbuild/openbsd-x64@0.24.2': 11288 - optional: true 11289 - 11290 11093 '@esbuild/openbsd-x64@0.25.0': 11291 11094 optional: true 11292 11095 ··· 11300 11103 optional: true 11301 11104 11302 11105 '@esbuild/sunos-x64@0.21.5': 11303 - optional: true 11304 - 11305 - '@esbuild/sunos-x64@0.24.2': 11306 11106 optional: true 11307 11107 11308 11108 '@esbuild/sunos-x64@0.25.0': ··· 11320 11120 '@esbuild/win32-arm64@0.21.5': 11321 11121 optional: true 11322 11122 11323 - '@esbuild/win32-arm64@0.24.2': 11324 - optional: true 11325 - 11326 11123 '@esbuild/win32-arm64@0.25.0': 11327 11124 optional: true 11328 11125 ··· 11338 11135 '@esbuild/win32-ia32@0.21.5': 11339 11136 optional: true 11340 11137 11341 - '@esbuild/win32-ia32@0.24.2': 11342 - optional: true 11343 - 11344 11138 '@esbuild/win32-ia32@0.25.0': 11345 11139 optional: true 11346 11140 ··· 11354 11148 optional: true 11355 11149 11356 11150 '@esbuild/win32-x64@0.21.5': 11357 - optional: true 11358 - 11359 - '@esbuild/win32-x64@0.24.2': 11360 11151 optional: true 11361 11152 11362 11153 '@esbuild/win32-x64@0.25.0': ··· 11784 11575 11785 11576 '@one-ini/wasm@0.1.1': {} 11786 11577 11578 + '@openpanel/astro@1.0.1(astro@5.6.1(@types/node@22.10.2)(jiti@1.21.7)(rollup@4.34.8)(terser@5.37.0)(typescript@5.6.2)(yaml@2.6.1))': 11579 + dependencies: 11580 + '@openpanel/web': 1.0.1 11581 + astro: 5.6.1(@types/node@22.10.2)(jiti@1.21.7)(rollup@4.34.8)(terser@5.37.0)(typescript@5.6.2)(yaml@2.6.1) 11582 + 11583 + '@openpanel/nextjs@1.0.8(next@15.2.4(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': 11584 + dependencies: 11585 + '@openpanel/web': 1.0.1 11586 + next: 15.2.4(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) 11587 + react: 19.1.0 11588 + react-dom: 19.1.0(react@19.1.0) 11589 + 11787 11590 '@openpanel/sdk@1.0.0': {} 11591 + 11592 + '@openpanel/web@1.0.1': 11593 + dependencies: 11594 + '@openpanel/sdk': 1.0.0 11788 11595 11789 11596 '@opentelemetry/api-logs@0.52.1': 11790 11597 dependencies: ··· 13642 13449 13643 13450 '@tanstack/table-core@8.10.3': {} 13644 13451 13645 - '@tanstack/virtual-core@3.8.3': {} 13646 - 13647 - '@tanstack/vue-virtual@3.8.3(vue@3.4.31(typescript@5.7.2))': 13648 - dependencies: 13649 - '@tanstack/virtual-core': 3.8.3 13650 - vue: 3.4.31(typescript@5.7.2) 13651 - 13652 - '@testing-library/dom@10.1.0': 13653 - dependencies: 13654 - '@babel/code-frame': 7.26.2 13655 - '@babel/runtime': 7.26.0 13656 - '@types/aria-query': 5.0.4 13657 - aria-query: 5.3.0 13658 - chalk: 4.1.2 13659 - dom-accessibility-api: 0.5.16 13660 - lz-string: 1.5.0 13661 - pretty-format: 27.5.1 13662 - 13663 - '@testing-library/jest-dom@6.4.5': 13664 - dependencies: 13665 - '@adobe/css-tools': 4.4.0 13666 - '@babel/runtime': 7.26.0 13667 - aria-query: 5.3.2 13668 - chalk: 3.0.0 13669 - css.escape: 1.5.1 13670 - dom-accessibility-api: 0.6.3 13671 - lodash: 4.17.21 13672 - redent: 3.0.0 13673 - 13674 - '@testing-library/user-event@14.5.2(@testing-library/dom@10.1.0)': 13675 - dependencies: 13676 - '@testing-library/dom': 10.1.0 13677 - 13678 13452 '@tootallnate/once@2.0.0': {} 13679 13453 13680 13454 '@tootallnate/quickjs-emscripten@0.23.0': {} ··· 13783 13557 dependencies: 13784 13558 '@babel/types': 7.26.3 13785 13559 13786 - '@types/bun@1.2.5': 13560 + '@types/bun@1.2.12': 13787 13561 dependencies: 13788 - bun-types: 1.2.5 13562 + bun-types: 1.2.12 13789 13563 13790 13564 '@types/caseless@0.12.4': {} 13791 13565 ··· 14600 14374 14601 14375 bun-types@1.0.8: {} 14602 14376 14603 - bun-types@1.2.5: 14377 + bun-types@1.2.12: 14604 14378 dependencies: 14605 14379 '@types/node': 22.10.2 14606 - '@types/ws': 8.5.13 14607 14380 14608 14381 bundle-require@4.0.2(esbuild@0.18.20): 14609 14382 dependencies: ··· 15084 14857 transitivePeerDependencies: 15085 14858 - supports-color 15086 14859 15087 - drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.5)(react@19.1.0): 14860 + drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.12)(react@19.1.0): 15088 14861 dependencies: 15089 14862 '@libsql/client-wasm': 0.14.0 15090 14863 optionalDependencies: ··· 15094 14867 '@types/pg': 8.11.10 15095 14868 '@types/react': 19.1.0 15096 14869 better-sqlite3: 11.4.0 15097 - bun-types: 1.2.5 14870 + bun-types: 1.2.12 15098 14871 react: 19.1.0 15099 14872 15100 - drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.5))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.7.0)(bun-types@1.2.5)(react@19.1.0): 14873 + drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.5))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.7.0)(bun-types@1.2.12)(react@19.1.0): 15101 14874 dependencies: 15102 14875 '@libsql/client-wasm': 0.14.0 15103 14876 optionalDependencies: ··· 15107 14880 '@types/pg': 8.11.10 15108 14881 '@types/react': 19.1.0 15109 14882 better-sqlite3: 11.7.0 15110 - bun-types: 1.2.5 14883 + bun-types: 1.2.12 15111 14884 react: 19.1.0 15112 14885 15113 - drizzle-zod@0.5.1(drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.5)(react@19.1.0))(zod@3.23.8): 14886 + drizzle-zod@0.5.1(drizzle-orm@0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.12)(react@19.1.0))(zod@3.23.8): 15114 14887 dependencies: 15115 - drizzle-orm: 0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.5)(react@19.1.0) 14888 + drizzle-orm: 0.35.3(@cloudflare/workers-types@4.20250303.0)(@libsql/client-wasm@0.14.0)(@libsql/client@0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3))(@opentelemetry/api@1.9.0)(@types/pg@8.11.10)(@types/react@19.1.0)(better-sqlite3@11.4.0)(bun-types@1.2.12)(react@19.1.0) 15116 14889 zod: 3.23.8 15117 14890 15118 14891 dset@3.1.4: {} ··· 15295 15068 '@esbuild/win32-arm64': 0.21.5 15296 15069 '@esbuild/win32-ia32': 0.21.5 15297 15070 '@esbuild/win32-x64': 0.21.5 15298 - 15299 - esbuild@0.24.2: 15300 - optionalDependencies: 15301 - '@esbuild/aix-ppc64': 0.24.2 15302 - '@esbuild/android-arm': 0.24.2 15303 - '@esbuild/android-arm64': 0.24.2 15304 - '@esbuild/android-x64': 0.24.2 15305 - '@esbuild/darwin-arm64': 0.24.2 15306 - '@esbuild/darwin-x64': 0.24.2 15307 - '@esbuild/freebsd-arm64': 0.24.2 15308 - '@esbuild/freebsd-x64': 0.24.2 15309 - '@esbuild/linux-arm': 0.24.2 15310 - '@esbuild/linux-arm64': 0.24.2 15311 - '@esbuild/linux-ia32': 0.24.2 15312 - '@esbuild/linux-loong64': 0.24.2 15313 - '@esbuild/linux-mips64el': 0.24.2 15314 - '@esbuild/linux-ppc64': 0.24.2 15315 - '@esbuild/linux-riscv64': 0.24.2 15316 - '@esbuild/linux-s390x': 0.24.2 15317 - '@esbuild/linux-x64': 0.24.2 15318 - '@esbuild/netbsd-arm64': 0.24.2 15319 - '@esbuild/netbsd-x64': 0.24.2 15320 - '@esbuild/openbsd-arm64': 0.24.2 15321 - '@esbuild/openbsd-x64': 0.24.2 15322 - '@esbuild/sunos-x64': 0.24.2 15323 - '@esbuild/win32-arm64': 0.24.2 15324 - '@esbuild/win32-ia32': 0.24.2 15325 - '@esbuild/win32-x64': 0.24.2 15326 15071 15327 15072 esbuild@0.25.0: 15328 15073 optionalDependencies: