Files
vercel__workflow/packages/web/package.json
Karthik Kalyan cdfac39e07 web: construct worlds explicitly instead of via static-injection stub (#2804)
* web: construct worlds explicitly instead of via static-injection stub

Since #2752, createWorld() from @workflow/core/runtime is a stub that
throws unless a framework build plugin aliases it to a world package.
The CLI was migrated to construct worlds directly, but @workflow/web
still called the stub, so 'workflow web' crashed with 'Workflow target
world was not statically injected' for local and postgres backends
(the vercel path was unaffected since it constructs the world directly).

Mirror the CLI: import the local world statically and resolve any other
configured world package from the inspected project's directory.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* web: fall back to default.createWorld for CJS world packages

Review feedback: import() of a require-resolved CJS entry relies on
cjs-module-lexer to surface named exports; fall back to
mod.default.createWorld when detection fails. Mirrored in the CLI in #2806.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 15:47:51 -07:00

93 lines
2.4 KiB
JSON

{
"name": "@workflow/web",
"description": "Workflow Observability UI",
"version": "5.0.0-beta.27",
"type": "module",
"private": false,
"files": [
"build",
"server.js",
"server.d.ts",
"package.json"
],
"exports": {
"./server": {
"types": "./server.d.ts",
"default": "./server.js"
},
"./package.json": "./package.json"
},
"publishConfig": {
"access": "public"
},
"license": "Apache-2.0",
"repository": {
"type": "git",
"url": "https://github.com/vercel/workflow.git",
"directory": "packages/web"
},
"scripts": {
"dev": "react-router dev",
"build": "react-router build",
"clean": "rm -rf build .react-router",
"start": "node server.js",
"lint": "biome check",
"format": "biome format --write",
"test": "vitest run"
},
"dependencies": {
"@workflow/world-local": "workspace:*",
"express": "^5.2.1"
},
"devDependencies": {
"@biomejs/biome": "catalog:",
"@radix-ui/react-alert-dialog": "1.1.5",
"@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",
"@react-router/express": "7.13.1",
"@react-router/node": "7.13.1",
"@tailwindcss/vite": "4",
"@testing-library/react": "^16.3.0",
"@types/express": "^5",
"@types/node": "catalog:",
"@types/react": "19",
"@types/react-dom": "19",
"@vercel/react-router": "1.2.6",
"@workflow/core": "workspace:*",
"@workflow/errors": "workspace:*",
"@workflow/utils": "workspace:*",
"@workflow/web-shared": "workspace:*",
"@workflow/world": "workspace:*",
"@workflow/world-vercel": "workspace:*",
"@xyflow/react": "12.10.1",
"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",
"jsdom": "^26",
"lucide-react": "0.575.0",
"next-themes": "0.4.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",
"typescript": "catalog:",
"vite": "^6",
"vitest": "^3"
}
}