@revenexx/integrations-node-sdk 1.5.0 → 1.5.1

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
@@ -78,7 +78,7 @@ export class UppercaseNode implements INode {
78
78
  category: 'transform',
79
79
  name: { en: 'Uppercase', de: 'Großschreiben' },
80
80
  description: { en: 'Upper-cases a string read from the input.' },
81
- icon: 'mdi:format-letter-case-upper',
81
+ icon: 'lucide:case-upper',
82
82
  inputs: { in: { dataType: 'string', required: true } },
83
83
  outputs: [{ name: 'out', kind: 'default', dataType: 'string', label: { en: 'Result', de: 'Ergebnis' } }],
84
84
  } satisfies INodeDescription;
@@ -107,7 +107,7 @@ export class ConditionIfNode implements INode {
107
107
  version: '1.0.0',
108
108
  category: 'control',
109
109
  name: { en: 'If condition', de: 'Wenn-Bedingung' },
110
- icon: 'mdi:source-branch',
110
+ icon: 'lucide:git-branch',
111
111
  inputs: { in: { dataType: 'any', required: true } },
112
112
  outputs: [
113
113
  { name: 'true', kind: 'branch', dataType: 'any', label: { en: 'True', de: 'Wahr' } },
@@ -153,7 +153,7 @@ export class HttpRequestNode implements INode {
153
153
  version: '1.0.0',
154
154
  category: 'action',
155
155
  name: { en: 'HTTP Request', de: 'HTTP-Anfrage' },
156
- icon: 'mdi:web',
156
+ icon: 'lucide:globe',
157
157
  inputs: { in: { dataType: 'object' } },
158
158
  outputs: [
159
159
  {
package/dist/index.d.cts CHANGED
@@ -54,6 +54,14 @@ interface IInputPort {
54
54
  required?: boolean;
55
55
  description?: LocalizedString;
56
56
  }
57
+ /**
58
+ * One value an output carries, as the editor offers it to the next step.
59
+ *
60
+ * Deliberately flat: there is no member describing what is inside the value,
61
+ * because the registry's manifest schema refuses any key beside these two and
62
+ * the studio reads none. What is inside a value is declared beside it, under a
63
+ * dotted name — see `IOutputPort.fields` (PO-408).
64
+ */
57
65
  interface IOutputField {
58
66
  dataType: DataType;
59
67
  description?: LocalizedString;
@@ -64,6 +72,15 @@ interface IOutputPort {
64
72
  name?: string;
65
73
  label?: LocalizedString;
66
74
  description?: LocalizedString;
75
+ /**
76
+ * The values this output carries, by name.
77
+ *
78
+ * A name containing `.` is a path into the value: `counts` as `object` and
79
+ * `counts.added` as `number`, side by side, offers both the object and the
80
+ * number inside it. The studio and the worker resolve that name as a path, so
81
+ * the record the node emits must really be nested — a record carrying a
82
+ * literal `"counts.added"` key is not reached by it (specs/output-fields.md).
83
+ */
67
84
  fields?: Record<string, IOutputField>;
68
85
  sourceFromConfig?: string;
69
86
  /**
@@ -207,6 +224,7 @@ interface INodeDescription {
207
224
  category: NodeCategory;
208
225
  name: LocalizedString;
209
226
  description?: LocalizedString;
227
+ /** A Lucide icon name, `lucide:<kebab-name>` as listed on lucide.dev (e.g. `lucide:globe`). The studio draws it as named; a name it cannot draw becomes a generic box. */
210
228
  icon?: string;
211
229
  /**
212
230
  * Curated node-picker group path, outermost first (max 4 levels), e.g.
@@ -479,6 +497,7 @@ interface ICredentialDescription {
479
497
  version: string;
480
498
  name: LocalizedString;
481
499
  description?: LocalizedString;
500
+ /** A Lucide icon name, `lucide:<kebab-name>` as listed on lucide.dev (e.g. `lucide:globe`). The studio draws it as named; a name it cannot draw becomes a generic box. */
482
501
  icon?: string;
483
502
  /** Associated images (screenshots, logos, banners) shipped with the package. */
484
503
  images?: IImage[];
@@ -588,6 +607,7 @@ interface ITemplateDescription {
588
607
  shortDescription?: LocalizedString;
589
608
  /** Long-form description in Markdown. */
590
609
  description?: LocalizedString;
610
+ /** A Lucide icon name, `lucide:<kebab-name>` as listed on lucide.dev (e.g. `lucide:globe`). The studio draws it as named; a name it cannot draw becomes a generic box. */
591
611
  icon?: string;
592
612
  /** Free-form industry tags (e.g. `any`, `medical`). */
593
613
  industries?: string[];
package/dist/index.d.ts CHANGED
@@ -54,6 +54,14 @@ interface IInputPort {
54
54
  required?: boolean;
55
55
  description?: LocalizedString;
56
56
  }
57
+ /**
58
+ * One value an output carries, as the editor offers it to the next step.
59
+ *
60
+ * Deliberately flat: there is no member describing what is inside the value,
61
+ * because the registry's manifest schema refuses any key beside these two and
62
+ * the studio reads none. What is inside a value is declared beside it, under a
63
+ * dotted name — see `IOutputPort.fields` (PO-408).
64
+ */
57
65
  interface IOutputField {
58
66
  dataType: DataType;
59
67
  description?: LocalizedString;
@@ -64,6 +72,15 @@ interface IOutputPort {
64
72
  name?: string;
65
73
  label?: LocalizedString;
66
74
  description?: LocalizedString;
75
+ /**
76
+ * The values this output carries, by name.
77
+ *
78
+ * A name containing `.` is a path into the value: `counts` as `object` and
79
+ * `counts.added` as `number`, side by side, offers both the object and the
80
+ * number inside it. The studio and the worker resolve that name as a path, so
81
+ * the record the node emits must really be nested — a record carrying a
82
+ * literal `"counts.added"` key is not reached by it (specs/output-fields.md).
83
+ */
67
84
  fields?: Record<string, IOutputField>;
68
85
  sourceFromConfig?: string;
69
86
  /**
@@ -207,6 +224,7 @@ interface INodeDescription {
207
224
  category: NodeCategory;
208
225
  name: LocalizedString;
209
226
  description?: LocalizedString;
227
+ /** A Lucide icon name, `lucide:<kebab-name>` as listed on lucide.dev (e.g. `lucide:globe`). The studio draws it as named; a name it cannot draw becomes a generic box. */
210
228
  icon?: string;
211
229
  /**
212
230
  * Curated node-picker group path, outermost first (max 4 levels), e.g.
@@ -479,6 +497,7 @@ interface ICredentialDescription {
479
497
  version: string;
480
498
  name: LocalizedString;
481
499
  description?: LocalizedString;
500
+ /** A Lucide icon name, `lucide:<kebab-name>` as listed on lucide.dev (e.g. `lucide:globe`). The studio draws it as named; a name it cannot draw becomes a generic box. */
482
501
  icon?: string;
483
502
  /** Associated images (screenshots, logos, banners) shipped with the package. */
484
503
  images?: IImage[];
@@ -588,6 +607,7 @@ interface ITemplateDescription {
588
607
  shortDescription?: LocalizedString;
589
608
  /** Long-form description in Markdown. */
590
609
  description?: LocalizedString;
610
+ /** A Lucide icon name, `lucide:<kebab-name>` as listed on lucide.dev (e.g. `lucide:globe`). The studio draws it as named; a name it cannot draw becomes a generic box. */
591
611
  icon?: string;
592
612
  /** Free-form industry tags (e.g. `any`, `medical`). */
593
613
  industries?: string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revenexx/integrations-node-sdk",
3
- "version": "1.5.0",
3
+ "version": "1.5.1",
4
4
  "description": "TypeScript interfaces and utilities for Revenexx integration nodes",
5
5
  "license": "MIT",
6
6
  "author": "revenexx GmbH",