n8n-nodes-keloola-workspace 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,56 @@
1
+ # n8n-nodes-keloola-workspace
2
+
3
+ This is an n8n community node package for **Keloola Workspace**. It provides the initial package structure for integrating Keloola Workspace with n8n workflows.
4
+
5
+ [n8n](https://n8n.io/) is a workflow automation platform.
6
+
7
+ ## Installation
8
+
9
+ Follow the [n8n community nodes installation guide](https://docs.n8n.io/integrations/community-nodes/installation/).
10
+
11
+ ## Credentials
12
+
13
+ Create a **Keloola Workspace API** credential in n8n with:
14
+
15
+ - **API Base URL**: The base URL for the Keloola Workspace API.
16
+ - **Access Token**: Bearer token used to authenticate requests.
17
+
18
+ ## Operations
19
+
20
+ ### Resource: Workspace
21
+
22
+ - **Get Many**: Retrieve a paginated workspace list.
23
+ - **Get**: Retrieve one workspace by ID.
24
+
25
+ ### Resource: Note
26
+
27
+ - **Create Note**: Create a note with title, content, and optional project UUID.
28
+
29
+ ### Resource: Task
30
+
31
+ - **List Tasks**: Retrieve paginated tasks for a project, with filters for search, priority, type, and assignee.
32
+ - **Get Task Detail**: Retrieve one task by UUID.
33
+ - **Create Task**: Create a new task with task fields and optional BOS connector fields.
34
+ - **Update Task**: Update editable task fields and optional BOS connector fields.
35
+ - **Delete Task**: Delete a task permanently by UUID.
36
+
37
+ ## Development
38
+
39
+ From the monorepo root:
40
+
41
+ ```bash
42
+ bun install
43
+ bun run prebuild
44
+ bun run build
45
+ ```
46
+
47
+ To link the package into a local n8n installation:
48
+
49
+ ```bash
50
+ bun run link:nodes
51
+ ```
52
+
53
+ ## Resources
54
+
55
+ - [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
56
+ - [Keloola repository](https://github.com/Thrive-Developer/keloola)
@@ -0,0 +1,10 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, Icon, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class KeloolaWorkspaceApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ icon: Icon;
6
+ documentationUrl: string;
7
+ properties: INodeProperties[];
8
+ authenticate: IAuthenticateGeneric;
9
+ test: ICredentialTestRequest;
10
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KeloolaWorkspaceApi = void 0;
4
+ class KeloolaWorkspaceApi {
5
+ constructor() {
6
+ this.name = 'keloolaWorkspaceApi';
7
+ this.displayName = 'Keloola Workspace API';
8
+ this.icon = 'file:../icons/keloola.svg';
9
+ this.documentationUrl = 'https://github.com/Thrive-Developer/keloola/tree/main/n8n-nodes-keloola-workspace#credentials';
10
+ this.properties = [
11
+ {
12
+ displayName: 'API Base URL',
13
+ name: 'baseUrl',
14
+ type: 'string',
15
+ required: true,
16
+ default: 'https://api-pm.keloola.co/api/v1/external',
17
+ placeholder: 'https://api-pm.keloola.co/api/v1/external',
18
+ description: 'Base URL for the Keloola Workspace API',
19
+ },
20
+ {
21
+ displayName: 'Access Token',
22
+ name: 'accessToken',
23
+ type: 'string',
24
+ required: true,
25
+ typeOptions: { password: true },
26
+ default: '',
27
+ description: 'Bearer token used to authenticate Keloola Workspace API requests',
28
+ },
29
+ ];
30
+ this.authenticate = {
31
+ type: 'generic',
32
+ properties: {
33
+ headers: {
34
+ Accept: 'application/json',
35
+ Authorization: '=Bearer {{$credentials.accessToken}}',
36
+ },
37
+ },
38
+ };
39
+ this.test = {
40
+ request: {
41
+ method: 'GET',
42
+ url: '={{$credentials.baseUrl}}/workspaces',
43
+ headers: {
44
+ 'Accept-Language': 'en',
45
+ },
46
+ },
47
+ };
48
+ }
49
+ }
50
+ exports.KeloolaWorkspaceApi = KeloolaWorkspaceApi;
51
+ //# sourceMappingURL=KeloolaWorkspaceApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeloolaWorkspaceApi.credentials.js","sourceRoot":"","sources":["../../credentials/KeloolaWorkspaceApi.credentials.ts"],"names":[],"mappings":";;;AAQA,MAAa,mBAAmB;IAAhC;QACE,SAAI,GAAG,qBAAqB,CAAC;QAC7B,gBAAW,GAAG,uBAAuB,CAAC;QACtC,SAAI,GAAG,2BAAmC,CAAC;QAC3C,qBAAgB,GACd,+FAA+F,CAAC;QAElG,eAAU,GAAsB;YAC9B;gBACE,WAAW,EAAE,cAAc;gBAC3B,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,2CAA2C;gBACpD,WAAW,EAAE,2CAA2C;gBACxD,WAAW,EAAE,wCAAwC;aACtD;YACD;gBACE,WAAW,EAAE,cAAc;gBAC3B,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,kEAAkE;aAChF;SACF,CAAC;QAEF,iBAAY,GAAyB;YACnC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,MAAM,EAAE,kBAAkB;oBAC1B,aAAa,EAAE,sCAAsC;iBACtD;aACF;SACF,CAAC;QAEF,SAAI,GAA2B;YAC7B,OAAO,EAAE;gBACP,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,sCAAsC;gBAC3C,OAAO,EAAE;oBACP,iBAAiB,EAAE,IAAI;iBACxB;aACF;SACF,CAAC;IACJ,CAAC;CAAA;AA/CD,kDA+CC"}
@@ -0,0 +1,9 @@
1
+ <svg width="60" height="49" viewBox="0 0 60 49" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M38.3418 37.9313C38.3414 37.9334 38.3412 37.9354 38.3412 37.9375C38.3412 37.9394 38.3411 37.9413 38.3408 37.9431C38.2128 38.7569 37.1587 39.0075 36.6792 38.3363C35.7492 37.0283 34.8372 35.7503 33.9372 34.4843C33.6432 34.0703 33.7392 33.5063 34.1412 33.2063C35.3892 32.2883 36.6312 31.3763 37.8792 30.4583C38.5452 29.9723 39.4632 30.5303 39.3372 31.3463L39.3312 31.3823C39.2514 31.9069 39.611 32.4134 40.1406 32.4465C40.172 32.4485 40.2005 32.4498 40.2253 32.4503C40.6872 32.4563 41.1432 32.4023 41.5992 32.3303C44.9412 31.7783 47.9112 29.0363 48.2232 24.9383C48.4812 21.5063 46.2132 18.1283 42.8172 16.9823C37.9812 15.3503 32.8872 18.6323 32.4012 23.7143C32.3472 24.2843 32.3772 24.8663 32.3352 25.4363C31.8192 31.8563 26.8512 36.7583 20.4312 37.1843C13.3632 37.6523 7.15324 31.9763 7.00324 24.9023C6.84724 17.6843 12.3492 11.9663 19.5972 11.8103C19.9452 11.8043 20.2992 11.8223 20.6592 11.8463C20.6804 11.8478 20.704 11.8495 20.7294 11.8512C21.1693 11.8812 21.558 11.568 21.6268 11.1325C21.6305 11.1093 21.6338 11.088 21.6368 11.0692C21.6371 11.0672 21.6372 11.0653 21.6372 11.0633C21.6372 11.0613 21.6374 11.0593 21.6377 11.0574C21.7658 10.2437 22.8198 9.99314 23.3052 10.6643C24.2292 11.9603 25.1352 13.2323 26.0232 14.4803C26.3172 14.8883 26.2212 15.4583 25.8192 15.7583C24.5772 16.6703 23.3353 17.5823 22.0933 18.5003C21.4272 18.9863 20.5092 18.4283 20.6352 17.6183C20.7207 17.0934 20.3567 16.5847 19.8258 16.5536C19.7972 16.5519 19.7708 16.5508 19.7472 16.5503C19.3092 16.5443 18.8772 16.5923 18.4512 16.6583C15.0372 17.2043 12.0852 19.9763 11.7672 24.0443C11.4972 27.4703 13.7772 30.8903 17.1552 32.0123C21.4752 33.4583 26.0232 31.1123 27.3132 26.7083C27.5592 25.8743 27.5712 24.9623 27.6132 24.0803C27.6792 22.6583 27.9372 21.2843 28.4532 19.9643C30.3672 15.0563 34.8552 11.9063 40.0933 11.7863C46.8132 11.6363 52.5732 16.9343 52.9753 23.6483C53.4193 30.9983 47.7612 37.0763 40.3752 37.1843C40.0332 37.1903 39.6852 37.1723 39.3372 37.1483C39.3164 37.1468 39.2928 37.1451 39.2671 37.1433C38.8248 37.1123 38.4316 37.4228 38.3544 37.8595C38.3498 37.8857 38.3455 37.9099 38.3418 37.9313Z" fill="url(#paint0_linear_548_46083)"/>
3
+ <defs>
4
+ <linearGradient id="paint0_linear_548_46083" x1="11.1919" y1="43.2997" x2="51.3135" y2="3.17821" gradientUnits="userSpaceOnUse">
5
+ <stop stop-color="#E7491D"/>
6
+ <stop offset="0.7258" stop-color="#F7A92C"/>
7
+ </linearGradient>
8
+ </defs>
9
+ </svg>
@@ -0,0 +1,9 @@
1
+ <svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect width="60" height="60" rx="12" fill="#111827"/>
3
+ <path d="M15 17H45V43H15V17Z" fill="#FFFFFF"/>
4
+ <path d="M20 23H34" stroke="#111827" stroke-width="3" stroke-linecap="round"/>
5
+ <path d="M20 30H40" stroke="#111827" stroke-width="3" stroke-linecap="round"/>
6
+ <path d="M20 37H30" stroke="#111827" stroke-width="3" stroke-linecap="round"/>
7
+ <path d="M38 19H45V26" stroke="#00A884" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
8
+ <path d="M45 19L35 29" stroke="#00A884" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
9
+ </svg>
@@ -0,0 +1,5 @@
1
+ import { IExecuteFunctions, INodeExecutionData, type INodeType, type INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class KeloolaWorkspace implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
5
+ }