@bonsae/node-red-salesforce 0.1.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 (46) hide show
  1. package/README.md +126 -0
  2. package/examples/1-soql-query.json +103 -0
  3. package/examples/10-streaming-platform-events.json +73 -0
  4. package/examples/11-streaming-change-data-capture.json +73 -0
  5. package/examples/2-dml-create.json +106 -0
  6. package/examples/3-dml-read.json +83 -0
  7. package/examples/4-dml-update.json +83 -0
  8. package/examples/5-dml-delete.json +83 -0
  9. package/examples/6-describe.json +97 -0
  10. package/examples/7-apex-rest.json +99 -0
  11. package/examples/8-bulk-insert.json +63 -0
  12. package/examples/9-bulk-query.json +63 -0
  13. package/icons/salesforce-apex.png +0 -0
  14. package/icons/salesforce-bulk.png +0 -0
  15. package/icons/salesforce-connection.png +0 -0
  16. package/icons/salesforce-describe.png +0 -0
  17. package/icons/salesforce-dml.png +0 -0
  18. package/icons/salesforce-soql.png +0 -0
  19. package/icons/salesforce-streaming.png +0 -0
  20. package/index.d.ts +268 -0
  21. package/index.html +2 -0
  22. package/index.js +14 -0
  23. package/index.mjs +913 -0
  24. package/index.mjs.map +1 -0
  25. package/locales/de/index.html +226 -0
  26. package/locales/de/index.json +154 -0
  27. package/locales/en-US/index.html +226 -0
  28. package/locales/en-US/index.json +154 -0
  29. package/locales/es-ES/index.html +226 -0
  30. package/locales/es-ES/index.json +154 -0
  31. package/locales/fr/index.html +226 -0
  32. package/locales/fr/index.json +154 -0
  33. package/locales/ja/index.html +226 -0
  34. package/locales/ja/index.json +154 -0
  35. package/locales/ko/index.html +226 -0
  36. package/locales/ko/index.json +154 -0
  37. package/locales/pt-BR/index.html +226 -0
  38. package/locales/pt-BR/index.json +154 -0
  39. package/locales/ru/index.html +226 -0
  40. package/locales/ru/index.json +154 -0
  41. package/locales/zh-CN/index.html +226 -0
  42. package/locales/zh-CN/index.json +154 -0
  43. package/locales/zh-TW/index.html +226 -0
  44. package/locales/zh-TW/index.json +154 -0
  45. package/package.json +52 -0
  46. package/resources/index.CfTW8fjc.js +1 -0
@@ -0,0 +1,83 @@
1
+ [
2
+ {
3
+ "id": "flow-delete",
4
+ "type": "tab",
5
+ "label": "DML Delete",
6
+ "disabled": false,
7
+ "info": "Find an account by name and delete it"
8
+ },
9
+ {
10
+ "id": "config-sf-4",
11
+ "type": "salesforce-connection",
12
+ "name": "Salesforce",
13
+ "loginUrl": "https://login.salesforce.com",
14
+ "clientId": "",
15
+ "apiVersion": "62.0",
16
+ "callbackUrl": "http://localhost:1880/salesforce/auth/callback",
17
+ "z": ""
18
+ },
19
+ {
20
+ "id": "inject-delete",
21
+ "type": "inject",
22
+ "z": "flow-delete",
23
+ "name": "Delete Account",
24
+ "props": [],
25
+ "repeat": "",
26
+ "once": false,
27
+ "x": 140,
28
+ "y": 80,
29
+ "wires": [["soql-find-delete"]]
30
+ },
31
+ {
32
+ "id": "soql-find-delete",
33
+ "type": "salesforce-soql",
34
+ "z": "flow-delete",
35
+ "name": "Find Account",
36
+ "connection": "config-sf-4",
37
+ "query": {
38
+ "type": "str",
39
+ "value": "SELECT Id FROM Account WHERE Name = 'Node-RED Test' LIMIT 1"
40
+ },
41
+ "x": 340,
42
+ "y": 80,
43
+ "wires": [["func-extract-id"]]
44
+ },
45
+ {
46
+ "id": "func-extract-id",
47
+ "type": "function",
48
+ "z": "flow-delete",
49
+ "name": "Extract ID",
50
+ "func": "if (msg.payload && msg.payload.length > 0) {\n msg.payload = msg.payload[0].Id;\n return msg;\n}\nnode.warn(\"No account found\");\nreturn null;",
51
+ "outputs": 1,
52
+ "x": 530,
53
+ "y": 80,
54
+ "wires": [["dml-delete"]]
55
+ },
56
+ {
57
+ "id": "dml-delete",
58
+ "type": "salesforce-dml",
59
+ "z": "flow-delete",
60
+ "name": "Delete Account",
61
+ "connection": "config-sf-4",
62
+ "operation": "delete",
63
+ "sObjectType": { "type": "str", "value": "Account" },
64
+ "record": { "type": "msg", "value": "payload" },
65
+ "externalIdField": "",
66
+ "x": 730,
67
+ "y": 80,
68
+ "wires": [["debug-delete"]]
69
+ },
70
+ {
71
+ "id": "debug-delete",
72
+ "type": "debug",
73
+ "z": "flow-delete",
74
+ "name": "Result",
75
+ "active": true,
76
+ "tosidebar": true,
77
+ "console": false,
78
+ "complete": "payload",
79
+ "x": 910,
80
+ "y": 80,
81
+ "wires": []
82
+ }
83
+ ]
@@ -0,0 +1,97 @@
1
+ [
2
+ {
3
+ "id": "flow-describe",
4
+ "type": "tab",
5
+ "label": "Describe SObject",
6
+ "disabled": false,
7
+ "info": "Retrieve metadata for a Salesforce SObject"
8
+ },
9
+ {
10
+ "id": "config-sf-5",
11
+ "type": "salesforce-connection",
12
+ "name": "Salesforce",
13
+ "loginUrl": "https://login.salesforce.com",
14
+ "clientId": "",
15
+ "apiVersion": "62.0",
16
+ "callbackUrl": "http://localhost:1880/salesforce/auth/callback",
17
+ "z": ""
18
+ },
19
+ {
20
+ "id": "inject-describe-account",
21
+ "type": "inject",
22
+ "z": "flow-describe",
23
+ "name": "Describe Account",
24
+ "props": [],
25
+ "repeat": "",
26
+ "once": false,
27
+ "x": 150,
28
+ "y": 80,
29
+ "wires": [["describe-account"]]
30
+ },
31
+ {
32
+ "id": "describe-account",
33
+ "type": "salesforce-describe",
34
+ "z": "flow-describe",
35
+ "name": "Account Metadata",
36
+ "connection": "config-sf-5",
37
+ "sObjectType": { "type": "str", "value": "Account" },
38
+ "x": 380,
39
+ "y": 80,
40
+ "wires": [["debug-describe-1"]]
41
+ },
42
+ {
43
+ "id": "debug-describe-1",
44
+ "type": "debug",
45
+ "z": "flow-describe",
46
+ "name": "Metadata",
47
+ "active": true,
48
+ "tosidebar": true,
49
+ "console": false,
50
+ "complete": "payload",
51
+ "x": 570,
52
+ "y": 80,
53
+ "wires": []
54
+ },
55
+ {
56
+ "id": "inject-describe-dynamic",
57
+ "type": "inject",
58
+ "z": "flow-describe",
59
+ "name": "Describe Contact",
60
+ "props": [
61
+ {
62
+ "p": "sobject",
63
+ "v": "Contact",
64
+ "vt": "str"
65
+ }
66
+ ],
67
+ "repeat": "",
68
+ "once": false,
69
+ "x": 150,
70
+ "y": 180,
71
+ "wires": [["describe-dynamic"]]
72
+ },
73
+ {
74
+ "id": "describe-dynamic",
75
+ "type": "salesforce-describe",
76
+ "z": "flow-describe",
77
+ "name": "Dynamic Describe",
78
+ "connection": "config-sf-5",
79
+ "sObjectType": { "type": "msg", "value": "sobject" },
80
+ "x": 380,
81
+ "y": 180,
82
+ "wires": [["debug-describe-2"]]
83
+ },
84
+ {
85
+ "id": "debug-describe-2",
86
+ "type": "debug",
87
+ "z": "flow-describe",
88
+ "name": "Metadata",
89
+ "active": true,
90
+ "tosidebar": true,
91
+ "console": false,
92
+ "complete": "payload",
93
+ "x": 570,
94
+ "y": 180,
95
+ "wires": []
96
+ }
97
+ ]
@@ -0,0 +1,99 @@
1
+ [
2
+ {
3
+ "id": "flow-apex",
4
+ "type": "tab",
5
+ "label": "Apex REST",
6
+ "disabled": false,
7
+ "info": "Invoke custom Apex REST endpoints. Requires an @RestResource class deployed in your org."
8
+ },
9
+ {
10
+ "id": "config-sf-6",
11
+ "type": "salesforce-connection",
12
+ "name": "Salesforce",
13
+ "loginUrl": "https://login.salesforce.com",
14
+ "clientId": "",
15
+ "apiVersion": "62.0",
16
+ "callbackUrl": "http://localhost:1880/salesforce/auth/callback",
17
+ "z": ""
18
+ },
19
+ {
20
+ "id": "inject-apex-post",
21
+ "type": "inject",
22
+ "z": "flow-apex",
23
+ "name": "POST Request",
24
+ "props": [
25
+ {
26
+ "p": "payload",
27
+ "v": "{\"name\":\"Test\",\"action\":\"create\"}",
28
+ "vt": "json"
29
+ }
30
+ ],
31
+ "repeat": "",
32
+ "once": false,
33
+ "x": 140,
34
+ "y": 80,
35
+ "wires": [["apex-post"]]
36
+ },
37
+ {
38
+ "id": "apex-post",
39
+ "type": "salesforce-apex",
40
+ "z": "flow-apex",
41
+ "name": "POST /MyEndpoint",
42
+ "connection": "config-sf-6",
43
+ "method": "POST",
44
+ "path": { "type": "str", "value": "/MyEndpoint" },
45
+ "x": 360,
46
+ "y": 80,
47
+ "wires": [["debug-apex-post"]]
48
+ },
49
+ {
50
+ "id": "debug-apex-post",
51
+ "type": "debug",
52
+ "z": "flow-apex",
53
+ "name": "Response",
54
+ "active": true,
55
+ "tosidebar": true,
56
+ "console": false,
57
+ "complete": "payload",
58
+ "x": 560,
59
+ "y": 80,
60
+ "wires": []
61
+ },
62
+ {
63
+ "id": "inject-apex-get",
64
+ "type": "inject",
65
+ "z": "flow-apex",
66
+ "name": "GET Request",
67
+ "props": [],
68
+ "repeat": "",
69
+ "once": false,
70
+ "x": 140,
71
+ "y": 180,
72
+ "wires": [["apex-get"]]
73
+ },
74
+ {
75
+ "id": "apex-get",
76
+ "type": "salesforce-apex",
77
+ "z": "flow-apex",
78
+ "name": "GET /MyEndpoint",
79
+ "connection": "config-sf-6",
80
+ "method": "GET",
81
+ "path": { "type": "str", "value": "/MyEndpoint" },
82
+ "x": 360,
83
+ "y": 180,
84
+ "wires": [["debug-apex-get"]]
85
+ },
86
+ {
87
+ "id": "debug-apex-get",
88
+ "type": "debug",
89
+ "z": "flow-apex",
90
+ "name": "Response",
91
+ "active": true,
92
+ "tosidebar": true,
93
+ "console": false,
94
+ "complete": "payload",
95
+ "x": 560,
96
+ "y": 180,
97
+ "wires": []
98
+ }
99
+ ]
@@ -0,0 +1,63 @@
1
+ [
2
+ {
3
+ "id": "flow-bulk-insert",
4
+ "type": "tab",
5
+ "label": "Bulk Insert",
6
+ "disabled": false,
7
+ "info": "Insert multiple records using Bulk API 2.0"
8
+ },
9
+ {
10
+ "id": "config-sf-7",
11
+ "type": "salesforce-connection",
12
+ "name": "Salesforce",
13
+ "loginUrl": "https://login.salesforce.com",
14
+ "clientId": "",
15
+ "apiVersion": "62.0",
16
+ "callbackUrl": "http://localhost:1880/salesforce/auth/callback",
17
+ "z": ""
18
+ },
19
+ {
20
+ "id": "inject-bulk-insert",
21
+ "type": "inject",
22
+ "z": "flow-bulk-insert",
23
+ "name": "Insert 3 Accounts",
24
+ "props": [
25
+ {
26
+ "p": "payload",
27
+ "v": "[{\"Name\":\"Bulk Account 1\"},{\"Name\":\"Bulk Account 2\"},{\"Name\":\"Bulk Account 3\"}]",
28
+ "vt": "json"
29
+ }
30
+ ],
31
+ "repeat": "",
32
+ "once": false,
33
+ "x": 160,
34
+ "y": 80,
35
+ "wires": [["bulk-insert"]]
36
+ },
37
+ {
38
+ "id": "bulk-insert",
39
+ "type": "salesforce-bulk",
40
+ "z": "flow-bulk-insert",
41
+ "name": "Bulk Insert",
42
+ "connection": "config-sf-7",
43
+ "operation": "insert",
44
+ "sObjectType": { "type": "str", "value": "Account" },
45
+ "externalIdField": "",
46
+ "x": 380,
47
+ "y": 80,
48
+ "wires": [["debug-bulk-insert"]]
49
+ },
50
+ {
51
+ "id": "debug-bulk-insert",
52
+ "type": "debug",
53
+ "z": "flow-bulk-insert",
54
+ "name": "Results",
55
+ "active": true,
56
+ "tosidebar": true,
57
+ "console": false,
58
+ "complete": "payload",
59
+ "x": 560,
60
+ "y": 80,
61
+ "wires": []
62
+ }
63
+ ]
@@ -0,0 +1,63 @@
1
+ [
2
+ {
3
+ "id": "flow-bulk-query",
4
+ "type": "tab",
5
+ "label": "Bulk Query",
6
+ "disabled": false,
7
+ "info": "Query large datasets using Bulk API 2.0"
8
+ },
9
+ {
10
+ "id": "config-sf-8",
11
+ "type": "salesforce-connection",
12
+ "name": "Salesforce",
13
+ "loginUrl": "https://login.salesforce.com",
14
+ "clientId": "",
15
+ "apiVersion": "62.0",
16
+ "callbackUrl": "http://localhost:1880/salesforce/auth/callback",
17
+ "z": ""
18
+ },
19
+ {
20
+ "id": "inject-bulk-query",
21
+ "type": "inject",
22
+ "z": "flow-bulk-query",
23
+ "name": "Bulk Query",
24
+ "props": [
25
+ {
26
+ "p": "payload",
27
+ "v": "SELECT Id, Name, Industry FROM Account",
28
+ "vt": "str"
29
+ }
30
+ ],
31
+ "repeat": "",
32
+ "once": false,
33
+ "x": 140,
34
+ "y": 80,
35
+ "wires": [["bulk-query"]]
36
+ },
37
+ {
38
+ "id": "bulk-query",
39
+ "type": "salesforce-bulk",
40
+ "z": "flow-bulk-query",
41
+ "name": "Bulk Query",
42
+ "connection": "config-sf-8",
43
+ "operation": "query",
44
+ "sObjectType": { "type": "str", "value": "Account" },
45
+ "externalIdField": "",
46
+ "x": 340,
47
+ "y": 80,
48
+ "wires": [["debug-bulk-query"]]
49
+ },
50
+ {
51
+ "id": "debug-bulk-query",
52
+ "type": "debug",
53
+ "z": "flow-bulk-query",
54
+ "name": "Results",
55
+ "active": true,
56
+ "tosidebar": true,
57
+ "console": false,
58
+ "complete": "true",
59
+ "x": 520,
60
+ "y": 80,
61
+ "wires": []
62
+ }
63
+ ]
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
package/index.d.ts ADDED
@@ -0,0 +1,268 @@
1
+ import { ConfigNode } from '@bonsae/nrg/server';
2
+ import { Connection } from 'jsforce';
3
+ import { Infer } from '@bonsae/nrg/server';
4
+ import { IONode } from '@bonsae/nrg/server';
5
+ import { ModuleDefinition } from '@bonsae/nrg/server';
6
+ import { RED } from '@bonsae/nrg/server';
7
+ import { Schema } from '@bonsae/nrg/server';
8
+ import { TAny } from '@bonsae/nrg/server';
9
+ import { TArray } from '@bonsae/nrg/server';
10
+ import { TBoolean } from '@bonsae/nrg/server';
11
+ import { TLiteral } from '@bonsae/nrg/server';
12
+ import { TNodeRef } from '@bonsae/nrg/server';
13
+ import { TNumber } from '@bonsae/nrg/server';
14
+ import { TObject } from '@bonsae/nrg/server';
15
+ import { TOptional } from '@bonsae/nrg/server';
16
+ import { TString } from '@bonsae/nrg/server';
17
+ import { TTypedInput } from '@bonsae/nrg/server';
18
+ import { TUnion } from '@bonsae/nrg/server';
19
+
20
+ declare type Config = Infer<typeof SalesforceApexConfigSchema>;
21
+
22
+ declare type Config_2 = Infer<typeof SalesforceConnectionConfigSchema>;
23
+
24
+ declare type Config_3 = Infer<typeof SalesforceBulkConfigSchema>;
25
+
26
+ declare type Config_4 = Infer<typeof SalesforceDescribeConfigSchema>;
27
+
28
+ declare type Config_5 = Infer<typeof SalesforceDmlConfigSchema>;
29
+
30
+ declare type Config_6 = Infer<typeof SalesforceSoqlConfigSchema>;
31
+
32
+ declare type Config_7 = Infer<typeof SalesforceStreamingConfigSchema>;
33
+
34
+ declare type Credentials = Infer<typeof SalesforceConnectionCredentialsSchema>;
35
+
36
+ declare const _default: ModuleDefinition;
37
+ export default _default;
38
+
39
+ declare type Input = Infer<typeof SalesforceApexInputSchema>;
40
+
41
+ declare type Input_2 = Infer<typeof SalesforceBulkInputSchema>;
42
+
43
+ declare type Input_3 = Infer<typeof SalesforceDescribeInputSchema>;
44
+
45
+ declare type Input_4 = Infer<typeof SalesforceDmlInputSchema>;
46
+
47
+ declare type Input_5 = Infer<typeof SalesforceSoqlInputSchema>;
48
+
49
+ declare type Output = Infer<typeof SalesforceApexOutputsSchema>;
50
+
51
+ declare type Output_2 = Infer<typeof SalesforceDescribeOutputsSchema>;
52
+
53
+ declare type Output_3 = Infer<typeof SalesforceDmlOutputsSchema>;
54
+
55
+ declare type Output_4 = Infer<typeof SalesforceSoqlOutputsSchema>;
56
+
57
+ declare type Output_5 = Infer<typeof SalesforceStreamingOutputsSchema>;
58
+
59
+ export declare class SalesforceApex extends IONode<Config, any, Input, Output> {
60
+ static readonly type = "salesforce-apex";
61
+ static readonly category = "salesforce";
62
+ static readonly color: `#${string}`;
63
+ static readonly inputs = 1;
64
+ static readonly outputs = 1;
65
+ static readonly configSchema: Schema;
66
+ static readonly inputSchema: Schema;
67
+ static readonly outputsSchema: Schema;
68
+ input(msg: Input): Promise<void>;
69
+ }
70
+
71
+ export declare const SalesforceApexConfigSchema: Schema< {
72
+ name: TString;
73
+ connection: TNodeRef<SalesforceConnection>;
74
+ method: TUnion<[TLiteral<"GET">, TLiteral<"POST">, TLiteral<"PUT">, TLiteral<"PATCH">, TLiteral<"DELETE">]>;
75
+ path: TTypedInput<string>;
76
+ }>;
77
+
78
+ export declare const SalesforceApexInputSchema: Schema< {
79
+ payload: TAny;
80
+ }>;
81
+
82
+ export declare const SalesforceApexOutputsSchema: Schema< {
83
+ payload: TAny;
84
+ }>;
85
+
86
+ export declare class SalesforceBulk extends IONode<Config_3> {
87
+ static readonly type = "salesforce-bulk";
88
+ static readonly category = "salesforce";
89
+ static readonly color: `#${string}`;
90
+ static readonly inputs = 1;
91
+ static readonly outputs = 2;
92
+ static readonly configSchema: Schema;
93
+ static readonly inputSchema: Schema;
94
+ private sendRecord;
95
+ private sendJobCreated;
96
+ private sendComplete;
97
+ input(msg: Input_2): Promise<void>;
98
+ }
99
+
100
+ export declare const SalesforceBulkConfigSchema: Schema< {
101
+ name: TString;
102
+ connection: TNodeRef<SalesforceConnection>;
103
+ operation: TUnion<[TLiteral<"insert">, TLiteral<"update">, TLiteral<"upsert">, TLiteral<"delete">, TLiteral<"query">]>;
104
+ sObjectType: TTypedInput<string>;
105
+ externalIdField: TOptional<TString>;
106
+ assignmentRuleId: TOptional<TString>;
107
+ columnDelimiter: TUnion<[TLiteral<"COMMA">, TLiteral<"TAB">, TLiteral<"PIPE">, TLiteral<"SEMICOLON">, TLiteral<"CARET">, TLiteral<"BACKQUOTE">]>;
108
+ lineEnding: TUnion<[TLiteral<"LF">, TLiteral<"CRLF">]>;
109
+ pollInterval: TNumber;
110
+ pollTimeout: TNumber;
111
+ emitJobCreated: TBoolean;
112
+ outputs: TNumber;
113
+ }>;
114
+
115
+ export declare const SalesforceBulkInputSchema: Schema< {
116
+ payload: TAny;
117
+ }>;
118
+
119
+ export declare class SalesforceConnection extends ConfigNode<Config_2, Credentials> {
120
+ static readonly type = "salesforce-connection";
121
+ static readonly configSchema: Schema;
122
+ static readonly credentialsSchema: Schema;
123
+ private conn;
124
+ static registered(RED: RED): Promise<void>;
125
+ getConnection(): Promise<Connection>;
126
+ getAccessToken(): string | undefined;
127
+ getInstanceUrl(): string | undefined;
128
+ closed(): Promise<void>;
129
+ }
130
+
131
+ export declare const SalesforceConnectionConfigSchema: Schema< {
132
+ name: TString;
133
+ loginUrl: TString;
134
+ clientId: TString;
135
+ apiVersion: TUnion<[TLiteral<"62.0">, TLiteral<"61.0">, TLiteral<"60.0">, TLiteral<"59.0">, TLiteral<"58.0">, TLiteral<"57.0">, TLiteral<"56.0">, TLiteral<"55.0">]>;
136
+ callbackUrl: TOptional<TString>;
137
+ }>;
138
+
139
+ export declare const SalesforceConnectionCredentialsSchema: Schema< {
140
+ accessToken: TString;
141
+ refreshToken: TString;
142
+ instanceUrl: TString;
143
+ }>;
144
+
145
+ export declare class SalesforceDescribe extends IONode<Config_4, any, Input_3, Output_2> {
146
+ static readonly type = "salesforce-describe";
147
+ static readonly category = "salesforce";
148
+ static readonly color: `#${string}`;
149
+ static readonly inputs = 1;
150
+ static readonly outputs = 1;
151
+ static readonly configSchema: Schema;
152
+ static readonly inputSchema: Schema;
153
+ static readonly outputsSchema: Schema;
154
+ input(msg: Input_3): Promise<void>;
155
+ }
156
+
157
+ export declare const SalesforceDescribeConfigSchema: Schema< {
158
+ name: TString;
159
+ connection: TNodeRef<SalesforceConnection>;
160
+ sObjectType: TTypedInput<string>;
161
+ }>;
162
+
163
+ export declare const SalesforceDescribeInputSchema: Schema< {
164
+ payload: TAny;
165
+ }>;
166
+
167
+ export declare const SalesforceDescribeOutputsSchema: Schema< {
168
+ payload: TObject< {
169
+ name: TString;
170
+ fields: TArray<TAny>;
171
+ childRelationships: TArray<TAny>;
172
+ recordTypeInfos: TArray<TAny>;
173
+ }>;
174
+ }>;
175
+
176
+ export declare class SalesforceDml extends IONode<Config_5, any, Input_4, Output_3> {
177
+ static readonly type = "salesforce-dml";
178
+ static readonly category = "salesforce";
179
+ static readonly color: `#${string}`;
180
+ static readonly inputs = 1;
181
+ static readonly outputs = 1;
182
+ static readonly configSchema: Schema;
183
+ static readonly inputSchema: Schema;
184
+ static readonly outputsSchema: Schema;
185
+ input(msg: Input_4): Promise<void>;
186
+ }
187
+
188
+ export declare const SalesforceDmlConfigSchema: Schema< {
189
+ name: TString;
190
+ connection: TNodeRef<SalesforceConnection>;
191
+ operation: TUnion<[TLiteral<"create">, TLiteral<"read">, TLiteral<"update">, TLiteral<"delete">, TLiteral<"upsert">]>;
192
+ sObjectType: TTypedInput<string>;
193
+ record: TTypedInput<any>;
194
+ externalIdField: TOptional<TString>;
195
+ }>;
196
+
197
+ export declare const SalesforceDmlInputSchema: Schema< {
198
+ payload: TAny;
199
+ }>;
200
+
201
+ export declare const SalesforceDmlOutputsSchema: Schema< {
202
+ payload: TAny;
203
+ }>;
204
+
205
+ export declare class SalesforceSoql extends IONode<Config_6, any, Input_5, Output_4> {
206
+ static readonly type = "salesforce-soql";
207
+ static readonly category = "salesforce";
208
+ static readonly color: `#${string}`;
209
+ static readonly inputs = 1;
210
+ static readonly outputs = 1;
211
+ static readonly configSchema: Schema;
212
+ static readonly inputSchema: Schema;
213
+ static readonly outputsSchema: Schema;
214
+ input(msg: Input_5): Promise<void>;
215
+ }
216
+
217
+ export declare const SalesforceSoqlConfigSchema: Schema< {
218
+ name: TString;
219
+ connection: TNodeRef<SalesforceConnection>;
220
+ query: TTypedInput<string>;
221
+ }>;
222
+
223
+ export declare const SalesforceSoqlInputSchema: Schema< {
224
+ payload: TAny;
225
+ }>;
226
+
227
+ export declare const SalesforceSoqlOutputsSchema: Schema< {
228
+ payload: TArray<TAny>;
229
+ totalSize: TNumber;
230
+ done: TBoolean;
231
+ }>;
232
+
233
+ export declare class SalesforceStreaming extends IONode<Config_7, any, any, Output_5> {
234
+ static readonly type = "salesforce-streaming";
235
+ static readonly category = "salesforce";
236
+ static readonly color: `#${string}`;
237
+ static readonly inputs = 0;
238
+ static readonly outputs = 1;
239
+ static readonly configSchema: Schema;
240
+ static readonly outputsSchema: Schema;
241
+ private client;
242
+ private reconnectAttempt;
243
+ private maxReconnectDelay;
244
+ created(): Promise<void>;
245
+ private subscribe;
246
+ private scheduleReconnect;
247
+ private cleanup;
248
+ input(): Promise<void>;
249
+ closed(): Promise<void>;
250
+ }
251
+
252
+ export declare const SalesforceStreamingConfigSchema: Schema< {
253
+ name: TString;
254
+ connection: TNodeRef<SalesforceConnection>;
255
+ channelName: TString;
256
+ subscribeType: TUnion<[TLiteral<"LATEST">, TLiteral<"EARLIEST">, TLiteral<"CUSTOM">]>;
257
+ replayId: TOptional<TString>;
258
+ numRequested: TNumber;
259
+ }>;
260
+
261
+ export declare const SalesforceStreamingOutputsSchema: Schema< {
262
+ payload: TAny;
263
+ replayId: TAny;
264
+ channel: TString;
265
+ topic: TString;
266
+ }>;
267
+
268
+ export { }
package/index.html ADDED
@@ -0,0 +1,2 @@
1
+
2
+ <script type="module" src="resources/@bonsae/node-red-salesforce/index.CfTW8fjc.js" defer></script>