@bonsae/nrg 0.13.1 → 0.15.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 +3 -40
- package/package.json +3 -2
- package/server/index.cjs +549 -453
- package/server/resources/nrg-client.js +2114 -2097
- package/test/index.js +295 -44
- package/types/server.d.ts +360 -1854
- package/types/shims/components.d.ts +13 -10
- package/types/shims/form/components/node-red-config-input.vue.d.ts +112 -0
- package/types/shims/form/components/node-red-editor-input.vue.d.ts +105 -0
- package/types/shims/form/components/node-red-input-label.vue.d.ts +34 -0
- package/types/shims/form/components/node-red-input.vue.d.ts +111 -0
- package/types/shims/form/components/node-red-json-schema-form.vue.d.ts +651 -0
- package/types/shims/form/components/node-red-select-input.vue.d.ts +117 -0
- package/types/shims/form/components/node-red-toggle.vue.d.ts +36 -0
- package/types/shims/form/components/node-red-typed-input.vue.d.ts +106 -0
- package/types/shims/globals.d.ts +1 -1
- package/types/shims/schema-options.d.ts +11 -0
- package/types/shims/typebox.d.ts +10 -0
- package/types/test.d.ts +414 -32
- package/types/vite.d.ts +164 -7
- package/vite/index.js +289 -40
- package/server/resources/vue.esm-browser.js +0 -18708
- package/server/resources/vue.esm-browser.prod.js +0 -13
package/README.md
CHANGED
|
@@ -17,10 +17,10 @@ Build Node-RED nodes with Vue 3, TypeScript, and JSON Schema validation.
|
|
|
17
17
|
|
|
18
18
|
```bash
|
|
19
19
|
pnpm add @bonsae/nrg
|
|
20
|
-
pnpm add -D vite
|
|
20
|
+
pnpm add -D vite
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
> `vite`
|
|
23
|
+
> `vite` is a dev dependency because it is only needed at build time. Vue is included as a dependency of nrg and served automatically at runtime.
|
|
24
24
|
|
|
25
25
|
## Package Exports
|
|
26
26
|
|
|
@@ -37,7 +37,7 @@ pnpm add -D vite vue
|
|
|
37
37
|
```bash
|
|
38
38
|
# In your Node-RED package project
|
|
39
39
|
pnpm add @bonsae/nrg
|
|
40
|
-
pnpm add -D vite
|
|
40
|
+
pnpm add -D vite
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
**vite.config.ts**
|
|
@@ -135,43 +135,6 @@ export default defineModule({
|
|
|
135
135
|
|
|
136
136
|
See the [consumer template](https://github.com/AllanOricil/node-red-vue-template) for a complete example.
|
|
137
137
|
|
|
138
|
-
## Project Structure
|
|
139
|
-
|
|
140
|
-
```
|
|
141
|
-
src/
|
|
142
|
-
├── core/ # Runtime framework
|
|
143
|
-
│ ├── client/ # Vue 3 editor components
|
|
144
|
-
│ │ ├── app.vue # Root form wrapper (validation, toggles)
|
|
145
|
-
│ │ ├── components/ # Reusable form inputs
|
|
146
|
-
│ │ │ ├── node-red-input.vue
|
|
147
|
-
│ │ │ ├── node-red-typed-input.vue
|
|
148
|
-
│ │ │ ├── node-red-config-input.vue
|
|
149
|
-
│ │ │ ├── node-red-select-input.vue
|
|
150
|
-
│ │ │ ├── node-red-editor-input.vue
|
|
151
|
-
│ │ │ └── node-red-json-schema-form.vue
|
|
152
|
-
│ │ └── index.ts # registerType, defineNode
|
|
153
|
-
│ ├── server/ # Node.js server runtime
|
|
154
|
-
│ │ ├── nodes/ # Node, IONode, ConfigNode classes
|
|
155
|
-
│ │ ├── schemas/ # TypeBox schema system
|
|
156
|
-
│ │ ├── types/ # RED, context store types
|
|
157
|
-
│ │ └── index.ts # registerTypes, exports
|
|
158
|
-
│ ├── constants.ts
|
|
159
|
-
│ └── validator.ts # AJV-based validation
|
|
160
|
-
├── test/ # Test utilities for consumers
|
|
161
|
-
│ ├── index.ts # createNode, receive, close, reset
|
|
162
|
-
│ └── mocks.ts # RED and Node-RED node mocks
|
|
163
|
-
├── vite/ # Build tooling
|
|
164
|
-
│ ├── plugin.ts # Vite plugin factory
|
|
165
|
-
│ ├── plugins/ # Dev server, build orchestration
|
|
166
|
-
│ ├── server/ # Server build (CJS/ESM + bridge)
|
|
167
|
-
│ ├── client/ # Client build (Vue + auto-wiring)
|
|
168
|
-
│ └── index.ts # nodeRed(), defineRuntimeSettings()
|
|
169
|
-
└── tsconfig/ # Shared configs for consumers
|
|
170
|
-
├── base.json
|
|
171
|
-
├── client.json
|
|
172
|
-
└── server.json
|
|
173
|
-
```
|
|
174
|
-
|
|
175
138
|
## Testing
|
|
176
139
|
|
|
177
140
|
Test your nodes' server-side logic with `@bonsae/nrg/test`:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bonsae/nrg",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "NRG framework — build Node-RED nodes with Vue 3, TypeScript, and JSON Schema",
|
|
5
5
|
"author": "Allan Oricil <allanoricil@duck.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -62,6 +62,7 @@
|
|
|
62
62
|
"tree-kill": "^1.2.2",
|
|
63
63
|
"typescript": "^5.8.3",
|
|
64
64
|
"vite-plugin-dts": "^4.5.4",
|
|
65
|
-
"vite-plugin-static-copy": "^3.1.0"
|
|
65
|
+
"vite-plugin-static-copy": "^3.1.0",
|
|
66
|
+
"vue": "^3.5.14"
|
|
66
67
|
}
|
|
67
68
|
}
|