n8n-nodes-harmony 0.0.0-stage → 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 (47) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +103 -2
  3. package/dist/credentials/HarmonyApi.credentials.d.ts +13 -0
  4. package/dist/credentials/HarmonyApi.credentials.js +41 -0
  5. package/dist/credentials/HarmonyApi.credentials.js.map +1 -0
  6. package/dist/nodes/Harmony/Harmony.node.d.ts +11 -0
  7. package/dist/nodes/Harmony/Harmony.node.js +88 -0
  8. package/dist/nodes/Harmony/Harmony.node.js.map +1 -0
  9. package/dist/nodes/Harmony/Harmony.node.json +18 -0
  10. package/dist/nodes/Harmony/harmonyLogo.dark.svg +1 -0
  11. package/dist/nodes/Harmony/harmonyLogo.svg +1 -0
  12. package/dist/nodes/Harmony/resources/application.d.ts +3 -0
  13. package/dist/nodes/Harmony/resources/application.js +477 -0
  14. package/dist/nodes/Harmony/resources/application.js.map +1 -0
  15. package/dist/nodes/Harmony/resources/asset.d.ts +2 -0
  16. package/dist/nodes/Harmony/resources/asset.js +560 -0
  17. package/dist/nodes/Harmony/resources/asset.js.map +1 -0
  18. package/dist/nodes/Harmony/resources/catalogAndRequest.d.ts +4 -0
  19. package/dist/nodes/Harmony/resources/catalogAndRequest.js +293 -0
  20. package/dist/nodes/Harmony/resources/catalogAndRequest.js.map +1 -0
  21. package/dist/nodes/Harmony/resources/desk.d.ts +2 -0
  22. package/dist/nodes/Harmony/resources/desk.js +137 -0
  23. package/dist/nodes/Harmony/resources/desk.js.map +1 -0
  24. package/dist/nodes/Harmony/resources/employee.d.ts +2 -0
  25. package/dist/nodes/Harmony/resources/employee.js +330 -0
  26. package/dist/nodes/Harmony/resources/employee.js.map +1 -0
  27. package/dist/nodes/Harmony/resources/ticket.d.ts +2 -0
  28. package/dist/nodes/Harmony/resources/ticket.js +790 -0
  29. package/dist/nodes/Harmony/resources/ticket.js.map +1 -0
  30. package/dist/nodes/Harmony/resources/ticketChildren.d.ts +4 -0
  31. package/dist/nodes/Harmony/resources/ticketChildren.js +310 -0
  32. package/dist/nodes/Harmony/resources/ticketChildren.js.map +1 -0
  33. package/dist/nodes/Harmony/shared/descriptions.d.ts +15 -0
  34. package/dist/nodes/Harmony/shared/descriptions.js +120 -0
  35. package/dist/nodes/Harmony/shared/descriptions.js.map +1 -0
  36. package/dist/nodes/Harmony/shared/methods.d.ts +3 -0
  37. package/dist/nodes/Harmony/shared/methods.js +50 -0
  38. package/dist/nodes/Harmony/shared/methods.js.map +1 -0
  39. package/dist/nodes/Harmony/shared/options.d.ts +15 -0
  40. package/dist/nodes/Harmony/shared/options.js +129 -0
  41. package/dist/nodes/Harmony/shared/options.js.map +1 -0
  42. package/dist/nodes/Harmony/shared/transport.d.ts +15 -0
  43. package/dist/nodes/Harmony/shared/transport.js +50 -0
  44. package/dist/nodes/Harmony/shared/transport.js.map +1 -0
  45. package/dist/package.json +59 -0
  46. package/dist/tsconfig.tsbuildinfo +1 -0
  47. package/package.json +57 -4
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Harmony
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,104 @@
1
- # Temporary Holding Version
1
+ # n8n-nodes-harmony
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ This is an n8n community node for [Harmony](https://harmony.io), the AI-native IT service desk.
4
+ Use it to create and update tickets, reply to employees, manage assets and applications, and
5
+ read the requests the Harmony AI agent handled, all from your n8n workflows.
6
+
7
+ [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/sustainable-use-license/)
8
+ workflow automation platform.
9
+
10
+ - [Installation](#installation)
11
+ - [Credentials](#credentials)
12
+ - [Operations](#operations)
13
+ - [Usage](#usage)
14
+ - [Compatibility](#compatibility)
15
+ - [Resources](#resources)
16
+
17
+ ## Installation
18
+
19
+ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/)
20
+ in the n8n community nodes documentation, and install the `n8n-nodes-harmony` package.
21
+
22
+ ## Credentials
23
+
24
+ The node authenticates with a Harmony **access key**.
25
+
26
+ 1. In Harmony, go to **Settings > Access Keys** and create a key.
27
+ ([Managing API access keys](https://docs.harmony.io/settings/managing-api-access-keys))
28
+ 2. Pick the key's role:
29
+ - **Read**: get and list operations only.
30
+ - **Read + Write**: also create, update, add and remove operations.
31
+ 3. In n8n, create a **Harmony API** credential and paste the key into **Access Key**.
32
+
33
+ The key decides which Harmony organization the node works in. Requests run as the user who
34
+ created the key, so changes (for example, assigning an application owner) are attributed to
35
+ that user in Harmony's activity history. Create the key from an account that should appear as
36
+ the author.
37
+
38
+ ## Operations
39
+
40
+ | Resource | Operations |
41
+ | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
42
+ | **Ticket** | Create, Get, Get Many, Search (adds ticket metadata filters), Update, Update Many, Get Activity, Get Custom Fields, Set Custom Fields |
43
+ | **Ticket Message** | Create (reply or internal note), Get Many |
44
+ | **Ticket Watcher** | Add (employee or any email address), Remove |
45
+ | **Ticket Link** | Add, Get Many, Remove |
46
+ | **Desk** | Get, Get Many, Get Subdesks, Get Tags, Get Custom Field Definitions |
47
+ | **Employee** | Get, Get Many, Batch Get (by ID or work email) |
48
+ | **Asset** | Create, Get, Get Many, Update (including assignment), Get Activity |
49
+ | **Application** | Get, Get Many, Update |
50
+ | **Application Stakeholder** | Add, Get Many, Remove (app owners, IT approvers, budget approvers) |
51
+ | **Catalog Category** | Get Many (with their items) |
52
+ | **Catalog Item** | Get (with its form fields) |
53
+ | **Request** | Get, Get Many, Get Messages: conversations handled by the Harmony AI agent |
54
+
55
+ Every list operation supports **Return All** and **Limit**. Operations that return large
56
+ records (tickets, employees, assets, applications and requests) have a **Simplify** option,
57
+ on by default, that returns the 10 most useful fields. Turn it off to get the full record.
58
+
59
+ The node can also be used as a tool by n8n AI agents.
60
+
61
+ ## Usage
62
+
63
+ **IDs.** Tickets use their display ID, for example `INC-7814` (case-insensitive). Desks use the
64
+ slug from their URL in Harmony (`/tickets/desk/<desk-id>`), such as `it-desk`. Desk and employee
65
+ parameters let you pick from a searchable list instead. Assets use their readable ID, such as
66
+ `LP-DL-6sNdq`.
67
+
68
+ **Lists in text fields.** Filters that take several values, such as **Desk IDs** or **Work
69
+ Emails**, accept a comma-separated list: `it-desk, hr`.
70
+
71
+ **Avoiding duplicates on retries.** **Ticket > Create** and **Ticket Message > Create** accept an
72
+ **Idempotency Key**. Retrying with the same key returns the original result instead of creating
73
+ a second ticket or message. Use a value that identifies the source event, for example
74
+ `{{ $json.orderId }}-ticket`.
75
+
76
+ **Custom fields** are JSON objects. Use **Desk > Get Custom Field Definitions** to find the field
77
+ IDs for a desk, then pass values keyed by those IDs, for example `{"laptop_model": "MacBook Pro"}`.
78
+
79
+ **Unassigning.** To unassign a ticket or an asset, set the assignee to `_UNASSIGN_`.
80
+
81
+ ### Example: open a ticket from a form and post an internal note
82
+
83
+ 1. **n8n Form Trigger** collects a title, description and the requester's work email.
84
+ 2. **Harmony > Employee > Batch Get** with **Look Up By** set to _Work Email_ finds the employee.
85
+ 3. **Harmony > Ticket > Create** opens the ticket in your desk, with **Reporter** set to
86
+ `{{ $json.id }}` (ID mode).
87
+ 4. **Harmony > Ticket Message > Create** adds an internal note with the form's extra details,
88
+ with **Internal Note** turned on.
89
+
90
+ ## Compatibility
91
+
92
+ Requires n8n 2.46.1 or later. Tested with n8n 2.47.7.
93
+
94
+ ## Resources
95
+
96
+ - [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
97
+ - [Harmony API reference](https://docs.harmony.io/api-reference/introduction)
98
+ - [Managing Harmony API access keys](https://docs.harmony.io/settings/managing-api-access-keys)
99
+
100
+ ## Version history
101
+
102
+ ### 0.1.0
103
+
104
+ First release. Covers every operation of the Harmony public API.
@@ -0,0 +1,13 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class HarmonyApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ icon: {
6
+ readonly light: "file:../nodes/Harmony/harmonyLogo.svg";
7
+ readonly dark: "file:../nodes/Harmony/harmonyLogo.dark.svg";
8
+ };
9
+ documentationUrl: string;
10
+ properties: INodeProperties[];
11
+ authenticate: IAuthenticateGeneric;
12
+ test: ICredentialTestRequest;
13
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HarmonyApi = void 0;
4
+ class HarmonyApi {
5
+ constructor() {
6
+ this.name = 'harmonyApi';
7
+ this.displayName = 'Harmony API';
8
+ this.icon = {
9
+ light: 'file:../nodes/Harmony/harmonyLogo.svg',
10
+ dark: 'file:../nodes/Harmony/harmonyLogo.dark.svg',
11
+ };
12
+ this.documentationUrl = 'https://docs.harmony.io/settings/managing-api-access-keys';
13
+ this.properties = [
14
+ {
15
+ displayName: 'Access Key',
16
+ name: 'accessKey',
17
+ type: 'string',
18
+ typeOptions: { password: true },
19
+ required: true,
20
+ default: '',
21
+ description: 'Create one in Harmony under Settings > Access Keys. Choose Read + Write to create and update records.',
22
+ },
23
+ ];
24
+ this.authenticate = {
25
+ type: 'generic',
26
+ properties: {
27
+ headers: {
28
+ Authorization: '=AccessKey {{$credentials.accessKey}}',
29
+ },
30
+ },
31
+ };
32
+ this.test = {
33
+ request: {
34
+ baseURL: 'https://api.harmony.io',
35
+ url: '/service-desk/api/v1/desks/',
36
+ },
37
+ };
38
+ }
39
+ }
40
+ exports.HarmonyApi = HarmonyApi;
41
+ //# sourceMappingURL=HarmonyApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HarmonyApi.credentials.js","sourceRoot":"","sources":["../../credentials/HarmonyApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,UAAU;IAAvB;QACC,SAAI,GAAG,YAAY,CAAC;QAEpB,gBAAW,GAAG,aAAa,CAAC;QAE5B,SAAI,GAAG;YACN,KAAK,EAAE,uCAAuC;YAC9C,IAAI,EAAE,4CAA4C;SACzC,CAAC;QAEX,qBAAgB,GAAG,2DAA2D,CAAC;QAE/E,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,YAAY;gBACzB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EACV,uGAAuG;aACxG;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,uCAAuC;iBACtD;aACD;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,wBAAwB;gBACjC,GAAG,EAAE,6BAA6B;aAClC;SACD,CAAC;IACH,CAAC;CAAA;AAxCD,gCAwCC"}
@@ -0,0 +1,11 @@
1
+ import { type INodeType, type INodeTypeDescription } from 'n8n-workflow';
2
+ import { searchDesks, searchEmployees } from './shared/methods';
3
+ export declare class Harmony implements INodeType {
4
+ description: INodeTypeDescription;
5
+ methods: {
6
+ listSearch: {
7
+ searchDesks: typeof searchDesks;
8
+ searchEmployees: typeof searchEmployees;
9
+ };
10
+ };
11
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Harmony = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const application_1 = require("./resources/application");
6
+ const asset_1 = require("./resources/asset");
7
+ const catalogAndRequest_1 = require("./resources/catalogAndRequest");
8
+ const desk_1 = require("./resources/desk");
9
+ const employee_1 = require("./resources/employee");
10
+ const ticket_1 = require("./resources/ticket");
11
+ const ticketChildren_1 = require("./resources/ticketChildren");
12
+ const methods_1 = require("./shared/methods");
13
+ const transport_1 = require("./shared/transport");
14
+ class Harmony {
15
+ constructor() {
16
+ this.description = {
17
+ displayName: 'Harmony',
18
+ name: 'harmony',
19
+ icon: { light: 'file:harmonyLogo.svg', dark: 'file:harmonyLogo.dark.svg' },
20
+ group: ['transform'],
21
+ version: 1,
22
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
23
+ description: 'Manage tickets, employees, assets, applications and AI requests in Harmony',
24
+ defaults: {
25
+ name: 'Harmony',
26
+ },
27
+ usableAsTool: true,
28
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
29
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
30
+ credentials: [{ name: 'harmonyApi', required: true }],
31
+ requestDefaults: {
32
+ baseURL: transport_1.BASE_URL,
33
+ arrayFormat: 'repeat',
34
+ headers: {
35
+ Accept: 'application/json',
36
+ 'Content-Type': 'application/json',
37
+ },
38
+ },
39
+ properties: [
40
+ {
41
+ displayName: 'Resource',
42
+ name: 'resource',
43
+ type: 'options',
44
+ noDataExpression: true,
45
+ options: [
46
+ { name: 'Application', value: 'application' },
47
+ { name: 'Application Stakeholder', value: 'applicationStakeholder' },
48
+ { name: 'Asset', value: 'asset' },
49
+ { name: 'Catalog Category', value: 'catalogCategory' },
50
+ { name: 'Catalog Item', value: 'catalogItem' },
51
+ { name: 'Desk', value: 'desk' },
52
+ { name: 'Employee', value: 'employee' },
53
+ {
54
+ name: 'Request',
55
+ value: 'request',
56
+ description: 'A conversation handled by the Harmony AI agent',
57
+ },
58
+ { name: 'Ticket', value: 'ticket' },
59
+ { name: 'Ticket Link', value: 'ticketLink' },
60
+ { name: 'Ticket Message', value: 'ticketMessage' },
61
+ { name: 'Ticket Watcher', value: 'ticketWatcher' },
62
+ ],
63
+ default: 'ticket',
64
+ },
65
+ ...application_1.applicationDescription,
66
+ ...application_1.applicationStakeholderDescription,
67
+ ...asset_1.assetDescription,
68
+ ...catalogAndRequest_1.catalogCategoryDescription,
69
+ ...catalogAndRequest_1.catalogItemDescription,
70
+ ...desk_1.deskDescription,
71
+ ...employee_1.employeeDescription,
72
+ ...catalogAndRequest_1.requestDescription,
73
+ ...ticket_1.ticketDescription,
74
+ ...ticketChildren_1.ticketLinkDescription,
75
+ ...ticketChildren_1.ticketMessageDescription,
76
+ ...ticketChildren_1.ticketWatcherDescription,
77
+ ],
78
+ };
79
+ this.methods = {
80
+ listSearch: {
81
+ searchDesks: methods_1.searchDesks,
82
+ searchEmployees: methods_1.searchEmployees,
83
+ },
84
+ };
85
+ }
86
+ }
87
+ exports.Harmony = Harmony;
88
+ //# sourceMappingURL=Harmony.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Harmony.node.js","sourceRoot":"","sources":["../../../nodes/Harmony/Harmony.node.ts"],"names":[],"mappings":";;;AAAA,+CAA8F;AAC9F,yDAAoG;AACpG,6CAAqD;AACrD,qEAIuC;AACvC,2CAAmD;AACnD,mDAA2D;AAC3D,+CAAuD;AACvD,+DAIoC;AACpC,8CAAgE;AAChE,kDAA8C;AAE9C,MAAa,OAAO;IAApB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,SAAS;YACtB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,2BAA2B,EAAE;YAC1E,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,4EAA4E;YACzF,QAAQ,EAAE;gBACT,IAAI,EAAE,SAAS;aACf;YACD,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YACnC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACrD,eAAe,EAAE;gBAChB,OAAO,EAAE,oBAAQ;gBACjB,WAAW,EAAE,QAAQ;gBACrB,OAAO,EAAE;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBAClC;aACD;YACD,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,UAAU;oBACvB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,SAAS;oBACf,gBAAgB,EAAE,IAAI;oBACtB,OAAO,EAAE;wBACR,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;wBAC7C,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,wBAAwB,EAAE;wBACpE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;wBACjC,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,iBAAiB,EAAE;wBACtD,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE;wBAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;wBAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;wBACvC;4BACC,IAAI,EAAE,SAAS;4BACf,KAAK,EAAE,SAAS;4BAChB,WAAW,EAAE,gDAAgD;yBAC7D;wBACD,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;wBACnC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;wBAC5C,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE;wBAClD,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE;qBAClD;oBACD,OAAO,EAAE,QAAQ;iBACjB;gBACD,GAAG,oCAAsB;gBACzB,GAAG,+CAAiC;gBACpC,GAAG,wBAAgB;gBACnB,GAAG,8CAA0B;gBAC7B,GAAG,0CAAsB;gBACzB,GAAG,sBAAe;gBAClB,GAAG,8BAAmB;gBACtB,GAAG,sCAAkB;gBACrB,GAAG,0BAAiB;gBACpB,GAAG,sCAAqB;gBACxB,GAAG,yCAAwB;gBAC3B,GAAG,yCAAwB;aAC3B;SACD,CAAC;QAEF,YAAO,GAAG;YACT,UAAU,EAAE;gBACX,WAAW,EAAX,qBAAW;gBACX,eAAe,EAAf,yBAAe;aACf;SACD,CAAC;IACH,CAAC;CAAA;AAvED,0BAuEC"}
@@ -0,0 +1,18 @@
1
+ {
2
+ "node": "n8n-nodes-harmony.harmony",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Productivity"],
6
+ "resources": {
7
+ "credentialDocumentation": [
8
+ {
9
+ "url": "https://github.com/harmonyso/n8n-nodes-harmony?tab=readme-ov-file#credentials"
10
+ }
11
+ ],
12
+ "primaryDocumentation": [
13
+ {
14
+ "url": "https://github.com/harmonyso/n8n-nodes-harmony?tab=readme-ov-file"
15
+ }
16
+ ]
17
+ }
18
+ }
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><rect width="100" height="100" fill="#6662FF"/><g transform="translate(12 12) scale(3.8)"><path d="M4.22852 11.4824C4.70889 11.5072 5.09082 11.9118 5.09082 12.4072C5.09079 12.9026 4.70887 13.3073 4.22852 13.332L4.18164 13.333L4.12109 13.334C2.84399 13.367 1.81847 14.4316 1.81836 15.7402C1.81836 17.0697 2.87632 18.1474 4.18164 18.1475C5.48704 18.1475 6.5459 17.0698 6.5459 15.7402C6.54601 15.2291 6.9523 14.8147 7.4541 14.8145C7.95611 14.8145 8.36317 15.229 8.36328 15.7402C8.36328 18.0925 6.4912 20 4.18164 20C1.87217 19.9999 0 18.0925 0 15.7402C0.000111019 13.4248 1.81463 11.5407 4.07422 11.4824L4.18164 11.4814L4.22852 11.4824Z" fill="#FFFFFF"/><path d="M4.18164 0C6.49854 0 8.36308 1.92748 8.36328 4.28809V9.07422H11.6367V7.59277C11.6367 7.08141 12.0438 6.66699 12.5459 6.66699C13.0478 6.66724 13.4541 7.08156 13.4541 7.59277V9.07422H14C14.5021 9.07422 14.9092 9.48863 14.9092 10C14.9091 10.5113 14.502 10.9258 14 10.9258H13.4541V15.7109C13.4541 17.0643 14.5204 18.1475 15.8184 18.1475C17.1162 18.1474 18.1816 17.0642 18.1816 15.7109C18.1815 14.3578 17.1161 13.2745 15.8184 13.2744C15.3163 13.2744 14.9092 12.86 14.9092 12.3486C14.9092 11.8373 15.3163 11.4229 15.8184 11.4229C18.1352 11.4229 19.9999 13.3503 20 15.7109C20 18.0717 18.1353 19.9999 15.8184 20C13.5013 20 11.6367 18.0717 11.6367 15.7109V10.9258H8.36328V12.4072C8.36325 12.9186 7.95616 13.333 7.4541 13.333C6.95225 13.3328 6.54593 12.9184 6.5459 12.4072V10.9258H6C5.49799 10.9258 5.09092 10.5113 5.09082 10C5.09082 9.48863 5.49792 9.07422 6 9.07422H6.5459V4.28809C6.54569 2.93493 5.47945 1.85156 4.18164 1.85156C2.88391 1.85166 1.81856 2.93499 1.81836 4.28809C1.81839 5.64134 2.88381 6.72451 4.18164 6.72461C4.68354 6.72461 5.09054 7.13927 5.09082 7.65039C5.09082 8.16176 4.68372 8.57715 4.18164 8.57715C1.86472 8.57705 3.01308e-05 6.64879 0 4.28809C0.000204809 1.92754 1.86483 9.8542e-05 4.18164 0Z" fill="#FFFFFF"/><path d="M15.8184 0C18.1277 9.81717e-05 19.9998 1.90675 20 4.25879C20 6.57431 18.1854 8.45828 15.9258 8.5166L15.8184 8.51855L15.7715 8.51758C15.2912 8.49283 14.9093 8.08804 14.9092 7.59277C14.9092 7.09736 15.2911 6.69273 15.7715 6.66797L15.8184 6.66699L15.8789 6.66602C17.1561 6.63302 18.1816 5.56754 18.1816 4.25879C18.1814 2.92948 17.1236 1.85166 15.8184 1.85156C14.5131 1.85156 13.4543 2.92942 13.4541 4.25879C13.4541 4.77 13.0478 5.1853 12.5459 5.18555C12.0438 5.18555 11.6367 4.77015 11.6367 4.25879C11.6369 1.90669 13.5089 1.78959e-08 15.8184 0Z" fill="#FFFFFF"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><rect width="100" height="100" fill="#6662FF"/><g transform="translate(12 12) scale(3.8)"><path d="M4.22852 11.4824C4.70889 11.5072 5.09082 11.9118 5.09082 12.4072C5.09079 12.9026 4.70887 13.3073 4.22852 13.332L4.18164 13.333L4.12109 13.334C2.84399 13.367 1.81847 14.4316 1.81836 15.7402C1.81836 17.0697 2.87632 18.1474 4.18164 18.1475C5.48704 18.1475 6.5459 17.0698 6.5459 15.7402C6.54601 15.2291 6.9523 14.8147 7.4541 14.8145C7.95611 14.8145 8.36317 15.229 8.36328 15.7402C8.36328 18.0925 6.4912 20 4.18164 20C1.87217 19.9999 0 18.0925 0 15.7402C0.000111019 13.4248 1.81463 11.5407 4.07422 11.4824L4.18164 11.4814L4.22852 11.4824Z" fill="#FFFFFF"/><path d="M4.18164 0C6.49854 0 8.36308 1.92748 8.36328 4.28809V9.07422H11.6367V7.59277C11.6367 7.08141 12.0438 6.66699 12.5459 6.66699C13.0478 6.66724 13.4541 7.08156 13.4541 7.59277V9.07422H14C14.5021 9.07422 14.9092 9.48863 14.9092 10C14.9091 10.5113 14.502 10.9258 14 10.9258H13.4541V15.7109C13.4541 17.0643 14.5204 18.1475 15.8184 18.1475C17.1162 18.1474 18.1816 17.0642 18.1816 15.7109C18.1815 14.3578 17.1161 13.2745 15.8184 13.2744C15.3163 13.2744 14.9092 12.86 14.9092 12.3486C14.9092 11.8373 15.3163 11.4229 15.8184 11.4229C18.1352 11.4229 19.9999 13.3503 20 15.7109C20 18.0717 18.1353 19.9999 15.8184 20C13.5013 20 11.6367 18.0717 11.6367 15.7109V10.9258H8.36328V12.4072C8.36325 12.9186 7.95616 13.333 7.4541 13.333C6.95225 13.3328 6.54593 12.9184 6.5459 12.4072V10.9258H6C5.49799 10.9258 5.09092 10.5113 5.09082 10C5.09082 9.48863 5.49792 9.07422 6 9.07422H6.5459V4.28809C6.54569 2.93493 5.47945 1.85156 4.18164 1.85156C2.88391 1.85166 1.81856 2.93499 1.81836 4.28809C1.81839 5.64134 2.88381 6.72451 4.18164 6.72461C4.68354 6.72461 5.09054 7.13927 5.09082 7.65039C5.09082 8.16176 4.68372 8.57715 4.18164 8.57715C1.86472 8.57705 3.01308e-05 6.64879 0 4.28809C0.000204809 1.92754 1.86483 9.8542e-05 4.18164 0Z" fill="#FFFFFF"/><path d="M15.8184 0C18.1277 9.81717e-05 19.9998 1.90675 20 4.25879C20 6.57431 18.1854 8.45828 15.9258 8.5166L15.8184 8.51855L15.7715 8.51758C15.2912 8.49283 14.9093 8.08804 14.9092 7.59277C14.9092 7.09736 15.2911 6.69273 15.7715 6.66797L15.8184 6.66699L15.8789 6.66602C17.1561 6.63302 18.1816 5.56754 18.1816 4.25879C18.1814 2.92948 17.1236 1.85166 15.8184 1.85156C14.5131 1.85156 13.4543 2.92942 13.4541 4.25879C13.4541 4.77 13.0478 5.1853 12.5459 5.18555C12.0438 5.18555 11.6367 4.77015 11.6367 4.25879C11.6369 1.90669 13.5089 1.78959e-08 15.8184 0Z" fill="#FFFFFF"/></g></svg>
@@ -0,0 +1,3 @@
1
+ import type { INodeProperties } from 'n8n-workflow';
2
+ export declare const applicationDescription: INodeProperties[];
3
+ export declare const applicationStakeholderDescription: INodeProperties[];