@kosdev-code/kos-nx-plugin 2.1.21 → 2.1.23
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
CHANGED
|
@@ -1,11 +1,203 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @kosdev-code/kos-nx-plugin
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Nx plugin providing generators and executors for KOS UI application development.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This plugin provides a complete development workflow for KOS applications, including:
|
|
8
|
+
|
|
9
|
+
- **Workspace Creation**: Bootstrap new KOS workspaces with data-driven plugin development
|
|
10
|
+
- **Plugin Development**: Create and manage UI plugins with automatic registration
|
|
11
|
+
- **Development Servers**: Metadata-driven development server orchestration via `kosui dev`
|
|
12
|
+
- **Model Generation**: Create KOS models with decorators and reactive state management
|
|
13
|
+
- **Component Generation**: Generate React components for KOS applications
|
|
14
|
+
|
|
15
|
+
## Quick Start
|
|
16
|
+
|
|
17
|
+
### Create a New Workspace
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx create-nx-workspace@latest my-workspace --preset=@kosdev-code/kos-nx-plugin
|
|
21
|
+
cd my-workspace
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
During setup, you'll be prompted:
|
|
25
|
+
- Workspace name
|
|
26
|
+
- Whether to enable plugin support (default: yes)
|
|
27
|
+
|
|
28
|
+
This creates a workspace with:
|
|
29
|
+
- Host application configured for plugin development
|
|
30
|
+
- `.kos.json` with development metadata
|
|
31
|
+
- npm scripts for development workflow
|
|
32
|
+
|
|
33
|
+
### Start Development
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# Interactive mode - select host and plugins
|
|
37
|
+
npm run dev
|
|
38
|
+
|
|
39
|
+
# Or specify host directly
|
|
40
|
+
kosui dev --host my-workspace-ui
|
|
41
|
+
|
|
42
|
+
# Verbose logging
|
|
43
|
+
npm run dev:verbose
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Plugin Development Workflow
|
|
47
|
+
|
|
48
|
+
### Creating Your First Plugin
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Create a new plugin
|
|
52
|
+
nx g @kosdev-code/kos-nx-plugin:kos-plugin-project my-plugin
|
|
53
|
+
|
|
54
|
+
# The generator will:
|
|
55
|
+
# 1. Prompt for which host to register with
|
|
56
|
+
# 2. Auto-assign a port from the host's range
|
|
57
|
+
# 3. Register plugin in .kos.json
|
|
58
|
+
# 4. Update plugin project.json with port
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Plugin Auto-Registration
|
|
62
|
+
|
|
63
|
+
When you create a plugin, it's automatically registered in `.kos.json`:
|
|
64
|
+
|
|
65
|
+
```json
|
|
66
|
+
{
|
|
67
|
+
"development": {
|
|
68
|
+
"hosts": [
|
|
69
|
+
{
|
|
70
|
+
"name": "my-workspace-ui",
|
|
71
|
+
"plugins": [
|
|
72
|
+
{
|
|
73
|
+
"project": "my-plugin",
|
|
74
|
+
"port": 4201,
|
|
75
|
+
"alias": "my-plugin",
|
|
76
|
+
"enabled": true
|
|
77
|
+
}
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
],
|
|
81
|
+
"portRanges": {
|
|
82
|
+
"my-workspace-ui": {
|
|
83
|
+
"start": 4200,
|
|
84
|
+
"next": 4202
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Development Modes
|
|
92
|
+
|
|
93
|
+
**Internal Development Mode** (Default)
|
|
94
|
+
- Starts host app + plugin dev servers
|
|
95
|
+
- Server-side plugin aggregation
|
|
96
|
+
- Hot module reloading for plugins
|
|
97
|
+
- Access at `http://localhost:4200`
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
kosui dev --host my-workspace-ui
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Third-Party Development Mode** (Plugins Only)
|
|
104
|
+
- For developing plugins without host source code
|
|
105
|
+
- Starts only plugin dev servers
|
|
106
|
+
- Connect to deployed device via query parameters
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
kosui dev --host my-workspace-ui --plugins-only
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
**Selective Plugin Loading**
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
# Start specific plugins
|
|
116
|
+
kosui dev --host my-workspace-ui --plugins my-plugin,another-plugin
|
|
117
|
+
|
|
118
|
+
# Disable specific plugins
|
|
119
|
+
kosui dev --host my-workspace-ui --disable my-plugin
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Available Generators
|
|
123
|
+
|
|
124
|
+
### Workspace & Projects
|
|
125
|
+
|
|
126
|
+
- `workspace` - Create new KOS workspace
|
|
127
|
+
- `project` - Create KOS UI app project
|
|
128
|
+
- `plugin` - Create KOS plugin project
|
|
129
|
+
- `i18n` - Create localization project
|
|
130
|
+
- `content` - Create content project
|
|
131
|
+
- `theme` - Create theme project
|
|
132
|
+
|
|
133
|
+
### Models
|
|
134
|
+
|
|
135
|
+
- `model` - Create KOS model
|
|
136
|
+
- `container` - Create container model
|
|
137
|
+
- `model:companion` - Create companion model
|
|
138
|
+
- `add-future` - Add Future support to model
|
|
139
|
+
|
|
140
|
+
### Components
|
|
141
|
+
|
|
142
|
+
- `component` - Create React component
|
|
143
|
+
- `context` - Create model React context
|
|
144
|
+
- `hook` - Create model React hook
|
|
145
|
+
|
|
146
|
+
### Plugin Components
|
|
147
|
+
|
|
148
|
+
- `plugin:utility` - Plugin utility contribution
|
|
149
|
+
- `plugin:setting` - Plugin settings contribution
|
|
150
|
+
- `plugin:nav` - Plugin navigation view
|
|
151
|
+
- `plugin:cui` - Plugin CUI configuration
|
|
152
|
+
- `plugin:cp` - Plugin control pour
|
|
153
|
+
- `plugin:setup` - Plugin setup step
|
|
154
|
+
- `plugin:custom` - Custom plugin contribution
|
|
155
|
+
|
|
156
|
+
### Development
|
|
157
|
+
|
|
158
|
+
- `dev` - Start development servers (via `kosui dev`)
|
|
159
|
+
- `serve` - Run serve target for a project
|
|
160
|
+
- `kab` - Run KAB packaging target
|
|
161
|
+
|
|
162
|
+
## Documentation
|
|
163
|
+
|
|
164
|
+
- [kosui dev Usage Guide](./docs/dev-script-usage.md) - Complete guide to development server
|
|
165
|
+
- [.kos.json Schema](./docs/kos-json-schema.md) - Configuration schema reference
|
|
166
|
+
- [Migration Guide](./docs/migration-to-data-driven.md) - Migrate existing workspaces
|
|
167
|
+
|
|
168
|
+
## Configuration
|
|
169
|
+
|
|
170
|
+
### .kos.json Root Configuration
|
|
171
|
+
|
|
172
|
+
```json
|
|
173
|
+
{
|
|
174
|
+
"type": "root",
|
|
175
|
+
"generator": {
|
|
176
|
+
"defaults": {
|
|
177
|
+
"model": "my-models",
|
|
178
|
+
"ui": "my-ui"
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
"development": {
|
|
182
|
+
"hosts": [...],
|
|
183
|
+
"portRanges": {...},
|
|
184
|
+
"logDir": "/tmp/my-workspace-logs"
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
See [.kos.json Schema Documentation](./docs/kos-json-schema.md) for complete reference.
|
|
4
190
|
|
|
5
191
|
## Building
|
|
6
192
|
|
|
7
|
-
|
|
193
|
+
```bash
|
|
194
|
+
npx nx build @kosdev-code/kos-nx-plugin
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Publishing
|
|
198
|
+
|
|
199
|
+
This package is published to npm as part of the KOS SDK release process.
|
|
8
200
|
|
|
9
|
-
##
|
|
201
|
+
## Version
|
|
10
202
|
|
|
11
|
-
|
|
203
|
+
See package.json for current version. This plugin follows semantic versioning and is released alongside the KOS UI SDK.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kosdev-code/kos-nx-plugin",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.23",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"generators": "./generators.json",
|
|
6
6
|
"publishConfig": {
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"main": "./src/index.js",
|
|
20
20
|
"kos": {
|
|
21
21
|
"build": {
|
|
22
|
-
"gitHash": "
|
|
22
|
+
"gitHash": "64690ba2c6b001f5fc83da2097ce82acd489f618"
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
}
|
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
1
|
+
import { generatePluginConfiguration } from "@kosdev-code/kos-ui-plugin/utilities";
|
|
2
|
+
import { withKosConfig, withPluginDevServer } from "@kosdev-code/kos-ui-plugin/webpack";
|
|
3
|
+
import { withReact } from "@nx/react";
|
|
4
|
+
import { withModuleFederation } from "@nx/react/module-federation";
|
|
5
|
+
import { composePlugins, withNx } from "@nx/webpack";
|
|
6
|
+
import { readFileSync } from "fs";
|
|
7
|
+
import { join } from "path";
|
|
8
|
+
import * as webpack from "webpack";
|
|
5
9
|
|
|
6
|
-
|
|
7
|
-
|
|
10
|
+
const kosConfig = JSON.parse(
|
|
11
|
+
readFileSync(join(__dirname, "./.kos.json"), "utf-8")
|
|
12
|
+
);
|
|
13
|
+
const baseConfig = generatePluginConfiguration(kosConfig);
|
|
14
|
+
const config = {
|
|
15
|
+
...baseConfig,
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export default composePlugins(
|
|
19
|
+
withNx(),
|
|
20
|
+
withReact({}),
|
|
21
|
+
withModuleFederation(config),
|
|
22
|
+
withKosConfig(webpack),
|
|
23
|
+
withPluginDevServer({
|
|
24
|
+
verbose: process.env.VERBOSE_PLUGIN_DEV === 'true'
|
|
25
|
+
})
|
|
26
|
+
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/preset/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAOL,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAYjD,wBAAsB,eAAe,CACnC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/preset/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAOL,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAYjD,wBAAsB,eAAe,CACnC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,qBAAqB,iBAyT/B;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -77,6 +77,7 @@ async function presetGenerator(tree, options) {
|
|
|
77
77
|
"@types/node": "^18.16.9",
|
|
78
78
|
archiver: "^5.3.1",
|
|
79
79
|
"openapi-typescript": "^7.6.1",
|
|
80
|
+
"webpack-merge": "^5.10.0",
|
|
80
81
|
});
|
|
81
82
|
// const configTxt = tree.read("nx.json", "utf-8") || "";
|
|
82
83
|
// const config = JSON.parse(configTxt);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/preset/generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/preset/generator.ts"],"names":[],"mappings":"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"}
|