@theotherwillembotha/node-red-plugincore 0.0.50
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/LICENSE +15 -0
- package/README.md +190 -0
- package/build/GenerateNodes.d.ts +2 -0
- package/build/GenerateNodes.d.ts.map +1 -0
- package/build/GenerateNodes.js +36 -0
- package/build/Nodes.html +1729 -0
- package/build/Nodes.js +32 -0
- package/build/Plugins.js +74 -0
- package/build/core/NodeConstructor.d.ts +188 -0
- package/build/core/NodeConstructor.d.ts.map +1 -0
- package/build/core/NodeConstructor.js +679 -0
- package/build/core/NodeGenerator.d.ts +37 -0
- package/build/core/NodeGenerator.d.ts.map +1 -0
- package/build/core/NodeGenerator.js +300 -0
- package/build/core/Utils.d.ts +7 -0
- package/build/core/Utils.d.ts.map +1 -0
- package/build/core/Utils.js +19 -0
- package/build/core/logger/LoggerDecorator.d.ts +2 -0
- package/build/core/logger/LoggerDecorator.d.ts.map +1 -0
- package/build/core/logger/LoggerDecorator.js +93 -0
- package/build/core/logger/node/ConsoleLoggerConfigNode.d.ts +16 -0
- package/build/core/logger/node/ConsoleLoggerConfigNode.d.ts.map +1 -0
- package/build/core/logger/node/ConsoleLoggerConfigNode.html +131 -0
- package/build/core/logger/node/ConsoleLoggerConfigNode.js +47 -0
- package/build/core/logger/node/LoggerConfigNode.d.ts +30 -0
- package/build/core/logger/node/LoggerConfigNode.d.ts.map +1 -0
- package/build/core/logger/node/LoggerConfigNode.html +307 -0
- package/build/core/logger/node/LoggerConfigNode.js +60 -0
- package/build/core/logger/node/LokiLoggerConfigNode.d.ts +20 -0
- package/build/core/logger/node/LokiLoggerConfigNode.d.ts.map +1 -0
- package/build/core/logger/node/LokiLoggerConfigNode.html +153 -0
- package/build/core/logger/node/LokiLoggerConfigNode.js +52 -0
- package/build/core/logger/node/RestLoggerConfigNode.d.ts +24 -0
- package/build/core/logger/node/RestLoggerConfigNode.d.ts.map +1 -0
- package/build/core/logger/node/RestLoggerConfigNode.html +209 -0
- package/build/core/logger/node/RestLoggerConfigNode.js +57 -0
- package/build/core/logger/service/LoggerService.d.ts +88 -0
- package/build/core/logger/service/LoggerService.d.ts.map +1 -0
- package/build/core/logger/service/LoggerService.js +204 -0
- package/build/core/logger/service/LoggerServiceTypes.d.ts +24 -0
- package/build/core/logger/service/LoggerServiceTypes.d.ts.map +1 -0
- package/build/core/logger/service/LoggerServiceTypes.js +30 -0
- package/build/core/logger/template/LoggerTemplate.d.ts +11 -0
- package/build/core/logger/template/LoggerTemplate.d.ts.map +1 -0
- package/build/core/logger/template/LoggerTemplate.html +328 -0
- package/build/core/logger/template/LoggerTemplate.js +12 -0
- package/build/core/metrics/MetricsDecorator.d.ts +40 -0
- package/build/core/metrics/MetricsDecorator.d.ts.map +1 -0
- package/build/core/metrics/MetricsDecorator.js +166 -0
- package/build/core/metrics/node/CounterMetricConfigNode.d.ts +16 -0
- package/build/core/metrics/node/CounterMetricConfigNode.d.ts.map +1 -0
- package/build/core/metrics/node/CounterMetricConfigNode.html +48 -0
- package/build/core/metrics/node/CounterMetricConfigNode.js +61 -0
- package/build/core/metrics/node/GaugeMetricConfigNode.d.ts +17 -0
- package/build/core/metrics/node/GaugeMetricConfigNode.d.ts.map +1 -0
- package/build/core/metrics/node/GaugeMetricConfigNode.html +48 -0
- package/build/core/metrics/node/GaugeMetricConfigNode.js +61 -0
- package/build/core/metrics/node/MetricsConfigNode.d.ts +14 -0
- package/build/core/metrics/node/MetricsConfigNode.d.ts.map +1 -0
- package/build/core/metrics/node/MetricsConfigNode.html +21 -0
- package/build/core/metrics/node/MetricsConfigNode.js +56 -0
- package/build/core/metrics/node/TimerMetricConfigNode.d.ts +28 -0
- package/build/core/metrics/node/TimerMetricConfigNode.d.ts.map +1 -0
- package/build/core/metrics/node/TimerMetricConfigNode.html +190 -0
- package/build/core/metrics/node/TimerMetricConfigNode.js +101 -0
- package/build/core/metrics/service/MetricsService.d.ts +187 -0
- package/build/core/metrics/service/MetricsService.d.ts.map +1 -0
- package/build/core/metrics/service/MetricsService.js +385 -0
- package/build/core/metrics/template/CounterMetricTemplate.d.ts +5 -0
- package/build/core/metrics/template/CounterMetricTemplate.d.ts.map +1 -0
- package/build/core/metrics/template/CounterMetricTemplate.html +40 -0
- package/build/core/metrics/template/CounterMetricTemplate.js +12 -0
- package/build/core/metrics/template/GaugeMetricTemplate.d.ts +5 -0
- package/build/core/metrics/template/GaugeMetricTemplate.d.ts.map +1 -0
- package/build/core/metrics/template/GaugeMetricTemplate.html +39 -0
- package/build/core/metrics/template/GaugeMetricTemplate.js +12 -0
- package/build/core/metrics/template/MetricsTemplate.d.ts +8 -0
- package/build/core/metrics/template/MetricsTemplate.d.ts.map +1 -0
- package/build/core/metrics/template/MetricsTemplate.html +54 -0
- package/build/core/metrics/template/MetricsTemplate.js +12 -0
- package/build/core/metrics/template/TimerMetricTemplate.d.ts +5 -0
- package/build/core/metrics/template/TimerMetricTemplate.d.ts.map +1 -0
- package/build/core/metrics/template/TimerMetricTemplate.html +39 -0
- package/build/core/metrics/template/TimerMetricTemplate.js +12 -0
- package/build/core/other/InputDecorator.d.ts +3 -0
- package/build/core/other/InputDecorator.d.ts.map +1 -0
- package/build/core/other/InputDecorator.js +43 -0
- package/build/core/other/service/InputService.d.ts +16 -0
- package/build/core/other/service/InputService.d.ts.map +1 -0
- package/build/core/other/service/InputService.js +31 -0
- package/build/core/other/service/SettingsService.d.ts +25 -0
- package/build/core/other/service/SettingsService.d.ts.map +1 -0
- package/build/core/other/service/SettingsService.js +74 -0
- package/build/core/other/template/BasicTemplate.d.ts +5 -0
- package/build/core/other/template/BasicTemplate.d.ts.map +1 -0
- package/build/core/other/template/BasicTemplate.html +76 -0
- package/build/core/other/template/BasicTemplate.js +11 -0
- package/build/core/other/template/SettingsTemplate.d.ts +5 -0
- package/build/core/other/template/SettingsTemplate.d.ts.map +1 -0
- package/build/core/other/template/SettingsTemplate.html +128 -0
- package/build/core/other/template/SettingsTemplate.js +11 -0
- package/build/core/tagging/NodeDescriptionDecorator.d.ts +17 -0
- package/build/core/tagging/NodeDescriptionDecorator.d.ts.map +1 -0
- package/build/core/tagging/NodeDescriptionDecorator.js +25 -0
- package/build/core/tagging/service/NodeTypeService.d.ts +15 -0
- package/build/core/tagging/service/NodeTypeService.d.ts.map +1 -0
- package/build/core/tagging/service/NodeTypeService.js +47 -0
- package/build/core/webhook/WebhookDecorator.d.ts +3 -0
- package/build/core/webhook/WebhookDecorator.d.ts.map +1 -0
- package/build/core/webhook/WebhookDecorator.js +45 -0
- package/build/core/webhook/node/WebhookServerConfigNode.d.ts +16 -0
- package/build/core/webhook/node/WebhookServerConfigNode.d.ts.map +1 -0
- package/build/core/webhook/node/WebhookServerConfigNode.html +61 -0
- package/build/core/webhook/node/WebhookServerConfigNode.js +40 -0
- package/build/core/webhook/service/ReverseProxyTypeService.d.ts +29 -0
- package/build/core/webhook/service/ReverseProxyTypeService.d.ts.map +1 -0
- package/build/core/webhook/service/ReverseProxyTypeService.js +24 -0
- package/build/core/webhook/service/WebhookServerService.d.ts +52 -0
- package/build/core/webhook/service/WebhookServerService.d.ts.map +1 -0
- package/build/core/webhook/service/WebhookServerService.js +146 -0
- package/build/core/webhook/template/WebhookTemplate.d.ts +22 -0
- package/build/core/webhook/template/WebhookTemplate.d.ts.map +1 -0
- package/build/core/webhook/template/WebhookTemplate.html +434 -0
- package/build/core/webhook/template/WebhookTemplate.js +12 -0
- package/build/index.d.ts +33 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +55 -0
- package/package.json +67 -0
- package/src/GenerateNodes.ts +42 -0
- package/src/core/NodeConstructor.ts +889 -0
- package/src/core/NodeGenerator.ts +331 -0
- package/src/core/Utils.ts +19 -0
- package/src/core/logger/LoggerDecorator.ts +105 -0
- package/src/core/logger/node/ConsoleLoggerConfigNode.html +131 -0
- package/src/core/logger/node/ConsoleLoggerConfigNode.ts +46 -0
- package/src/core/logger/node/LoggerConfigNode.html +307 -0
- package/src/core/logger/node/LoggerConfigNode.ts +95 -0
- package/src/core/logger/node/LokiLoggerConfigNode.html +153 -0
- package/src/core/logger/node/LokiLoggerConfigNode.ts +58 -0
- package/src/core/logger/node/RestLoggerConfigNode.html +209 -0
- package/src/core/logger/node/RestLoggerConfigNode.ts +67 -0
- package/src/core/logger/service/LoggerService.ts +317 -0
- package/src/core/logger/service/LoggerServiceTypes.ts +26 -0
- package/src/core/logger/template/LoggerTemplate.html +328 -0
- package/src/core/logger/template/LoggerTemplate.ts +23 -0
- package/src/core/metrics/MetricsDecorator.ts +227 -0
- package/src/core/metrics/node/CounterMetricConfigNode.html +48 -0
- package/src/core/metrics/node/CounterMetricConfigNode.ts +62 -0
- package/src/core/metrics/node/GaugeMetricConfigNode.html +48 -0
- package/src/core/metrics/node/GaugeMetricConfigNode.ts +62 -0
- package/src/core/metrics/node/MetricsConfigNode.html +21 -0
- package/src/core/metrics/node/MetricsConfigNode.ts +55 -0
- package/src/core/metrics/node/TimerMetricConfigNode.html +190 -0
- package/src/core/metrics/node/TimerMetricConfigNode.ts +118 -0
- package/src/core/metrics/service/MetricsService.ts +560 -0
- package/src/core/metrics/template/CounterMetricTemplate.html +40 -0
- package/src/core/metrics/template/CounterMetricTemplate.ts +15 -0
- package/src/core/metrics/template/GaugeMetricTemplate.html +39 -0
- package/src/core/metrics/template/GaugeMetricTemplate.ts +15 -0
- package/src/core/metrics/template/MetricsTemplate.html +54 -0
- package/src/core/metrics/template/MetricsTemplate.ts +18 -0
- package/src/core/metrics/template/TimerMetricTemplate.html +39 -0
- package/src/core/metrics/template/TimerMetricTemplate.ts +14 -0
- package/src/core/other/InputDecorator.ts +57 -0
- package/src/core/other/service/InputService.ts +36 -0
- package/src/core/other/service/SettingsService.ts +103 -0
- package/src/core/other/template/BasicTemplate.html +76 -0
- package/src/core/other/template/BasicTemplate.ts +15 -0
- package/src/core/other/template/SettingsTemplate.html +128 -0
- package/src/core/other/template/SettingsTemplate.ts +17 -0
- package/src/core/tagging/NodeDescriptionDecorator.ts +39 -0
- package/src/core/tagging/service/NodeTypeService.ts +67 -0
- package/src/core/webhook/WebhookDecorator.ts +70 -0
- package/src/core/webhook/node/WebhookServerConfigNode.html +61 -0
- package/src/core/webhook/node/WebhookServerConfigNode.ts +38 -0
- package/src/core/webhook/service/ReverseProxyTypeService.ts +46 -0
- package/src/core/webhook/service/WebhookServerService.ts +211 -0
- package/src/core/webhook/template/WebhookTemplate.html +434 -0
- package/src/core/webhook/template/WebhookTemplate.ts +36 -0
- package/src/index.ts +47 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Willem Botha (@theotherwillembotha)
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
10
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
11
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
12
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
13
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
14
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
15
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
# @theotherwillembotha/node-red-plugincore
|
|
2
|
+
|
|
3
|
+
A core framework for building production-grade Node-RED plugins, with built-in support for structured logging, Prometheus metrics, and webhook ingestion.
|
|
4
|
+
|
|
5
|
+
> **Note:** This package serves two purposes: it ships a set of reusable config nodes into Node-RED (logging, metrics, webhook server), and it provides a TypeScript framework that plugin developers extend to build their own nodes. The sections below address each audience separately.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Usage in Node-RED
|
|
10
|
+
|
|
11
|
+
### Installation
|
|
12
|
+
|
|
13
|
+
Either use the **Manage Palette** option in the Node-RED editor, or run the following command in your Node-RED user directory (typically `~/.node-red`):
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @theotherwillembotha/node-red-plugincore
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Config nodes
|
|
20
|
+
|
|
21
|
+
This package adds a set of config nodes to your palette. These are shared resources that your own nodes attach to — you configure them once and reference them across your flow.
|
|
22
|
+
|
|
23
|
+
#### Logging
|
|
24
|
+
|
|
25
|
+
Three logger implementations are available. All are compatible with any node that uses the `@Logger` decorator.
|
|
26
|
+
|
|
27
|
+
| Node | Description |
|
|
28
|
+
|------|-------------|
|
|
29
|
+
| **Console Logger** | Writes log output to stdout via Winston. Useful for development and containerised deployments that forward stdout to a log aggregator. |
|
|
30
|
+
| **REST Logger** | Ships log entries to a remote HTTP endpoint. |
|
|
31
|
+
| **Loki Logger** | Ships log entries to a Grafana Loki instance. Configure the Loki URL and optional labels in the node's settings. |
|
|
32
|
+
|
|
33
|
+
#### Metrics
|
|
34
|
+
|
|
35
|
+
Prometheus-compatible metric collectors. A running Prometheus scrape endpoint is provided automatically when any metric node is deployed.
|
|
36
|
+
|
|
37
|
+
| Node | Description |
|
|
38
|
+
|------|-------------|
|
|
39
|
+
| **Counter Metric** | An ever-increasing counter (e.g. messages processed, errors). |
|
|
40
|
+
| **Gauge Metric** | A value that goes up and down (e.g. queue depth, active connections). |
|
|
41
|
+
| **Timer Metric** | A histogram for measuring durations (e.g. processing time per message). |
|
|
42
|
+
|
|
43
|
+
#### Webhook Server
|
|
44
|
+
|
|
45
|
+
| Node | Description |
|
|
46
|
+
|------|-------------|
|
|
47
|
+
| **Webhook Server** | Runs an Express v5 HTTP server on a configurable port. Supports reverse proxy configuration. Any node using the `@Webhook` decorator registers its routes here. |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Development — Building plugins with this framework
|
|
52
|
+
|
|
53
|
+
### Prerequisites
|
|
54
|
+
|
|
55
|
+
- Node.js 18+
|
|
56
|
+
- Node-RED 3+
|
|
57
|
+
- TypeScript 5+ with `experimentalDecorators` and `emitDecoratorMetadata` enabled
|
|
58
|
+
|
|
59
|
+
### Installation
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npm install @theotherwillembotha/node-red-plugincore
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Your `tsconfig.json` must include:
|
|
66
|
+
|
|
67
|
+
```json
|
|
68
|
+
{
|
|
69
|
+
"compilerOptions": {
|
|
70
|
+
"experimentalDecorators": true,
|
|
71
|
+
"emitDecoratorMetadata": true
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Defining a node
|
|
77
|
+
|
|
78
|
+
Extend `BaseNode` and annotate the class with `@NodeDescription`. The decorator registers the node type, its editor HTML file, the palette group it appears in, and any shared templates it pulls in.
|
|
79
|
+
|
|
80
|
+
```typescript
|
|
81
|
+
import {
|
|
82
|
+
BaseNode, BaseNodeConfig,
|
|
83
|
+
NodeDescription, SourceUtility,
|
|
84
|
+
LoggerTemplate, LoggerTemplateConfig,
|
|
85
|
+
Log, Logger
|
|
86
|
+
} from "@theotherwillembotha/node-red-plugincore";
|
|
87
|
+
import { Node } from "node-red";
|
|
88
|
+
|
|
89
|
+
interface MyNodeConfig extends BaseNodeConfig, LoggerTemplateConfig {
|
|
90
|
+
name: string;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
@NodeDescription({
|
|
94
|
+
id: "my-node",
|
|
95
|
+
name: "My Node",
|
|
96
|
+
group: "my-plugin",
|
|
97
|
+
sourceFile: SourceUtility.getSourcePath("/build/", "/src/") + "MyNode.html",
|
|
98
|
+
package: "@myscope/my-nodered-plugin",
|
|
99
|
+
templates: [
|
|
100
|
+
{ template: LoggerTemplate, config: {} }
|
|
101
|
+
]
|
|
102
|
+
})
|
|
103
|
+
class MyNode extends BaseNode<MyNodeConfig> {
|
|
104
|
+
|
|
105
|
+
@Logger()
|
|
106
|
+
private log!: Log;
|
|
107
|
+
|
|
108
|
+
constructor(node: Node, config: MyNodeConfig) {
|
|
109
|
+
super(node, config);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
protected onInit() {
|
|
113
|
+
this.log.log("MyNode initialised");
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Available decorators
|
|
119
|
+
|
|
120
|
+
| Decorator | Property type | What it injects |
|
|
121
|
+
|-----------|--------------|-----------------|
|
|
122
|
+
| `@Logger()` | `Log` | Winston logger wired to a user-selected logger config node |
|
|
123
|
+
| `@Metrics({...})` | `CounterMetric` / `GaugeMetric` / `HistogramMetric` | Prometheus metric collector |
|
|
124
|
+
| `@Webhook()` | — | Registers the node with the webhook server |
|
|
125
|
+
| `@onInput()` | method | Wires the method as the Node-RED input message handler |
|
|
126
|
+
|
|
127
|
+
### Templates
|
|
128
|
+
|
|
129
|
+
Templates bundle reusable UI fragments that compose into any node's editor panel.
|
|
130
|
+
|
|
131
|
+
| Template | Adds to editor |
|
|
132
|
+
|----------|---------------|
|
|
133
|
+
| `LoggerTemplate` | Logger selection and message template override |
|
|
134
|
+
| `MetricsTemplate` | Metrics configuration section |
|
|
135
|
+
| `WebhookTemplate` | Webhook server and reverse proxy configuration |
|
|
136
|
+
| `SettingsTemplate` | General settings section |
|
|
137
|
+
| `BasicTemplate` | Base styles shared by all nodes |
|
|
138
|
+
|
|
139
|
+
### Registering nodes for generation
|
|
140
|
+
|
|
141
|
+
Create a `GenerateNodes.ts` at the root of your `src/` directory. This is the composition root — register every service, template, and node, then call `.generate()` to emit the Node-RED entry files.
|
|
142
|
+
|
|
143
|
+
```typescript
|
|
144
|
+
import { NodeGenerator } from "@theotherwillembotha/node-red-plugincore";
|
|
145
|
+
import {
|
|
146
|
+
LoggerService, LoggerTemplate,
|
|
147
|
+
ConsoleLoggerConfigNode, RestLoggerConfigNode, LokiLoggerConfigNode
|
|
148
|
+
} from "@theotherwillembotha/node-red-plugincore";
|
|
149
|
+
import { MyNode } from "./nodes/MyNode";
|
|
150
|
+
|
|
151
|
+
new NodeGenerator("./src/")
|
|
152
|
+
.registerService(LoggerService)
|
|
153
|
+
.registerTemplate(LoggerTemplate)
|
|
154
|
+
.registerNode(ConsoleLoggerConfigNode)
|
|
155
|
+
.registerNode(RestLoggerConfigNode)
|
|
156
|
+
.registerNode(LokiLoggerConfigNode)
|
|
157
|
+
.registerNode(MyNode)
|
|
158
|
+
.generate("./build/Nodes", "./build/Plugins");
|
|
159
|
+
|
|
160
|
+
process.exit(0);
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Wiring up package.json
|
|
164
|
+
|
|
165
|
+
```json
|
|
166
|
+
{
|
|
167
|
+
"node-red": {
|
|
168
|
+
"nodes": { "my-plugin": "./build/Nodes.js" },
|
|
169
|
+
"plugins": { "my-plugin": "./build/Plugins.js" }
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Build
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
npm run build # clean → tsc → copy HTML templates → generate node files → copy icons
|
|
178
|
+
npm run clean # remove build/
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Repository
|
|
184
|
+
|
|
185
|
+
- Source: [github.com/theotherwillembotha/nodered_plugincore](https://github.com/theotherwillembotha/nodered_plugincore)
|
|
186
|
+
- Issues: [github.com/theotherwillembotha/nodered_plugincore/issues](https://github.com/theotherwillembotha/nodered_plugincore/issues)
|
|
187
|
+
|
|
188
|
+
## License
|
|
189
|
+
|
|
190
|
+
[ISC](LICENSE)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenerateNodes.d.ts","sourceRoot":"","sources":["../src/GenerateNodes.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const NodeTypeService_js_1 = require("./core/tagging/service/NodeTypeService.js");
|
|
4
|
+
const index_js_1 = require("./index.js");
|
|
5
|
+
const index_js_2 = require("./index.js");
|
|
6
|
+
const index_js_3 = require("./index.js");
|
|
7
|
+
const index_js_4 = require("./index.js");
|
|
8
|
+
const index_js_5 = require("./index.js");
|
|
9
|
+
new index_js_1.NodeGenerator("./src/core/")
|
|
10
|
+
// services.
|
|
11
|
+
.registerService(index_js_3.LoggerService)
|
|
12
|
+
.registerService(index_js_4.MetricsService)
|
|
13
|
+
.registerService(index_js_1.SettingsService)
|
|
14
|
+
.registerService(index_js_2.WebhookServerService)
|
|
15
|
+
.registerService(NodeTypeService_js_1.NodeTypeService)
|
|
16
|
+
// templates.
|
|
17
|
+
.registerTemplate(index_js_1.BasicTemplate)
|
|
18
|
+
.registerTemplate(index_js_3.LoggerTemplate)
|
|
19
|
+
.registerTemplate(index_js_1.SettingsTemplate)
|
|
20
|
+
.registerTemplate(index_js_4.MetricsTemplate)
|
|
21
|
+
.registerTemplate(index_js_4.CounterMetricTemplate)
|
|
22
|
+
.registerTemplate(index_js_4.GaugeMetricTemplate)
|
|
23
|
+
.registerTemplate(index_js_1.TimerMetricTemplate)
|
|
24
|
+
.registerTemplate(index_js_2.WebhookTemplate)
|
|
25
|
+
// nodes
|
|
26
|
+
.registerNode(index_js_1.ConsoleLoggerConfigNode)
|
|
27
|
+
.registerNode(index_js_1.RestLoggerConfigNode)
|
|
28
|
+
.registerNode(index_js_1.LokiLoggerConfigNode)
|
|
29
|
+
.registerNode(index_js_5.MetricsConfigNode)
|
|
30
|
+
.registerNode(index_js_5.CounterMetricConfigNode)
|
|
31
|
+
.registerNode(index_js_5.GaugeMetricConfigNode)
|
|
32
|
+
.registerNode(index_js_5.TimerMetricConfigNode)
|
|
33
|
+
.registerNode(index_js_2.WebhookServerConfigNode)
|
|
34
|
+
// done.
|
|
35
|
+
.generate("./build/Nodes", "./build/Plugins");
|
|
36
|
+
process.exit(0);
|