1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-05 11:13:44 +00:00
Files
browser/libs/common/tsconfig.lib.json
addisonbeck 57b7218151 nx: add a project.json to @bitwarden/common
This commit adds Nx integration to @bitwarden/common using the nx:run-script
executor as a temporary facade. This approach allows us to get 'nx build @bitwarden/common'
commands working immediately without requiring architectural changes to resolve
circular dependencies and cross-library coupling.

IMPORTANT: This is intentionally a hack solution. The real benefits of Nx
(proper dependency boundaries, build optimization, accurate dependency graph,
tree-shaking friendly architecture) require fixing the underlying circular
dependencies between @bitwarden/common, state-test-utils, and key-management
libraries first.

When properly implemented, the project.json will likely use:
- @nx/js:tsc executor instead of nx:run-script
- Proper dependsOn configuration for build dependencies
- Clean sourceRoot and include/exclude patterns
- Elimination of the ../key-management/src/index.ts cross-library include
- Resolution of the circular dependency chain

Even as a facade, this gives us immediate workflow benefits: unified 'nx build'
commands across the monorepo, Nx caching and parallelization for existing scripts,
and dependency graph visualization. It also establishes the project.json structure
and Nx patterns we'll need when we tackle the architectural refactoring. This lets
the team start using Nx commands today while we work on the harder problem of
untangling library dependencies in the background.
2025-09-09 06:43:43 -04:00

11 lines
248 B
JSON

{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "../../dist/out-tsc",
"declaration": true,
"types": ["node"]
},
"include": ["src/**/*.ts"],
"exclude": ["jest.config.js", "src/**/*.spec.ts", "**/*.stories.ts"]
}