n8n-nodes-new-evogo 1.0.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/LICENSE.md ADDED
@@ -0,0 +1,19 @@
1
+ Copyright 2022 n8n
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,339 @@
1
+ # n8n-nodes-new-evogo
2
+
3
+ This is an n8n community node for the **Evolution Go (EvoGo)** WhatsApp API. Use EvoGo in your n8n workflows.
4
+
5
+ > **Community fork** of [`n8n-nodes-evo-go`](https://www.npmjs.com/package/n8n-nodes-evo-go) (by OrionAcademy, MIT-licensed). It adds operations the upstream node didn't expose — **Send Carousel, Leave Group, Set Group Description, Set Profile Name/Status** — plus **dynamic poll options**, array-safe mentions / mark-as-read, and several path & runtime fixes. The original `MIT LICENSE` is preserved.
6
+
7
+ EvoGo provides automation and integration features for your workflows.
8
+
9
+ [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.
10
+
11
+ [Installation](#installation)
12
+ [Credentials](#credentials)
13
+ [Operations](#operations)
14
+ [Compatibility](#compatibility)
15
+ [Resources](#resources)
16
+ [Version history](#version-history)
17
+
18
+ ## Installation
19
+
20
+ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
21
+
22
+ ## Credentials
23
+
24
+ The EvoGo node uses **EvoGo API** credentials with:
25
+
26
+ - **Base URL** – API base URL (e.g. `https://api.evogo.com`)
27
+
28
+ **ApiKey • Global** is a node field (shown after Operation), sent in the `apikey` header.
29
+
30
+ When saving credentials, n8n validates the connection with a `GET` request to `{{baseUrl}}/health`.
31
+
32
+ ## Operations
33
+
34
+ ### Resource: Instance
35
+
36
+ - **Create Instance**: Creates a new instance in EvoGo
37
+ - **ApiKey • Global** (required): API key sent in the `apikey` header
38
+ - **Instance Name** (required): Instance name
39
+ - **Token** (required): Instance token
40
+ - **Instance ID** (optional): Instance ID
41
+ - Sends `POST` to `{{baseUrl}}/instance/create` with header `apikey: {{adminApiKey}}`
42
+
43
+ - **Fetch All Instances**: Get all instances from EvoGo
44
+ - **ApiKey • Global** (required): API key sent in the `apikey` header
45
+ - Sends `GET` to `{{baseUrl}}/instance/all` with header `apikey: {{adminApiKey}}`
46
+
47
+ - **Fetch Instance**: Get a single instance by ID from EvoGo
48
+ - **ApiKey • Global** (required): API key sent in the `apikey` header
49
+ - **Instance ID** (required): Instance ID to fetch
50
+ - Sends `GET` to `{{baseUrl}}/instance/info/{{instanceId}}` with header `apikey: {{adminApiKey}}`
51
+
52
+ - **Delete Instance**: Delete an instance from EvoGo
53
+ - **ApiKey • Global** (required): API key sent in the `apikey` header
54
+ - **Instance ID** (required): Instance ID to delete
55
+ - Sends `DELETE` to `{{baseUrl}}/instance/delete/{{instanceId}}` with header `apikey: {{adminApiKey}}`
56
+
57
+ - **Delete Proxy**: Delete proxy for an instance from EvoGo
58
+ - **ApiKey • Global** (required): API key sent in the `apikey` header
59
+ - **Instance ID** (required): Instance ID for the proxy to delete
60
+ - Sends `DELETE` to `{{baseUrl}}/instance/proxy/{{instanceId}}` with header `apikey: {{adminApiKey}}`
61
+
62
+ - **Instance Connect**: Connect an instance to EvoGo
63
+ - **ApiKey • Instance** (required): Instance API key sent in the `apikey` header
64
+ - **Subscribe** (optional): Events to subscribe to - MESSAGE, READ_RECEIPT, PRESENCE, etc. or ALL (default: ALL)
65
+ - **Additional Fields** (optional): Webhook URL, WebSocket, RabbitMQ, NATS enable/disable
66
+ - Sends `POST` to `{{baseUrl}}/instance/connect` with header `apikey: {{instanceApiKey}}`
67
+
68
+ - **Get Logs**: Get logs for an instance
69
+ - **ApiKey • Global** (required): API key sent in the `apikey` header
70
+ - **Instance ID** (required): Instance ID to get logs from
71
+ - **Start Date** (optional): Start date filter (date picker)
72
+ - **End Date** (optional): End date filter (date picker)
73
+ - **Level** (optional): Log levels to filter - DEBUG, WARN, ERROR, INFO (multi-select, all selected by default)
74
+ - **Limit** (optional): Max log entries to return (default: 50)
75
+ - Sends `GET` to `{{baseUrl}}/instance/logs/{{instanceId}}?start_date=...&end_date=...&level=...&limit=...`
76
+
77
+ ### Resource: Send Message
78
+
79
+ All Send Message operations use **ApiKey • Instance** (required), sent in the `apikey` header.
80
+
81
+ - **Send Text**: Send a text message to a phone number
82
+ - **Number** (required), **Text** (required), **Delay (Ms)** (optional), **Additional Fields** (Mentions, Reply)
83
+ - Sends `POST` to `{{baseUrl}}/send/text`
84
+
85
+ - **Send Link**: Send a message with link preview
86
+ - **Number** (required), **Text** (required), **Delay (Ms)** (optional), **Additional Fields** (Mentions, Reply)
87
+ - Sends `POST` to `{{baseUrl}}/send/link`
88
+
89
+ - **Send Media URL**: Send image, video or document from URL
90
+ - **Number** (required), **Media URL** (required), **Caption**, **Filename**, **Type** (image/video/document), **Delay (Ms)** (optional), **Additional Fields**
91
+ - Sends `POST` to `{{baseUrl}}/send/media`
92
+
93
+ - **Send Poll**: Send a poll to a phone number
94
+ - **Number** (required), **Question** (required), **Max Answer**, **Options** (array), **Delay (Ms)** (optional), **Additional Fields**
95
+ - Sends `POST` to `{{baseUrl}}/send/poll`
96
+
97
+ - **Send Sticker**: Send a sticker from URL
98
+ - **Number** (required), **Sticker URL** (required), **Delay (Ms)** (optional), **Additional Fields**
99
+ - Sends `POST` to `{{baseUrl}}/send/sticker`
100
+
101
+ - **Send Location**: Send a location to a phone number
102
+ - **Number** (required), **Name** (required), **Address**, **Latitude** (required), **Longitude** (required), **Delay (Ms)** (optional), **Additional Fields**
103
+ - Sends `POST` to `{{baseUrl}}/send/location`
104
+
105
+ - **Send Contact**: Send a contact (vcard) to a phone number
106
+ - **Number** (required), **Full Name** (required), **Organization**, **Phone** (required), **Delay (Ms)** (optional), **Additional Fields**
107
+ - Sends `POST` to `{{baseUrl}}/send/contact`
108
+
109
+ - **Send Button**: Send a message with buttons (PIX, reply, copy, URL, call)
110
+ - **Number** (required), **Title** (required), **Description**, **Footer**, **Buttons** (required: add buttons, choose Type — PIX, Reply, Copy, URL, Call — and fill the fields for each type), **Delay (Ms)** (optional), **Additional Fields**
111
+ - Sends `POST` to `{{baseUrl}}/send/button`
112
+
113
+ - **Send List**: Send a message with sections and rows (list)
114
+ - **Number** (required), **Title** (required), **Button Text** (required), **Description**, **Footer Text**, **Sections** (with rows: title, description, rowId), **Delay (Ms)** (optional), **Additional Fields**
115
+ - Sends `POST` to `{{baseUrl}}/send/list`
116
+
117
+ - **Send Status**: Publish a status/story (text, image, video or audio)
118
+ - **Type** (text/image/video/audio), **Content** (required), **Caption** (for image/video), **Background Color**, **Font** (for text), **Send to All Contacts**, **Status JID List** (when not all contacts). No number or mentions/reply.
119
+ - Sends `POST` to `{{baseUrl}}/send/status`
120
+
121
+ ### Resource: User
122
+
123
+ All User operations use **ApiKey • Instance** (required), sent in the `apikey` header.
124
+
125
+ - **User Info**: Get info for one or more numbers
126
+ - **Numbers** (required: phone numbers with country code, separated by commas)
127
+ - Sends `POST` to `{{baseUrl}}/user/info`
128
+
129
+ - **Check User**: Check if one or more numbers exist
130
+ - **Numbers** (required: phone numbers separated by commas)
131
+ - Sends `POST` to `{{baseUrl}}/user/check`
132
+
133
+ - **Get Avatar**: Get avatar for a number
134
+ - **Number** (required), **Preview** (optional, default false)
135
+ - Sends `POST` to `{{baseUrl}}/user/avatar`
136
+
137
+ - **Get Contacts**: Get all contacts
138
+ - No parameters. Sends `GET` to `{{baseUrl}}/user/contacts`
139
+
140
+ - **Get Privacy Settings**: Get privacy settings
141
+ - No parameters. Sends `GET` to `{{baseUrl}}/user/privacy`
142
+
143
+ - **Block Contact**: Block a number
144
+ - **Number** (required). Sends `POST` to `{{baseUrl}}/user/block`
145
+
146
+ - **UnBlock Contact**: Unblock a number
147
+ - **Number** (required). Sends `POST` to `{{baseUrl}}/user/unblock`
148
+
149
+ - **Block List**: Get list of blocked numbers
150
+ - No parameters. Sends `GET` to `{{baseUrl}}/user/blocklist`
151
+
152
+ - **Set Profile Picture**: Set profile picture from image URL
153
+ - **Image URL** (required). Sends `POST` to `{{baseUrl}}/user/profile`
154
+
155
+ ### Resource: Message
156
+
157
+ All Message operations use **ApiKey • Instance** (required), sent in the `apikey` header.
158
+
159
+ - **React to Message**: Send a reaction (emoji) to a message
160
+ - **Number** (required), **Message ID** (required), **Reaction** (required, emoji). Sends `POST` to `{{baseUrl}}/message/react`
161
+
162
+ - **Send Presence**: Send typing/recording presence
163
+ - **Number** (required), **State** (composing/paused), **Is Audio** (boolean). Sends `POST` to `{{baseUrl}}/message/presence`
164
+
165
+ - **Mark as Read**: Mark one or more messages as read
166
+ - **Number** (required), **Message IDs** (required, separated by commas). Sends `POST` to `{{baseUrl}}/message/markread`
167
+
168
+ - **Download Media**: Download media by URL, directPath or mediaKey
169
+ - **Media Type**: Image, Video, Document ou Audio (imageMessage, videoMessage, documentMessage, audioMessage)
170
+ - **Source**: URL, Direct Path ou Media Key
171
+ - Se **URL**: campo **URL** (obrigatório)
172
+ - Se **Direct Path**: campo **Direct Path** (obrigatório)
173
+ - Se **Media Key**: **Media Key** (obrigatório), **File Enc SHA256**, **File SHA256**, **File Length**
174
+ - **Mimetype** (opcional) em qualquer caso
175
+ - Envia `POST` para `{{baseUrl}}/message/downloadmedia`
176
+
177
+ - **Get Message Status**: Get status of a message
178
+ - **Message ID** (required). Sends `POST` to `{{baseUrl}}/message/status`
179
+
180
+ - **Delete Message**: Delete a message from chat
181
+ - **Chat** (required, JID), **Message ID** (required). Sends `POST` to `{{baseUrl}}/message/delete`
182
+
183
+ - **Edit Message**: Edit message text
184
+ - **Chat** (required, JID), **Message ID** (required), **Message** (required, new text). Sends `POST` to `{{baseUrl}}/message/edit`
185
+
186
+ ### Resource: Chat
187
+
188
+ Uso de **ApiKey • Instance** para todas as operações.
189
+
190
+ - **Pin Chat**: Fixar chat no topo
191
+ - **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/pin`
192
+
193
+ - **UnPin Chat**: Desfixar chat
194
+ - **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/unpin`
195
+
196
+ - **Archive Chat**: Arquivar chat
197
+ - **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/archive`
198
+
199
+ - **Unarchive Chat**: Desarquivar chat
200
+ - **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/unarchive`
201
+
202
+ - **Mute Chat**: Silenciar chat
203
+ - **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/mute`
204
+
205
+ - **Unmute Chat**: Dessilenciar chat
206
+ - **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/unmute`
207
+
208
+ - **History Sync Request**: Solicitar sincronização de histórico
209
+ - **Chat** (obrigatório, JID do grupo/contato), **ID** (obrigatório, ID da mensagem), **Is From Me** (boolean), **Is Group** (boolean), **Timestamp** (obrigatório), **Count** (número). Envia `POST` para `{{baseUrl}}/chat/history-sync`
210
+
211
+ ### Resource: Group
212
+
213
+ Uso de **ApiKey • Instance** para todas as operações.
214
+
215
+ - **List Groups**: Listar grupos. Sem parâmetros. Envia `GET` para `{{baseUrl}}/group/list`
216
+
217
+ - **Get Group Info**: Obter informações do grupo
218
+ - **Group JID** (obrigatório). Envia `POST` para `{{baseUrl}}/group/info`
219
+
220
+ - **Get Group Invite Link**: Obter link de convite do grupo
221
+ - **Group JID** (obrigatório). Envia `POST` para `{{baseUrl}}/group/invitelink`
222
+
223
+ - **Set Group Picture**: Definir foto do grupo (URL)
224
+ - **Group JID** (obrigatório), **Image** (obrigatório, URL). Envia `POST` para `{{baseUrl}}/group/photo`
225
+
226
+ - **Set Group Name**: Definir nome do grupo
227
+ - **Group JID** (obrigatório), **Name** (obrigatório). Envia `POST` para `{{baseUrl}}/group/name`
228
+
229
+ - **Create Group**: Criar grupo
230
+ - **Group Name** (obrigatório), **Participants** (obrigatório, números separados por vírgula). Envia `POST` para `{{baseUrl}}/group/create`
231
+
232
+ - **Update Participant**: Adicionar, remover, promover ou rebaixar participantes
233
+ - **Group JID** (obrigatório), **Participants** (obrigatório, números separados por vírgula), **Action** (add, remove, promote, demote). Envia `POST` para `{{baseUrl}}/group/participant`
234
+
235
+ - **Get My Groups**: Listar meus grupos. Sem parâmetros. Envia `GET` para `{{baseUrl}}/group/myall`
236
+
237
+ - **Join Group Link**: Entrar em grupo por link
238
+ - **Code** (obrigatório, código do link de convite). Envia `POST` para `{{baseUrl}}/group/join`
239
+
240
+ ### Resource: Community
241
+
242
+ Uso de **ApiKey • Instance** para todas as operações.
243
+
244
+ - **Create Community**: Criar community
245
+ - **Community Name** (obrigatório). Envia `POST` para `{{baseUrl}}/community/create`
246
+
247
+ - **Add Group to Community**: Adicionar grupo à community
248
+ - **Community JID** (obrigatório), **Group JID** (obrigatório, um ou mais JIDs separados por vírgula). Envia `POST` para `{{baseUrl}}/community/add`
249
+
250
+ - **Remove Group from Community**: Remover grupo da community
251
+ - **Community JID** (obrigatório), **Group JID** (obrigatório, um ou mais JIDs separados por vírgula). Envia `POST` para `{{baseUrl}}/community/remove`
252
+
253
+ ### Resource: Label
254
+
255
+ Uso de **ApiKey • Instance** para todas as operações.
256
+
257
+ - **Add Label on Chat**: Adicionar label em chat
258
+ - **JID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/label/chat`
259
+
260
+ - **Remove Label on Chat**: Remover label de chat
261
+ - **JID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/unlabel/chat`
262
+
263
+ - **Add Label on Message**: Adicionar label em mensagem
264
+ - **JID** (obrigatório), **Message ID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/label/message`
265
+
266
+ - **Remove Label on Message**: Remover label de mensagem
267
+ - **JID** (obrigatório), **Message ID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/unlabel/message`
268
+
269
+ - **Edit Label**: Editar label (nome, cor, deleted)
270
+ - **Label ID** (obrigatório), **Name**, **Color** (número), **Deleted** (boolean). Envia `POST` para `{{baseUrl}}/label/edit`
271
+
272
+ - **List Labels**: Listar labels. Sem parâmetros. Envia `GET` para `{{baseUrl}}/label/list`
273
+
274
+ ### Resource: Newsletter
275
+
276
+ Uso de **ApiKey • Instance** para todas as operações.
277
+
278
+ - **Create Newsletter**: Criar newsletter
279
+ - **Name** (obrigatório), **Description** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/create`
280
+
281
+ - **List Newsletters**: Listar newsletters. Sem parâmetros. Envia `GET` para `{{baseUrl}}/newsletter/list`
282
+
283
+ - **Get Newsletter Info**: Obter informações do newsletter
284
+ - **JID** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/info`
285
+
286
+ - **Get Newsletter Link**: Obter link do newsletter
287
+ - **Key** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/link`
288
+
289
+ - **Subscribe on Newsletter**: Inscrever-se em newsletter
290
+ - **JID** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/subscribe`
291
+
292
+ - **Get Newsletter Messages**: Obter mensagens do newsletter
293
+ - **JID** (obrigatório), **Count** (número, default 1). Envia `POST` para `{{baseUrl}}/newsletter/messages`
294
+
295
+ ## Compatibility
296
+
297
+ - **Minimum n8n version**: 1.0
298
+ - Tested with n8n 1.x
299
+
300
+ ## Development
301
+
302
+ ### Timeout when starting (`npm run dev`)
303
+
304
+ If `npm run dev` fails with "n8n startup timeout after 120 seconds" (common on Windows on first run), use external mode:
305
+
306
+ **Terminal 1** – link the node and watch:
307
+ ```bash
308
+ npm run dev:external
309
+ ```
310
+
311
+ **Terminal 2** – start n8n manually:
312
+ ```powershell
313
+ $env:N8N_USER_FOLDER = "$env:USERPROFILE\.n8n-node-cli"
314
+ $env:N8N_DEV_RELOAD = "true"
315
+ cd $env:N8N_USER_FOLDER
316
+ npx -y n8n@latest
317
+ ```
318
+
319
+ Open n8n at http://localhost:5678.
320
+
321
+ ### Alternative: pre-install n8n
322
+
323
+ To try to avoid the timeout next time:
324
+ ```powershell
325
+ cd $env:USERPROFILE\.n8n-node-cli
326
+ npx -y n8n@latest --version
327
+ ```
328
+ This downloads n8n in advance; then `npm run dev` tends to start faster.
329
+
330
+ ## Resources
331
+
332
+ * [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
333
+ * [Project repository](https://github.com/Administrador/n8n-nodes-evo-go)
334
+
335
+ ## Version history
336
+
337
+ ### 0.1.0
338
+ - Initial EvoGo node release
339
+ - Basic node with Instance resource and Create Instance operation
@@ -0,0 +1,12 @@
1
+ import type { ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class EvoGoApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ icon: {
6
+ readonly light: "file:evo-go.svg";
7
+ readonly dark: "file:evo-go.dark.svg";
8
+ };
9
+ documentationUrl: string;
10
+ properties: INodeProperties[];
11
+ test: ICredentialTestRequest;
12
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EvoGoApi = void 0;
4
+ class EvoGoApi {
5
+ constructor() {
6
+ this.name = 'evoGoApi';
7
+ this.displayName = 'EvoGo API';
8
+ this.icon = { light: 'file:evo-go.svg', dark: 'file:evo-go.dark.svg' };
9
+ this.documentationUrl = 'https://github.com/Administrador/n8n-nodes-evo-go';
10
+ this.properties = [
11
+ {
12
+ displayName: 'Base URL',
13
+ name: 'baseUrl',
14
+ type: 'string',
15
+ default: '',
16
+ placeholder: 'https://api.evogo.com',
17
+ description: 'EvoGo API base URL (e.g. https://api.evogo.com). The connection test validates via the root /server/ok.',
18
+ },
19
+ ];
20
+ this.test = {
21
+ request: {
22
+ baseURL: '={{$credentials?.baseUrl}}',
23
+ url: '/server/ok',
24
+ },
25
+ };
26
+ }
27
+ }
28
+ exports.EvoGoApi = EvoGoApi;
29
+ //# sourceMappingURL=EvoGoApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EvoGoApi.credentials.js","sourceRoot":"","sources":["../../credentials/EvoGoApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,QAAQ;IAArB;QACC,SAAI,GAAG,UAAU,CAAC;QAElB,gBAAW,GAAG,WAAW,CAAC;QAE1B,SAAI,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,sBAAsB,EAAW,CAAC;QAE3E,qBAAgB,GAAG,mDAAmD,CAAC;QAEvE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,uBAAuB;gBACpC,WAAW,EAAE,yGAAyG;aACtH;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,4BAA4B;gBACrC,GAAG,EAAE,YAAY;aACjB;SACD,CAAC;IACH,CAAC;CAAA;AA1BD,4BA0BC"}
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg id="Camada_2" data-name="Camada 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 463.19 365.61">
3
+ <defs>
4
+ <style>
5
+ .cls-1 { fill: #fff; }
6
+ .cls-2 { fill: #00ffa7; }
7
+ </style>
8
+ </defs>
9
+ <g id="Camada_1-2" data-name="Camada 1">
10
+ <g>
11
+ <g>
12
+ <path class="cls-2" d="M283.07,174.1v115.94c0,51.76-27.95,75.57-78.16,75.57-26.4,0-52.02-6.47-68.32-19.15l16.05-28.99c11.9,9.58,31.32,15.79,49.17,15.79,28.47,0,40.89-12.94,40.89-38.04v-5.95c-10.61,11.65-25.88,17.34-44,17.34-38.56,0-69.62-26.66-69.62-67.29s31.06-67.29,69.62-67.29c19.41,0,35.46,6.47,46.07,19.93v-17.86h38.3ZM243.21,239.32c0-20.45-15.27-34.16-36.49-34.16s-36.75,13.72-36.75,34.16,15.53,34.16,36.75,34.16,36.49-13.72,36.49-34.16Z"/>
13
+ <path class="cls-2" d="M310.24,243.72c0-41.93,32.35-71.69,76.61-71.69s76.35,29.76,76.35,71.69-32.09,71.69-76.35,71.69-76.61-29.76-76.61-71.69ZM422.3,243.72c0-24.07-15.27-38.56-35.46-38.56s-35.71,14.49-35.71,38.56,15.53,38.56,35.71,38.56,35.46-14.49,35.46-38.56Z"/>
14
+ </g>
15
+ <g>
16
+ <path class="cls-2" d="M66.15,237.31v30.64h30.64v-30.64h-30.64Z"/>
17
+ <path class="cls-2" d="M15.29,176.58v40.8h40.8v-40.8H15.29Z"/>
18
+ <path class="cls-2" d="M86.63,182.67v20.43h20.43v-20.43h-20.43Z"/>
19
+ </g>
20
+ <g>
21
+ <path class="cls-1" d="M99.42,107.51c5.58-2.18,10.77-5.53,15.63-10.22l21.43,23.22c-13.06,14.96-32.15,22.44-57.27,22.44-15.69,0-29.53-3.07-41.53-9.15-12.06-6.08-21.32-14.57-27.85-25.4C3.29,97.57,0,85.24,0,71.51s3.24-25.84,9.66-36.79c6.48-10.94,15.29-19.43,26.57-25.57C47.5,3.07,60.17,0,74.3,0c13.23,0,25.29,2.79,36.12,8.37,10.83,5.58,19.48,13.68,25.96,24.28,6.48,10.61,9.66,23.11,9.66,37.57l-102.71,19.87c2.9,6.87,7.54,12.06,13.79,15.46,6.25,3.46,13.95,5.14,23.11,5.14,7.2,0,13.62-1.06,19.2-3.24v.06ZM49.51,40.3c-6.36,6.53-9.71,15.57-10.05,27.07l67.6-13.17c-1.9-7.2-5.75-13.01-11.61-17.3-5.86-4.3-12.89-6.47-21.16-6.47-10.16,0-18.42,3.29-24.78,9.82v.06Z"/>
22
+ <path class="cls-1" d="M308.35,2.12l-58.61,138.82h-41.53L149.88,2.12h41.53l38.46,94.45L269.61,2.12h38.74Z"/>
23
+ <path class="cls-1" d="M347.7,133.86c-11.61-6.08-20.71-14.57-27.24-25.4-6.53-10.83-9.82-23.17-9.82-36.9s3.24-26.07,9.82-36.9c6.53-10.83,15.63-19.31,27.24-25.4C359.31,3.18,372.43.11,387.06.11s27.69,3.07,39.24,9.15c11.5,6.08,20.54,14.57,27.07,25.4,6.53,10.83,9.83,23.17,9.83,36.9s-3.3,26.07-9.83,36.9c-6.53,10.83-15.57,19.31-27.07,25.4-11.56,6.08-24.62,9.15-39.24,9.15s-27.74-3.07-39.35-9.15ZM412.45,99.53c6.64-6.98,9.94-16.3,9.94-28.02s-3.3-21.04-9.94-28.02c-6.64-6.98-15.07-10.44-25.4-10.44s-18.87,3.46-25.57,10.44c-6.7,6.98-10.05,16.3-10.05,28.02s3.35,21.04,10.05,28.02c6.7,6.98,15.24,10.44,25.57,10.44s18.81-3.46,25.4-10.44Z"/>
24
+ </g>
25
+ </g>
26
+ </g>
27
+ </svg>
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg id="Camada_2" data-name="Camada 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 463.19 365.61">
3
+ <defs>
4
+ <style>
5
+ .cls-1 { fill: #333; }
6
+ .cls-2 { fill: #00ffa7; }
7
+ </style>
8
+ </defs>
9
+ <g id="Camada_1-2" data-name="Camada 1">
10
+ <g>
11
+ <g>
12
+ <path class="cls-2" d="M283.07,174.1v115.94c0,51.76-27.95,75.57-78.16,75.57-26.4,0-52.02-6.47-68.32-19.15l16.05-28.99c11.9,9.58,31.32,15.79,49.17,15.79,28.47,0,40.89-12.94,40.89-38.04v-5.95c-10.61,11.65-25.88,17.34-44,17.34-38.56,0-69.62-26.66-69.62-67.29s31.06-67.29,69.62-67.29c19.41,0,35.46,6.47,46.07,19.93v-17.86h38.3ZM243.21,239.32c0-20.45-15.27-34.16-36.49-34.16s-36.75,13.72-36.75,34.16,15.53,34.16,36.75,34.16,36.49-13.72,36.49-34.16Z"/>
13
+ <path class="cls-2" d="M310.24,243.72c0-41.93,32.35-71.69,76.61-71.69s76.35,29.76,76.35,71.69-32.09,71.69-76.35,71.69-76.61-29.76-76.61-71.69ZM422.3,243.72c0-24.07-15.27-38.56-35.46-38.56s-35.71,14.49-35.71,38.56,15.53,38.56,35.71,38.56,35.46-14.49,35.46-38.56Z"/>
14
+ </g>
15
+ <g>
16
+ <path class="cls-2" d="M66.15,237.31v30.64h30.64v-30.64h-30.64Z"/>
17
+ <path class="cls-2" d="M15.29,176.58v40.8h40.8v-40.8H15.29Z"/>
18
+ <path class="cls-2" d="M86.63,182.67v20.43h20.43v-20.43h-20.43Z"/>
19
+ </g>
20
+ <g>
21
+ <path class="cls-1" d="M99.42,107.51c5.58-2.18,10.77-5.53,15.63-10.22l21.43,23.22c-13.06,14.96-32.15,22.44-57.27,22.44-15.69,0-29.53-3.07-41.53-9.15-12.06-6.08-21.32-14.57-27.85-25.4C3.29,97.57,0,85.24,0,71.51s3.24-25.84,9.66-36.79c6.48-10.94,15.29-19.43,26.57-25.57C47.5,3.07,60.17,0,74.3,0c13.23,0,25.29,2.79,36.12,8.37,10.83,5.58,19.48,13.68,25.96,24.28,6.48,10.61,9.66,23.11,9.66,37.57l-102.71,19.87c2.9,6.87,7.54,12.06,13.79,15.46,6.25,3.46,13.95,5.14,23.11,5.14,7.2,0,13.62-1.06,19.2-3.24v.06ZM49.51,40.3c-6.36,6.53-9.71,15.57-10.05,27.07l67.6-13.17c-1.9-7.2-5.75-13.01-11.61-17.3-5.86-4.3-12.89-6.47-21.16-6.47-10.16,0-18.42,3.29-24.78,9.82v.06Z"/>
22
+ <path class="cls-1" d="M308.35,2.12l-58.61,138.82h-41.53L149.88,2.12h41.53l38.46,94.45L269.61,2.12h38.74Z"/>
23
+ <path class="cls-1" d="M347.7,133.86c-11.61-6.08-20.71-14.57-27.24-25.4-6.53-10.83-9.82-23.17-9.82-36.9s3.24-26.07,9.82-36.9c6.53-10.83,15.63-19.31,27.24-25.4C359.31,3.18,372.43.11,387.06.11s27.69,3.07,39.24,9.15c11.5,6.08,20.54,14.57,27.07,25.4,6.53,10.83,9.83,23.17,9.83,36.9s-3.3,26.07-9.83,36.9c-6.53,10.83-15.57,19.31-27.07,25.4-11.56,6.08-24.62,9.15-39.24,9.15s-27.74-3.07-39.35-9.15ZM412.45,99.53c6.64-6.98,9.94-16.3,9.94-28.02s-3.3-21.04-9.94-28.02c-6.64-6.98-15.07-10.44-25.4-10.44s-18.87,3.46-25.57,10.44c-6.7,6.98-10.05,16.3-10.05,28.02s3.35,21.04,10.05,28.02c6.7,6.98,15.24,10.44,25.57,10.44s18.81-3.46,25.4-10.44Z"/>
24
+ </g>
25
+ </g>
26
+ </g>
27
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M20.0165 0C8.94791 0 0 9.01388 0 20.1653C0 29.0792 5.73324 36.6246 13.6868 39.2952C14.6812 39.496 15.0454 38.8613 15.0454 38.3274C15.0454 37.8599 15.0126 36.2575 15.0126 34.5879C9.4445 35.79 8.28498 32.1841 8.28498 32.1841C7.39015 29.847 6.06429 29.2463 6.06429 29.2463C4.24185 28.011 6.19704 28.011 6.19704 28.011C8.21861 28.1446 9.27938 30.081 9.27938 30.081C11.0686 33.1522 13.9518 32.2844 15.1118 31.7502C15.2773 30.4481 15.8079 29.5467 16.3713 29.046C11.9303 28.5785 7.25781 26.8425 7.25781 19.0967C7.25781 16.8932 8.05267 15.0905 9.31216 13.6884C9.11344 13.1877 8.41732 11.1174 9.51128 8.34644C9.51128 8.34644 11.2014 7.81217 15.0122 10.4164C16.6438 9.97495 18.3263 9.7504 20.0165 9.74851C21.7067 9.74851 23.4295 9.98246 25.0205 10.4164C28.8317 7.81217 30.5218 8.34644 30.5218 8.34644C31.6158 11.1174 30.9192 13.1877 30.7205 13.6884C32.0132 15.0905 32.7753 16.8932 32.7753 19.0967C32.7753 26.8425 28.1028 28.5449 23.6287 29.046C24.358 29.6802 24.9873 30.882 24.9873 32.7851C24.9873 35.4893 24.9545 37.6596 24.9545 38.327C24.9545 38.8613 25.3192 39.496 26.3132 39.2956C34.2667 36.6242 39.9999 29.0792 39.9999 20.1653C40.0327 9.01388 31.052 0 20.0165 0Z" fill="white"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M20.0165 0C8.94791 0 0 9.01388 0 20.1653C0 29.0792 5.73324 36.6246 13.6868 39.2952C14.6812 39.496 15.0454 38.8613 15.0454 38.3274C15.0454 37.8599 15.0126 36.2575 15.0126 34.5879C9.4445 35.79 8.28498 32.1841 8.28498 32.1841C7.39015 29.847 6.06429 29.2463 6.06429 29.2463C4.24185 28.011 6.19704 28.011 6.19704 28.011C8.21861 28.1446 9.27938 30.081 9.27938 30.081C11.0686 33.1522 13.9518 32.2844 15.1118 31.7502C15.2773 30.4481 15.8079 29.5467 16.3713 29.046C11.9303 28.5785 7.25781 26.8425 7.25781 19.0967C7.25781 16.8932 8.05267 15.0905 9.31216 13.6884C9.11344 13.1877 8.41732 11.1174 9.51128 8.34644C9.51128 8.34644 11.2014 7.81217 15.0122 10.4164C16.6438 9.97495 18.3263 9.7504 20.0165 9.74851C21.7067 9.74851 23.4295 9.98246 25.0205 10.4164C28.8317 7.81217 30.5218 8.34644 30.5218 8.34644C31.6158 11.1174 30.9192 13.1877 30.7205 13.6884C32.0132 15.0905 32.7753 16.8932 32.7753 19.0967C32.7753 26.8425 28.1028 28.5449 23.6287 29.046C24.358 29.6802 24.9873 30.882 24.9873 32.7851C24.9873 35.4893 24.9545 37.6596 24.9545 38.327C24.9545 38.8613 25.3192 39.496 26.3132 39.2956C34.2667 36.6242 39.9999 29.0792 39.9999 20.1653C40.0327 9.01388 31.052 0 20.0165 0Z" fill="#24292F"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ import type { INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class EvoGo implements INodeType {
3
+ description: INodeTypeDescription;
4
+ }