@theotherwillembotha/node-red-plugincore 0.2.0 → 0.3.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.
Files changed (71) hide show
  1. package/build/GenerateNodes.js +9 -30
  2. package/build/Nodes.html +2 -4
  3. package/build/Nodes.js +2 -6
  4. package/build/Plugins.html +2 -218
  5. package/build/Plugins.js +1 -6
  6. package/build/core/NodeConstructor.d.ts +3 -0
  7. package/build/core/NodeConstructor.d.ts.map +1 -1
  8. package/build/core/NodeConstructor.js +19 -42
  9. package/build/core/NodeGenerator.d.ts +3 -1
  10. package/build/core/NodeGenerator.d.ts.map +1 -1
  11. package/build/core/NodeGenerator.js +76 -31
  12. package/build/core/logger/service/LoggerService.d.ts +2 -1
  13. package/build/core/logger/service/LoggerService.d.ts.map +1 -1
  14. package/build/core/logger/service/LoggerService.js +55 -8
  15. package/build/core/logger/template/LoggerTemplate.d.ts +1 -2
  16. package/build/core/logger/template/LoggerTemplate.d.ts.map +1 -1
  17. package/build/core/logger/template/LoggerTemplate.js +18 -5
  18. package/build/core/metrics/template/CounterMetricTemplate.d.ts +1 -2
  19. package/build/core/metrics/template/CounterMetricTemplate.d.ts.map +1 -1
  20. package/build/core/metrics/template/CounterMetricTemplate.js +16 -5
  21. package/build/core/metrics/template/GaugeMetricTemplate.d.ts +1 -2
  22. package/build/core/metrics/template/GaugeMetricTemplate.d.ts.map +1 -1
  23. package/build/core/metrics/template/GaugeMetricTemplate.js +16 -5
  24. package/build/core/metrics/template/MetricsTemplate.d.ts +1 -2
  25. package/build/core/metrics/template/MetricsTemplate.d.ts.map +1 -1
  26. package/build/core/metrics/template/MetricsTemplate.js +18 -5
  27. package/build/core/metrics/template/TimerMetricTemplate.d.ts +1 -2
  28. package/build/core/metrics/template/TimerMetricTemplate.d.ts.map +1 -1
  29. package/build/core/metrics/template/TimerMetricTemplate.js +16 -5
  30. package/build/core/other/template/BasicTemplate.d.ts +1 -2
  31. package/build/core/other/template/BasicTemplate.d.ts.map +1 -1
  32. package/build/core/other/template/BasicTemplate.js +15 -5
  33. package/build/core/other/template/SettingsTemplate.d.ts +1 -2
  34. package/build/core/other/template/SettingsTemplate.d.ts.map +1 -1
  35. package/build/core/other/template/SettingsTemplate.js +17 -5
  36. package/build/core/state/template/StateTemplate.d.ts +1 -2
  37. package/build/core/state/template/StateTemplate.d.ts.map +1 -1
  38. package/build/core/state/template/StateTemplate.js +19 -5
  39. package/build/core/tagging/TemplateDescriptionDecorator.d.ts +8 -0
  40. package/build/core/tagging/TemplateDescriptionDecorator.d.ts.map +1 -0
  41. package/build/core/tagging/TemplateDescriptionDecorator.js +10 -0
  42. package/build/core/ui/template/ScriptEditorTemplate.d.ts +1 -2
  43. package/build/core/ui/template/ScriptEditorTemplate.d.ts.map +1 -1
  44. package/build/core/ui/template/ScriptEditorTemplate.js +15 -5
  45. package/build/core/ui/template/UIHelperTemplate.d.ts +1 -2
  46. package/build/core/ui/template/UIHelperTemplate.d.ts.map +1 -1
  47. package/build/core/ui/template/UIHelperTemplate.js +15 -5
  48. package/build/core/webhook/template/WebhookTemplate.d.ts +1 -2
  49. package/build/core/webhook/template/WebhookTemplate.d.ts.map +1 -1
  50. package/build/core/webhook/template/WebhookTemplate.js +19 -6
  51. package/build/index.d.ts +1 -0
  52. package/build/index.d.ts.map +1 -1
  53. package/build/index.js +1 -0
  54. package/package.json +1 -2
  55. package/src/GenerateNodes.ts +9 -35
  56. package/src/core/NodeConstructor.ts +23 -45
  57. package/src/core/NodeGenerator.ts +87 -33
  58. package/src/core/logger/service/LoggerService.ts +23 -8
  59. package/src/core/logger/template/LoggerTemplate.ts +9 -11
  60. package/src/core/metrics/template/CounterMetricTemplate.ts +8 -11
  61. package/src/core/metrics/template/GaugeMetricTemplate.ts +8 -11
  62. package/src/core/metrics/template/MetricsTemplate.ts +9 -9
  63. package/src/core/metrics/template/TimerMetricTemplate.ts +8 -10
  64. package/src/core/other/template/BasicTemplate.ts +6 -11
  65. package/src/core/other/template/SettingsTemplate.ts +8 -13
  66. package/src/core/state/template/StateTemplate.ts +10 -9
  67. package/src/core/tagging/TemplateDescriptionDecorator.ts +19 -0
  68. package/src/core/ui/template/ScriptEditorTemplate.ts +6 -10
  69. package/src/core/ui/template/UIHelperTemplate.ts +6 -10
  70. package/src/core/webhook/template/WebhookTemplate.ts +10 -12
  71. package/src/index.ts +1 -0
@@ -1,15 +1,10 @@
1
- import { NodeAPI, NodeAPISettingsWithData } from "node-red"
2
- import { Template, TemplateDescriptor } from "../../NodeConstructor"
1
+ import { Template } from "../../NodeConstructor"
3
2
  import { SourceUtility } from "../../NodeGenerator";
3
+ import { TemplateDescription } from "../../tagging/TemplateDescriptionDecorator";
4
4
 
5
+ @TemplateDescription({
6
+ name: "basic",
7
+ templateFile: SourceUtility.getSourcePath("/build/", "/src/") + "BasicTemplate.html",
8
+ })
5
9
  export class BasicTemplate extends Template {
6
-
7
- public static getTemplateDescriptor(): TemplateDescriptor {
8
- return new TemplateDescriptor(
9
- "basic",
10
- BasicTemplate,
11
- SourceUtility.getSourcePath("/build/", "/src/") + "BasicTemplate.html",
12
- []
13
- );
14
- }
15
10
  }
@@ -1,17 +1,12 @@
1
- import { NodeAPI, NodeAPISettingsWithData } from "node-red"
2
- import { BaseNode, BaseNodeConfig, NodeManager, Template, TemplateDescriptor } from "../../NodeConstructor"
1
+ import { Template } from "../../NodeConstructor"
3
2
  import { SourceUtility } from "../../NodeGenerator";
3
+ import { TemplateDescription } from "../../tagging/TemplateDescriptionDecorator";
4
+ import { SettingsService } from "../service/SettingsService";
4
5
 
6
+ @TemplateDescription({
7
+ name: "settings",
8
+ templateFile: SourceUtility.getSourcePath("/build/", "/src/") + "SettingsTemplate.html",
9
+ dependencies: [SettingsService],
10
+ })
5
11
  export class SettingsTemplate extends Template {
6
-
7
-
8
-
9
- public static getTemplateDescriptor(): TemplateDescriptor {
10
- return new TemplateDescriptor(
11
- "settings",
12
- SettingsTemplate,
13
- SourceUtility.getSourcePath("/build/", "/src/") + "SettingsTemplate.html",
14
- []
15
- );
16
- }
17
12
  }
@@ -1,17 +1,18 @@
1
1
  import { SourceUtility } from "../../NodeGenerator";
2
- import { BaseNodeConfig, Template, TemplateDescriptor } from "../../NodeConstructor";
2
+ import { BaseNodeConfig, Template } from "../../NodeConstructor";
3
+ import { TemplateDescription } from "../../tagging/TemplateDescriptionDecorator";
4
+ import { DelegatedConfigReferenceNode } from "../../other/node/DelegatedConfigReferenceNode";
5
+ import { InternalStateConfigNode } from "../node/InternalStateConfigNode";
6
+ import { StateService } from "../service/StateService";
3
7
 
4
8
  export interface StateTemplateConfig extends BaseNodeConfig {
5
9
  stateReference: string;
6
10
  }
7
11
 
12
+ @TemplateDescription({
13
+ name: "state",
14
+ templateFile: SourceUtility.getSourcePath("/build/", "/src/") + "StateTemplate.html",
15
+ dependencies: [DelegatedConfigReferenceNode, InternalStateConfigNode, StateService],
16
+ })
8
17
  export class StateTemplate extends Template {
9
-
10
- public static getTemplateDescriptor(): TemplateDescriptor {
11
- return new TemplateDescriptor(
12
- "state",
13
- StateTemplate,
14
- SourceUtility.getSourcePath("/build/", "/src/") + "StateTemplate.html",
15
- []);
16
- }
17
18
  }
@@ -0,0 +1,19 @@
1
+ import { DependencyType, TemplateDescriptor } from "../NodeConstructor";
2
+
3
+ export type TemplateDescriptionConfig = {
4
+ name: string;
5
+ templateFile: string;
6
+ dependencies?: DependencyType[];
7
+ }
8
+
9
+ export function TemplateDescription(config: TemplateDescriptionConfig) {
10
+ return function(target: any) {
11
+ const descriptor = new TemplateDescriptor(
12
+ config.name,
13
+ target,
14
+ config.templateFile,
15
+ config.dependencies ?? []
16
+ );
17
+ target.getTemplateDescriptor = (): TemplateDescriptor => descriptor;
18
+ };
19
+ }
@@ -1,14 +1,10 @@
1
- import { Template, TemplateDescriptor } from "../../NodeConstructor"
1
+ import { Template } from "../../NodeConstructor"
2
2
  import { SourceUtility } from "../../NodeGenerator";
3
+ import { TemplateDescription } from "../../tagging/TemplateDescriptionDecorator";
3
4
 
5
+ @TemplateDescription({
6
+ name: "script-editor",
7
+ templateFile: SourceUtility.getSourcePath("/build/", "/src/") + "ScriptEditorTemplate.html",
8
+ })
4
9
  export class ScriptEditorTemplate extends Template {
5
-
6
- public static getTemplateDescriptor(): TemplateDescriptor {
7
- return new TemplateDescriptor(
8
- "script-editor",
9
- ScriptEditorTemplate,
10
- SourceUtility.getSourcePath("/build/", "/src/") + "ScriptEditorTemplate.html",
11
- []
12
- );
13
- }
14
10
  }
@@ -1,14 +1,10 @@
1
- import { Template, TemplateDescriptor } from "../../NodeConstructor"
1
+ import { Template } from "../../NodeConstructor"
2
2
  import { SourceUtility } from "../../NodeGenerator";
3
+ import { TemplateDescription } from "../../tagging/TemplateDescriptionDecorator";
3
4
 
5
+ @TemplateDescription({
6
+ name: "ui-helper",
7
+ templateFile: SourceUtility.getSourcePath("/build/", "/src/") + "UIHelperTemplate.html",
8
+ })
4
9
  export class UIHelperTemplate extends Template {
5
-
6
- public static getTemplateDescriptor(): TemplateDescriptor {
7
- return new TemplateDescriptor(
8
- "ui-helper",
9
- UIHelperTemplate,
10
- SourceUtility.getSourcePath("/build/", "/src/") + "UIHelperTemplate.html",
11
- []
12
- );
13
- }
14
10
  }
@@ -1,6 +1,9 @@
1
- import { BaseNodeConfig, Template, TemplateDescriptor } from "../../NodeConstructor"
2
- import { WebhookServerConfigNode } from "../node/WebhookServerConfigNode";
1
+ import { BaseNodeConfig, Template } from "../../NodeConstructor"
3
2
  import { SourceUtility } from "../../NodeGenerator";
3
+ import { TemplateDescription } from "../../tagging/TemplateDescriptionDecorator";
4
+ import { DelegatedConfigReferenceNode } from "../../other/node/DelegatedConfigReferenceNode";
5
+ import { WebhookServerConfigNode } from "../node/WebhookServerConfigNode";
6
+ import { WebhookServerService } from "../service/WebhookServerService";
4
7
  import { RestAuthType, ApiKeyMechanismType } from "../../logger/service/LoggerService";
5
8
 
6
9
  export interface WebhookTemplateConfig extends BaseNodeConfig{
@@ -22,15 +25,10 @@ export type ReverseproxyConnection = {
22
25
  domainname:string
23
26
  }
24
27
 
28
+ @TemplateDescription({
29
+ name: "webhook",
30
+ templateFile: SourceUtility.getSourcePath("/build/", "/src/") + "WebhookTemplate.html",
31
+ dependencies: [DelegatedConfigReferenceNode, WebhookServerConfigNode, WebhookServerService],
32
+ })
25
33
  export class WebhookTemplate extends Template {
26
-
27
- static getTemplateDescriptor(): TemplateDescriptor {
28
- return new TemplateDescriptor(
29
- "webhook", WebhookTemplate,
30
- SourceUtility.getSourcePath("/build/", "/src/") + "WebhookTemplate.html",
31
- [WebhookServerConfigNode])
32
- }
33
34
  }
34
-
35
-
36
-
package/src/index.ts CHANGED
@@ -28,6 +28,7 @@ export * from "./core/state/template/StateTemplate";
28
28
  export * from "./core/tagging/service/NodeTypeService";
29
29
  export * from "./core/tagging/NodeDescriptionDecorator";
30
30
  export * from "./core/tagging/ServiceDescriptionDecorator";
31
+ export * from "./core/tagging/TemplateDescriptionDecorator";
31
32
 
32
33
  // UI
33
34
  export * from "./core/ui/template/UIHelperTemplate";