diff --git a/.changeset/knip-cleanup.md b/.changeset/knip-cleanup.md new file mode 100644 index 0000000000..4a9243dc9c --- /dev/null +++ b/.changeset/knip-cleanup.md @@ -0,0 +1,11 @@ +--- +"@workflow/next": patch +"@workflow/ai": patch +"@workflow/typescript-plugin": patch +"@workflow/web": patch +"@workflow/web-shared": patch +"workflow": patch +"@workflow/world-postgres": patch +--- + +Clean up package metadata after adding a repo-level `knip` baseline diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 2948e2d3d5..b3c159270e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -36,6 +36,29 @@ jobs: exit 1 fi + knip: + name: Knip + runs-on: ubuntu-latest + steps: + - name: Checkout Repo + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.sha }} + + - name: Setup environment + uses: ./.github/actions/setup-workflow-dev + with: + install-args: '--ignore-scripts' + build-packages: 'false' + + - name: Run Knip + if: github.event_name != 'pull_request' + run: pnpm knip:ci + + - name: Run Knip with GitHub annotations + if: github.event_name == 'pull_request' + run: pnpm knip:ci:github + docs-links: name: Docs Links runs-on: ubuntu-latest diff --git a/docs/lib/worlds-data.ts b/docs/lib/worlds-data.ts index f8c79cc944..566f2ab72f 100644 --- a/docs/lib/worlds-data.ts +++ b/docs/lib/worlds-data.ts @@ -204,11 +204,6 @@ export const getWorldsData = unstable_cache( { revalidate: 300 } // Cache for 5 minutes ); -/** - * Alias for backwards compatibility - */ -export const getWorldsDataWithArtifacts = getWorldsData; - /** * Get data for a single world by ID */ diff --git a/knip.jsonc b/knip.jsonc new file mode 100644 index 0000000000..30743ae26b --- /dev/null +++ b/knip.jsonc @@ -0,0 +1,171 @@ +{ + "$schema": "https://unpkg.com/knip@6/schema-jsonc.json", + "entry": [ + "scripts/**/*.{js,cjs,mjs,ts,cts,mts}", + ".github/actions/*/src/**/*.{js,cjs,mjs,ts,cts,mts}", + "docs/content/**/*.mdx", + "docs/app/**/*.{js,jsx,ts,tsx}", + "docs/components/**/*.{js,jsx,ts,tsx}", + "docs/hooks/**/*.{js,jsx,ts,tsx}", + "docs/lib/**/*.{js,jsx,ts,tsx}", + "workbench/**/app/**/*.{js,jsx,ts,tsx}", + "workbench/**/pages/**/*.{js,jsx,ts,tsx}", + "workbench/**/components/**/*.{js,jsx,ts,tsx}", + "workbench/**/hooks/**/*.{js,jsx,ts,tsx}", + "workbench/**/lib/**/*.{js,jsx,ts,tsx}", + "workbench/**/src/**/*.{js,jsx,ts,tsx,mjs}", + "workbench/**/workflows/**/*.{js,jsx,ts,tsx,mjs}", + "packages/cli/src/**/*.ts", + "packages/world-testing/workflows/**/*.{ts,tsx,mts}" + ], + "ignoreFiles": [ + "**/dist/**", + "**/.svelte-kit/**", + "**/.nuxt/**", + "**/.react-router/**", + "packages/swc-plugin-workflow/examples/**", + "packages/swc-plugin-workflow/transform/tests/**", + "packages/swc-playground-wasm/pkg/**", + "workbench/**/app/.well-known/**" + ], + "ignoreUnresolved": [ + "@/_workflows", + "@/lib/generated-types", + "../_workflows.js", + "./+types/api.rpc", + "./+types/api.stream.$streamId", + "./+types/root", + "/wasm/swc_playground_wasm.js", + "../types/client", + "../../types/cache", + "./cache" + ], + "ignoreIssues": { + "scripts/**/*": [ + "files" + ], + ".github/actions/**/*": [ + "files" + ], + "docs/app/**/*": [ + "files" + ], + "docs/components/**/*": [ + "files" + ], + "docs/hooks/**/*": [ + "files" + ], + "docs/lib/**/*": [ + "files" + ], + "workbench/**/app/**/*": [ + "files" + ], + "workbench/**/pages/**/*": [ + "files" + ], + "workbench/**/components/**/*": [ + "files" + ], + "workbench/**/hooks/**/*": [ + "files" + ], + "workbench/**/lib/**/*": [ + "files" + ], + "workbench/**/src/**/*": [ + "files" + ], + "workbench/**/workflows/**/*": [ + "files" + ], + "workbench/**/package.json": [ + "dependencies", + "devDependencies" + ], + "workbench/example/api/**/*": [ + "files" + ], + "workbench/example/instrumentation.ts": [ + "files" + ], + "workbench/sveltekit/vite.config.ts": [ + "files" + ], + "workbench/vitest/**/*": [ + "files" + ], + "docs/package.json": [ + "dependencies", + "devDependencies" + ], + "packages/docs-typecheck/package.json": [ + "dependencies", + "devDependencies" + ], + "packages/docs-typecheck/**/*": [ + "files" + ], + "packages/core/runtime.d.ts": [ + "files" + ], + "packages/core/runtime.js": [ + "files" + ], + "packages/core/e2e/github-reporter.ts": [ + "files" + ], + "packages/world-testing/workflows/**/*": [ + "files" + ], + "packages/vitest/src/**/*": [ + "files" + ], + "packages/cli/src/**/*": [ + "files" + ], + "packages/web/app/**/*": [ + "files" + ], + "packages/web/server/**/*": [ + "files" + ], + "packages/nuxt/src/module.ts": [ + "files" + ], + "packages/web/app/routes/api.rpc.tsx": [ + "unresolved" + ], + "packages/web/app/routes/api.stream.$streamId.tsx": [ + "unresolved" + ], + "packages/web/app/root.tsx": [ + "unresolved" + ], + "packages/next/src/builder-deferred.ts": [ + "unlisted" + ], + "workbench/nextjs-turbopack/postcss.config.mjs": [ + "unlisted" + ], + "workbench/nextjs-webpack/postcss.config.mjs": [ + "unlisted" + ], + "workbench/nuxt/app.vue": [ + "unlisted" + ], + "workbench/swc-playground/postcss.config.mjs": [ + "unlisted" + ], + "packages/world/src/ulid.ts": [ + "duplicates" + ] + }, + "workspaces": { + "workbench/sveltekit": { + "vite": false, + "svelte": false + } + } +} diff --git a/knip.strict.jsonc b/knip.strict.jsonc new file mode 100644 index 0000000000..f1fd4254c3 --- /dev/null +++ b/knip.strict.jsonc @@ -0,0 +1,183 @@ +{ + "$schema": "https://unpkg.com/knip@6/schema-jsonc.json", + "entry": [ + "scripts/**/*.{js,cjs,mjs,ts,cts,mts}", + ".github/actions/*/src/**/*.{js,cjs,mjs,ts,cts,mts}", + "docs/content/**/*.mdx", + "docs/app/**/*.{js,jsx,ts,tsx}", + "docs/components/**/*.{js,jsx,ts,tsx}", + "docs/hooks/**/*.{js,jsx,ts,tsx}", + "docs/lib/**/*.{js,jsx,ts,tsx}", + "workbench/**/app/**/*.{js,jsx,ts,tsx}", + "workbench/**/pages/**/*.{js,jsx,ts,tsx}", + "workbench/**/components/**/*.{js,jsx,ts,tsx}", + "workbench/**/hooks/**/*.{js,jsx,ts,tsx}", + "workbench/**/lib/**/*.{js,jsx,ts,tsx}", + "workbench/**/src/**/*.{js,jsx,ts,tsx,mjs}", + "workbench/**/workflows/**/*.{js,jsx,ts,tsx,mjs}", + "packages/cli/src/**/*.ts", + "packages/world-testing/workflows/**/*.{ts,tsx,mts}" + ], + "ignoreFiles": [ + "**/dist/**", + "**/.svelte-kit/**", + "**/.nuxt/**", + "**/.react-router/**", + "packages/swc-plugin-workflow/examples/**", + "packages/swc-plugin-workflow/transform/tests/**", + "packages/swc-playground-wasm/pkg/**", + "workbench/**/app/.well-known/**" + ], + "ignoreUnresolved": [ + "@/_workflows", + "@/lib/generated-types", + "../_workflows.js", + "./+types/api.rpc", + "./+types/api.stream.$streamId", + "./+types/root", + "/wasm/swc_playground_wasm.js", + "../types/client", + "../../types/cache", + "./cache" + ], + "ignoreIssues": { + "scripts/**/*": [ + "files" + ], + ".github/actions/**/*": [ + "files" + ], + "docs/app/**/*": [ + "files" + ], + "docs/components/**/*": [ + "files" + ], + "docs/hooks/**/*": [ + "files" + ], + "docs/lib/**/*": [ + "files" + ], + "workbench/**/app/**/*": [ + "files" + ], + "workbench/**/pages/**/*": [ + "files" + ], + "workbench/**/components/**/*": [ + "files" + ], + "workbench/**/hooks/**/*": [ + "files" + ], + "workbench/**/lib/**/*": [ + "files" + ], + "workbench/**/src/**/*": [ + "files" + ], + "workbench/**/workflows/**/*": [ + "files" + ], + "workbench/**/package.json": [ + "dependencies", + "devDependencies" + ], + "workbench/example/api/**/*": [ + "files" + ], + "workbench/example/instrumentation.ts": [ + "files" + ], + "workbench/sveltekit/vite.config.ts": [ + "files" + ], + "workbench/vitest/**/*": [ + "files" + ], + "docs/package.json": [ + "dependencies", + "devDependencies" + ], + "packages/docs-typecheck/package.json": [ + "dependencies", + "devDependencies" + ], + "packages/docs-typecheck/**/*": [ + "files" + ], + "packages/cli/src/base.ts": [ + "files" + ], + "packages/cli/src/commands/**/*": [ + "files" + ], + "packages/cli/src/lib/**/*": [ + "files" + ], + "packages/nuxt/src/module.ts": [ + "files" + ], + "packages/vitest/src/global-setup.ts": [ + "files" + ], + "packages/vitest/src/setup-file.ts": [ + "files" + ], + "packages/world-testing/workflows/**/*": [ + "files" + ], + "packages/web/server/app.ts": [ + "files" + ], + "packages/web/app/lib/config-world.server.ts": [ + "files" + ], + "packages/web/app/lib/known-worlds.ts": [ + "files" + ], + "packages/core/runtime.d.ts": [ + "files" + ], + "packages/core/runtime.js": [ + "files" + ], + "packages/core/e2e/github-reporter.ts": [ + "files" + ], + "packages/web/app/routes/api.rpc.tsx": [ + "unresolved" + ], + "packages/web/app/routes/api.stream.$streamId.tsx": [ + "unresolved" + ], + "packages/web/app/root.tsx": [ + "unresolved" + ], + "packages/next/src/builder-deferred.ts": [ + "unlisted" + ], + "workbench/nextjs-turbopack/postcss.config.mjs": [ + "unlisted" + ], + "workbench/nextjs-webpack/postcss.config.mjs": [ + "unlisted" + ], + "workbench/nuxt/app.vue": [ + "unlisted" + ], + "workbench/swc-playground/postcss.config.mjs": [ + "unlisted" + ], + "packages/world/src/ulid.ts": [ + "duplicates" + ] + }, + "workspaces": { + "workbench/sveltekit": { + "vite": false, + "svelte": false + } + } +} diff --git a/package.json b/package.json index 7cf5becf35..c98349a148 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,6 @@ "@biomejs/biome": "catalog:", "@changesets/changelog-github": "0.5.2", "@changesets/cli": "^2.29.8", - "@vitest/coverage-v8": "catalog:", "esbuild": "catalog:", "husky": "^9.1.7", "lint-staged": "^16.2.7", @@ -33,6 +32,10 @@ "test": "turbo test", "clean": "turbo clean", "typecheck": "turbo typecheck", + "knip": "pnpm dlx knip --config knip.jsonc", + "knip:strict": "pnpm dlx knip --config knip.strict.jsonc", + "knip:ci": "pnpm dlx knip --config knip.jsonc --cache --max-issues 797", + "knip:ci:github": "pnpm dlx knip --config knip.jsonc --cache --max-issues 797 --reporter github-actions", "test:e2e": "vitest run packages/core/e2e/e2e.test.ts packages/core/e2e/e2e-agent.test.ts", "test:e2e:nextjs-webpack:staged": "node scripts/test-staged-nextjs-webpack.mjs", "test:docs": "pnpm --filter @workflow/docs-typecheck test:docs", diff --git a/packages/ai/package.json b/packages/ai/package.json index 92eb3a22b9..52ffe33d64 100644 --- a/packages/ai/package.json +++ b/packages/ai/package.json @@ -68,8 +68,7 @@ }, "devDependencies": { "@workflow/tsconfig": "workspace:*", - "ai": "catalog:", - "workflow": "workspace:*" + "ai": "catalog:" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0", @@ -83,7 +82,6 @@ }, "dependencies": { "@ai-sdk/provider": "^3.0.0", - "@workflow/serde": "workspace:^", "zod": "catalog:" }, "optionalDependencies": { diff --git a/packages/next/package.json b/packages/next/package.json index 3e85d6135d..8831d53685 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -44,7 +44,6 @@ "devDependencies": { "@types/node": "catalog:", "@types/semver": "7.7.1", - "@types/watchpack": "2.4.4", "@workflow/tsconfig": "workspace:*", "next": "16.2.1" }, diff --git a/packages/typescript-plugin/package.json b/packages/typescript-plugin/package.json index a84aefd3ba..1c3040a6a1 100644 --- a/packages/typescript-plugin/package.json +++ b/packages/typescript-plugin/package.json @@ -36,7 +36,6 @@ "devDependencies": { "@types/node": "catalog:", "@vitest/coverage-v8": "catalog:", - "@workflow/core": "workspace:*", "@workflow/tsconfig": "workspace:*", "typescript": "catalog:", "vitest": "catalog:" diff --git a/packages/web-shared/package.json b/packages/web-shared/package.json index f3db650528..ac49846fae 100644 --- a/packages/web-shared/package.json +++ b/packages/web-shared/package.json @@ -47,23 +47,18 @@ "format": "biome format --write" }, "dependencies": { - "@tailwindcss/postcss": "4", "@workflow/core": "workspace:*", "@workflow/utils": "workspace:*", "@workflow/world": "workspace:*", - "class-variance-authority": "0.7.1", "clsx": "2.1.1", - "date-fns": "4.1.0", "lucide-react": "0.575.0", "react": "19.1.0", "react-dom": "19.1.0", "react-inspector": "9.0.0", "react-virtuoso": "4.18.1", - "shiki": "4.0.0", "sonner": "2.0.7", "streamdown": "2.3.0", - "tailwind-merge": "3.5.0", - "tailwindcss": "4" + "tailwind-merge": "3.5.0" }, "devDependencies": { "@biomejs/biome": "catalog:", diff --git a/packages/web-shared/postcss.config.mjs b/packages/web-shared/postcss.config.mjs deleted file mode 100644 index ba720fe55c..0000000000 --- a/packages/web-shared/postcss.config.mjs +++ /dev/null @@ -1,5 +0,0 @@ -const config = { - plugins: ['@tailwindcss/postcss'], -}; - -export default config; diff --git a/packages/web-shared/src/components/ui/alert.tsx b/packages/web-shared/src/components/ui/alert.tsx deleted file mode 100644 index 72325c6a89..0000000000 --- a/packages/web-shared/src/components/ui/alert.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import { cva, type VariantProps } from 'class-variance-authority'; -import * as React from 'react'; - -import { cn } from '../../lib/utils'; - -const alertVariants = cva( - 'relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4', - { - variants: { - variant: { - default: '', - destructive: - 'border-red-400 text-red-900 dark:border-red-700 [&>svg]:text-red-900', - }, - }, - defaultVariants: { - variant: 'default', - }, - } -); - -const Alert = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes & VariantProps ->(({ className, variant, ...props }, ref) => ( -
-)); -Alert.displayName = 'Alert'; - -const AlertTitle = React.forwardRef< - HTMLParagraphElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -AlertTitle.displayName = 'AlertTitle'; - -const AlertDescription = React.forwardRef< - HTMLParagraphElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -AlertDescription.displayName = 'AlertDescription'; - -export { Alert, AlertTitle, AlertDescription }; diff --git a/packages/web-shared/src/components/ui/card.tsx b/packages/web-shared/src/components/ui/card.tsx deleted file mode 100644 index a164743d85..0000000000 --- a/packages/web-shared/src/components/ui/card.tsx +++ /dev/null @@ -1,86 +0,0 @@ -'use client'; - -import * as React from 'react'; - -import { cn } from '../../lib/utils'; - -const Card = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -Card.displayName = 'Card'; - -const CardHeader = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardHeader.displayName = 'CardHeader'; - -const CardTitle = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardTitle.displayName = 'CardTitle'; - -const CardDescription = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardDescription.displayName = 'CardDescription'; - -const CardContent = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardContent.displayName = 'CardContent'; - -const CardFooter = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardFooter.displayName = 'CardFooter'; - -export { - Card, - CardHeader, - CardFooter, - CardTitle, - CardDescription, - CardContent, -}; diff --git a/packages/web/app/components/display-utils/page-size-dropdown.tsx b/packages/web/app/components/display-utils/page-size-dropdown.tsx deleted file mode 100644 index 58be6d0e74..0000000000 --- a/packages/web/app/components/display-utils/page-size-dropdown.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { - Select, - SelectContent, - SelectItem, - SelectTrigger, - SelectValue, -} from '~/components/ui/select'; - -interface PageSizeDropdownProps { - value: number; - onChange: (value: number) => void; - options?: number[]; -} - -export function PageSizeDropdown({ - value, - onChange, - options = [5, 10, 20, 50, 100], -}: PageSizeDropdownProps) { - return ( - - ); -} diff --git a/packages/web/app/components/display-utils/rerun-button.tsx b/packages/web/app/components/display-utils/rerun-button.tsx deleted file mode 100644 index 4d374c14dd..0000000000 --- a/packages/web/app/components/display-utils/rerun-button.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { RotateCw } from 'lucide-react'; -import { - Tooltip, - TooltipContent, - TooltipTrigger, -} from '~/components/ui/tooltip'; -import { Button } from '../ui/button'; - -interface RerunButtonProps { - canRerun: boolean; - rerunning: boolean; - rerunDisabledReason: string | null; - onRerun: () => void; -} - -export function RerunButton({ - canRerun, - rerunning, - rerunDisabledReason, - onRerun, -}: RerunButtonProps) { - return ( - - - - - - - - {rerunDisabledReason ? ( -

{rerunDisabledReason}

- ) : ( -

- This will start a new copy of the current run using the same - deployment, environment, and inputs. It will not affect the current - run. -

- )} -
-
- ); -} diff --git a/packages/web/app/components/display-utils/side-panel.tsx b/packages/web/app/components/display-utils/side-panel.tsx deleted file mode 100644 index 5ec735bb39..0000000000 --- a/packages/web/app/components/display-utils/side-panel.tsx +++ /dev/null @@ -1,44 +0,0 @@ -import { X } from 'lucide-react'; -import { Button } from '~/components/ui/button'; - -interface SidePanelProps { - isOpen: boolean; - onClose: () => void; - title: string; - children: React.ReactNode; -} - -export function SidePanel({ - isOpen, - onClose, - title, - children, -}: SidePanelProps) { - if (!isOpen) return null; - - return ( - <> - {/* Backdrop */} - -
-
{children}
-
- - ); -} diff --git a/packages/web/app/components/ui/alert-dialog.tsx b/packages/web/app/components/ui/alert-dialog.tsx index 9604caa195..a1ec601a41 100644 --- a/packages/web/app/components/ui/alert-dialog.tsx +++ b/packages/web/app/components/ui/alert-dialog.tsx @@ -9,14 +9,6 @@ function AlertDialog({ return ; } -function AlertDialogTrigger({ - ...props -}: React.ComponentProps) { - return ( - - ); -} - function AlertDialogPortal({ ...props }: React.ComponentProps) { @@ -154,9 +146,6 @@ function AlertDialogCancel({ export { AlertDialog, - AlertDialogPortal, - AlertDialogOverlay, - AlertDialogTrigger, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, diff --git a/packages/web/app/components/ui/badge.tsx b/packages/web/app/components/ui/badge.tsx index 648fc3091f..f67d45e47c 100644 --- a/packages/web/app/components/ui/badge.tsx +++ b/packages/web/app/components/ui/badge.tsx @@ -23,7 +23,7 @@ const badgeVariants = cva( } ); -export interface BadgeProps +interface BadgeProps extends React.HTMLAttributes, VariantProps {} @@ -33,4 +33,4 @@ function Badge({ className, variant, ...props }: BadgeProps) { ); } -export { Badge, badgeVariants }; +export { Badge }; diff --git a/packages/web/app/components/ui/card.tsx b/packages/web/app/components/ui/card.tsx index 01140f4f3a..a0428e89b7 100644 --- a/packages/web/app/components/ui/card.tsx +++ b/packages/web/app/components/ui/card.tsx @@ -17,45 +17,6 @@ const Card = React.forwardRef< )); Card.displayName = 'Card'; -const CardHeader = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardHeader.displayName = 'CardHeader'; - -const CardTitle = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardTitle.displayName = 'CardTitle'; - -const CardDescription = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardDescription.displayName = 'CardDescription'; - const CardContent = React.forwardRef< HTMLDivElement, React.HTMLAttributes @@ -64,23 +25,4 @@ const CardContent = React.forwardRef< )); CardContent.displayName = 'CardContent'; -const CardFooter = React.forwardRef< - HTMLDivElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( -
-)); -CardFooter.displayName = 'CardFooter'; - -export { - Card, - CardHeader, - CardFooter, - CardTitle, - CardDescription, - CardContent, -}; +export { Card, CardContent }; diff --git a/packages/web/app/components/ui/dropdown-menu.tsx b/packages/web/app/components/ui/dropdown-menu.tsx index 920f39237d..3c9e04cee4 100644 --- a/packages/web/app/components/ui/dropdown-menu.tsx +++ b/packages/web/app/components/ui/dropdown-menu.tsx @@ -1,5 +1,4 @@ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'; -import { Check, ChevronRight, Circle } from 'lucide-react'; import * as React from 'react'; import { cn } from '~/lib/utils'; @@ -8,52 +7,6 @@ const DropdownMenu = DropdownMenuPrimitive.Root; const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger; -const DropdownMenuGroup = DropdownMenuPrimitive.Group; - -const DropdownMenuPortal = DropdownMenuPrimitive.Portal; - -const DropdownMenuSub = DropdownMenuPrimitive.Sub; - -const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup; - -const DropdownMenuSubTrigger = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef & { - inset?: boolean; - } ->(({ className, inset, children, ...props }, ref) => ( - - {children} - - -)); -DropdownMenuSubTrigger.displayName = - DropdownMenuPrimitive.SubTrigger.displayName; - -const DropdownMenuSubContent = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -DropdownMenuSubContent.displayName = - DropdownMenuPrimitive.SubContent.displayName; - const DropdownMenuContent = React.forwardRef< React.ElementRef, React.ComponentPropsWithoutRef @@ -90,109 +43,9 @@ const DropdownMenuItem = React.forwardRef< )); DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName; -const DropdownMenuCheckboxItem = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, children, checked, ...props }, ref) => ( - - - - - - - {children} - -)); -DropdownMenuCheckboxItem.displayName = - DropdownMenuPrimitive.CheckboxItem.displayName; - -const DropdownMenuRadioItem = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, children, ...props }, ref) => ( - - - - - - - {children} - -)); -DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName; - -const DropdownMenuLabel = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef & { - inset?: boolean; - } ->(({ className, inset, ...props }, ref) => ( - -)); -DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName; - -const DropdownMenuSeparator = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName; - -const DropdownMenuShortcut = ({ - className, - ...props -}: React.HTMLAttributes) => { - return ( - - ); -}; -DropdownMenuShortcut.displayName = 'DropdownMenuShortcut'; - export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, - DropdownMenuCheckboxItem, - DropdownMenuRadioItem, - DropdownMenuLabel, - DropdownMenuSeparator, - DropdownMenuShortcut, - DropdownMenuGroup, - DropdownMenuPortal, - DropdownMenuSub, - DropdownMenuSubContent, - DropdownMenuSubTrigger, - DropdownMenuRadioGroup, }; diff --git a/packages/web/app/components/ui/input.tsx b/packages/web/app/components/ui/input.tsx deleted file mode 100644 index 210de5c93c..0000000000 --- a/packages/web/app/components/ui/input.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import * as React from 'react'; - -import { cn } from '~/lib/utils'; - -export interface InputProps - extends React.InputHTMLAttributes {} - -const Input = React.forwardRef( - ({ className, type, ...props }, ref) => { - return ( - - ); - } -); -Input.displayName = 'Input'; - -export { Input }; diff --git a/packages/web/app/components/ui/label.tsx b/packages/web/app/components/ui/label.tsx deleted file mode 100644 index 1bad783e3a..0000000000 --- a/packages/web/app/components/ui/label.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import * as LabelPrimitive from '@radix-ui/react-label'; -import { cva, type VariantProps } from 'class-variance-authority'; -import * as React from 'react'; - -import { cn } from '~/lib/utils'; - -const labelVariants = cva( - 'text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70' -); - -const Label = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef & - VariantProps ->(({ className, ...props }, ref) => ( - -)); -Label.displayName = LabelPrimitive.Root.displayName; - -export { Label }; diff --git a/packages/web/app/components/ui/select.tsx b/packages/web/app/components/ui/select.tsx index 8d83b8150b..3185e637e4 100644 --- a/packages/web/app/components/ui/select.tsx +++ b/packages/web/app/components/ui/select.tsx @@ -6,8 +6,6 @@ import { cn } from '~/lib/utils'; const Select = SelectPrimitive.Root; -const SelectGroup = SelectPrimitive.Group; - const SelectValue = SelectPrimitive.Value; const SelectTrigger = React.forwardRef< @@ -97,18 +95,6 @@ const SelectContent = React.forwardRef< )); SelectContent.displayName = SelectPrimitive.Content.displayName; -const SelectLabel = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -SelectLabel.displayName = SelectPrimitive.Label.displayName; - const SelectItem = React.forwardRef< React.ElementRef, React.ComponentPropsWithoutRef @@ -132,27 +118,4 @@ const SelectItem = React.forwardRef< )); SelectItem.displayName = SelectPrimitive.Item.displayName; -const SelectSeparator = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -SelectSeparator.displayName = SelectPrimitive.Separator.displayName; - -export { - Select, - SelectGroup, - SelectValue, - SelectTrigger, - SelectContent, - SelectLabel, - SelectItem, - SelectSeparator, - SelectScrollUpButton, - SelectScrollDownButton, -}; +export { Select, SelectValue, SelectTrigger, SelectContent, SelectItem }; diff --git a/packages/web/app/components/ui/switch.tsx b/packages/web/app/components/ui/switch.tsx deleted file mode 100644 index 98dc09743e..0000000000 --- a/packages/web/app/components/ui/switch.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import * as SwitchPrimitives from '@radix-ui/react-switch'; -import * as React from 'react'; - -import { cn } from '~/lib/utils'; - -const Switch = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - - - -)); -Switch.displayName = SwitchPrimitives.Root.displayName; - -export { Switch }; diff --git a/packages/web/app/components/ui/table.tsx b/packages/web/app/components/ui/table.tsx index e42bdab35d..5783620157 100644 --- a/packages/web/app/components/ui/table.tsx +++ b/packages/web/app/components/ui/table.tsx @@ -36,21 +36,6 @@ const TableBody = React.forwardRef< )); TableBody.displayName = 'TableBody'; -const TableFooter = React.forwardRef< - HTMLTableSectionElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( - tr]:last:border-b-0', - className - )} - {...props} - /> -)); -TableFooter.displayName = 'TableFooter'; - const TableRow = React.forwardRef< HTMLTableRowElement, React.HTMLAttributes @@ -93,25 +78,4 @@ const TableCell = React.forwardRef< )); TableCell.displayName = 'TableCell'; -const TableCaption = React.forwardRef< - HTMLTableCaptionElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( - -)); -TableCaption.displayName = 'TableCaption'; - -export { - Table, - TableHeader, - TableBody, - TableFooter, - TableHead, - TableRow, - TableCell, - TableCaption, -}; +export { Table, TableHeader, TableBody, TableHead, TableRow, TableCell }; diff --git a/packages/web/app/lib/url-state.ts b/packages/web/app/lib/url-state.ts deleted file mode 100644 index 235cd18141..0000000000 --- a/packages/web/app/lib/url-state.ts +++ /dev/null @@ -1,83 +0,0 @@ -import { useCallback } from 'react'; -import { useSearchParams } from 'react-router'; - -type SetValue = (value: string | null) => void; - -/** - * Generic hook for managing a single URL search parameter. - * Replaces the nuqs `useQueryState` pattern. - */ -function useUrlParam( - key: string, - defaultValue?: string -): [string | null, SetValue] { - const [searchParams, setSearchParams] = useSearchParams(); - const value = searchParams.get(key) ?? defaultValue ?? null; - - const setValue = useCallback( - (newValue: string | null) => { - setSearchParams( - (prev) => { - if (newValue === null || newValue === undefined) { - prev.delete(key); - } else { - prev.set(key, newValue); - } - return prev; - }, - { replace: true } - ); - }, - [key, setSearchParams] - ); - - return [value, setValue]; -} - -/** - * Hook to manage sidebar state in URL - */ -export function useSidebarState() { - return useUrlParam('sidebar'); -} - -/** - * Hook to manage theme state in URL - */ -export function useThemeState() { - return useUrlParam('theme', 'system'); -} - -/** - * Hook to manage tab selection state in URL - */ -export function useTabState(): [string, SetValue] { - const [value, setValue] = useUrlParam('tab', 'runs'); - return [value ?? 'runs', setValue]; -} - -/** - * Hook to manage individual navigation params - */ -export function useHookIdState() { - return useUrlParam('hookId'); -} - -export function useStepIdState() { - return useUrlParam('stepId'); -} - -export function useEventIdState() { - return useUrlParam('eventId'); -} - -export function useStreamIdState() { - return useUrlParam('streamId'); -} - -/** - * Hook to manage selected workflow ID for graph visualization - */ -export function useWorkflowIdState() { - return useUrlParam('workflowId'); -} diff --git a/packages/web/package.json b/packages/web/package.json index d3a0e5626f..22e9346aec 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -45,10 +45,8 @@ "@radix-ui/react-checkbox": "1.1.4", "@radix-ui/react-dialog": "1.1.15", "@radix-ui/react-dropdown-menu": "2.1.6", - "@radix-ui/react-label": "2.1.7", "@radix-ui/react-select": "2.2.6", "@radix-ui/react-slot": "1.1.1", - "@radix-ui/react-switch": "1.1.2", "@radix-ui/react-tabs": "^1.1.13", "@radix-ui/react-tooltip": "1.2.8", "@react-router/dev": "7.13.1", @@ -69,7 +67,6 @@ "cbor-x": "^1", "class-variance-authority": "0.7.1", "clsx": "2.1.1", - "cross-env": "^7.0.3", "date-fns": "4.1.0", "geist": "^1.7.0", "isbot": "^5", @@ -78,7 +75,6 @@ "react": "19.1.0", "react-dom": "19.1.0", "react-router": "7.13.1", - "shiki": "4.0.0", "sonner": "2.0.7", "tailwind-merge": "3.5.0", "tailwindcss": "4", diff --git a/packages/workflow/package.json b/packages/workflow/package.json index 914a209364..62c22c93c4 100644 --- a/packages/workflow/package.json +++ b/packages/workflow/package.json @@ -70,16 +70,13 @@ "@workflow/errors": "workspace:*", "@workflow/typescript-plugin": "workspace:*", "@workflow/utils": "workspace:*", - "ms": "2.1.3", "@workflow/next": "workspace:*", "@workflow/nest": "workspace:*", "@workflow/nitro": "workspace:*", "@workflow/nuxt": "workspace:*", - "@workflow/sveltekit": "workspace:*", - "@workflow/rollup": "workspace:*" + "@workflow/sveltekit": "workspace:*" }, "devDependencies": { - "@types/ms": "2.1.0", "@types/node": "catalog:", "@workflow/tsconfig": "workspace:*" }, diff --git a/packages/world-postgres/package.json b/packages/world-postgres/package.json index f961190ebe..6afd0180f5 100644 --- a/packages/world-postgres/package.json +++ b/packages/world-postgres/package.json @@ -62,7 +62,6 @@ "@testcontainers/postgresql": "11.12.0", "@types/node": "catalog:", "@types/pg": "8.20.0", - "@workflow/errors": "workspace:*", "@workflow/tsconfig": "workspace:*", "@workflow/world-testing": "workspace:*", "drizzle-kit": "0.31.9", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 29c70b0c42..d365c31bfe 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -75,9 +75,6 @@ importers: '@changesets/cli': specifier: ^2.29.8 version: 2.29.8(@types/node@24.6.2) - '@vitest/coverage-v8': - specifier: 'catalog:' - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@24.6.2)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.3)) esbuild: specifier: 'catalog:' version: 0.27.3 @@ -331,9 +328,9 @@ importers: '@opentelemetry/api': specifier: ^1.0.0 version: 1.9.0 - '@workflow/serde': + workflow: specifier: workspace:^ - version: link:../serde + version: link:../workflow zod: specifier: 'catalog:' version: 4.3.6 @@ -344,9 +341,6 @@ importers: ai: specifier: 'catalog:' version: 6.0.116(zod@4.3.6) - workflow: - specifier: workspace:* - version: link:../workflow optionalDependencies: '@ai-sdk/anthropic': specifier: ^3.0.0 @@ -764,9 +758,6 @@ importers: '@types/semver': specifier: 7.7.1 version: 7.7.1 - '@types/watchpack': - specifier: 2.4.4 - version: 2.4.4 '@workflow/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -825,7 +816,7 @@ importers: devDependencies: '@nuxt/module-builder': specifier: 1.0.2 - version: 1.0.2(@nuxt/cli@3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2))(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3)) + version: 1.0.2(@nuxt/cli@3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2))(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3)) '@nuxt/schema': specifier: 4.4.2 version: 4.4.2 @@ -931,9 +922,6 @@ importers: '@vitest/coverage-v8': specifier: 'catalog:' version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.3)) - '@workflow/core': - specifier: workspace:* - version: link:../core '@workflow/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -1031,18 +1019,12 @@ importers: '@radix-ui/react-dropdown-menu': specifier: 2.1.6 version: 2.1.6(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - '@radix-ui/react-label': - specifier: 2.1.7 - version: 2.1.7(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@radix-ui/react-select': specifier: 2.2.6 version: 2.2.6(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@radix-ui/react-slot': specifier: 1.1.1 version: 1.1.1(@types/react@19.1.13)(react@19.1.0) - '@radix-ui/react-switch': - specifier: 1.1.2 - version: 1.1.2(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@radix-ui/react-tabs': specifier: ^1.1.13 version: 1.1.13(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -1106,9 +1088,6 @@ importers: clsx: specifier: 2.1.1 version: 2.1.1 - cross-env: - specifier: ^7.0.3 - version: 7.0.3 date-fns: specifier: 4.1.0 version: 4.1.0 @@ -1136,9 +1115,6 @@ importers: react-router: specifier: 7.13.1 version: 7.13.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - shiki: - specifier: 4.0.0 - version: 4.0.0 sonner: specifier: 2.0.7 version: 2.0.7(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -1160,9 +1136,6 @@ importers: packages/web-shared: dependencies: - '@tailwindcss/postcss': - specifier: '4' - version: 4.1.13 '@workflow/core': specifier: workspace:* version: link:../core @@ -1172,15 +1145,9 @@ importers: '@workflow/world': specifier: workspace:* version: link:../world - class-variance-authority: - specifier: 0.7.1 - version: 0.7.1 clsx: specifier: 2.1.1 version: 2.1.1 - date-fns: - specifier: 4.1.0 - version: 4.1.0 lucide-react: specifier: 0.575.0 version: 0.575.0(react@19.1.0) @@ -1196,9 +1163,6 @@ importers: react-virtuoso: specifier: 4.18.1 version: 4.18.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - shiki: - specifier: 4.0.0 - version: 4.0.0 sonner: specifier: 2.0.7 version: 2.0.7(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -1208,9 +1172,6 @@ importers: tailwind-merge: specifier: 3.5.0 version: 3.5.0 - tailwindcss: - specifier: '4' - version: 4.1.13 devDependencies: '@biomejs/biome': specifier: 'catalog:' @@ -1266,9 +1227,6 @@ importers: '@workflow/nuxt': specifier: workspace:* version: link:../nuxt - '@workflow/rollup': - specifier: workspace:* - version: link:../rollup '@workflow/sveltekit': specifier: workspace:* version: link:../sveltekit @@ -1278,13 +1236,7 @@ importers: '@workflow/utils': specifier: workspace:* version: link:../utils - ms: - specifier: 2.1.3 - version: 2.1.3 devDependencies: - '@types/ms': - specifier: 2.1.0 - version: 2.1.0 '@types/node': specifier: 'catalog:' version: 22.19.0 @@ -1819,6 +1771,9 @@ importers: react-dom: specifier: 19.2.4 version: 19.2.4(react@19.2.4) + server-only: + specifier: ^0.0.1 + version: 0.0.1 shiki: specifier: 4.0.2 version: 4.0.2 @@ -6383,19 +6338,6 @@ packages: '@types/react': optional: true - '@radix-ui/react-switch@1.1.2': - resolution: {integrity: sha512-zGukiWHjEdBCRyXvKR6iXAQG6qXm2esuAD6kDOi9Cn+1X6ev3ASo4+CsYaD6Fov9r/AQFekqnD/7+V0Cs6/98g==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - '@radix-ui/react-switch@1.2.6': resolution: {integrity: sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==} peerDependencies: @@ -7041,10 +6983,6 @@ packages: '@shikijs/core@3.21.0': resolution: {integrity: sha512-AXSQu/2n1UIQekY8euBJlvFYZIw0PHY63jUzGbrOma4wPxzznJXTXkri+QcHeBNaFxiiOljKxxJkVSoB3PjbyA==} - '@shikijs/core@4.0.0': - resolution: {integrity: sha512-tvV94Dwyz4qFZ8R0MUaFx5Yptgy8yrloa4dwynEJDGjKz+8vqO8Q6FmPZL9W1gSzFHOUMOGQzIHK62aGourFxA==} - engines: {node: '>=20'} - '@shikijs/core@4.0.2': resolution: {integrity: sha512-hxT0YF4ExEqB8G/qFdtJvpmHXBYJ2lWW7qTHDarVkIudPFE6iCIrqdgWxGn5s+ppkGXI0aEGlibI0PAyzP3zlw==} engines: {node: '>=20'} @@ -7052,10 +6990,6 @@ packages: '@shikijs/engine-javascript@3.21.0': resolution: {integrity: sha512-ATwv86xlbmfD9n9gKRiwuPpWgPENAWCLwYCGz9ugTJlsO2kOzhOkvoyV/UD+tJ0uT7YRyD530x6ugNSffmvIiQ==} - '@shikijs/engine-javascript@4.0.0': - resolution: {integrity: sha512-+PEyTS+JTz2lLy2C1Dwwx6hzoehIzqxQYh5MEjv9V4JtSabx+bIkRHfQT+6DnBmPAplGH0exBknWeiJSXC7w1w==} - engines: {node: '>=20'} - '@shikijs/engine-javascript@4.0.2': resolution: {integrity: sha512-7PW0Nm49DcoUIQEXlJhNNBHyoGMjalRETTCcjMqEaMoJRLljy1Bi/EGV3/qLBgLKQejdspiiYuHGQW6dX94Nag==} engines: {node: '>=20'} @@ -7063,10 +6997,6 @@ packages: '@shikijs/engine-oniguruma@3.21.0': resolution: {integrity: sha512-OYknTCct6qiwpQDqDdf3iedRdzj6hFlOPv5hMvI+hkWfCKs5mlJ4TXziBG9nyabLwGulrUjHiCq3xCspSzErYQ==} - '@shikijs/engine-oniguruma@4.0.0': - resolution: {integrity: sha512-KXmq4b6Xw16+4+rz5M4NZMoe/tzs5kTOMSJz8+LCyxSrwmxwTBAM/ab85iSO2Gw79E47HkW4B9HPHUXhrNOivw==} - engines: {node: '>=20'} - '@shikijs/engine-oniguruma@4.0.2': resolution: {integrity: sha512-UpCB9Y2sUKlS9z8juFSKz7ZtysmeXCgnRF0dlhXBkmQnek7lAToPte8DkxmEYGNTMii72zU/lyXiCB6StuZeJg==} engines: {node: '>=20'} @@ -7074,18 +7004,10 @@ packages: '@shikijs/langs@3.21.0': resolution: {integrity: sha512-g6mn5m+Y6GBJ4wxmBYqalK9Sp0CFkUqfNzUy2pJglUginz6ZpWbaWjDB4fbQ/8SHzFjYbtU6Ddlp1pc+PPNDVA==} - '@shikijs/langs@4.0.0': - resolution: {integrity: sha512-dSAT6fBcnOcYZQMWZO8+OmzUKKm+OO0As/qZ3TXLiSy0JsCTEYz1TaX7TDupnYLz7dr0oF2DOTEgPocx1D3aFw==} - engines: {node: '>=20'} - '@shikijs/langs@4.0.2': resolution: {integrity: sha512-KaXby5dvoeuZzN0rYQiPMjFoUrz4hgwIE+D6Du9owcHcl6/g16/yT5BQxSW5cGt2MZBz6Hl0YuRqf12omRfUUg==} engines: {node: '>=20'} - '@shikijs/primitive@4.0.0': - resolution: {integrity: sha512-6K2zD7JTgsyFc2vM1rqy8eRGC8D5Hius3qzVONjq2lHMrqfTSn1HcGeJZiFPYSV9m3DQuBHncBbA5xe0hKSOkQ==} - engines: {node: '>=20'} - '@shikijs/primitive@4.0.2': resolution: {integrity: sha512-M6UMPrSa3fN5ayeJwFVl9qWofl273wtK1VG8ySDZ1mQBfhCpdd8nEx7nPZ/tk7k+TYcpqBZzj/AnwxT9lO+HJw==} engines: {node: '>=20'} @@ -7096,10 +7018,6 @@ packages: '@shikijs/themes@3.21.0': resolution: {integrity: sha512-BAE4cr9EDiZyYzwIHEk7JTBJ9CzlPuM4PchfcA5ao1dWXb25nv6hYsoDiBq2aZK9E3dlt3WB78uI96UESD+8Mw==} - '@shikijs/themes@4.0.0': - resolution: {integrity: sha512-xe42kvxOXan5ouXxULez6qwDNUJkoP6kicfg0wKuJBkeIaHLxZBZa2gEGYutL1q27DQZ5+XoR6caVX+E/aNR5A==} - engines: {node: '>=20'} - '@shikijs/themes@4.0.2': resolution: {integrity: sha512-mjCafwt8lJJaVSsQvNVrJumbnnj1RI8jbUKrPKgE6E3OvQKxnuRoBaYC51H4IGHePsGN/QtALglWBU7DoKDFnA==} engines: {node: '>=20'} @@ -7110,10 +7028,6 @@ packages: '@shikijs/types@3.21.0': resolution: {integrity: sha512-zGrWOxZ0/+0ovPY7PvBU2gIS9tmhSUUt30jAcNV0Bq0gb2S98gwfjIs1vxlmH5zM7/4YxLamT6ChlqqAJmPPjA==} - '@shikijs/types@4.0.0': - resolution: {integrity: sha512-LCnfBTtQKNtJyc1qMShZr2dJt1uxNI6pI0/YTc2DSNET91aUvnMGHUHsucVCC5AJVcv5XyBqk2NgYRwd20EjbA==} - engines: {node: '>=20'} - '@shikijs/types@4.0.2': resolution: {integrity: sha512-qzbeRooUTPnLE+sHD/Z8DStmaDgnbbc/pMrU203950aRqjX/6AFHeDYT+j00y2lPdz0ywJKx7o/7qnqTivtlXg==} engines: {node: '>=20'} @@ -7847,9 +7761,6 @@ packages: '@types/geojson@7946.0.16': resolution: {integrity: sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==} - '@types/graceful-fs@4.1.9': - resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} - '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -7966,9 +7877,6 @@ packages: '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - '@types/watchpack@2.4.4': - resolution: {integrity: sha512-SbuSavsPxfOPZwVHBgQUVuzYBe6+8KL7dwiJLXaj5rmv3DxktOMwX5WP1J6UontwUbewjVoc7pCgZvqy6rPn+A==} - '@typescript-eslint/types@8.46.4': resolution: {integrity: sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -9310,11 +9218,6 @@ packages: engines: {node: '>=20'} hasBin: true - cross-env@7.0.3: - resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} - engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} - hasBin: true - cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -13676,6 +13579,9 @@ packages: server-destroy@1.0.1: resolution: {integrity: sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==} + server-only@0.0.1: + resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} + set-cookie-parser@2.7.2: resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} @@ -13708,10 +13614,6 @@ packages: shiki@3.21.0: resolution: {integrity: sha512-N65B/3bqL/TI2crrXr+4UivctrAGEjmsib5rPMMPpFp1xAx/w03v8WZ9RDDFYteXoEgY7qZ4HGgl5KBIu1153w==} - shiki@4.0.0: - resolution: {integrity: sha512-rjKoiw30ZaFsM0xnPPwxco/Jftz/XXqZkcQZBTX4LGheDw8gCDEH87jdgaKDEG3FZO2bFOK27+sR/sDHhbBXfg==} - engines: {node: '>=20'} - shiki@4.0.2: resolution: {integrity: sha512-eAVKTMedR5ckPo4xne/PjYQYrU3qx78gtJZ+sHlXEg5IHhhoQhMfZVzetTYuaJS0L2Ef3AcCRzCHV8T0WI6nIQ==} engines: {node: '>=20'} @@ -17969,7 +17871,7 @@ snapshots: transitivePeerDependencies: - magicast - '@nuxt/module-builder@1.0.2(@nuxt/cli@3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2))(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3))': + '@nuxt/module-builder@1.0.2(@nuxt/cli@3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2))(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3))': dependencies: '@nuxt/cli': 3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2) citty: 0.1.6 @@ -17977,14 +17879,14 @@ snapshots: defu: 6.1.4 jiti: 2.6.1 magic-regexp: 0.10.0 - mkdist: 2.4.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) + mkdist: 2.4.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) mlly: 1.8.0 pathe: 2.0.3 pkg-types: 2.3.0 tsconfck: 3.1.6(typescript@5.9.3) typescript: 5.9.3 - unbuild: 3.6.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) - vue-sfc-transformer: 0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)) + unbuild: 3.6.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) + vue-sfc-transformer: 0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)) transitivePeerDependencies: - '@vue/compiler-core' - esbuild @@ -19552,15 +19454,6 @@ snapshots: optionalDependencies: '@types/react': 19.1.13 - '@radix-ui/react-label@2.1.7(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': - dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) - optionalDependencies: - '@types/react': 19.1.13 - '@types/react-dom': 19.1.9(@types/react@19.1.13) - '@radix-ui/react-label@2.1.7(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': dependencies: '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) @@ -20405,21 +20298,6 @@ snapshots: optionalDependencies: '@types/react': 19.1.13 - '@radix-ui/react-switch@1.1.2(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': - dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.13)(react@19.1.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.1.13)(react@19.1.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.1.13)(react@19.1.0) - '@radix-ui/react-use-previous': 1.1.0(@types/react@19.1.13)(react@19.1.0) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.1.13)(react@19.1.0) - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) - optionalDependencies: - '@types/react': 19.1.13 - '@types/react-dom': 19.1.9(@types/react@19.1.13) - '@radix-ui/react-switch@1.2.6(@types/react-dom@19.1.9(@types/react@19.1.13))(@types/react@19.1.13)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': dependencies: '@radix-ui/primitive': 1.1.3 @@ -21268,14 +21146,6 @@ snapshots: '@types/hast': 3.0.4 hast-util-to-html: 9.0.5 - '@shikijs/core@4.0.0': - dependencies: - '@shikijs/primitive': 4.0.0 - '@shikijs/types': 4.0.0 - '@shikijs/vscode-textmate': 10.0.2 - '@types/hast': 3.0.4 - hast-util-to-html: 9.0.5 - '@shikijs/core@4.0.2': dependencies: '@shikijs/primitive': 4.0.2 @@ -21290,12 +21160,6 @@ snapshots: '@shikijs/vscode-textmate': 10.0.2 oniguruma-to-es: 4.3.4 - '@shikijs/engine-javascript@4.0.0': - dependencies: - '@shikijs/types': 4.0.0 - '@shikijs/vscode-textmate': 10.0.2 - oniguruma-to-es: 4.3.4 - '@shikijs/engine-javascript@4.0.2': dependencies: '@shikijs/types': 4.0.2 @@ -21307,11 +21171,6 @@ snapshots: '@shikijs/types': 3.21.0 '@shikijs/vscode-textmate': 10.0.2 - '@shikijs/engine-oniguruma@4.0.0': - dependencies: - '@shikijs/types': 4.0.0 - '@shikijs/vscode-textmate': 10.0.2 - '@shikijs/engine-oniguruma@4.0.2': dependencies: '@shikijs/types': 4.0.2 @@ -21321,20 +21180,10 @@ snapshots: dependencies: '@shikijs/types': 3.21.0 - '@shikijs/langs@4.0.0': - dependencies: - '@shikijs/types': 4.0.0 - '@shikijs/langs@4.0.2': dependencies: '@shikijs/types': 4.0.2 - '@shikijs/primitive@4.0.0': - dependencies: - '@shikijs/types': 4.0.0 - '@shikijs/vscode-textmate': 10.0.2 - '@types/hast': 3.0.4 - '@shikijs/primitive@4.0.2': dependencies: '@shikijs/types': 4.0.2 @@ -21354,10 +21203,6 @@ snapshots: dependencies: '@shikijs/types': 3.21.0 - '@shikijs/themes@4.0.0': - dependencies: - '@shikijs/types': 4.0.0 - '@shikijs/themes@4.0.2': dependencies: '@shikijs/types': 4.0.2 @@ -21372,11 +21217,6 @@ snapshots: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 - '@shikijs/types@4.0.0': - dependencies: - '@shikijs/vscode-textmate': 10.0.2 - '@types/hast': 3.0.4 - '@shikijs/types@4.0.2': dependencies: '@shikijs/vscode-textmate': 10.0.2 @@ -22352,10 +22192,6 @@ snapshots: '@types/geojson@7946.0.16': {} - '@types/graceful-fs@4.1.9': - dependencies: - '@types/node': 22.19.0 - '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 @@ -22477,11 +22313,6 @@ snapshots: '@types/unist@3.0.3': {} - '@types/watchpack@2.4.4': - dependencies: - '@types/graceful-fs': 4.1.9 - '@types/node': 22.19.0 - '@typescript-eslint/types@8.46.4': {} '@ungap/structured-clone@1.3.0': {} @@ -22676,20 +22507,6 @@ snapshots: tinyrainbow: 3.0.3 vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@22.19.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.3) - '@vitest/coverage-v8@4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@24.6.2)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.3))': - dependencies: - '@bcoe/v8-coverage': 1.0.2 - '@vitest/utils': 4.0.18 - ast-v8-to-istanbul: 0.3.12 - istanbul-lib-coverage: 3.2.2 - istanbul-lib-report: 3.0.1 - istanbul-reports: 3.2.0 - magicast: 0.5.1 - obug: 2.1.1 - std-env: 3.10.0 - tinyrainbow: 3.0.3 - vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@24.6.2)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.3) - '@vitest/expect@3.2.4': dependencies: '@types/chai': 5.2.2 @@ -24226,10 +24043,6 @@ snapshots: '@epic-web/invariant': 1.0.0 cross-spawn: 7.0.6 - cross-env@7.0.3: - dependencies: - cross-spawn: 7.0.6 - cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -27445,7 +27258,7 @@ snapshots: mkdirp@3.0.1: {} - mkdist@2.4.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)): + mkdist@2.4.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)): dependencies: autoprefixer: 10.4.21(postcss@8.5.6) citty: 0.1.6 @@ -27463,7 +27276,7 @@ snapshots: optionalDependencies: typescript: 5.9.3 vue: 3.5.30(typescript@5.9.3) - vue-sfc-transformer: 0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)) + vue-sfc-transformer: 0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)) mlly@1.8.0: dependencies: @@ -30302,6 +30115,8 @@ snapshots: server-destroy@1.0.1: {} + server-only@0.0.1: {} + set-cookie-parser@2.7.2: {} set-cookie-parser@3.1.0: {} @@ -30389,17 +30204,6 @@ snapshots: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 - shiki@4.0.0: - dependencies: - '@shikijs/core': 4.0.0 - '@shikijs/engine-javascript': 4.0.0 - '@shikijs/engine-oniguruma': 4.0.0 - '@shikijs/langs': 4.0.0 - '@shikijs/themes': 4.0.0 - '@shikijs/types': 4.0.0 - '@shikijs/vscode-textmate': 10.0.2 - '@types/hast': 3.0.4 - shiki@4.0.2: dependencies: '@shikijs/core': 4.0.2 @@ -31166,7 +30970,7 @@ snapshots: ultrahtml@1.6.0: {} - unbuild@3.6.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)): + unbuild@3.6.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)): dependencies: '@rollup/plugin-alias': 5.1.1(rollup@4.53.2) '@rollup/plugin-commonjs': 28.0.9(rollup@4.53.2) @@ -31182,7 +30986,7 @@ snapshots: hookable: 5.5.3 jiti: 2.6.1 magic-string: 0.30.21 - mkdist: 2.4.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) + mkdist: 2.4.1(typescript@5.9.3)(vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) mlly: 1.8.0 pathe: 2.0.3 pkg-types: 2.3.0 @@ -31978,11 +31782,11 @@ snapshots: optionalDependencies: '@vue/compiler-sfc': 3.5.30 - vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.4)(vue@3.5.30(typescript@5.9.3)): + vue-sfc-transformer@0.1.17(@vue/compiler-core@3.5.30)(esbuild@0.27.3)(vue@3.5.30(typescript@5.9.3)): dependencies: '@babel/parser': 7.28.5 '@vue/compiler-core': 3.5.30 - esbuild: 0.27.4 + esbuild: 0.27.3 vue: 3.5.30(typescript@5.9.3) vue@3.5.30(typescript@5.9.3): diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 4bc99bd843..c95e6e534e 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -7,7 +7,6 @@ packages: catalog: "@biomejs/biome": ^2.4.4 "@swc/core": 1.15.3 - "@types/json-schema": ^7.0.15 "@types/node": 22.19.0 "@vercel/functions": ^3.4.3 "@vercel/oidc": 3.2.0 diff --git a/workbench/nextjs-turbopack/package.json b/workbench/nextjs-turbopack/package.json index 6f298210ea..f857f20cea 100644 --- a/workbench/nextjs-turbopack/package.json +++ b/workbench/nextjs-turbopack/package.json @@ -39,6 +39,7 @@ "radix-ui": "1.4.3", "react": "19.2.4", "react-dom": "19.2.4", + "server-only": "^0.0.1", "shiki": "4.0.2", "streamdown": "2.4.0", "tailwind-merge": "3.4.0",