mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-21 21:09:49 +08:00
The local dashboard evaluates a project's hexclave.config.ts in a plain Node
context via jiti. When a config imported a value (e.g. defineStackConfig) from a
framework package like @stackframe/stack / @hexclave/next, jiti executed the
whole SDK (React, server-only, Next internals) and threw, surfacing only as
"Failed to register development environment session (500)".
- Catch jiti load failures in readConfigFile and rethrow a helpful message that
points at the lightweight import path.
- Add a side-effect-free `./config` subpath to the framework packages
(@hexclave/{js,next,react,tanstack-start}/config) that re-exports
defineHexclaveConfig/defineStackConfig + the HexclaveConfig type from
@hexclave/shared/config, with no framework runtime. Users directly depend on
these packages, so the subpath resolves under pnpm strict mode (unlike the
transitive @hexclave/shared/config).
- Point the setup prompt, hand-written docs (docs-mintlify), and the renderer
that auto-writes config files at the new `<pkg>/config` path. Legacy
@stackframe/* packages predate the subpath, so they keep their root import.
Existing config files that import from a package root are upgraded to the
/config path on their next dashboard/CLI sync.
99 lines
2.6 KiB
JSON
99 lines
2.6 KiB
JSON
{
|
|
"//": "THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template (FOR package.json FILES, PLEASE EDIT package-template.json)",
|
|
"name": "@hexclave/js",
|
|
"version": "1.0.5",
|
|
"repository": "https://github.com/hexclave/hexclave",
|
|
"sideEffects": false,
|
|
"main": "./dist/index.js",
|
|
"types": "./dist/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"import": {
|
|
"default": "./dist/esm/index.js"
|
|
},
|
|
"require": {
|
|
"default": "./dist/index.js"
|
|
}
|
|
},
|
|
"./config": {
|
|
"types": "./dist/config.d.ts",
|
|
"import": {
|
|
"default": "./dist/esm/config.js"
|
|
},
|
|
"require": {
|
|
"default": "./dist/config.js"
|
|
}
|
|
},
|
|
"./convex.config": {
|
|
"types": "./dist/integrations/convex/component/convex.config.d.ts",
|
|
"import": {
|
|
"default": "./dist/esm/integrations/convex/component/convex.config.js"
|
|
},
|
|
"require": {
|
|
"default": "./dist/integrations/convex/component/convex.config.js"
|
|
}
|
|
},
|
|
"./convex-auth.config": {
|
|
"types": "./dist/integrations/convex.d.ts",
|
|
"import": {
|
|
"default": "./dist/esm/integrations/convex.js"
|
|
},
|
|
"require": {
|
|
"default": "./dist/integrations/convex.js"
|
|
}
|
|
}
|
|
},
|
|
"homepage": "https://hexclave.com",
|
|
"scripts": {
|
|
"typecheck": "tsc --noEmit",
|
|
"clean": "rimraf dist && rimraf node_modules",
|
|
"lint": "eslint --ext .tsx,.ts .",
|
|
"build": "rimraf dist && tsdown",
|
|
"dev": "tsdown --watch"
|
|
},
|
|
"files": [
|
|
"README.md",
|
|
"dist",
|
|
"src",
|
|
"CHANGELOG.md",
|
|
"LICENSE"
|
|
],
|
|
"dependencies": {
|
|
"@hookform/resolvers": "^5.2.2",
|
|
"@simplewebauthn/browser": "^13.2.2",
|
|
"@hexclave/shared": "workspace:*",
|
|
"@tanstack/react-table": "^8.21.3",
|
|
"color": "^5.0.3",
|
|
"cookie": "^1.1.1",
|
|
"jose": "^6.1.3",
|
|
"js-cookie": "^3.0.5",
|
|
"oauth4webapi": "^3.8.3",
|
|
"@oslojs/otp": "^1.1.0",
|
|
"qrcode": "^1.5.4",
|
|
"rrweb": "^1.1.3",
|
|
"tsx": "^4.21.0",
|
|
"yup": "^1.7.1"
|
|
},
|
|
"devDependencies": {
|
|
"@quetzallabs/i18n": "^0.1.19",
|
|
"@types/color": "^3.0.6",
|
|
"@types/cookie": "^0.6.0",
|
|
"@types/js-cookie": "^3.0.6",
|
|
"@types/qrcode": "^1.5.5",
|
|
"@types/react-avatar-editor": "^13.0.3",
|
|
"autoprefixer": "^10.4.17",
|
|
"chokidar-cli": "^3.0.0",
|
|
"esbuild": "^0.20.2",
|
|
"i18next": "^23.14.0",
|
|
"i18next-parser": "^9.0.2",
|
|
"postcss": "^8.4.38",
|
|
"postcss-nested": "^6.0.1",
|
|
"react": "^19.0.0",
|
|
"rimraf": "^6.1.2",
|
|
"tailwindcss": "^3.4.4",
|
|
"tsdown": "^0.20.3",
|
|
"convex": "^1.27.0"
|
|
}
|
|
}
|