@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,154 @@
1
+ {
2
+ "salesforce-apex": {
3
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
4
+ "label": "Apex",
5
+ "description": "调用Salesforce Apex REST端点。",
6
+ "inputLabels": "请求",
7
+ "outputLabels": [
8
+ "响应"
9
+ ],
10
+ "configs": {
11
+ "connection": "Connection",
12
+ "method": "方法",
13
+ "path": "路径"
14
+ },
15
+ "input": {
16
+ "payload": "请求正文"
17
+ },
18
+ "outputs": [
19
+ {
20
+ "payload": "Apex响应"
21
+ }
22
+ ]
23
+ },
24
+ "salesforce-bulk": {
25
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
26
+ "label": "Bulk",
27
+ "description": "使用Salesforce Bulk API 2.0对大数据量执行批量操作。",
28
+ "inputLabels": "记录或查询",
29
+ "outputLabels": [
30
+ "记录",
31
+ "作业完成"
32
+ ],
33
+ "configs": {
34
+ "connection": "Connection",
35
+ "operation": "操作",
36
+ "sObjectType": "SObject类型",
37
+ "externalIdField": "外部ID字段"
38
+ },
39
+ "input": {
40
+ "payload": "记录数组或SOQL查询"
41
+ },
42
+ "outputs": [
43
+ {
44
+ "payload": "批量操作结果"
45
+ }
46
+ ]
47
+ },
48
+ "salesforce-connection": {
49
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
50
+ "label": "Connection",
51
+ "description": "使用带有PKCE的OAuth 2.0管理与Salesforce组织的连接。为其他Salesforce节点提供身份验证和令牌管理。",
52
+ "configs": {
53
+ "loginUrl": "登录URL",
54
+ "clientId": "客户端ID",
55
+ "apiVersion": "API版本",
56
+ "callbackUrl": "回调URL"
57
+ },
58
+ "credentials": {
59
+ "accessToken": "访问令牌",
60
+ "refreshToken": "刷新令牌",
61
+ "instanceUrl": "实例URL"
62
+ }
63
+ },
64
+ "salesforce-describe": {
65
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
66
+ "label": "Describe",
67
+ "description": "检索Salesforce SObject的元数据,包括字段、关系和记录类型。",
68
+ "inputLabels": "SObject名称",
69
+ "outputLabels": [
70
+ "SObject元数据"
71
+ ],
72
+ "configs": {
73
+ "connection": "Connection",
74
+ "sObjectType": "SObject类型"
75
+ },
76
+ "input": {
77
+ "payload": "输入负载"
78
+ },
79
+ "outputs": [
80
+ {
81
+ "payload": "SObject描述元数据"
82
+ }
83
+ ]
84
+ },
85
+ "salesforce-dml": {
86
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
87
+ "label": "DML",
88
+ "description": "对Salesforce SObject执行创建、读取、更新、删除或upsert操作。",
89
+ "inputLabels": "记录数据",
90
+ "outputLabels": [
91
+ "操作结果"
92
+ ],
93
+ "configs": {
94
+ "connection": "Connection",
95
+ "operation": "操作",
96
+ "sObjectType": "SObject类型",
97
+ "externalIdField": "外部ID字段"
98
+ },
99
+ "input": {
100
+ "payload": "记录数据或ID"
101
+ },
102
+ "outputs": [
103
+ {
104
+ "payload": "操作结果"
105
+ }
106
+ ]
107
+ },
108
+ "salesforce-soql": {
109
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
110
+ "label": "SOQL",
111
+ "description": "对Salesforce执行SOQL查询并返回匹配的记录。",
112
+ "inputLabels": "查询输入",
113
+ "outputLabels": [
114
+ "查询结果"
115
+ ],
116
+ "configs": {
117
+ "connection": "Connection",
118
+ "query": "查询"
119
+ },
120
+ "input": {
121
+ "payload": "输入负载"
122
+ },
123
+ "outputs": [
124
+ {
125
+ "payload": "查询结果记录",
126
+ "totalSize": "匹配记录总数",
127
+ "done": "是否已获取所有记录"
128
+ }
129
+ ]
130
+ },
131
+ "salesforce-streaming": {
132
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
133
+ "label": "Streaming",
134
+ "description": "使用Pub/Sub API(gRPC)订阅Salesforce平台事件和变更数据捕获事件。",
135
+ "outputLabels": [
136
+ "事件"
137
+ ],
138
+ "configs": {
139
+ "connection": "Connection",
140
+ "channelName": "频道",
141
+ "subscribeType": "订阅起点",
142
+ "replayId": "重播ID",
143
+ "numRequested": "批次大小"
144
+ },
145
+ "outputs": [
146
+ {
147
+ "payload": "事件负载",
148
+ "replayId": "事件重播ID",
149
+ "channel": "频道名称",
150
+ "topic": "主题名称"
151
+ }
152
+ ]
153
+ }
154
+ }
@@ -0,0 +1,226 @@
1
+ <script type="text/html" data-help-name="salesforce-connection">
2
+ <p>使用帶有PKCE的OAuth 2.0管理與Salesforce組織的連線。為其他Salesforce節點提供身份驗證和權杖管理。</p>
3
+ <h3>屬性</h3>
4
+ <div style="overflow-x:auto">
5
+ <table width="100%" style="min-width:500px">
6
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
7
+ <tbody>
8
+ <tr><td>登入URL</td><td>loginUrl</td><td>string</td><td>是</td><td><code>"https://login.salesforce.com"</code></td><td></td></tr>
9
+ <tr><td>用戶端ID</td><td>clientId</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
10
+ <tr><td>API版本</td><td>apiVersion</td><td></td><td>是</td><td><code>"62.0"</code></td><td></td></tr>
11
+ <tr><td>回呼URL</td><td>callbackUrl</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
12
+ </tbody>
13
+ </table>
14
+ </div>
15
+
16
+ <h3>憑證</h3>
17
+ <div style="overflow-x:auto">
18
+ <table width="100%" style="min-width:500px">
19
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
20
+ <tbody>
21
+ <tr><td>存取權杖</td><td>accessToken</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
22
+ <tr><td>重新整理權杖</td><td>refreshToken</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
23
+ <tr><td>執行個體URL</td><td>instanceUrl</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
24
+ </tbody>
25
+ </table>
26
+ </div>
27
+ </script>
28
+ <script type="text/html" data-help-name="salesforce-soql">
29
+ <p>對Salesforce執行SOQL查詢並傳回符合的記錄。</p>
30
+ <h3>屬性</h3>
31
+ <div style="overflow-x:auto">
32
+ <table width="100%" style="min-width:500px">
33
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
34
+ <tbody>
35
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
36
+ <tr><td>查詢</td><td>query</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
37
+ </tbody>
38
+ </table>
39
+ </div>
40
+
41
+ <h3>輸入</h3>
42
+ <div style="overflow-x:auto">
43
+ <table width="100%" style="min-width:500px">
44
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
45
+ <tbody>
46
+ <tr><td>輸入酬載</td><td>payload</td><td></td><td>是</td><td></td></tr>
47
+ </tbody>
48
+ </table>
49
+ </div>
50
+
51
+ <h3>輸出</h3>
52
+ <div style="overflow-x:auto">
53
+ <table width="100%" style="min-width:500px">
54
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
55
+ <tbody>
56
+ <tr><td>查詢結果記錄</td><td>payload</td><td>array</td><td>是</td><td></td></tr>
57
+ <tr><td>符合記錄總數</td><td>totalSize</td><td>number</td><td>是</td><td></td></tr>
58
+ <tr><td>是否已取得所有記錄</td><td>done</td><td>boolean</td><td>是</td><td></td></tr>
59
+ </tbody>
60
+ </table>
61
+ </div>
62
+ </script>
63
+ <script type="text/html" data-help-name="salesforce-dml">
64
+ <p>對Salesforce SObject執行建立、讀取、更新、刪除或upsert操作。</p>
65
+ <h3>屬性</h3>
66
+ <div style="overflow-x:auto">
67
+ <table width="100%" style="min-width:500px">
68
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
69
+ <tbody>
70
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
71
+ <tr><td>操作</td><td>operation</td><td></td><td>是</td><td><code>"create"</code></td><td></td></tr>
72
+ <tr><td>SObject類型</td><td>sObjectType</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
73
+ <tr><td></td><td>record</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
74
+ <tr><td>外部ID欄位</td><td>externalIdField</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
75
+ </tbody>
76
+ </table>
77
+ </div>
78
+
79
+ <h3>輸入</h3>
80
+ <div style="overflow-x:auto">
81
+ <table width="100%" style="min-width:500px">
82
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
83
+ <tbody>
84
+ <tr><td>記錄資料或ID</td><td>payload</td><td></td><td>是</td><td></td></tr>
85
+ </tbody>
86
+ </table>
87
+ </div>
88
+
89
+ <h3>輸出</h3>
90
+ <div style="overflow-x:auto">
91
+ <table width="100%" style="min-width:500px">
92
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
93
+ <tbody>
94
+ <tr><td>操作結果</td><td>payload</td><td></td><td>是</td><td></td></tr>
95
+ </tbody>
96
+ </table>
97
+ </div>
98
+ </script>
99
+ <script type="text/html" data-help-name="salesforce-bulk">
100
+ <p>使用Salesforce Bulk API 2.0對大資料量執行批次操作。</p>
101
+ <h3>屬性</h3>
102
+ <div style="overflow-x:auto">
103
+ <table width="100%" style="min-width:500px">
104
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
105
+ <tbody>
106
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
107
+ <tr><td>操作</td><td>operation</td><td></td><td>是</td><td><code>"insert"</code></td><td></td></tr>
108
+ <tr><td>SObject類型</td><td>sObjectType</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
109
+ <tr><td>外部ID欄位</td><td>externalIdField</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
110
+ <tr><td></td><td>assignmentRuleId</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
111
+ <tr><td></td><td>columnDelimiter</td><td></td><td>是</td><td><code>"COMMA"</code></td><td></td></tr>
112
+ <tr><td></td><td>lineEnding</td><td></td><td>是</td><td><code>"LF"</code></td><td></td></tr>
113
+ <tr><td></td><td>pollInterval</td><td>number [min: 1000]</td><td>是</td><td><code>5000</code></td><td></td></tr>
114
+ <tr><td></td><td>pollTimeout</td><td>number [min: 5000]</td><td>是</td><td><code>60000</code></td><td></td></tr>
115
+ <tr><td></td><td>emitJobCreated</td><td>boolean</td><td>是</td><td><code>false</code></td><td></td></tr>
116
+ <tr><td></td><td>outputs</td><td>number</td><td>是</td><td><code>2</code></td><td></td></tr>
117
+ </tbody>
118
+ </table>
119
+ </div>
120
+
121
+ <h3>輸入</h3>
122
+ <div style="overflow-x:auto">
123
+ <table width="100%" style="min-width:500px">
124
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
125
+ <tbody>
126
+ <tr><td>記錄陣列或SOQL查詢</td><td>payload</td><td></td><td>是</td><td></td></tr>
127
+ </tbody>
128
+ </table>
129
+ </div>
130
+ </script>
131
+ <script type="text/html" data-help-name="salesforce-describe">
132
+ <p>擷取Salesforce SObject的中繼資料,包括欄位、關聯和記錄類型。</p>
133
+ <h3>屬性</h3>
134
+ <div style="overflow-x:auto">
135
+ <table width="100%" style="min-width:500px">
136
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
137
+ <tbody>
138
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
139
+ <tr><td>SObject類型</td><td>sObjectType</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
140
+ </tbody>
141
+ </table>
142
+ </div>
143
+
144
+ <h3>輸入</h3>
145
+ <div style="overflow-x:auto">
146
+ <table width="100%" style="min-width:500px">
147
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
148
+ <tbody>
149
+ <tr><td>輸入酬載</td><td>payload</td><td></td><td>是</td><td></td></tr>
150
+ </tbody>
151
+ </table>
152
+ </div>
153
+
154
+ <h3>輸出</h3>
155
+ <div style="overflow-x:auto">
156
+ <table width="100%" style="min-width:500px">
157
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
158
+ <tbody>
159
+ <tr><td>SObject描述中繼資料</td><td>payload</td><td>object</td><td>是</td><td></td></tr>
160
+ </tbody>
161
+ </table>
162
+ </div>
163
+ </script>
164
+ <script type="text/html" data-help-name="salesforce-streaming">
165
+ <p>使用Pub/Sub API(gRPC)訂閱Salesforce平台事件和變更資料擷取事件。</p>
166
+ <h3>屬性</h3>
167
+ <div style="overflow-x:auto">
168
+ <table width="100%" style="min-width:500px">
169
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
170
+ <tbody>
171
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
172
+ <tr><td>頻道</td><td>channelName</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
173
+ <tr><td>訂閱起點</td><td>subscribeType</td><td></td><td>是</td><td><code>"LATEST"</code></td><td></td></tr>
174
+ <tr><td>重播ID</td><td>replayId</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
175
+ <tr><td>批次大小</td><td>numRequested</td><td>number [min: 1, max: 100]</td><td>是</td><td><code>100</code></td><td></td></tr>
176
+ </tbody>
177
+ </table>
178
+ </div>
179
+
180
+ <h3>輸出</h3>
181
+ <div style="overflow-x:auto">
182
+ <table width="100%" style="min-width:500px">
183
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
184
+ <tbody>
185
+ <tr><td>事件酬載</td><td>payload</td><td></td><td>是</td><td></td></tr>
186
+ <tr><td>事件重播ID</td><td>replayId</td><td></td><td>是</td><td></td></tr>
187
+ <tr><td>頻道名稱</td><td>channel</td><td>string</td><td>是</td><td></td></tr>
188
+ <tr><td>主題名稱</td><td>topic</td><td>string</td><td>是</td><td></td></tr>
189
+ </tbody>
190
+ </table>
191
+ </div>
192
+ </script>
193
+ <script type="text/html" data-help-name="salesforce-apex">
194
+ <p>呼叫Salesforce Apex REST端點。</p>
195
+ <h3>屬性</h3>
196
+ <div style="overflow-x:auto">
197
+ <table width="100%" style="min-width:500px">
198
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th>預設值</th><th style="width:35%">描述</th></tr></thead>
199
+ <tbody>
200
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
201
+ <tr><td>方法</td><td>method</td><td></td><td>是</td><td><code>"POST"</code></td><td></td></tr>
202
+ <tr><td>路徑</td><td>path</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
203
+ </tbody>
204
+ </table>
205
+ </div>
206
+
207
+ <h3>輸入</h3>
208
+ <div style="overflow-x:auto">
209
+ <table width="100%" style="min-width:500px">
210
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
211
+ <tbody>
212
+ <tr><td>請求主體</td><td>payload</td><td></td><td>是</td><td></td></tr>
213
+ </tbody>
214
+ </table>
215
+ </div>
216
+
217
+ <h3>輸出</h3>
218
+ <div style="overflow-x:auto">
219
+ <table width="100%" style="min-width:500px">
220
+ <thead><tr><th>標籤</th><th>屬性</th><th>類型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
221
+ <tbody>
222
+ <tr><td>Apex回應</td><td>payload</td><td></td><td>是</td><td></td></tr>
223
+ </tbody>
224
+ </table>
225
+ </div>
226
+ </script>
@@ -0,0 +1,154 @@
1
+ {
2
+ "salesforce-apex": {
3
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
4
+ "label": "Apex",
5
+ "description": "呼叫Salesforce Apex REST端點。",
6
+ "inputLabels": "請求",
7
+ "outputLabels": [
8
+ "回應"
9
+ ],
10
+ "configs": {
11
+ "connection": "Connection",
12
+ "method": "方法",
13
+ "path": "路徑"
14
+ },
15
+ "input": {
16
+ "payload": "請求主體"
17
+ },
18
+ "outputs": [
19
+ {
20
+ "payload": "Apex回應"
21
+ }
22
+ ]
23
+ },
24
+ "salesforce-bulk": {
25
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
26
+ "label": "Bulk",
27
+ "description": "使用Salesforce Bulk API 2.0對大資料量執行批次操作。",
28
+ "inputLabels": "記錄或查詢",
29
+ "outputLabels": [
30
+ "記錄",
31
+ "工作完成"
32
+ ],
33
+ "configs": {
34
+ "connection": "Connection",
35
+ "operation": "操作",
36
+ "sObjectType": "SObject類型",
37
+ "externalIdField": "外部ID欄位"
38
+ },
39
+ "input": {
40
+ "payload": "記錄陣列或SOQL查詢"
41
+ },
42
+ "outputs": [
43
+ {
44
+ "payload": "批次操作結果"
45
+ }
46
+ ]
47
+ },
48
+ "salesforce-connection": {
49
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
50
+ "label": "Connection",
51
+ "description": "使用帶有PKCE的OAuth 2.0管理與Salesforce組織的連線。為其他Salesforce節點提供身份驗證和權杖管理。",
52
+ "configs": {
53
+ "loginUrl": "登入URL",
54
+ "clientId": "用戶端ID",
55
+ "apiVersion": "API版本",
56
+ "callbackUrl": "回呼URL"
57
+ },
58
+ "credentials": {
59
+ "accessToken": "存取權杖",
60
+ "refreshToken": "重新整理權杖",
61
+ "instanceUrl": "執行個體URL"
62
+ }
63
+ },
64
+ "salesforce-describe": {
65
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
66
+ "label": "Describe",
67
+ "description": "擷取Salesforce SObject的中繼資料,包括欄位、關聯和記錄類型。",
68
+ "inputLabels": "SObject名稱",
69
+ "outputLabels": [
70
+ "SObject中繼資料"
71
+ ],
72
+ "configs": {
73
+ "connection": "Connection",
74
+ "sObjectType": "SObject類型"
75
+ },
76
+ "input": {
77
+ "payload": "輸入酬載"
78
+ },
79
+ "outputs": [
80
+ {
81
+ "payload": "SObject描述中繼資料"
82
+ }
83
+ ]
84
+ },
85
+ "salesforce-dml": {
86
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
87
+ "label": "DML",
88
+ "description": "對Salesforce SObject執行建立、讀取、更新、刪除或upsert操作。",
89
+ "inputLabels": "記錄資料",
90
+ "outputLabels": [
91
+ "操作結果"
92
+ ],
93
+ "configs": {
94
+ "connection": "Connection",
95
+ "operation": "操作",
96
+ "sObjectType": "SObject類型",
97
+ "externalIdField": "外部ID欄位"
98
+ },
99
+ "input": {
100
+ "payload": "記錄資料或ID"
101
+ },
102
+ "outputs": [
103
+ {
104
+ "payload": "操作結果"
105
+ }
106
+ ]
107
+ },
108
+ "salesforce-soql": {
109
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
110
+ "label": "SOQL",
111
+ "description": "對Salesforce執行SOQL查詢並傳回符合的記錄。",
112
+ "inputLabels": "查詢輸入",
113
+ "outputLabels": [
114
+ "查詢結果"
115
+ ],
116
+ "configs": {
117
+ "connection": "Connection",
118
+ "query": "查詢"
119
+ },
120
+ "input": {
121
+ "payload": "輸入酬載"
122
+ },
123
+ "outputs": [
124
+ {
125
+ "payload": "查詢結果記錄",
126
+ "totalSize": "符合記錄總數",
127
+ "done": "是否已取得所有記錄"
128
+ }
129
+ ]
130
+ },
131
+ "salesforce-streaming": {
132
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
133
+ "label": "Streaming",
134
+ "description": "使用Pub/Sub API(gRPC)訂閱Salesforce平台事件和變更資料擷取事件。",
135
+ "outputLabels": [
136
+ "事件"
137
+ ],
138
+ "configs": {
139
+ "connection": "Connection",
140
+ "channelName": "頻道",
141
+ "subscribeType": "訂閱起點",
142
+ "replayId": "重播ID",
143
+ "numRequested": "批次大小"
144
+ },
145
+ "outputs": [
146
+ {
147
+ "payload": "事件酬載",
148
+ "replayId": "事件重播ID",
149
+ "channel": "頻道名稱",
150
+ "topic": "主題名稱"
151
+ }
152
+ ]
153
+ }
154
+ }
package/package.json ADDED
@@ -0,0 +1,52 @@
1
+ {
2
+ "name": "@bonsae/node-red-salesforce",
3
+ "version": "0.1.0",
4
+ "description": "Salesforce nodes for Node-RED built with @bonsae/nrg",
5
+ "author": "Allan Oricil <allanoricil@duck.com>",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/bonsaedev/node-red-salesforce"
10
+ },
11
+ "publishConfig": {
12
+ "access": "public"
13
+ },
14
+ "type": "commonjs",
15
+ "engines": {
16
+ "node": ">=22",
17
+ "pnpm": ">=10.11.0"
18
+ },
19
+ "keywords": [
20
+ "node-red",
21
+ "nrg"
22
+ ],
23
+ "lint-staged": {
24
+ "src/**/*.{ts,vue}": [
25
+ "eslint --fix",
26
+ "prettier --write"
27
+ ],
28
+ "src/**/*.json": [
29
+ "prettier --write"
30
+ ]
31
+ },
32
+ "dependencies": {
33
+ "@bonsae/nrg": "^0.11.0",
34
+ "jsforce": "^3.10.14",
35
+ "salesforce-pubsub-api-client": "^5.5.2"
36
+ },
37
+ "main": "index.js",
38
+ "node-red": {
39
+ "nodes": {
40
+ "nodes": "index.js"
41
+ }
42
+ },
43
+ "exports": {
44
+ ".": {
45
+ "types": "./index.d.ts",
46
+ "import": "./index.mjs",
47
+ "require": "./index.js",
48
+ "default": "./index.js"
49
+ }
50
+ },
51
+ "types": "index.d.ts"
52
+ }