@bonsae/node-red-salesforce 0.4.1 → 0.5.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 +40 -4
- package/icons/salesforce-apex-code.png +0 -0
- package/icons/salesforce-apex-invocation.png +0 -0
- package/index.d.ts +88 -39
- package/index.html +1 -1
- package/index.mjs +796 -372
- package/index.mjs.map +1 -1
- package/locales/de/index.html +68 -15
- package/locales/de/index.json +54 -12
- package/locales/en-US/index.html +69 -16
- package/locales/en-US/index.json +57 -16
- package/locales/es-ES/index.html +75 -22
- package/locales/es-ES/index.json +61 -19
- package/locales/fr/index.html +75 -22
- package/locales/fr/index.json +63 -21
- package/locales/ja/index.html +74 -21
- package/locales/ja/index.json +60 -18
- package/locales/ko/index.html +74 -21
- package/locales/ko/index.json +60 -18
- package/locales/pt-BR/index.html +70 -17
- package/locales/pt-BR/index.json +57 -15
- package/locales/ru/index.html +74 -21
- package/locales/ru/index.json +60 -18
- package/locales/zh-CN/index.html +74 -21
- package/locales/zh-CN/index.json +60 -18
- package/locales/zh-TW/index.html +74 -21
- package/locales/zh-TW/index.json +60 -18
- package/package.json +1 -1
- package/resources/index.dnWzY-T-.js +1 -0
- package/resources/index.FDBQSjT7.js +0 -1
package/locales/de/index.json
CHANGED
|
@@ -1,10 +1,45 @@
|
|
|
1
1
|
{
|
|
2
|
-
"salesforce-apex": {
|
|
2
|
+
"salesforce-apex-code": {
|
|
3
3
|
"configs": {
|
|
4
4
|
"name": "Name",
|
|
5
5
|
"connection": "Verbindung",
|
|
6
|
+
"apexType": "Typ",
|
|
7
|
+
"className": "Klassenname",
|
|
8
|
+
"urlMapping": "URL-Zuordnung",
|
|
9
|
+
"httpMethod": "HTTP-Methode",
|
|
10
|
+
"code": "Apex-Code"
|
|
11
|
+
},
|
|
12
|
+
"toggles": {
|
|
13
|
+
"validateInput": "Eingabe validieren",
|
|
14
|
+
"validateOutput": "Ausgabe validieren",
|
|
15
|
+
"errorPort": "Fehler-Port",
|
|
16
|
+
"completePort": "Abschluss-Port",
|
|
17
|
+
"statusPort": "Status-Port"
|
|
18
|
+
},
|
|
19
|
+
"$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
|
|
20
|
+
"label": "Apex Code",
|
|
21
|
+
"description": "Stellt benutzerdefinierten Apex-Code in einer Salesforce-Org bereit und fuehrt ihn aus. Unterstuetzt Invocable- und REST-Typen.",
|
|
22
|
+
"inputLabels": "Eingabe",
|
|
23
|
+
"outputLabels": [
|
|
24
|
+
"Antwort"
|
|
25
|
+
],
|
|
26
|
+
"input": {
|
|
27
|
+
"payload": "Eingabedaten, die als JSON-String an die Apex-Methode übergeben werden"
|
|
28
|
+
},
|
|
29
|
+
"outputs": [
|
|
30
|
+
{
|
|
31
|
+
"payload": "Apex-Ausführungsantwort"
|
|
32
|
+
}
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
"salesforce-apex-invocation": {
|
|
36
|
+
"configs": {
|
|
37
|
+
"name": "Name",
|
|
38
|
+
"connection": "Verbindung",
|
|
39
|
+
"apexType": "Typ",
|
|
6
40
|
"method": "Methode",
|
|
7
|
-
"path": "
|
|
41
|
+
"path": "Endpunkt",
|
|
42
|
+
"actionName": "Aktion"
|
|
8
43
|
},
|
|
9
44
|
"toggles": {
|
|
10
45
|
"validateInput": "Eingabe validieren",
|
|
@@ -14,18 +49,18 @@
|
|
|
14
49
|
"statusPort": "Status-Port"
|
|
15
50
|
},
|
|
16
51
|
"$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
|
|
17
|
-
"label": "Apex",
|
|
18
|
-
"description": "Ruft
|
|
52
|
+
"label": "Apex Invocation",
|
|
53
|
+
"description": "Ruft vorhandene Apex-REST-Endpunkte oder Invocable Actions in einer Salesforce-Org auf.",
|
|
19
54
|
"inputLabels": "Anfrage",
|
|
20
55
|
"outputLabels": [
|
|
21
56
|
"Antwort"
|
|
22
57
|
],
|
|
23
58
|
"input": {
|
|
24
|
-
"payload": "Anfragekörper"
|
|
59
|
+
"payload": "Anfragekörper für POST/PUT/PATCH, oder ignoriert für GET/DELETE"
|
|
25
60
|
},
|
|
26
61
|
"outputs": [
|
|
27
62
|
{
|
|
28
|
-
"payload": "Apex-Antwort"
|
|
63
|
+
"payload": "Apex-Endpunkt-Antwort"
|
|
29
64
|
}
|
|
30
65
|
]
|
|
31
66
|
},
|
|
@@ -35,7 +70,13 @@
|
|
|
35
70
|
"connection": "Verbindung",
|
|
36
71
|
"operation": "Operation",
|
|
37
72
|
"sObjectType": "SObject-Typ",
|
|
38
|
-
"
|
|
73
|
+
"query": "SOQL-Abfrage",
|
|
74
|
+
"externalIdField": "Externes ID-Feld",
|
|
75
|
+
"assignmentRuleId": "Zuweisungsregel-ID",
|
|
76
|
+
"columnDelimiter": "Spaltentrennzeichen",
|
|
77
|
+
"lineEnding": "Zeilenende",
|
|
78
|
+
"pollInterval": "Abfrageintervall (ms)",
|
|
79
|
+
"pollTimeout": "Abfrage-Timeout (ms)"
|
|
39
80
|
},
|
|
40
81
|
"toggles": {
|
|
41
82
|
"validateInput": "Eingabe validieren",
|
|
@@ -53,11 +94,11 @@
|
|
|
53
94
|
"Job Abgeschlossen"
|
|
54
95
|
],
|
|
55
96
|
"input": {
|
|
56
|
-
"payload": "Datensatz-Array oder
|
|
97
|
+
"payload": "Datensatz-Array, CSV-String, lesbarer Stream (Aufnahme) oder Auslöser (Abfrage)"
|
|
57
98
|
},
|
|
58
99
|
"outputs": [
|
|
59
100
|
{
|
|
60
|
-
"payload": "
|
|
101
|
+
"payload": "Abfrage: einzelner Datensatz. Aufnahme: { successfulResults, failedResults, unprocessedRecords }"
|
|
61
102
|
}
|
|
62
103
|
]
|
|
63
104
|
},
|
|
@@ -106,11 +147,11 @@
|
|
|
106
147
|
"SObject-Metadaten"
|
|
107
148
|
],
|
|
108
149
|
"input": {
|
|
109
|
-
"payload": "
|
|
150
|
+
"payload": "SObject-API-Name (überschreibt die Konfiguration, falls angegeben)"
|
|
110
151
|
},
|
|
111
152
|
"outputs": [
|
|
112
153
|
{
|
|
113
|
-
"payload": "SObject-
|
|
154
|
+
"payload": "SObject-Beschreibungsergebnis mit Feldern, untergeordneten Beziehungen und Datensatztypinformationen"
|
|
114
155
|
}
|
|
115
156
|
]
|
|
116
157
|
},
|
|
@@ -120,7 +161,8 @@
|
|
|
120
161
|
"connection": "Verbindung",
|
|
121
162
|
"operation": "Operation",
|
|
122
163
|
"sObjectType": "SObject-Typ",
|
|
123
|
-
"externalIdField": "Externes ID-Feld"
|
|
164
|
+
"externalIdField": "Externes ID-Feld",
|
|
165
|
+
"record": "Datensatz"
|
|
124
166
|
},
|
|
125
167
|
"toggles": {
|
|
126
168
|
"validateInput": "Eingabe validieren",
|
package/locales/en-US/index.html
CHANGED
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
<tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Yes</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
74
74
|
<tr><td>Operation</td><td>operation</td><td></td><td>Yes</td><td><code>"create"</code></td><td></td></tr>
|
|
75
75
|
<tr><td>SObject Type</td><td>sObjectType</td><td>TypedInput</td><td>Yes</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
76
|
-
<tr><td
|
|
76
|
+
<tr><td>Record</td><td>record</td><td>TypedInput</td><td>Yes</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
77
77
|
<tr><td>External ID Field</td><td>externalIdField</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
78
78
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
79
79
|
<tr><td></td><td>completePort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
</div>
|
|
104
104
|
</script>
|
|
105
105
|
<script type="text/html" data-help-name="salesforce-bulk">
|
|
106
|
-
<p>Performs bulk operations using the Salesforce Bulk API 2.0 for large data volumes.</p>
|
|
106
|
+
<p>Performs bulk operations using the Salesforce Bulk API 2.0 for large data volumes. Accepts arrays, CSV strings, or readable streams for ingest. SOQL strings for query.</p>
|
|
107
107
|
<h3>Properties</h3>
|
|
108
108
|
<div style="overflow-x:auto">
|
|
109
109
|
<table width="100%" style="min-width:500px">
|
|
@@ -112,14 +112,15 @@
|
|
|
112
112
|
<tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Yes</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
113
113
|
<tr><td>Operation</td><td>operation</td><td></td><td>Yes</td><td><code>"insert"</code></td><td></td></tr>
|
|
114
114
|
<tr><td>SObject Type</td><td>sObjectType</td><td>TypedInput</td><td>Yes</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
115
|
+
<tr><td>SOQL Query</td><td>query</td><td>TypedInput</td><td>Yes</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
115
116
|
<tr><td>External ID Field</td><td>externalIdField</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
116
|
-
<tr><td
|
|
117
|
-
<tr><td
|
|
118
|
-
<tr><td
|
|
119
|
-
<tr><td
|
|
120
|
-
<tr><td
|
|
117
|
+
<tr><td>Assignment Rule ID</td><td>assignmentRuleId</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
118
|
+
<tr><td>Column Delimiter</td><td>columnDelimiter</td><td></td><td>Yes</td><td><code>"COMMA"</code></td><td></td></tr>
|
|
119
|
+
<tr><td>Line Ending</td><td>lineEnding</td><td></td><td>Yes</td><td><code>"LF"</code></td><td></td></tr>
|
|
120
|
+
<tr><td>Poll Interval (ms)</td><td>pollInterval</td><td>number [min: 1000]</td><td>Yes</td><td><code>5000</code></td><td></td></tr>
|
|
121
|
+
<tr><td>Poll Timeout (ms)</td><td>pollTimeout</td><td>number [min: 5000]</td><td>Yes</td><td><code>60000</code></td><td></td></tr>
|
|
121
122
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
122
|
-
<tr><td></td><td>completePort</td><td>boolean</td><td>Yes</td><td><code>
|
|
123
|
+
<tr><td></td><td>completePort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
123
124
|
<tr><td></td><td>statusPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
124
125
|
</tbody>
|
|
125
126
|
</table>
|
|
@@ -130,7 +131,17 @@
|
|
|
130
131
|
<table width="100%" style="min-width:500px">
|
|
131
132
|
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
132
133
|
<tbody>
|
|
133
|
-
<tr><td>Records array or
|
|
134
|
+
<tr><td>Records array, CSV string, readable stream (ingest) or trigger (query)</td><td>payload</td><td></td><td>Yes</td><td>Records array, CSV string, readable stream (ingest) or SOQL string (query)</td></tr>
|
|
135
|
+
</tbody>
|
|
136
|
+
</table>
|
|
137
|
+
</div>
|
|
138
|
+
|
|
139
|
+
<h3>Output</h3>
|
|
140
|
+
<div style="overflow-x:auto">
|
|
141
|
+
<table width="100%" style="min-width:500px">
|
|
142
|
+
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
143
|
+
<tbody>
|
|
144
|
+
<tr><td>Query: individual record. Ingest: { successfulResults, failedResults, unprocessedRecords }</td><td>payload</td><td></td><td>Yes</td><td>Query: individual record. Ingest: { successfulResults, failedResults, unprocessedRecords }</td></tr>
|
|
134
145
|
</tbody>
|
|
135
146
|
</table>
|
|
136
147
|
</div>
|
|
@@ -156,7 +167,7 @@
|
|
|
156
167
|
<table width="100%" style="min-width:500px">
|
|
157
168
|
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
158
169
|
<tbody>
|
|
159
|
-
<tr><td>
|
|
170
|
+
<tr><td>SObject API name (overrides config if provided)</td><td>payload</td><td></td><td>Yes</td><td></td></tr>
|
|
160
171
|
</tbody>
|
|
161
172
|
</table>
|
|
162
173
|
</div>
|
|
@@ -166,7 +177,7 @@
|
|
|
166
177
|
<table width="100%" style="min-width:500px">
|
|
167
178
|
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
168
179
|
<tbody>
|
|
169
|
-
<tr><td>SObject describe
|
|
180
|
+
<tr><td>SObject describe result with fields, child relationships, and record type info</td><td>payload</td><td>object</td><td>Yes</td><td></td></tr>
|
|
170
181
|
</tbody>
|
|
171
182
|
</table>
|
|
172
183
|
</div>
|
|
@@ -203,16 +214,58 @@
|
|
|
203
214
|
</table>
|
|
204
215
|
</div>
|
|
205
216
|
</script>
|
|
206
|
-
<script type="text/html" data-help-name="salesforce-apex">
|
|
207
|
-
<p>
|
|
217
|
+
<script type="text/html" data-help-name="salesforce-apex-invocation">
|
|
218
|
+
<p>Calls existing Apex REST endpoints or Invocable Actions on a Salesforce org.</p>
|
|
208
219
|
<h3>Properties</h3>
|
|
209
220
|
<div style="overflow-x:auto">
|
|
210
221
|
<table width="100%" style="min-width:500px">
|
|
211
222
|
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th>Default</th><th style="width:35%">Description</th></tr></thead>
|
|
212
223
|
<tbody>
|
|
213
224
|
<tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Yes</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
225
|
+
<tr><td>Type</td><td>apexType</td><td></td><td>Yes</td><td><code>"rest"</code></td><td></td></tr>
|
|
214
226
|
<tr><td>Method</td><td>method</td><td></td><td>Yes</td><td><code>"POST"</code></td><td></td></tr>
|
|
215
|
-
<tr><td>
|
|
227
|
+
<tr><td>Endpoint</td><td>path</td><td>TypedInput</td><td>Yes</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
228
|
+
<tr><td>Action</td><td>actionName</td><td>string</td><td>Yes</td><td><code>""</code></td><td></td></tr>
|
|
229
|
+
<tr><td></td><td>errorPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
230
|
+
<tr><td></td><td>completePort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
231
|
+
<tr><td></td><td>statusPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
232
|
+
</tbody>
|
|
233
|
+
</table>
|
|
234
|
+
</div>
|
|
235
|
+
|
|
236
|
+
<h3>Input</h3>
|
|
237
|
+
<div style="overflow-x:auto">
|
|
238
|
+
<table width="100%" style="min-width:500px">
|
|
239
|
+
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
240
|
+
<tbody>
|
|
241
|
+
<tr><td>Request body for POST/PUT/PATCH, or ignored for GET/DELETE</td><td>payload</td><td></td><td>Yes</td><td></td></tr>
|
|
242
|
+
</tbody>
|
|
243
|
+
</table>
|
|
244
|
+
</div>
|
|
245
|
+
|
|
246
|
+
<h3>Output</h3>
|
|
247
|
+
<div style="overflow-x:auto">
|
|
248
|
+
<table width="100%" style="min-width:500px">
|
|
249
|
+
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
250
|
+
<tbody>
|
|
251
|
+
<tr><td>Apex endpoint response</td><td>payload</td><td></td><td>Yes</td><td></td></tr>
|
|
252
|
+
</tbody>
|
|
253
|
+
</table>
|
|
254
|
+
</div>
|
|
255
|
+
</script>
|
|
256
|
+
<script type="text/html" data-help-name="salesforce-apex-code">
|
|
257
|
+
<p>Deploys and executes custom Apex code on a Salesforce org. Supports Invocable and REST types.</p>
|
|
258
|
+
<h3>Properties</h3>
|
|
259
|
+
<div style="overflow-x:auto">
|
|
260
|
+
<table width="100%" style="min-width:500px">
|
|
261
|
+
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th>Default</th><th style="width:35%">Description</th></tr></thead>
|
|
262
|
+
<tbody>
|
|
263
|
+
<tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Yes</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
264
|
+
<tr><td>Type</td><td>apexType</td><td></td><td>Yes</td><td><code>"invocable"</code></td><td></td></tr>
|
|
265
|
+
<tr><td>Class Name</td><td>className</td><td>string</td><td>Yes</td><td><code>""</code></td><td></td></tr>
|
|
266
|
+
<tr><td>URL Mapping</td><td>urlMapping</td><td>string</td><td>Yes</td><td><code>""</code></td><td></td></tr>
|
|
267
|
+
<tr><td>HTTP Method</td><td>httpMethod</td><td></td><td>Yes</td><td><code>"HttpPost"</code></td><td></td></tr>
|
|
268
|
+
<tr><td>Apex Code</td><td>code</td><td>string</td><td>Yes</td><td><code>""</code></td><td></td></tr>
|
|
216
269
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
217
270
|
<tr><td></td><td>completePort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
218
271
|
<tr><td></td><td>statusPort</td><td>boolean</td><td>Yes</td><td><code>false</code></td><td></td></tr>
|
|
@@ -225,7 +278,7 @@
|
|
|
225
278
|
<table width="100%" style="min-width:500px">
|
|
226
279
|
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
227
280
|
<tbody>
|
|
228
|
-
<tr><td>
|
|
281
|
+
<tr><td>Input data passed to the Apex method as a JSON string</td><td>payload</td><td></td><td>Yes</td><td></td></tr>
|
|
229
282
|
</tbody>
|
|
230
283
|
</table>
|
|
231
284
|
</div>
|
|
@@ -235,7 +288,7 @@
|
|
|
235
288
|
<table width="100%" style="min-width:500px">
|
|
236
289
|
<thead><tr><th>Label</th><th>Property</th><th>Type</th><th>Required</th><th style="width:35%">Description</th></tr></thead>
|
|
237
290
|
<tbody>
|
|
238
|
-
<tr><td>Apex response</td><td>payload</td><td></td><td>Yes</td><td></td></tr>
|
|
291
|
+
<tr><td>Apex execution response</td><td>payload</td><td></td><td>Yes</td><td></td></tr>
|
|
239
292
|
</tbody>
|
|
240
293
|
</table>
|
|
241
294
|
</div>
|
package/locales/en-US/index.json
CHANGED
|
@@ -1,10 +1,45 @@
|
|
|
1
1
|
{
|
|
2
|
-
"salesforce-apex": {
|
|
2
|
+
"salesforce-apex-code": {
|
|
3
3
|
"configs": {
|
|
4
4
|
"name": "Name",
|
|
5
5
|
"connection": "Connection",
|
|
6
|
+
"apexType": "Type",
|
|
7
|
+
"className": "Class Name",
|
|
8
|
+
"urlMapping": "URL Mapping",
|
|
9
|
+
"httpMethod": "HTTP Method",
|
|
10
|
+
"code": "Apex Code"
|
|
11
|
+
},
|
|
12
|
+
"toggles": {
|
|
13
|
+
"validateInput": "Validate Input",
|
|
14
|
+
"validateOutput": "Validate Output",
|
|
15
|
+
"errorPort": "Error Port",
|
|
16
|
+
"completePort": "Complete Port",
|
|
17
|
+
"statusPort": "Status Port"
|
|
18
|
+
},
|
|
19
|
+
"$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
|
|
20
|
+
"label": "Apex Code",
|
|
21
|
+
"description": "Deploys and executes custom Apex code on a Salesforce org. Supports Invocable and REST types.",
|
|
22
|
+
"inputLabels": "Input",
|
|
23
|
+
"outputLabels": [
|
|
24
|
+
"Response"
|
|
25
|
+
],
|
|
26
|
+
"input": {
|
|
27
|
+
"payload": "Input data passed to the Apex method as a JSON string"
|
|
28
|
+
},
|
|
29
|
+
"outputs": [
|
|
30
|
+
{
|
|
31
|
+
"payload": "Apex execution response"
|
|
32
|
+
}
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
"salesforce-apex-invocation": {
|
|
36
|
+
"configs": {
|
|
37
|
+
"name": "Name",
|
|
38
|
+
"connection": "Connection",
|
|
39
|
+
"apexType": "Type",
|
|
6
40
|
"method": "Method",
|
|
7
|
-
"path": "
|
|
41
|
+
"path": "Endpoint",
|
|
42
|
+
"actionName": "Action"
|
|
8
43
|
},
|
|
9
44
|
"toggles": {
|
|
10
45
|
"validateInput": "Validate Input",
|
|
@@ -14,18 +49,18 @@
|
|
|
14
49
|
"statusPort": "Status Port"
|
|
15
50
|
},
|
|
16
51
|
"$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
|
|
17
|
-
"label": "Apex",
|
|
18
|
-
"description": "
|
|
52
|
+
"label": "Apex Invocation",
|
|
53
|
+
"description": "Calls existing Apex REST endpoints or Invocable Actions on a Salesforce org.",
|
|
19
54
|
"inputLabels": "Request",
|
|
20
55
|
"outputLabels": [
|
|
21
56
|
"Response"
|
|
22
57
|
],
|
|
23
58
|
"input": {
|
|
24
|
-
"payload": "Request body"
|
|
59
|
+
"payload": "Request body for POST/PUT/PATCH, or ignored for GET/DELETE"
|
|
25
60
|
},
|
|
26
61
|
"outputs": [
|
|
27
62
|
{
|
|
28
|
-
"payload": "Apex response"
|
|
63
|
+
"payload": "Apex endpoint response"
|
|
29
64
|
}
|
|
30
65
|
]
|
|
31
66
|
},
|
|
@@ -35,7 +70,13 @@
|
|
|
35
70
|
"connection": "Connection",
|
|
36
71
|
"operation": "Operation",
|
|
37
72
|
"sObjectType": "SObject Type",
|
|
38
|
-
"
|
|
73
|
+
"query": "SOQL Query",
|
|
74
|
+
"externalIdField": "External ID Field",
|
|
75
|
+
"assignmentRuleId": "Assignment Rule ID",
|
|
76
|
+
"columnDelimiter": "Column Delimiter",
|
|
77
|
+
"lineEnding": "Line Ending",
|
|
78
|
+
"pollInterval": "Poll Interval (ms)",
|
|
79
|
+
"pollTimeout": "Poll Timeout (ms)"
|
|
39
80
|
},
|
|
40
81
|
"toggles": {
|
|
41
82
|
"validateInput": "Validate Input",
|
|
@@ -46,18 +87,17 @@
|
|
|
46
87
|
},
|
|
47
88
|
"$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
|
|
48
89
|
"label": "Bulk",
|
|
49
|
-
"description": "Performs bulk operations using the Salesforce Bulk API 2.0 for large data volumes.",
|
|
50
|
-
"inputLabels": "Records or
|
|
90
|
+
"description": "Performs bulk operations using the Salesforce Bulk API 2.0 for large data volumes. Accepts arrays, CSV strings, or readable streams for ingest. SOQL strings for query.",
|
|
91
|
+
"inputLabels": "Records, stream, or SOQL",
|
|
51
92
|
"outputLabels": [
|
|
52
|
-
"
|
|
53
|
-
"Job Created"
|
|
93
|
+
"Result"
|
|
54
94
|
],
|
|
55
95
|
"input": {
|
|
56
|
-
"payload": "Records array or
|
|
96
|
+
"payload": "Records array, CSV string, readable stream (ingest) or trigger (query)"
|
|
57
97
|
},
|
|
58
98
|
"outputs": [
|
|
59
99
|
{
|
|
60
|
-
"payload": "
|
|
100
|
+
"payload": "Query: individual record. Ingest: { successfulResults, failedResults, unprocessedRecords }"
|
|
61
101
|
}
|
|
62
102
|
]
|
|
63
103
|
},
|
|
@@ -106,11 +146,11 @@
|
|
|
106
146
|
"SObject metadata"
|
|
107
147
|
],
|
|
108
148
|
"input": {
|
|
109
|
-
"payload": "
|
|
149
|
+
"payload": "SObject API name (overrides config if provided)"
|
|
110
150
|
},
|
|
111
151
|
"outputs": [
|
|
112
152
|
{
|
|
113
|
-
"payload": "SObject describe
|
|
153
|
+
"payload": "SObject describe result with fields, child relationships, and record type info"
|
|
114
154
|
}
|
|
115
155
|
]
|
|
116
156
|
},
|
|
@@ -120,7 +160,8 @@
|
|
|
120
160
|
"connection": "Connection",
|
|
121
161
|
"operation": "Operation",
|
|
122
162
|
"sObjectType": "SObject Type",
|
|
123
|
-
"externalIdField": "External ID Field"
|
|
163
|
+
"externalIdField": "External ID Field",
|
|
164
|
+
"record": "Record"
|
|
124
165
|
},
|
|
125
166
|
"toggles": {
|
|
126
167
|
"validateInput": "Validate Input",
|
package/locales/es-ES/index.html
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
<table width="100%" style="min-width:500px">
|
|
33
33
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
34
34
|
<tbody>
|
|
35
|
-
<tr><td>
|
|
35
|
+
<tr><td>Conexión</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
36
36
|
<tr><td>Consulta</td><td>query</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
37
37
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
38
38
|
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
@@ -70,10 +70,10 @@
|
|
|
70
70
|
<table width="100%" style="min-width:500px">
|
|
71
71
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
72
72
|
<tbody>
|
|
73
|
-
<tr><td>
|
|
73
|
+
<tr><td>Conexión</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
74
74
|
<tr><td>Operación</td><td>operation</td><td></td><td>Sí</td><td><code>"create"</code></td><td></td></tr>
|
|
75
75
|
<tr><td>Tipo de SObject</td><td>sObjectType</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
76
|
-
<tr><td
|
|
76
|
+
<tr><td>Registro</td><td>record</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
77
77
|
<tr><td>Campo de ID externo</td><td>externalIdField</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
78
78
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
79
79
|
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
@@ -109,17 +109,18 @@
|
|
|
109
109
|
<table width="100%" style="min-width:500px">
|
|
110
110
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
111
111
|
<tbody>
|
|
112
|
-
<tr><td>
|
|
112
|
+
<tr><td>Conexión</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
113
113
|
<tr><td>Operación</td><td>operation</td><td></td><td>Sí</td><td><code>"insert"</code></td><td></td></tr>
|
|
114
114
|
<tr><td>Tipo de SObject</td><td>sObjectType</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
115
|
+
<tr><td>Consulta SOQL</td><td>query</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
115
116
|
<tr><td>Campo de ID externo</td><td>externalIdField</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
116
|
-
<tr><td
|
|
117
|
-
<tr><td
|
|
118
|
-
<tr><td
|
|
119
|
-
<tr><td
|
|
120
|
-
<tr><td
|
|
117
|
+
<tr><td>ID de regla de asignación</td><td>assignmentRuleId</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
118
|
+
<tr><td>Delimitador de columna</td><td>columnDelimiter</td><td></td><td>Sí</td><td><code>"COMMA"</code></td><td></td></tr>
|
|
119
|
+
<tr><td>Fin de línea</td><td>lineEnding</td><td></td><td>Sí</td><td><code>"LF"</code></td><td></td></tr>
|
|
120
|
+
<tr><td>Intervalo de sondeo (ms)</td><td>pollInterval</td><td>number [min: 1000]</td><td>Sí</td><td><code>5000</code></td><td></td></tr>
|
|
121
|
+
<tr><td>Tiempo de espera de sondeo (ms)</td><td>pollTimeout</td><td>number [min: 5000]</td><td>Sí</td><td><code>60000</code></td><td></td></tr>
|
|
121
122
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
122
|
-
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>
|
|
123
|
+
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
123
124
|
<tr><td></td><td>statusPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
124
125
|
</tbody>
|
|
125
126
|
</table>
|
|
@@ -130,7 +131,17 @@
|
|
|
130
131
|
<table width="100%" style="min-width:500px">
|
|
131
132
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
132
133
|
<tbody>
|
|
133
|
-
<tr><td>
|
|
134
|
+
<tr><td>Array de registros, cadena CSV, stream legible (ingesta) o disparador (consulta)</td><td>payload</td><td></td><td>Sí</td><td>Records array, CSV string, readable stream (ingest) or SOQL string (query)</td></tr>
|
|
135
|
+
</tbody>
|
|
136
|
+
</table>
|
|
137
|
+
</div>
|
|
138
|
+
|
|
139
|
+
<h3>Salida</h3>
|
|
140
|
+
<div style="overflow-x:auto">
|
|
141
|
+
<table width="100%" style="min-width:500px">
|
|
142
|
+
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
143
|
+
<tbody>
|
|
144
|
+
<tr><td>Consulta: registro individual. Ingesta: { successfulResults, failedResults, unprocessedRecords }</td><td>payload</td><td></td><td>Sí</td><td>Query: individual record. Ingest: { successfulResults, failedResults, unprocessedRecords }</td></tr>
|
|
134
145
|
</tbody>
|
|
135
146
|
</table>
|
|
136
147
|
</div>
|
|
@@ -142,7 +153,7 @@
|
|
|
142
153
|
<table width="100%" style="min-width:500px">
|
|
143
154
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
144
155
|
<tbody>
|
|
145
|
-
<tr><td>
|
|
156
|
+
<tr><td>Conexion</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
146
157
|
<tr><td>Tipo de SObject</td><td>sObjectType</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
147
158
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
148
159
|
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
@@ -156,7 +167,7 @@
|
|
|
156
167
|
<table width="100%" style="min-width:500px">
|
|
157
168
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
158
169
|
<tbody>
|
|
159
|
-
<tr><td>
|
|
170
|
+
<tr><td>Nombre de API del SObject (sustituye la configuracion si se proporciona)</td><td>payload</td><td></td><td>Sí</td><td></td></tr>
|
|
160
171
|
</tbody>
|
|
161
172
|
</table>
|
|
162
173
|
</div>
|
|
@@ -166,7 +177,7 @@
|
|
|
166
177
|
<table width="100%" style="min-width:500px">
|
|
167
178
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
168
179
|
<tbody>
|
|
169
|
-
<tr><td>
|
|
180
|
+
<tr><td>Resultado de descripcion del SObject con campos, relaciones secundarias e informacion de tipo de registro</td><td>payload</td><td>object</td><td>Sí</td><td></td></tr>
|
|
170
181
|
</tbody>
|
|
171
182
|
</table>
|
|
172
183
|
</div>
|
|
@@ -178,7 +189,7 @@
|
|
|
178
189
|
<table width="100%" style="min-width:500px">
|
|
179
190
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
180
191
|
<tbody>
|
|
181
|
-
<tr><td>
|
|
192
|
+
<tr><td>Conexión</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
182
193
|
<tr><td>Canal</td><td>channelName</td><td>string</td><td>Sí</td><td><code>""</code></td><td></td></tr>
|
|
183
194
|
<tr><td>Suscribirse desde</td><td>subscribeType</td><td></td><td>Sí</td><td><code>"LATEST"</code></td><td></td></tr>
|
|
184
195
|
<tr><td>ID de reproducción</td><td>replayId</td><td>string</td><td>No</td><td><code>""</code></td><td></td></tr>
|
|
@@ -203,16 +214,58 @@
|
|
|
203
214
|
</table>
|
|
204
215
|
</div>
|
|
205
216
|
</script>
|
|
206
|
-
<script type="text/html" data-help-name="salesforce-apex">
|
|
207
|
-
<p>
|
|
217
|
+
<script type="text/html" data-help-name="salesforce-apex-invocation">
|
|
218
|
+
<p>Llama a endpoints REST Apex existentes o Invocable Actions en una org de Salesforce.</p>
|
|
219
|
+
<h3>Propiedades</h3>
|
|
220
|
+
<div style="overflow-x:auto">
|
|
221
|
+
<table width="100%" style="min-width:500px">
|
|
222
|
+
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
223
|
+
<tbody>
|
|
224
|
+
<tr><td>Conexion</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
225
|
+
<tr><td>Tipo</td><td>apexType</td><td></td><td>Sí</td><td><code>"rest"</code></td><td></td></tr>
|
|
226
|
+
<tr><td>Metodo</td><td>method</td><td></td><td>Sí</td><td><code>"POST"</code></td><td></td></tr>
|
|
227
|
+
<tr><td>Endpoint</td><td>path</td><td>TypedInput</td><td>Sí</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
|
|
228
|
+
<tr><td>Accion</td><td>actionName</td><td>string</td><td>Sí</td><td><code>""</code></td><td></td></tr>
|
|
229
|
+
<tr><td></td><td>errorPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
230
|
+
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
231
|
+
<tr><td></td><td>statusPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
232
|
+
</tbody>
|
|
233
|
+
</table>
|
|
234
|
+
</div>
|
|
235
|
+
|
|
236
|
+
<h3>Entrada</h3>
|
|
237
|
+
<div style="overflow-x:auto">
|
|
238
|
+
<table width="100%" style="min-width:500px">
|
|
239
|
+
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
240
|
+
<tbody>
|
|
241
|
+
<tr><td>Cuerpo de la solicitud para POST/PUT/PATCH, o ignorado para GET/DELETE</td><td>payload</td><td></td><td>Sí</td><td></td></tr>
|
|
242
|
+
</tbody>
|
|
243
|
+
</table>
|
|
244
|
+
</div>
|
|
245
|
+
|
|
246
|
+
<h3>Salida</h3>
|
|
247
|
+
<div style="overflow-x:auto">
|
|
248
|
+
<table width="100%" style="min-width:500px">
|
|
249
|
+
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
250
|
+
<tbody>
|
|
251
|
+
<tr><td>Respuesta del endpoint Apex</td><td>payload</td><td></td><td>Sí</td><td></td></tr>
|
|
252
|
+
</tbody>
|
|
253
|
+
</table>
|
|
254
|
+
</div>
|
|
255
|
+
</script>
|
|
256
|
+
<script type="text/html" data-help-name="salesforce-apex-code">
|
|
257
|
+
<p>Despliega y ejecuta codigo Apex personalizado en una org de Salesforce. Soporta tipos Invocable y REST.</p>
|
|
208
258
|
<h3>Propiedades</h3>
|
|
209
259
|
<div style="overflow-x:auto">
|
|
210
260
|
<table width="100%" style="min-width:500px">
|
|
211
261
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th>Predeterminado</th><th style="width:35%">Descripción</th></tr></thead>
|
|
212
262
|
<tbody>
|
|
213
|
-
<tr><td>
|
|
214
|
-
<tr><td>
|
|
215
|
-
<tr><td>
|
|
263
|
+
<tr><td>Conexion</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Sí</td><td></td><td>Reference to salesforce-connection</td></tr>
|
|
264
|
+
<tr><td>Tipo</td><td>apexType</td><td></td><td>Sí</td><td><code>"invocable"</code></td><td></td></tr>
|
|
265
|
+
<tr><td>Nombre de Clase</td><td>className</td><td>string</td><td>Sí</td><td><code>""</code></td><td></td></tr>
|
|
266
|
+
<tr><td>Mapeo de URL</td><td>urlMapping</td><td>string</td><td>Sí</td><td><code>""</code></td><td></td></tr>
|
|
267
|
+
<tr><td>Método HTTP</td><td>httpMethod</td><td></td><td>Sí</td><td><code>"HttpPost"</code></td><td></td></tr>
|
|
268
|
+
<tr><td>Codigo Apex</td><td>code</td><td>string</td><td>Sí</td><td><code>""</code></td><td></td></tr>
|
|
216
269
|
<tr><td></td><td>errorPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
217
270
|
<tr><td></td><td>completePort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
218
271
|
<tr><td></td><td>statusPort</td><td>boolean</td><td>Sí</td><td><code>false</code></td><td></td></tr>
|
|
@@ -225,7 +278,7 @@
|
|
|
225
278
|
<table width="100%" style="min-width:500px">
|
|
226
279
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
227
280
|
<tbody>
|
|
228
|
-
<tr><td>
|
|
281
|
+
<tr><td>Datos de entrada pasados al metodo Apex como cadena JSON</td><td>payload</td><td></td><td>Sí</td><td></td></tr>
|
|
229
282
|
</tbody>
|
|
230
283
|
</table>
|
|
231
284
|
</div>
|
|
@@ -235,7 +288,7 @@
|
|
|
235
288
|
<table width="100%" style="min-width:500px">
|
|
236
289
|
<thead><tr><th>Etiqueta</th><th>Propiedad</th><th>Tipo</th><th>Requerido</th><th style="width:35%">Descripción</th></tr></thead>
|
|
237
290
|
<tbody>
|
|
238
|
-
<tr><td>Respuesta de Apex</td><td>payload</td><td></td><td>Sí</td><td></td></tr>
|
|
291
|
+
<tr><td>Respuesta de la ejecucion Apex</td><td>payload</td><td></td><td>Sí</td><td></td></tr>
|
|
239
292
|
</tbody>
|
|
240
293
|
</table>
|
|
241
294
|
</div>
|