@lenne.tech/cli 1.9.6 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +88 -3
- package/build/commands/config/validate.js +2 -0
- package/build/commands/frontend/convert-mode.js +198 -0
- package/build/commands/fullstack/convert-mode.js +368 -0
- package/build/commands/fullstack/init.js +150 -4
- package/build/commands/fullstack/update.js +177 -0
- package/build/commands/server/add-property.js +29 -2
- package/build/commands/server/convert-mode.js +197 -0
- package/build/commands/server/create.js +41 -3
- package/build/commands/server/module.js +58 -25
- package/build/commands/server/object.js +26 -5
- package/build/commands/server/permissions.js +20 -6
- package/build/commands/server/test.js +7 -1
- package/build/commands/status.js +94 -3
- package/build/config/vendor-frontend-runtime-deps.json +4 -0
- package/build/config/vendor-runtime-deps.json +9 -0
- package/build/extensions/api-mode.js +19 -3
- package/build/extensions/frontend-helper.js +652 -0
- package/build/extensions/server.js +1475 -3
- package/build/lib/framework-detection.js +167 -0
- package/build/lib/frontend-framework-detection.js +129 -0
- package/build/templates/nest-server-module/inputs/template-create.input.ts.ejs +1 -1
- package/build/templates/nest-server-module/inputs/template.input.ts.ejs +1 -1
- package/build/templates/nest-server-module/outputs/template-fac-result.output.ts.ejs +1 -1
- package/build/templates/nest-server-module/template.controller.ts.ejs +1 -1
- package/build/templates/nest-server-module/template.model.ts.ejs +1 -1
- package/build/templates/nest-server-module/template.module.ts.ejs +1 -1
- package/build/templates/nest-server-module/template.resolver.ts.ejs +1 -1
- package/build/templates/nest-server-module/template.service.ts.ejs +1 -1
- package/build/templates/nest-server-object/template-create.input.ts.ejs +1 -1
- package/build/templates/nest-server-object/template.input.ts.ejs +1 -1
- package/build/templates/nest-server-object/template.object.ts.ejs +1 -1
- package/build/templates/nest-server-tests/tests.e2e-spec.ts.ejs +1 -1
- package/docs/LT-ECOSYSTEM-GUIDE.md +973 -0
- package/docs/VENDOR-MODE-WORKFLOW.md +471 -0
- package/docs/commands.md +196 -0
- package/docs/lt.config.md +9 -7
- package/package.json +17 -8
package/docs/lt.config.md
CHANGED
|
@@ -52,7 +52,7 @@ Configuration files are searched from the **current directory up to the root** (
|
|
|
52
52
|
### Example: Monorepo Structure
|
|
53
53
|
|
|
54
54
|
```
|
|
55
|
-
/
|
|
55
|
+
$HOME/
|
|
56
56
|
├── lt.config.json # Global defaults
|
|
57
57
|
└── projects/
|
|
58
58
|
└── my-monorepo/
|
|
@@ -64,10 +64,10 @@ Configuration files are searched from the **current directory up to the root** (
|
|
|
64
64
|
└── lt.config.yaml # App-specific settings
|
|
65
65
|
```
|
|
66
66
|
|
|
67
|
-
When running `lt server module` in
|
|
68
|
-
1.
|
|
69
|
-
2.
|
|
70
|
-
3.
|
|
67
|
+
When running `lt server module` in `$HOME/projects/my-monorepo/projects/api/`:
|
|
68
|
+
1. `$HOME/lt.config.json` is loaded first
|
|
69
|
+
2. `$HOME/projects/my-monorepo/lt.config.json` is merged (overrides parent)
|
|
70
|
+
3. `$HOME/projects/my-monorepo/projects/api/lt.config.json` is merged (overrides all)
|
|
71
71
|
|
|
72
72
|
## Configuration Structure
|
|
73
73
|
|
|
@@ -571,6 +571,8 @@ Creates a new fullstack workspace with API and frontend.
|
|
|
571
571
|
| `commands.fullstack.frontendBranch` | `string` | - | Branch of frontend starter to use (ng-base-starter or nuxt-base-starter) |
|
|
572
572
|
| `commands.fullstack.frontendCopy` | `string` | - | Path to local frontend template directory to copy instead of cloning |
|
|
573
573
|
| `commands.fullstack.frontendLink` | `string` | - | Path to local frontend template directory to symlink (fastest, changes affect original) |
|
|
574
|
+
| `commands.fullstack.frameworkMode` | `'npm'` \| `'vendor'` | `'npm'` | Backend framework consumption mode (npm dependency vs. vendored core in `src/core/`) |
|
|
575
|
+
| `commands.fullstack.frontendFrameworkMode` | `'npm'` \| `'vendor'` | `'npm'` | Frontend framework consumption mode (npm dependency vs. vendored module in `app/core/`) |
|
|
574
576
|
| `commands.fullstack.git` | `boolean` | - | Push initial commit to remote repository (git is always initialized with `dev` branch) |
|
|
575
577
|
| `commands.fullstack.gitLink` | `string` | - | Git remote repository URL (required when `git` is true) |
|
|
576
578
|
|
|
@@ -1075,7 +1077,7 @@ meta:
|
|
|
1075
1077
|
|
|
1076
1078
|
Set a value to `null` to remove it from parent configurations and use the default:
|
|
1077
1079
|
|
|
1078
|
-
**Parent config (
|
|
1080
|
+
**Parent config (`$HOME/lt.config.json`):**
|
|
1079
1081
|
```json
|
|
1080
1082
|
{
|
|
1081
1083
|
"commands": {
|
|
@@ -1088,7 +1090,7 @@ Set a value to `null` to remove it from parent configurations and use the defaul
|
|
|
1088
1090
|
}
|
|
1089
1091
|
```
|
|
1090
1092
|
|
|
1091
|
-
**Child config (
|
|
1093
|
+
**Child config (`$HOME/project/lt.config.json`):**
|
|
1092
1094
|
```json
|
|
1093
1095
|
{
|
|
1094
1096
|
"commands": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lenne.tech/cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.11.0",
|
|
4
4
|
"description": "lenne.Tech CLI: lt",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"lenne.Tech",
|
|
@@ -23,8 +23,10 @@
|
|
|
23
23
|
"build": "npm run lint && npm run test && npm run clean-build && npm run compile && npm run copy-templates",
|
|
24
24
|
"clean-build": "npx rimraf ./build",
|
|
25
25
|
"compile": "tsc -p .",
|
|
26
|
-
"copy-templates": "npx shx cp -R ./src/templates ./build/templates",
|
|
26
|
+
"copy-templates": "npx shx cp -R ./src/templates ./build/templates && npx shx cp -R ./src/config ./build/config",
|
|
27
27
|
"coverage": "jest --coverage",
|
|
28
|
+
"test:vendor-init": "bash scripts/test-vendor-init.sh",
|
|
29
|
+
"test:frontend-vendor-init": "bash scripts/test-frontend-vendor-init.sh",
|
|
28
30
|
"format": "prettier --write 'src/**/*.{js,ts,tsx,json}' '!src/templates/**/*'",
|
|
29
31
|
"lint": "eslint './src/**/*.{ts,js,vue}'",
|
|
30
32
|
"lint:fix": "eslint './src/**/*.{ts,js,vue}' --fix",
|
|
@@ -51,9 +53,11 @@
|
|
|
51
53
|
"bin"
|
|
52
54
|
],
|
|
53
55
|
"dependencies": {
|
|
54
|
-
"@aws-sdk/client-s3": "3.
|
|
56
|
+
"@aws-sdk/client-s3": "3.1029.0",
|
|
55
57
|
"@lenne.tech/cli-plugin-helper": "0.0.14",
|
|
58
|
+
"axios": "1.15.0",
|
|
56
59
|
"bcrypt": "6.0.0",
|
|
60
|
+
"ejs": "5.0.1",
|
|
57
61
|
"glob": "13.0.6",
|
|
58
62
|
"gluegun": "5.2.2",
|
|
59
63
|
"js-sha256": "0.11.1",
|
|
@@ -71,14 +75,14 @@
|
|
|
71
75
|
"@types/jest": "30.0.0",
|
|
72
76
|
"@types/js-yaml": "4.0.9",
|
|
73
77
|
"@types/lodash": "4.17.24",
|
|
74
|
-
"@types/node": "25.
|
|
75
|
-
"@typescript-eslint/eslint-plugin": "8.58.
|
|
76
|
-
"@typescript-eslint/parser": "8.58.
|
|
78
|
+
"@types/node": "25.6.0",
|
|
79
|
+
"@typescript-eslint/eslint-plugin": "8.58.1",
|
|
80
|
+
"@typescript-eslint/parser": "8.58.1",
|
|
77
81
|
"eslint": "9.39.4",
|
|
78
82
|
"eslint-config-prettier": "10.1.8",
|
|
79
83
|
"husky": "9.1.7",
|
|
80
84
|
"jest": "30.3.0",
|
|
81
|
-
"prettier": "3.8.
|
|
85
|
+
"prettier": "3.8.2",
|
|
82
86
|
"rimraf": "6.1.3",
|
|
83
87
|
"standard-version": "9.5.0",
|
|
84
88
|
"ts-jest": "29.4.9"
|
|
@@ -90,7 +94,12 @@
|
|
|
90
94
|
"testEnvironment": "node",
|
|
91
95
|
"rootDir": "__tests__",
|
|
92
96
|
"transform": {
|
|
93
|
-
"^.+\\.tsx?$": [
|
|
97
|
+
"^.+\\.tsx?$": [
|
|
98
|
+
"ts-jest",
|
|
99
|
+
{
|
|
100
|
+
"tsconfig": "tsconfig.test.json"
|
|
101
|
+
}
|
|
102
|
+
]
|
|
94
103
|
}
|
|
95
104
|
}
|
|
96
105
|
}
|