@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.
Files changed (180) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +190 -0
  3. package/build/GenerateNodes.d.ts +2 -0
  4. package/build/GenerateNodes.d.ts.map +1 -0
  5. package/build/GenerateNodes.js +36 -0
  6. package/build/Nodes.html +1729 -0
  7. package/build/Nodes.js +32 -0
  8. package/build/Plugins.js +74 -0
  9. package/build/core/NodeConstructor.d.ts +188 -0
  10. package/build/core/NodeConstructor.d.ts.map +1 -0
  11. package/build/core/NodeConstructor.js +679 -0
  12. package/build/core/NodeGenerator.d.ts +37 -0
  13. package/build/core/NodeGenerator.d.ts.map +1 -0
  14. package/build/core/NodeGenerator.js +300 -0
  15. package/build/core/Utils.d.ts +7 -0
  16. package/build/core/Utils.d.ts.map +1 -0
  17. package/build/core/Utils.js +19 -0
  18. package/build/core/logger/LoggerDecorator.d.ts +2 -0
  19. package/build/core/logger/LoggerDecorator.d.ts.map +1 -0
  20. package/build/core/logger/LoggerDecorator.js +93 -0
  21. package/build/core/logger/node/ConsoleLoggerConfigNode.d.ts +16 -0
  22. package/build/core/logger/node/ConsoleLoggerConfigNode.d.ts.map +1 -0
  23. package/build/core/logger/node/ConsoleLoggerConfigNode.html +131 -0
  24. package/build/core/logger/node/ConsoleLoggerConfigNode.js +47 -0
  25. package/build/core/logger/node/LoggerConfigNode.d.ts +30 -0
  26. package/build/core/logger/node/LoggerConfigNode.d.ts.map +1 -0
  27. package/build/core/logger/node/LoggerConfigNode.html +307 -0
  28. package/build/core/logger/node/LoggerConfigNode.js +60 -0
  29. package/build/core/logger/node/LokiLoggerConfigNode.d.ts +20 -0
  30. package/build/core/logger/node/LokiLoggerConfigNode.d.ts.map +1 -0
  31. package/build/core/logger/node/LokiLoggerConfigNode.html +153 -0
  32. package/build/core/logger/node/LokiLoggerConfigNode.js +52 -0
  33. package/build/core/logger/node/RestLoggerConfigNode.d.ts +24 -0
  34. package/build/core/logger/node/RestLoggerConfigNode.d.ts.map +1 -0
  35. package/build/core/logger/node/RestLoggerConfigNode.html +209 -0
  36. package/build/core/logger/node/RestLoggerConfigNode.js +57 -0
  37. package/build/core/logger/service/LoggerService.d.ts +88 -0
  38. package/build/core/logger/service/LoggerService.d.ts.map +1 -0
  39. package/build/core/logger/service/LoggerService.js +204 -0
  40. package/build/core/logger/service/LoggerServiceTypes.d.ts +24 -0
  41. package/build/core/logger/service/LoggerServiceTypes.d.ts.map +1 -0
  42. package/build/core/logger/service/LoggerServiceTypes.js +30 -0
  43. package/build/core/logger/template/LoggerTemplate.d.ts +11 -0
  44. package/build/core/logger/template/LoggerTemplate.d.ts.map +1 -0
  45. package/build/core/logger/template/LoggerTemplate.html +328 -0
  46. package/build/core/logger/template/LoggerTemplate.js +12 -0
  47. package/build/core/metrics/MetricsDecorator.d.ts +40 -0
  48. package/build/core/metrics/MetricsDecorator.d.ts.map +1 -0
  49. package/build/core/metrics/MetricsDecorator.js +166 -0
  50. package/build/core/metrics/node/CounterMetricConfigNode.d.ts +16 -0
  51. package/build/core/metrics/node/CounterMetricConfigNode.d.ts.map +1 -0
  52. package/build/core/metrics/node/CounterMetricConfigNode.html +48 -0
  53. package/build/core/metrics/node/CounterMetricConfigNode.js +61 -0
  54. package/build/core/metrics/node/GaugeMetricConfigNode.d.ts +17 -0
  55. package/build/core/metrics/node/GaugeMetricConfigNode.d.ts.map +1 -0
  56. package/build/core/metrics/node/GaugeMetricConfigNode.html +48 -0
  57. package/build/core/metrics/node/GaugeMetricConfigNode.js +61 -0
  58. package/build/core/metrics/node/MetricsConfigNode.d.ts +14 -0
  59. package/build/core/metrics/node/MetricsConfigNode.d.ts.map +1 -0
  60. package/build/core/metrics/node/MetricsConfigNode.html +21 -0
  61. package/build/core/metrics/node/MetricsConfigNode.js +56 -0
  62. package/build/core/metrics/node/TimerMetricConfigNode.d.ts +28 -0
  63. package/build/core/metrics/node/TimerMetricConfigNode.d.ts.map +1 -0
  64. package/build/core/metrics/node/TimerMetricConfigNode.html +190 -0
  65. package/build/core/metrics/node/TimerMetricConfigNode.js +101 -0
  66. package/build/core/metrics/service/MetricsService.d.ts +187 -0
  67. package/build/core/metrics/service/MetricsService.d.ts.map +1 -0
  68. package/build/core/metrics/service/MetricsService.js +385 -0
  69. package/build/core/metrics/template/CounterMetricTemplate.d.ts +5 -0
  70. package/build/core/metrics/template/CounterMetricTemplate.d.ts.map +1 -0
  71. package/build/core/metrics/template/CounterMetricTemplate.html +40 -0
  72. package/build/core/metrics/template/CounterMetricTemplate.js +12 -0
  73. package/build/core/metrics/template/GaugeMetricTemplate.d.ts +5 -0
  74. package/build/core/metrics/template/GaugeMetricTemplate.d.ts.map +1 -0
  75. package/build/core/metrics/template/GaugeMetricTemplate.html +39 -0
  76. package/build/core/metrics/template/GaugeMetricTemplate.js +12 -0
  77. package/build/core/metrics/template/MetricsTemplate.d.ts +8 -0
  78. package/build/core/metrics/template/MetricsTemplate.d.ts.map +1 -0
  79. package/build/core/metrics/template/MetricsTemplate.html +54 -0
  80. package/build/core/metrics/template/MetricsTemplate.js +12 -0
  81. package/build/core/metrics/template/TimerMetricTemplate.d.ts +5 -0
  82. package/build/core/metrics/template/TimerMetricTemplate.d.ts.map +1 -0
  83. package/build/core/metrics/template/TimerMetricTemplate.html +39 -0
  84. package/build/core/metrics/template/TimerMetricTemplate.js +12 -0
  85. package/build/core/other/InputDecorator.d.ts +3 -0
  86. package/build/core/other/InputDecorator.d.ts.map +1 -0
  87. package/build/core/other/InputDecorator.js +43 -0
  88. package/build/core/other/service/InputService.d.ts +16 -0
  89. package/build/core/other/service/InputService.d.ts.map +1 -0
  90. package/build/core/other/service/InputService.js +31 -0
  91. package/build/core/other/service/SettingsService.d.ts +25 -0
  92. package/build/core/other/service/SettingsService.d.ts.map +1 -0
  93. package/build/core/other/service/SettingsService.js +74 -0
  94. package/build/core/other/template/BasicTemplate.d.ts +5 -0
  95. package/build/core/other/template/BasicTemplate.d.ts.map +1 -0
  96. package/build/core/other/template/BasicTemplate.html +76 -0
  97. package/build/core/other/template/BasicTemplate.js +11 -0
  98. package/build/core/other/template/SettingsTemplate.d.ts +5 -0
  99. package/build/core/other/template/SettingsTemplate.d.ts.map +1 -0
  100. package/build/core/other/template/SettingsTemplate.html +128 -0
  101. package/build/core/other/template/SettingsTemplate.js +11 -0
  102. package/build/core/tagging/NodeDescriptionDecorator.d.ts +17 -0
  103. package/build/core/tagging/NodeDescriptionDecorator.d.ts.map +1 -0
  104. package/build/core/tagging/NodeDescriptionDecorator.js +25 -0
  105. package/build/core/tagging/service/NodeTypeService.d.ts +15 -0
  106. package/build/core/tagging/service/NodeTypeService.d.ts.map +1 -0
  107. package/build/core/tagging/service/NodeTypeService.js +47 -0
  108. package/build/core/webhook/WebhookDecorator.d.ts +3 -0
  109. package/build/core/webhook/WebhookDecorator.d.ts.map +1 -0
  110. package/build/core/webhook/WebhookDecorator.js +45 -0
  111. package/build/core/webhook/node/WebhookServerConfigNode.d.ts +16 -0
  112. package/build/core/webhook/node/WebhookServerConfigNode.d.ts.map +1 -0
  113. package/build/core/webhook/node/WebhookServerConfigNode.html +61 -0
  114. package/build/core/webhook/node/WebhookServerConfigNode.js +40 -0
  115. package/build/core/webhook/service/ReverseProxyTypeService.d.ts +29 -0
  116. package/build/core/webhook/service/ReverseProxyTypeService.d.ts.map +1 -0
  117. package/build/core/webhook/service/ReverseProxyTypeService.js +24 -0
  118. package/build/core/webhook/service/WebhookServerService.d.ts +52 -0
  119. package/build/core/webhook/service/WebhookServerService.d.ts.map +1 -0
  120. package/build/core/webhook/service/WebhookServerService.js +146 -0
  121. package/build/core/webhook/template/WebhookTemplate.d.ts +22 -0
  122. package/build/core/webhook/template/WebhookTemplate.d.ts.map +1 -0
  123. package/build/core/webhook/template/WebhookTemplate.html +434 -0
  124. package/build/core/webhook/template/WebhookTemplate.js +12 -0
  125. package/build/index.d.ts +33 -0
  126. package/build/index.d.ts.map +1 -0
  127. package/build/index.js +55 -0
  128. package/package.json +67 -0
  129. package/src/GenerateNodes.ts +42 -0
  130. package/src/core/NodeConstructor.ts +889 -0
  131. package/src/core/NodeGenerator.ts +331 -0
  132. package/src/core/Utils.ts +19 -0
  133. package/src/core/logger/LoggerDecorator.ts +105 -0
  134. package/src/core/logger/node/ConsoleLoggerConfigNode.html +131 -0
  135. package/src/core/logger/node/ConsoleLoggerConfigNode.ts +46 -0
  136. package/src/core/logger/node/LoggerConfigNode.html +307 -0
  137. package/src/core/logger/node/LoggerConfigNode.ts +95 -0
  138. package/src/core/logger/node/LokiLoggerConfigNode.html +153 -0
  139. package/src/core/logger/node/LokiLoggerConfigNode.ts +58 -0
  140. package/src/core/logger/node/RestLoggerConfigNode.html +209 -0
  141. package/src/core/logger/node/RestLoggerConfigNode.ts +67 -0
  142. package/src/core/logger/service/LoggerService.ts +317 -0
  143. package/src/core/logger/service/LoggerServiceTypes.ts +26 -0
  144. package/src/core/logger/template/LoggerTemplate.html +328 -0
  145. package/src/core/logger/template/LoggerTemplate.ts +23 -0
  146. package/src/core/metrics/MetricsDecorator.ts +227 -0
  147. package/src/core/metrics/node/CounterMetricConfigNode.html +48 -0
  148. package/src/core/metrics/node/CounterMetricConfigNode.ts +62 -0
  149. package/src/core/metrics/node/GaugeMetricConfigNode.html +48 -0
  150. package/src/core/metrics/node/GaugeMetricConfigNode.ts +62 -0
  151. package/src/core/metrics/node/MetricsConfigNode.html +21 -0
  152. package/src/core/metrics/node/MetricsConfigNode.ts +55 -0
  153. package/src/core/metrics/node/TimerMetricConfigNode.html +190 -0
  154. package/src/core/metrics/node/TimerMetricConfigNode.ts +118 -0
  155. package/src/core/metrics/service/MetricsService.ts +560 -0
  156. package/src/core/metrics/template/CounterMetricTemplate.html +40 -0
  157. package/src/core/metrics/template/CounterMetricTemplate.ts +15 -0
  158. package/src/core/metrics/template/GaugeMetricTemplate.html +39 -0
  159. package/src/core/metrics/template/GaugeMetricTemplate.ts +15 -0
  160. package/src/core/metrics/template/MetricsTemplate.html +54 -0
  161. package/src/core/metrics/template/MetricsTemplate.ts +18 -0
  162. package/src/core/metrics/template/TimerMetricTemplate.html +39 -0
  163. package/src/core/metrics/template/TimerMetricTemplate.ts +14 -0
  164. package/src/core/other/InputDecorator.ts +57 -0
  165. package/src/core/other/service/InputService.ts +36 -0
  166. package/src/core/other/service/SettingsService.ts +103 -0
  167. package/src/core/other/template/BasicTemplate.html +76 -0
  168. package/src/core/other/template/BasicTemplate.ts +15 -0
  169. package/src/core/other/template/SettingsTemplate.html +128 -0
  170. package/src/core/other/template/SettingsTemplate.ts +17 -0
  171. package/src/core/tagging/NodeDescriptionDecorator.ts +39 -0
  172. package/src/core/tagging/service/NodeTypeService.ts +67 -0
  173. package/src/core/webhook/WebhookDecorator.ts +70 -0
  174. package/src/core/webhook/node/WebhookServerConfigNode.html +61 -0
  175. package/src/core/webhook/node/WebhookServerConfigNode.ts +38 -0
  176. package/src/core/webhook/service/ReverseProxyTypeService.ts +46 -0
  177. package/src/core/webhook/service/WebhookServerService.ts +211 -0
  178. package/src/core/webhook/template/WebhookTemplate.html +434 -0
  179. package/src/core/webhook/template/WebhookTemplate.ts +36 -0
  180. 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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GenerateNodes.d.ts.map
@@ -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);