mirror of
https://github.com/bitwarden/browser.git
synced 2025-12-05 09:14:28 +01:00
* feat(nx): add basic-lib generator for streamlined library creation This adds a new nx-plugin library with a generator for creating "common" type Bitwarden libs. It is set up to accept a lib name, description, team, and directory. It then - Creates a folder in the directory (default to libs) - Sets up complete library scaffolding: - README with team ownership - Build, lint and test task configuration - Test infrastructure - Configures TypeScript path mapping - Updates CODEOWNERS with team ownership - Runs npm i This will make library creation more consistent and reduce manual boilerplate setup. The plugin design itself was generated by `npx nx g plugin`. This means we used a plugin to generate a plugin that exports generators. To create our generator generator, we first needed a generator. * fix(dirt/card): correct tsconfig path in jest configuration Fix the relative path to tsconfig.base in the dirt/card library's Jest config. The path was incorrectly using four parent directory traversals (../../../../) when only three (../../../) were needed to reach the project root. * chore(codeowners): clarify some nx ownership stuff
43 lines
1018 B
JSON
43 lines
1018 B
JSON
{
|
|
"$schema": "./node_modules/nx/schemas/nx-schema.json",
|
|
"cacheDirectory": ".nx/cache",
|
|
"defaultBase": "main",
|
|
"namedInputs": {
|
|
"default": ["{projectRoot}/**/*", "sharedGlobals"],
|
|
"production": ["default", "!{projectRoot}/**/*.spec.ts", "!{projectRoot}/tsconfig.spec.json"],
|
|
"sharedGlobals": ["{workspaceRoot}/tsconfig.base.json", "{workspaceRoot}/package.json"]
|
|
},
|
|
"plugins": [
|
|
{
|
|
"plugin": "@nx/js",
|
|
"options": {
|
|
"compiler": "tsc",
|
|
"configName": "tsconfig.lib.json",
|
|
"targetName": "build"
|
|
}
|
|
},
|
|
{
|
|
"plugin": "@nx/jest/plugin",
|
|
"options": {
|
|
"targetName": "test"
|
|
}
|
|
},
|
|
{
|
|
"plugin": "@nx/eslint/plugin",
|
|
"options": {
|
|
"targetName": "lint"
|
|
}
|
|
},
|
|
"@bitwarden/nx-plugin"
|
|
],
|
|
"parallel": 4,
|
|
"targetDefaults": {
|
|
"build": {
|
|
"dependsOn": ["^build"],
|
|
"inputs": ["production", "^production"],
|
|
"outputs": ["{options.outputPath}"],
|
|
"cache": true
|
|
}
|
|
}
|
|
}
|