n8n-nodes-diro 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.
package/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Diro
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 ADDED
@@ -0,0 +1,90 @@
1
+ # n8n-nodes-diro
2
+
3
+ This is an n8n community node for [Diro](https://getdiro.com) - a document automation platform that generates PDF/PNG documents from templates.
4
+
5
+ [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.
6
+
7
+ ## Features
8
+
9
+ - **Generate Documents**: Create PDF or PNG documents from templates with dynamic data
10
+ - **Manage Documents**: List, retrieve, and delete generated documents
11
+ - **Manage Templates**: List and retrieve your document templates
12
+
13
+ ## Installation
14
+
15
+ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
16
+
17
+ ```bash
18
+ npm install n8n-nodes-diro
19
+ ```
20
+
21
+ ## Credentials
22
+
23
+ To use this node, you need a Diro API key:
24
+
25
+ 1. Sign up at [getdiro.com](https://getdiro.com)
26
+ 2. Go to Dashboard > API Keys
27
+ 3. Create a new API key (requires Pro or Enterprise plan)
28
+ 4. Copy the API key (starts with `diro_`)
29
+
30
+ ## Operations
31
+
32
+ ### Document
33
+
34
+ | Operation | Description |
35
+ |-----------|-------------|
36
+ | **Generate** | Generate a new document from a template |
37
+ | **Get** | Get a document by ID |
38
+ | **Get Many** | List all documents |
39
+ | **Delete** | Delete a document |
40
+
41
+ ### Template
42
+
43
+ | Operation | Description |
44
+ |-----------|-------------|
45
+ | **Get** | Get a template by ID (includes field definitions) |
46
+ | **Get Many** | List all templates |
47
+
48
+ ## Usage
49
+
50
+ ### Generate a Document
51
+
52
+ 1. Add the **Diro** node to your workflow
53
+ 2. Select **Document** as the resource
54
+ 3. Select **Generate** as the operation
55
+ 4. Enter the **Template ID** (from your Diro dashboard)
56
+ 5. Enter the **Data** as JSON:
57
+
58
+ ```json
59
+ {
60
+ "name": "John Doe",
61
+ "score": 85,
62
+ "date": "2024-01-15"
63
+ }
64
+ ```
65
+
66
+ 6. (Optional) Set format to PDF or PNG
67
+ 7. Execute the node
68
+
69
+ The response includes the document ID and download URL (`pdfUrl`).
70
+
71
+ ### Example Workflow
72
+
73
+ ```
74
+ [Webhook] -> [Diro: Generate Document] -> [Send Email with PDF link]
75
+ ```
76
+
77
+ ## Resources
78
+
79
+ - [Diro Documentation](https://docs.getdiro.com)
80
+ - [API Reference](https://docs.getdiro.com/api-reference/overview)
81
+ - [n8n Community Nodes](https://docs.n8n.io/integrations/community-nodes/)
82
+
83
+ ## Support
84
+
85
+ - For Diro-related issues: [support@getdiro.com](mailto:support@getdiro.com)
86
+ - For node bugs: [GitHub Issues](https://github.com/getdiro/n8n-nodes-diro/issues)
87
+
88
+ ## License
89
+
90
+ [MIT](LICENSE.md)
@@ -0,0 +1,10 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class DiroApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ properties: INodeProperties[];
7
+ authenticate: IAuthenticateGeneric;
8
+ test: ICredentialTestRequest;
9
+ }
10
+ //# sourceMappingURL=DiroApi.credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiroApi.credentials.d.ts","sourceRoot":"","sources":["../../src/credentials/DiroApi.credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,eAAe,EAChB,MAAM,cAAc,CAAC;AAEtB,qBAAa,OAAQ,YAAW,eAAe;IAC7C,IAAI,SAAa;IACjB,WAAW,SAAc;IACzB,gBAAgB,SAA6C;IAC7D,UAAU,EAAE,eAAe,EAAE,CAmB3B;IAEF,YAAY,EAAE,oBAAoB,CAOhC;IAEF,IAAI,EAAE,sBAAsB,CAM1B;CACH"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DiroApi = void 0;
4
+ class DiroApi {
5
+ name = 'diroApi';
6
+ displayName = 'Diro API';
7
+ documentationUrl = 'https://docs.getdiro.com/authentication';
8
+ properties = [
9
+ {
10
+ displayName: 'API Key',
11
+ name: 'apiKey',
12
+ type: 'string',
13
+ typeOptions: {
14
+ password: true,
15
+ },
16
+ default: '',
17
+ required: true,
18
+ description: 'API Key from Diro Dashboard. Starts with "diro_".',
19
+ },
20
+ {
21
+ displayName: 'Base URL',
22
+ name: 'baseUrl',
23
+ type: 'string',
24
+ default: 'https://getdiro.com',
25
+ description: 'Base URL for the Diro API. Change only for self-hosted instances.',
26
+ },
27
+ ];
28
+ authenticate = {
29
+ type: 'generic',
30
+ properties: {
31
+ headers: {
32
+ Authorization: '=Bearer {{$credentials.apiKey}}',
33
+ },
34
+ },
35
+ };
36
+ test = {
37
+ request: {
38
+ baseURL: '={{$credentials.baseUrl}}',
39
+ url: '/api/v1/templates',
40
+ method: 'GET',
41
+ },
42
+ };
43
+ }
44
+ exports.DiroApi = DiroApi;
45
+ //# sourceMappingURL=DiroApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiroApi.credentials.js","sourceRoot":"","sources":["../../src/credentials/DiroApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,OAAO;IAClB,IAAI,GAAG,SAAS,CAAC;IACjB,WAAW,GAAG,UAAU,CAAC;IACzB,gBAAgB,GAAG,yCAAyC,CAAC;IAC7D,UAAU,GAAsB;QAC9B;YACE,WAAW,EAAE,SAAS;YACtB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,mDAAmD;SACjE;QACD;YACE,WAAW,EAAE,UAAU;YACvB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,qBAAqB;YAC9B,WAAW,EAAE,mEAAmE;SACjF;KACF,CAAC;IAEF,YAAY,GAAyB;QACnC,IAAI,EAAE,SAAS;QACf,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,aAAa,EAAE,iCAAiC;aACjD;SACF;KACF,CAAC;IAEF,IAAI,GAA2B;QAC7B,OAAO,EAAE;YACP,OAAO,EAAE,2BAA2B;YACpC,GAAG,EAAE,mBAAmB;YACxB,MAAM,EAAE,KAAK;SACd;KACF,CAAC;CACH;AAzCD,0BAyCC"}
@@ -0,0 +1,6 @@
1
+ import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class Diro implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
5
+ }
6
+ //# sourceMappingURL=Diro.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diro.node.d.ts","sourceRoot":"","sources":["../../../src/nodes/Diro/Diro.node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EAGrB,MAAM,cAAc,CAAC;AAsCtB,qBAAa,IAAK,YAAW,SAAS;IACpC,WAAW,EAAE,oBAAoB,CA4S/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAkKxE"}
@@ -0,0 +1,459 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Diro = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ async function getAllResults(context, url, qs) {
6
+ const allResults = [];
7
+ let offset = 0;
8
+ const limit = 100;
9
+ while (true) {
10
+ const response = await context.helpers.httpRequestWithAuthentication.call(context, 'diroApi', {
11
+ method: 'GET',
12
+ url,
13
+ qs: { ...qs, limit, offset },
14
+ json: true,
15
+ });
16
+ const items = response.data?.documents || response.data?.templates || [];
17
+ allResults.push(...items);
18
+ const total = response.data?.pagination?.total || 0;
19
+ offset += limit;
20
+ if (offset >= total || items.length === 0) {
21
+ break;
22
+ }
23
+ }
24
+ return allResults;
25
+ }
26
+ class Diro {
27
+ description = {
28
+ displayName: 'Diro',
29
+ name: 'diro',
30
+ icon: 'file:diro.svg',
31
+ group: ['transform'],
32
+ version: 1,
33
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
34
+ description: 'Generate PDF/PNG documents from templates using Diro API',
35
+ defaults: {
36
+ name: 'Diro',
37
+ },
38
+ inputs: ['main'],
39
+ outputs: ['main'],
40
+ credentials: [
41
+ {
42
+ name: 'diroApi',
43
+ required: true,
44
+ },
45
+ ],
46
+ properties: [
47
+ {
48
+ displayName: 'Resource',
49
+ name: 'resource',
50
+ type: 'options',
51
+ noDataExpression: true,
52
+ options: [
53
+ {
54
+ name: 'Document',
55
+ value: 'document',
56
+ description: 'Generate and manage documents',
57
+ },
58
+ {
59
+ name: 'Template',
60
+ value: 'template',
61
+ description: 'Manage document templates',
62
+ },
63
+ ],
64
+ default: 'document',
65
+ },
66
+ {
67
+ displayName: 'Operation',
68
+ name: 'operation',
69
+ type: 'options',
70
+ noDataExpression: true,
71
+ displayOptions: {
72
+ show: {
73
+ resource: ['document'],
74
+ },
75
+ },
76
+ options: [
77
+ {
78
+ name: 'Generate',
79
+ value: 'generate',
80
+ description: 'Generate a new document from a template',
81
+ action: 'Generate a document',
82
+ },
83
+ {
84
+ name: 'Get',
85
+ value: 'get',
86
+ description: 'Get a document by ID',
87
+ action: 'Get a document',
88
+ },
89
+ {
90
+ name: 'Get Many',
91
+ value: 'getMany',
92
+ description: 'Get many documents',
93
+ action: 'Get many documents',
94
+ },
95
+ {
96
+ name: 'Delete',
97
+ value: 'delete',
98
+ description: 'Delete a document',
99
+ action: 'Delete a document',
100
+ },
101
+ ],
102
+ default: 'generate',
103
+ },
104
+ {
105
+ displayName: 'Operation',
106
+ name: 'operation',
107
+ type: 'options',
108
+ noDataExpression: true,
109
+ displayOptions: {
110
+ show: {
111
+ resource: ['template'],
112
+ },
113
+ },
114
+ options: [
115
+ {
116
+ name: 'Get',
117
+ value: 'get',
118
+ description: 'Get a template by ID',
119
+ action: 'Get a template',
120
+ },
121
+ {
122
+ name: 'Get Many',
123
+ value: 'getMany',
124
+ description: 'Get many templates',
125
+ action: 'Get many templates',
126
+ },
127
+ ],
128
+ default: 'getMany',
129
+ },
130
+ {
131
+ displayName: 'Template ID',
132
+ name: 'templateId',
133
+ type: 'string',
134
+ required: true,
135
+ displayOptions: {
136
+ show: {
137
+ resource: ['document'],
138
+ operation: ['generate'],
139
+ },
140
+ },
141
+ default: '',
142
+ description: 'The ID of the template to use for document generation',
143
+ },
144
+ {
145
+ displayName: 'Data',
146
+ name: 'data',
147
+ type: 'json',
148
+ required: true,
149
+ displayOptions: {
150
+ show: {
151
+ resource: ['document'],
152
+ operation: ['generate'],
153
+ },
154
+ },
155
+ default: '{}',
156
+ description: 'JSON object with field values. Keys should match template field keys (e.g., {"name": "John", "score": 85}).',
157
+ },
158
+ {
159
+ displayName: 'Options',
160
+ name: 'options',
161
+ type: 'collection',
162
+ placeholder: 'Add Option',
163
+ default: {},
164
+ displayOptions: {
165
+ show: {
166
+ resource: ['document'],
167
+ operation: ['generate'],
168
+ },
169
+ },
170
+ options: [
171
+ {
172
+ displayName: 'Format',
173
+ name: 'format',
174
+ type: 'options',
175
+ options: [
176
+ { name: 'PDF', value: 'pdf' },
177
+ { name: 'PNG', value: 'png' },
178
+ ],
179
+ default: 'pdf',
180
+ description: 'Output format for the generated document',
181
+ },
182
+ {
183
+ displayName: 'Width',
184
+ name: 'width',
185
+ type: 'number',
186
+ default: 0,
187
+ description: 'Custom page width in pixels (0 to use template default)',
188
+ },
189
+ {
190
+ displayName: 'Height',
191
+ name: 'height',
192
+ type: 'number',
193
+ default: 0,
194
+ description: 'Custom page height in pixels (0 to use template default)',
195
+ },
196
+ ],
197
+ },
198
+ {
199
+ displayName: 'Document ID',
200
+ name: 'documentId',
201
+ type: 'string',
202
+ required: true,
203
+ displayOptions: {
204
+ show: {
205
+ resource: ['document'],
206
+ operation: ['get', 'delete'],
207
+ },
208
+ },
209
+ default: '',
210
+ description: 'The ID of the document',
211
+ },
212
+ {
213
+ displayName: 'Return All',
214
+ name: 'returnAll',
215
+ type: 'boolean',
216
+ displayOptions: {
217
+ show: {
218
+ resource: ['document'],
219
+ operation: ['getMany'],
220
+ },
221
+ },
222
+ default: false,
223
+ description: 'Whether to return all results or only up to a given limit',
224
+ },
225
+ {
226
+ displayName: 'Limit',
227
+ name: 'limit',
228
+ type: 'number',
229
+ displayOptions: {
230
+ show: {
231
+ resource: ['document'],
232
+ operation: ['getMany'],
233
+ returnAll: [false],
234
+ },
235
+ },
236
+ typeOptions: {
237
+ minValue: 1,
238
+ maxValue: 100,
239
+ },
240
+ default: 20,
241
+ description: 'Max number of results to return',
242
+ },
243
+ {
244
+ displayName: 'Filters',
245
+ name: 'filters',
246
+ type: 'collection',
247
+ placeholder: 'Add Filter',
248
+ default: {},
249
+ displayOptions: {
250
+ show: {
251
+ resource: ['document'],
252
+ operation: ['getMany'],
253
+ },
254
+ },
255
+ options: [
256
+ {
257
+ displayName: 'Template ID',
258
+ name: 'templateId',
259
+ type: 'string',
260
+ default: '',
261
+ description: 'Filter documents by template ID',
262
+ },
263
+ ],
264
+ },
265
+ {
266
+ displayName: 'Template ID',
267
+ name: 'templateId',
268
+ type: 'string',
269
+ required: true,
270
+ displayOptions: {
271
+ show: {
272
+ resource: ['template'],
273
+ operation: ['get'],
274
+ },
275
+ },
276
+ default: '',
277
+ description: 'The ID of the template',
278
+ },
279
+ {
280
+ displayName: 'Return All',
281
+ name: 'returnAll',
282
+ type: 'boolean',
283
+ displayOptions: {
284
+ show: {
285
+ resource: ['template'],
286
+ operation: ['getMany'],
287
+ },
288
+ },
289
+ default: false,
290
+ description: 'Whether to return all results or only up to a given limit',
291
+ },
292
+ {
293
+ displayName: 'Limit',
294
+ name: 'limit',
295
+ type: 'number',
296
+ displayOptions: {
297
+ show: {
298
+ resource: ['template'],
299
+ operation: ['getMany'],
300
+ returnAll: [false],
301
+ },
302
+ },
303
+ typeOptions: {
304
+ minValue: 1,
305
+ maxValue: 100,
306
+ },
307
+ default: 20,
308
+ description: 'Max number of results to return',
309
+ },
310
+ ],
311
+ };
312
+ async execute() {
313
+ const items = this.getInputData();
314
+ const returnData = [];
315
+ const resource = this.getNodeParameter('resource', 0);
316
+ const operation = this.getNodeParameter('operation', 0);
317
+ const credentials = await this.getCredentials('diroApi');
318
+ const baseUrl = credentials.baseUrl || 'https://getdiro.com';
319
+ for (let i = 0; i < items.length; i++) {
320
+ try {
321
+ let responseData;
322
+ if (resource === 'document') {
323
+ if (operation === 'generate') {
324
+ const templateId = this.getNodeParameter('templateId', i);
325
+ const dataString = this.getNodeParameter('data', i);
326
+ const options = this.getNodeParameter('options', i);
327
+ let data;
328
+ try {
329
+ data = JSON.parse(dataString);
330
+ }
331
+ catch {
332
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), {
333
+ message: 'Invalid JSON in Data field',
334
+ description: 'Please provide valid JSON for the data field',
335
+ });
336
+ }
337
+ const body = {
338
+ templateId,
339
+ data,
340
+ };
341
+ if (options.format) {
342
+ body.format = options.format;
343
+ }
344
+ if (options.width && options.width > 0) {
345
+ body.width = options.width;
346
+ }
347
+ if (options.height && options.height > 0) {
348
+ body.height = options.height;
349
+ }
350
+ responseData = await this.helpers.httpRequestWithAuthentication.call(this, 'diroApi', {
351
+ method: 'POST',
352
+ url: `${baseUrl}/api/v1/documents`,
353
+ body,
354
+ json: true,
355
+ });
356
+ }
357
+ else if (operation === 'get') {
358
+ const documentId = this.getNodeParameter('documentId', i);
359
+ responseData = await this.helpers.httpRequestWithAuthentication.call(this, 'diroApi', {
360
+ method: 'GET',
361
+ url: `${baseUrl}/api/v1/documents/${documentId}`,
362
+ json: true,
363
+ });
364
+ }
365
+ else if (operation === 'getMany') {
366
+ const returnAll = this.getNodeParameter('returnAll', i);
367
+ const filters = this.getNodeParameter('filters', i);
368
+ const qs = {};
369
+ if (filters.templateId) {
370
+ qs.templateId = filters.templateId;
371
+ }
372
+ if (returnAll) {
373
+ responseData = await getAllResults(this, `${baseUrl}/api/v1/documents`, qs);
374
+ }
375
+ else {
376
+ const limit = this.getNodeParameter('limit', i);
377
+ qs.limit = limit;
378
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, 'diroApi', {
379
+ method: 'GET',
380
+ url: `${baseUrl}/api/v1/documents`,
381
+ qs,
382
+ json: true,
383
+ });
384
+ responseData = response.data?.documents || [];
385
+ }
386
+ }
387
+ else if (operation === 'delete') {
388
+ const documentId = this.getNodeParameter('documentId', i);
389
+ responseData = await this.helpers.httpRequestWithAuthentication.call(this, 'diroApi', {
390
+ method: 'DELETE',
391
+ url: `${baseUrl}/api/v1/documents/${documentId}`,
392
+ json: true,
393
+ });
394
+ }
395
+ else {
396
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), {
397
+ message: `Unknown operation: ${operation}`,
398
+ });
399
+ }
400
+ }
401
+ else if (resource === 'template') {
402
+ if (operation === 'get') {
403
+ const templateId = this.getNodeParameter('templateId', i);
404
+ responseData = await this.helpers.httpRequestWithAuthentication.call(this, 'diroApi', {
405
+ method: 'GET',
406
+ url: `${baseUrl}/api/v1/templates/${templateId}`,
407
+ json: true,
408
+ });
409
+ }
410
+ else if (operation === 'getMany') {
411
+ const returnAll = this.getNodeParameter('returnAll', i);
412
+ if (returnAll) {
413
+ responseData = await getAllResults(this, `${baseUrl}/api/v1/templates`, {});
414
+ }
415
+ else {
416
+ const limit = this.getNodeParameter('limit', i);
417
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, 'diroApi', {
418
+ method: 'GET',
419
+ url: `${baseUrl}/api/v1/templates`,
420
+ qs: { limit },
421
+ json: true,
422
+ });
423
+ responseData = response.data?.templates || [];
424
+ }
425
+ }
426
+ else {
427
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), {
428
+ message: `Unknown operation: ${operation}`,
429
+ });
430
+ }
431
+ }
432
+ else {
433
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), {
434
+ message: `Unknown resource: ${resource}`,
435
+ });
436
+ }
437
+ if (Array.isArray(responseData)) {
438
+ for (const item of responseData) {
439
+ returnData.push({ json: item });
440
+ }
441
+ }
442
+ else {
443
+ const data = responseData.data || responseData;
444
+ returnData.push({ json: data });
445
+ }
446
+ }
447
+ catch (error) {
448
+ if (this.continueOnFail()) {
449
+ returnData.push({ json: { error: error.message } });
450
+ continue;
451
+ }
452
+ throw error;
453
+ }
454
+ }
455
+ return [returnData];
456
+ }
457
+ }
458
+ exports.Diro = Diro;
459
+ //# sourceMappingURL=Diro.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diro.node.js","sourceRoot":"","sources":["../../../src/nodes/Diro/Diro.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
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="8" fill="#6366F1"/>
3
+ <path d="M18 12C16.3431 12 15 13.3431 15 15V45C15 46.6569 16.3431 48 18 48H42C43.6569 48 45 46.6569 45 45V22L35 12H18Z" fill="white"/>
4
+ <path d="M35 12V20C35 21.1046 35.8954 22 37 22H45L35 12Z" fill="#C7D2FE"/>
5
+ <rect x="21" y="28" width="18" height="3" rx="1.5" fill="#6366F1"/>
6
+ <rect x="21" y="35" width="14" height="3" rx="1.5" fill="#6366F1"/>
7
+ <rect x="21" y="42" width="10" height="2" rx="1" fill="#A5B4FC"/>
8
+ </svg>
package/package.json ADDED
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "n8n-nodes-diro",
3
+ "version": "0.1.0",
4
+ "description": "n8n community node for Diro - Document automation API",
5
+ "license": "MIT",
6
+ "keywords": [
7
+ "n8n-community-node-package",
8
+ "n8n",
9
+ "document",
10
+ "pdf",
11
+ "automation",
12
+ "diro"
13
+ ],
14
+ "author": {
15
+ "name": "Diro",
16
+ "email": "support@getdiro.com"
17
+ },
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "https://github.com/getdiro/n8n-nodes-diro.git"
21
+ },
22
+ "homepage": "https://getdiro.com",
23
+ "main": "dist/nodes/Diro/Diro.node.js",
24
+ "scripts": {
25
+ "build": "tsc && npm run copy:icons",
26
+ "copy:icons": "cp src/nodes/Diro/diro.svg dist/nodes/Diro/",
27
+ "dev": "tsc --watch",
28
+ "lint": "eslint src/",
29
+ "lint:fix": "eslint src/ --fix",
30
+ "format": "prettier --write \"src/**/*.ts\"",
31
+ "prepublishOnly": "npm run build"
32
+ },
33
+ "files": [
34
+ "dist"
35
+ ],
36
+ "n8n": {
37
+ "n8nNodesApiVersion": 1,
38
+ "credentials": [
39
+ "dist/credentials/DiroApi.credentials.js"
40
+ ],
41
+ "nodes": [
42
+ "dist/nodes/Diro/Diro.node.js"
43
+ ]
44
+ },
45
+ "devDependencies": {
46
+ "@types/node": "^22.0.0",
47
+ "@typescript-eslint/eslint-plugin": "^8.0.0",
48
+ "@typescript-eslint/parser": "^8.0.0",
49
+ "eslint": "^9.0.0",
50
+ "prettier": "^3.0.0",
51
+ "typescript": "^5.6.0"
52
+ },
53
+ "peerDependencies": {
54
+ "n8n-workflow": "*"
55
+ }
56
+ }