n8n-nodes-pocketbase 2.0.0 → 2.3.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 (50) hide show
  1. package/README.md +19 -1
  2. package/dist/credentials/PocketbaseHttpApi.credentials.d.ts +1 -1
  3. package/dist/credentials/PocketbaseHttpApi.credentials.js +13 -9
  4. package/dist/credentials/PocketbaseHttpApi.credentials.js.map +1 -1
  5. package/dist/nodes/{PocketbaseHttp → Common}/GenericFunctions.d.ts +3 -2
  6. package/dist/nodes/Common/GenericFunctions.js +85 -0
  7. package/dist/nodes/Common/GenericFunctions.js.map +1 -0
  8. package/dist/nodes/{PocketbaseHttp → Common}/LoadOptions.d.ts +1 -1
  9. package/dist/nodes/{PocketbaseHttp → Common}/LoadOptions.js +47 -20
  10. package/dist/nodes/Common/LoadOptions.js.map +1 -0
  11. package/dist/nodes/Common/RequestBodyFunctions.js +131 -0
  12. package/dist/nodes/Common/RequestBodyFunctions.js.map +1 -0
  13. package/dist/nodes/PocketbaseHttp/PocketbaseHttp.node.js +4 -3
  14. package/dist/nodes/PocketbaseHttp/PocketbaseHttp.node.js.map +1 -1
  15. package/dist/nodes/PocketbaseHttp/PocketbaseHttp.node.json +2 -2
  16. package/dist/nodes/PocketbaseTrigger/PocketbaseTrigger.node.d.ts +13 -0
  17. package/dist/nodes/PocketbaseTrigger/PocketbaseTrigger.node.js +239 -0
  18. package/dist/nodes/PocketbaseTrigger/PocketbaseTrigger.node.js.map +1 -0
  19. package/dist/nodes/PocketbaseTrigger/PocketbaseTrigger.node.json +18 -0
  20. package/dist/nodes/PocketbaseTrigger/pocketbaseTrigger.dark.svg +10 -0
  21. package/dist/nodes/PocketbaseTrigger/pocketbaseTrigger.svg +10 -0
  22. package/dist/package.json +17 -7
  23. package/dist/tests/GenericFunctions.spec.js +177 -0
  24. package/dist/tests/GenericFunctions.spec.js.map +1 -0
  25. package/dist/tests/PocketbaseCredentials.spec.d.ts +1 -0
  26. package/dist/tests/PocketbaseCredentials.spec.js +47 -0
  27. package/dist/tests/PocketbaseCredentials.spec.js.map +1 -0
  28. package/dist/tests/PocketbaseTrigger.spec.d.ts +1 -0
  29. package/dist/tests/PocketbaseTrigger.spec.js +243 -0
  30. package/dist/tests/PocketbaseTrigger.spec.js.map +1 -0
  31. package/dist/tests/PocketbaseTriggerIntegration.spec.d.ts +1 -0
  32. package/dist/tests/PocketbaseTriggerIntegration.spec.js +125 -0
  33. package/dist/tests/PocketbaseTriggerIntegration.spec.js.map +1 -0
  34. package/dist/tests/RequestBodyFunctions.spec.d.ts +1 -0
  35. package/dist/tests/RequestBodyFunctions.spec.js +232 -0
  36. package/dist/tests/RequestBodyFunctions.spec.js.map +1 -0
  37. package/dist/tsconfig.tsbuildinfo +1 -1
  38. package/package.json +17 -7
  39. package/dist/nodes/PocketbaseHttp/GenericFunctions.js +0 -42
  40. package/dist/nodes/PocketbaseHttp/GenericFunctions.js.map +0 -1
  41. package/dist/nodes/PocketbaseHttp/LoadOptions.js.map +0 -1
  42. package/dist/nodes/PocketbaseHttp/PocketbaseAuth.d.ts +0 -7
  43. package/dist/nodes/PocketbaseHttp/PocketbaseAuth.js +0 -50
  44. package/dist/nodes/PocketbaseHttp/PocketbaseAuth.js.map +0 -1
  45. package/dist/nodes/PocketbaseHttp/RequestBodyFunctions.js +0 -62
  46. package/dist/nodes/PocketbaseHttp/RequestBodyFunctions.js.map +0 -1
  47. package/dist/tests/PocketbaseAuth.spec.js +0 -75
  48. package/dist/tests/PocketbaseAuth.spec.js.map +0 -1
  49. /package/dist/nodes/{PocketbaseHttp → Common}/RequestBodyFunctions.d.ts +0 -0
  50. /package/dist/tests/{PocketbaseAuth.spec.d.ts → GenericFunctions.spec.d.ts} +0 -0
package/README.md CHANGED
@@ -7,12 +7,24 @@ PocketBase is an open source backend consisting of embedded database (SQLite) wi
7
7
  [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.
8
8
 
9
9
  [Installation](#installation)
10
+ [Usage Tips](#usage-tips)
10
11
  [Operations](#operations)
11
12
  [Credentials](#credentials)
12
13
  [Compatibility](#compatibility)
13
14
  [Development](#development)
14
15
  [Resources](#resources)
15
16
 
17
+ ## Usage Tips
18
+
19
+ ### Clearing Fields
20
+ To clear a field (set it to its zero-value or delete a file), you can send `null` as the value:
21
+ - **Text/Number/Select/Relation**: Use an expression to return `null` to clear the field.
22
+ - **JSON**: Use `null` to store a literal null value.
23
+ - **File**: Use `null` to delete the existing file.
24
+
25
+ In the **Fields** parameter, use an expression: `={{ null }}`.
26
+ In the **JSON Body**, use the literal `null`: `{"myField": null}`.
27
+
16
28
  ## Installation
17
29
 
18
30
  Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
@@ -21,6 +33,12 @@ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes
21
33
 
22
34
  Nearly all PocketBase operations for Base collections should be implemented.
23
35
 
36
+ ### Trigger Node (Beta)
37
+
38
+ This node allows you to subscribe to PocketBase events (create, update, delete) in real-time via Server-Sent Events (SSE).
39
+
40
+ **Note**: The trigger node is currently in Beta. We've implemented basic reconnection logic, but it may still be sensitive to network interruptions or large amounts of data. Please use with caution in production.
41
+
24
42
  ## Credentials
25
43
 
26
44
  Ensure you have an Auth collection in your PocketBase defined and the "Username/Password" Auth method turned on.
@@ -28,7 +46,7 @@ Alternatively, you can use your administrator account and the "\_superusers" col
28
46
 
29
47
  ## Compatibility
30
48
 
31
- This was developed for version 2.15.1 of n8n and version 0.36.9 of PocketBase.
49
+ This was developed for version 2.17.7 of n8n and version 0.37.3 of PocketBase.
32
50
 
33
51
  ## Development
34
52
 
@@ -6,7 +6,7 @@ export declare class PocketbaseHttpApi implements ICredentialType {
6
6
  properties: INodeProperties[];
7
7
  test: ICredentialTestRequest;
8
8
  preAuthentication(this: IHttpRequestHelper, credentials: ICredentialDataDecryptedObject): Promise<{
9
- token: string;
9
+ jwtToken: string;
10
10
  }>;
11
11
  authenticate: IAuthenticate;
12
12
  icon: IconFile;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PocketbaseHttpApi = void 0;
4
- const PocketbaseAuth_1 = require("../nodes/PocketbaseHttp/PocketbaseAuth");
5
4
  class PocketbaseHttpApi {
6
5
  constructor() {
7
6
  this.name = "pocketbaseHttpApi";
@@ -33,12 +32,11 @@ class PocketbaseHttpApi {
33
32
  required: true,
34
33
  },
35
34
  {
36
- displayName: "Session Token",
37
- name: "token",
35
+ displayName: "JWT Token",
36
+ name: "jwtToken",
38
37
  type: "hidden",
39
38
  typeOptions: {
40
39
  expirable: true,
41
- password: true,
42
40
  },
43
41
  default: "",
44
42
  },
@@ -74,17 +72,23 @@ class PocketbaseHttpApi {
74
72
  type: "generic",
75
73
  properties: {
76
74
  headers: {
77
- Authorization: "={{ $credentials.token }}",
75
+ Authorization: "={{ $credentials.jwtToken }}",
78
76
  },
79
77
  },
80
78
  };
81
79
  this.icon = "file:pocketbase.svg";
82
80
  }
83
81
  async preAuthentication(credentials) {
84
- if (credentials.token) {
85
- return await PocketbaseAuth_1.refresh.call(this, credentials);
86
- }
87
- return await PocketbaseAuth_1.login.call(this, credentials);
82
+ const url = credentials.url.replace(/\/$/, "");
83
+ const { token } = (await this.helpers.httpRequest({
84
+ method: "POST",
85
+ url: `${url}/api/collections/_superusers/auth-with-password`,
86
+ body: {
87
+ identity: credentials.username,
88
+ password: credentials.password,
89
+ },
90
+ }));
91
+ return { jwtToken: token };
88
92
  }
89
93
  }
90
94
  exports.PocketbaseHttpApi = PocketbaseHttpApi;
@@ -1 +1 @@
1
- {"version":3,"file":"PocketbaseHttpApi.credentials.js","sourceRoot":"","sources":["../../credentials/PocketbaseHttpApi.credentials.ts"],"names":[],"mappings":";;;AASA,2EAAwE;AAExE,MAAa,iBAAiB;IAA9B;QACE,SAAI,GAAG,mBAAmB,CAAC;QAC3B,gBAAW,GAAG,qBAAqB,CAAC;QACpC,qBAAgB,GAAG,4CAA4C,CAAC;QAChE,eAAU,GAAsB;YAC9B;gBACE,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,WAAW,EAAE,eAAe;gBAC5B,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACX,SAAS,EAAE,IAAI;oBACf,QAAQ,EAAE,IAAI;iBACf;gBACD,OAAO,EAAE,EAAE;aACZ;SACF,CAAC;QAEF,SAAI,GAA2B;YAC7B,OAAO,EAAE;gBACP,OAAO,EAAE,6CAA6C;gBACtD,GAAG,EAAE,kDAAkD;gBACvD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,QAAQ,EAAE,6BAA6B;oBACvC,QAAQ,EAAE,6BAA6B;iBACxC;aACF;YACD,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE;wBACV,KAAK,EAAE,GAAG;wBACV,OAAO,EAAE,MAAM;qBAChB;iBACF;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE;wBACV,KAAK,EAAE,GAAG;wBACV,OAAO,EAAE,gCAAgC;qBAC1C;iBACF;aACF;SACF,CAAC;QASF,iBAAY,GAAkB;YAC5B,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,aAAa,EAAE,2BAA2B;iBAC3C;aACF;SACF,CAAC;QAEF,SAAI,GAAG,qBAAiC,CAAC;IAC3C,CAAC;IAjBC,KAAK,CAAC,iBAAiB,CAA2B,WAA2C;QAC3F,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,MAAM,wBAAO,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAM,sBAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7C,CAAC;CAYF;AAtFD,8CAsFC"}
1
+ {"version":3,"file":"PocketbaseHttpApi.credentials.js","sourceRoot":"","sources":["../../credentials/PocketbaseHttpApi.credentials.ts"],"names":[],"mappings":";;;AAUA,MAAa,iBAAiB;IAA9B;QACE,SAAI,GAAG,mBAAmB,CAAC;QAC3B,gBAAW,GAAG,qBAAqB,CAAC;QACpC,qBAAgB,GAAG,4CAA4C,CAAC;QAChE,eAAU,GAAsB;YAC9B;gBACE,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACX,SAAS,EAAE,IAAI;iBAChB;gBACD,OAAO,EAAE,EAAE;aACZ;SACF,CAAC;QAEF,SAAI,GAA2B;YAC7B,OAAO,EAAE;gBACP,OAAO,EAAE,6CAA6C;gBACtD,GAAG,EAAE,kDAAkD;gBACvD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,QAAQ,EAAE,6BAA6B;oBACvC,QAAQ,EAAE,6BAA6B;iBACxC;aACF;YACD,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE;wBACV,KAAK,EAAE,GAAG;wBACV,OAAO,EAAE,MAAM;qBAChB;iBACF;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE;wBACV,KAAK,EAAE,GAAG;wBACV,OAAO,EAAE,gCAAgC;qBAC1C;iBACF;aACF;SACF,CAAC;QAiBF,iBAAY,GAAkB;YAC5B,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,aAAa,EAAE,8BAA8B;iBAC9C;aACF;SACF,CAAC;QAEF,SAAI,GAAG,qBAAiC,CAAC;IAC3C,CAAC;IAzBC,KAAK,CAAC,iBAAiB,CAA2B,WAA2C;QAC3F,MAAM,GAAG,GAAI,WAAW,CAAC,GAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAE3D,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAChD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,GAAG,GAAG,iDAAiD;YAC5D,IAAI,EAAE;gBACJ,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;aAC/B;SACF,CAAC,CAAsB,CAAC;QAEzB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;CAYF;AA7FD,8CA6FC"}
@@ -1,6 +1,7 @@
1
1
  import { DeclarativeRestApiSettings, IExecutePaginationFunctions, IExecuteSingleFunctions, IHttpRequestOptions, INodeExecutionData } from "n8n-workflow";
2
2
  export declare function recordViewPreSendAction(this: IExecuteSingleFunctions, requestOptions: IHttpRequestOptions): Promise<IHttpRequestOptions>;
3
3
  export declare function recordViewPostReceiveAction(this: IExecuteSingleFunctions, items: INodeExecutionData[]): Promise<INodeExecutionData[]>;
4
- export declare function recordUpdatePreSendAction(this: IExecuteSingleFunctions, requestOptions: IHttpRequestOptions): Promise<IHttpRequestOptions>;
5
- export declare function recordCreatePreSendAction(this: IExecuteSingleFunctions, requestOptions: IHttpRequestOptions): Promise<IHttpRequestOptions>;
4
+ export declare function recordPreSendAction(this: IExecuteSingleFunctions, requestOptions: IHttpRequestOptions): Promise<IHttpRequestOptions>;
5
+ export declare const recordUpdatePreSendAction: typeof recordPreSendAction;
6
+ export declare const recordCreatePreSendAction: typeof recordPreSendAction;
6
7
  export declare function pagination(this: IExecutePaginationFunctions, requestOptions: DeclarativeRestApiSettings.ResultOptions): Promise<INodeExecutionData[]>;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.recordCreatePreSendAction = exports.recordUpdatePreSendAction = void 0;
4
+ exports.recordViewPreSendAction = recordViewPreSendAction;
5
+ exports.recordViewPostReceiveAction = recordViewPostReceiveAction;
6
+ exports.recordPreSendAction = recordPreSendAction;
7
+ exports.pagination = pagination;
8
+ const RequestBodyFunctions_1 = require("./RequestBodyFunctions");
9
+ async function recordViewPreSendAction(requestOptions) {
10
+ var _a;
11
+ this.logger.debug(`Request URL: ${requestOptions.url} | ${JSON.stringify((_a = requestOptions.qs) !== null && _a !== void 0 ? _a : {})}`);
12
+ return requestOptions;
13
+ }
14
+ async function recordViewPostReceiveAction(items) {
15
+ return items;
16
+ }
17
+ async function recordPreSendAction(requestOptions) {
18
+ return await RequestBodyFunctions_1.prepareRequestBody.call(this, requestOptions);
19
+ }
20
+ exports.recordUpdatePreSendAction = recordPreSendAction;
21
+ exports.recordCreatePreSendAction = recordPreSendAction;
22
+ async function pagination(requestOptions) {
23
+ var _a, _b, _c;
24
+ var _d;
25
+ const allIsActive = this.getNodeParameter("parameters.allElements", false);
26
+ let executions = [];
27
+ let page = this.getNodeParameter("parameters.page", 1);
28
+ let totalPages = allIsActive ? Infinity : page;
29
+ (_a = requestOptions.options) !== null && _a !== void 0 ? _a : (requestOptions.options = {});
30
+ (_b = (_d = requestOptions.options).qs) !== null && _b !== void 0 ? _b : (_d.qs = {});
31
+ const maxPages = 1000;
32
+ do {
33
+ if (allIsActive && page > maxPages) {
34
+ throw new Error(`Pagination exceeded maximum of ${maxPages} pages`);
35
+ }
36
+ requestOptions.options.qs.page = page;
37
+ const responseData = await this.makeRoutingRequest(requestOptions);
38
+ if (!responseData || responseData.length === 0) {
39
+ return executions;
40
+ }
41
+ const responseBody = (_c = responseData === null || responseData === void 0 ? void 0 : responseData[0]) === null || _c === void 0 ? void 0 : _c.json;
42
+ if (!responseBody || typeof responseBody !== "object") {
43
+ throw new Error("Invalid response from PocketBase");
44
+ }
45
+ const resPage = Number(responseBody.page);
46
+ if (!Number.isFinite(resPage)) {
47
+ if (executions.length > 0) {
48
+ this.logger.warn("Received invalid page number in response; returning partial results", {
49
+ page: responseBody.page,
50
+ itemsCollected: executions.length,
51
+ });
52
+ return executions;
53
+ }
54
+ throw new Error("Missing or invalid page in PocketBase response");
55
+ }
56
+ if (resPage !== page) {
57
+ throw new Error(`PocketBase returned page ${resPage} but we requested ${page}`);
58
+ }
59
+ if (allIsActive) {
60
+ const resTotalPages = Number(responseBody.totalPages);
61
+ if (!Number.isFinite(resTotalPages)) {
62
+ throw new Error("Missing or invalid totalPages in PocketBase response");
63
+ }
64
+ totalPages = resTotalPages;
65
+ this.logger.debug(`Fetching page ${page} of ${totalPages}`);
66
+ }
67
+ if (!Array.isArray(responseBody.items)) {
68
+ throw new Error(`PocketBase response for page ${page} (of ${totalPages}) did not contain an items array`);
69
+ }
70
+ const items = responseBody.items;
71
+ executions.push(...items.map((item) => ({ json: item })));
72
+ if (items.length === 0) {
73
+ if (page < totalPages) {
74
+ this.logger.warn(`PocketBase returned 0 items for page ${page} even though totalPages is ${totalPages}`, {
75
+ page,
76
+ totalPages,
77
+ });
78
+ }
79
+ break;
80
+ }
81
+ page++;
82
+ } while (page <= totalPages);
83
+ return executions;
84
+ }
85
+ //# sourceMappingURL=GenericFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../nodes/Common/GenericFunctions.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ILoadOptionsFunctions, INodePropertyOptions } from "n8n-workflow";
1
+ import type { ILoadOptionsFunctions, INodePropertyOptions } from "n8n-workflow";
2
2
  export interface PocketBaseField {
3
3
  autogeneratePattern?: string;
4
4
  hidden: boolean;
@@ -13,13 +13,29 @@ async function loadPocketBaseFields(collectionName = null) {
13
13
  });
14
14
  return fields;
15
15
  }
16
+ function getRecordLabel(id, data) {
17
+ if (data.name !== null && data.name !== undefined && data.name !== "") {
18
+ return String(data.name);
19
+ }
20
+ const shortColumns = Object.entries(data)
21
+ .filter(([key, value]) => {
22
+ var _a;
23
+ if (key === "name" || key === "id")
24
+ return false;
25
+ const serialized = (_a = JSON.stringify(value)) !== null && _a !== void 0 ? _a : "";
26
+ return serialized.length <= 30 && serialized.length > 2;
27
+ })
28
+ .map(([key, value]) => `${key}: ${JSON.stringify(value)}`);
29
+ const fallback = shortColumns.join(", ").substring(0, 100);
30
+ return fallback || id || "";
31
+ }
16
32
  exports.LoadOptions = {
17
33
  async getCollections() {
18
34
  const { url } = await this.getCredentials("pocketbaseHttpApi");
19
35
  const normalizedUrl = url.replace(/\/$/, "");
20
36
  const items = [];
21
37
  let page = 1;
22
- let totalPages = 1;
38
+ let totalPages = 0;
23
39
  do {
24
40
  const { items: pageItems, totalPages: pageTotalPages } = await this.helpers.httpRequestWithAuthentication.call(this, "pocketbaseHttpApi", {
25
41
  url: `${normalizedUrl}/api/collections`,
@@ -27,9 +43,7 @@ exports.LoadOptions = {
27
43
  qs: { page },
28
44
  });
29
45
  items.push(...pageItems);
30
- if (totalPages === 1) {
31
- totalPages = pageTotalPages;
32
- }
46
+ totalPages = pageTotalPages;
33
47
  page++;
34
48
  } while (page <= totalPages);
35
49
  return items.map(({ name }) => ({ name, value: name }));
@@ -39,6 +53,10 @@ exports.LoadOptions = {
39
53
  const fields = await loadPocketBaseFields.call(this);
40
54
  fields === null || fields === void 0 ? void 0 : fields.forEach(({ name, type }) => {
41
55
  if (type === "relation") {
56
+ returnData.push({
57
+ name,
58
+ value: name,
59
+ });
42
60
  returnData.push({
43
61
  name: `All fields from relation '${name}'`,
44
62
  value: `expand.${name}.*`,
@@ -71,23 +89,32 @@ exports.LoadOptions = {
71
89
  const { url } = await this.getCredentials("pocketbaseHttpApi");
72
90
  const normalizedUrl = url.replace(/\/$/, "");
73
91
  const resource = this.getNodeParameter("resource");
74
- const { items } = await this.helpers.httpRequestWithAuthentication.call(this, "pocketbaseHttpApi", {
75
- url: `${normalizedUrl}/api/collections/${resource}/records?sort=-created`,
76
- method: "GET",
77
- });
78
- items === null || items === void 0 ? void 0 : items.forEach(({ id, ...data }) => {
79
- var _a, _b;
80
- const name = (_b = (_a = Object.entries(data).filter(([key]) => {
81
- return key === "name";
82
- })) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b[1];
83
- const shortColumns = Object.fromEntries(Object.entries(data).filter(([, column]) => {
84
- const serialized = JSON.stringify(column);
85
- return serialized.length <= 20 && serialized.length > 2;
86
- }));
87
- const fallback = JSON.stringify(shortColumns).substring(1, 100);
88
- const label = name || (fallback && fallback !== "}" ? fallback : id);
92
+ const items = [];
93
+ let page = 1;
94
+ let totalPages = 1;
95
+ const maxPages = 5;
96
+ do {
97
+ const { items: pageItems, totalPages: pageTotalPages } = await this.helpers.httpRequestWithAuthentication.call(this, "pocketbaseHttpApi", {
98
+ url: `${normalizedUrl}/api/collections/${resource}/records`,
99
+ method: "GET",
100
+ qs: { sort: "-created", page, perPage: 50 },
101
+ });
102
+ items.push(...pageItems);
103
+ totalPages = pageTotalPages;
104
+ page++;
105
+ } while (page <= totalPages && page <= maxPages);
106
+ if (items.length === 0) {
107
+ return [
108
+ {
109
+ name: "No records found",
110
+ value: "",
111
+ },
112
+ ];
113
+ }
114
+ items.forEach((item) => {
115
+ const id = item.id;
89
116
  returnData.push({
90
- name: label,
117
+ name: getRecordLabel(id, item),
91
118
  value: id,
92
119
  });
93
120
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadOptions.js","sourceRoot":"","sources":["../../../nodes/Common/LoadOptions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.prepareRequestBody = prepareRequestBody;
7
+ const form_data_1 = __importDefault(require("form-data"));
8
+ async function prepareRequestBody(requestOptions) {
9
+ var _a, _b, _c;
10
+ const bodyType = this.getNodeParameter("bodyType", ["fields"]);
11
+ const hasBinary = bodyType.includes("binaryData");
12
+ if (!hasBinary) {
13
+ const body = {};
14
+ if (bodyType.includes("fields")) {
15
+ const fields = this.getNodeParameter("fields", {
16
+ assignments: [],
17
+ });
18
+ (_a = fields === null || fields === void 0 ? void 0 : fields.assignments) === null || _a === void 0 ? void 0 : _a.forEach(({ name, value }) => {
19
+ if (name &&
20
+ typeof name === "string" &&
21
+ name.trim() !== "" &&
22
+ value !== undefined) {
23
+ const key = name.trim();
24
+ body[key] = value;
25
+ }
26
+ });
27
+ }
28
+ if (bodyType.includes("bodyJson")) {
29
+ const bodyJson = this.getNodeParameter("bodyJson", "{}");
30
+ const parsedBody = parseBodyJson(bodyJson);
31
+ const filteredParsedBody = {};
32
+ Object.entries(parsedBody).forEach(([key, value]) => {
33
+ if (key &&
34
+ typeof key === "string" &&
35
+ key.trim() !== "" &&
36
+ value !== undefined) {
37
+ const trimmedKey = key.trim();
38
+ filteredParsedBody[trimmedKey] = value;
39
+ }
40
+ });
41
+ Object.assign(body, filteredParsedBody);
42
+ }
43
+ requestOptions.body = body;
44
+ this.logger.debug(`Request URL: ${requestOptions.url} | [JSON body]`);
45
+ return requestOptions;
46
+ }
47
+ const formData = new form_data_1.default();
48
+ if (bodyType.includes("fields")) {
49
+ (_c = (_b = this.getNodeParameter("fields", { assignments: [] })) === null || _b === void 0 ? void 0 : _b.assignments) === null || _c === void 0 ? void 0 : _c.forEach(({ name, value }) => {
50
+ if (name &&
51
+ typeof name === "string" &&
52
+ name.trim() !== "" &&
53
+ value !== undefined) {
54
+ const key = name.trim();
55
+ const stringValue = (value === null) ? "null" : (typeof value === "object" ? JSON.stringify(value) : String(value));
56
+ formData.append(key, stringValue);
57
+ }
58
+ });
59
+ }
60
+ if (bodyType.includes("bodyJson")) {
61
+ const bodyJson = this.getNodeParameter("bodyJson", "{}");
62
+ const parsedBody = parseBodyJson(bodyJson);
63
+ Object.entries(parsedBody).forEach(([key, value]) => {
64
+ if (key &&
65
+ typeof key === "string" &&
66
+ key.trim() !== "" &&
67
+ value !== undefined) {
68
+ const trimmedKey = key.trim();
69
+ const val = (value === null) ? "null" : (typeof value === "object" ? JSON.stringify(value) : String(value));
70
+ formData.append(trimmedKey, val);
71
+ }
72
+ });
73
+ }
74
+ await handleBinaryData.apply(this, [formData]);
75
+ if (!requestOptions.headers) {
76
+ requestOptions.headers = {};
77
+ }
78
+ else {
79
+ Object.keys(requestOptions.headers).forEach((key) => {
80
+ if (key.toLowerCase() === "content-type") {
81
+ delete requestOptions.headers[key];
82
+ }
83
+ });
84
+ }
85
+ Object.assign(requestOptions.headers, formData.getHeaders());
86
+ requestOptions.body = formData;
87
+ this.logger.debug(`Request URL: ${requestOptions.url} | [multipart body]`);
88
+ return requestOptions;
89
+ }
90
+ async function handleBinaryData(formData) {
91
+ const binaryPropertyName = (this.getNodeParameter("binaryPropertyName", undefined) || "").trim();
92
+ if (!binaryPropertyName) {
93
+ throw new Error("Binary data selected but no property name provided. Please specify which binary property to use.");
94
+ }
95
+ const binaryFieldName = (this.getNodeParameter("binaryFieldName", "") || "").trim();
96
+ const fieldName = binaryFieldName || "file";
97
+ this.logger.info("Adding binary data to request formData from property: " +
98
+ binaryPropertyName +
99
+ "\nat: " +
100
+ fieldName);
101
+ const binaryData = this.helpers.assertBinaryData(binaryPropertyName);
102
+ const dataBuffer = await this.helpers.getBinaryDataBuffer(binaryPropertyName);
103
+ formData.append(fieldName, dataBuffer, {
104
+ contentType: binaryData.mimeType,
105
+ filename: binaryData.fileName,
106
+ });
107
+ }
108
+ function parseBodyJson(bodyJson) {
109
+ if (typeof bodyJson !== "string" &&
110
+ (typeof bodyJson !== "object" || bodyJson === null || Array.isArray(bodyJson))) {
111
+ throw new Error("JSON Body must be a JSON object or string");
112
+ }
113
+ let parsed;
114
+ if (typeof bodyJson === "string") {
115
+ try {
116
+ parsed = JSON.parse(bodyJson);
117
+ }
118
+ catch (error) {
119
+ const message = error instanceof Error ? error.message : String(error);
120
+ throw new Error(`Invalid JSON in Body: ${message}`);
121
+ }
122
+ }
123
+ else {
124
+ parsed = bodyJson;
125
+ }
126
+ if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
127
+ throw new Error("JSON Body must be a JSON object");
128
+ }
129
+ return parsed;
130
+ }
131
+ //# sourceMappingURL=RequestBodyFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestBodyFunctions.js","sourceRoot":"","sources":["../../../nodes/Common/RequestBodyFunctions.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PocketbaseHttp = void 0;
4
4
  const n8n_workflow_1 = require("n8n-workflow");
5
- const GenericFunctions_1 = require("./GenericFunctions");
6
- const LoadOptions_1 = require("./LoadOptions");
5
+ const GenericFunctions_1 = require("../Common/GenericFunctions");
6
+ const LoadOptions_1 = require("../Common/LoadOptions");
7
7
  class PocketbaseHttp {
8
8
  constructor() {
9
9
  this.description = {
@@ -27,7 +27,6 @@ class PocketbaseHttp {
27
27
  },
28
28
  ],
29
29
  requestDefaults: {
30
- returnFullResponse: true,
31
30
  baseURL: '={{$credentials.url.replace(new RegExp("/$"), "")}}',
32
31
  headers: {
33
32
  Accept: "application/json",
@@ -276,6 +275,7 @@ class PocketbaseHttp {
276
275
  loadOptionsMethod: "getFields",
277
276
  },
278
277
  default: [],
278
+ description: "Add fields to be sent. To clear a field, use an expression: <code>={{ null }}</code>.",
279
279
  },
280
280
  {
281
281
  displayName: "JSON Body",
@@ -289,6 +289,7 @@ class PocketbaseHttp {
289
289
  },
290
290
  default: "",
291
291
  placeholder: "Body according to the collection's schema",
292
+ description: "JSON object to be sent. To clear a field, use <code>null</code> as value: <code>{\"myField\": null}</code>.",
292
293
  },
293
294
  {
294
295
  displayName: "Binary Property Name",
@@ -1 +1 @@
1
- {"version":3,"file":"PocketbaseHttp.node.js","sourceRoot":"","sources":["../../../nodes/PocketbaseHttp/PocketbaseHttp.node.ts"],"names":[],"mappings":";;;AAAA,+CAA8F;AAC9F,yDAM4B;AAC5B,+CAA4C;AAE5C,MAAa,cAAc;IAA3B;QACE,gBAAW,GAAyB;YAClC,WAAW,EAAE,iBAAiB;YAC9B,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,IAAI,EAAE,8BAA8B,EAAE;YAChF,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE;gBACR,IAAI,EAAE,iBAAiB;aACxB;YACD,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YACnC,WAAW,EAAE;gBACX;oBACE,IAAI,EAAE,mBAAmB;oBACzB,QAAQ,EAAE,IAAI;iBACf;aACF;YACD,eAAe,EAAE;gBACf,kBAAkB,EAAE,IAAI;gBACxB,OAAO,EAAE,qDAAqD;gBAC9D,OAAO,EAAE;oBACP,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBACnC;aACF;YACD,UAAU,EAAE;gBACV;oBACE,WAAW,EAAE,uBAAuB;oBACpC,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,EAAE;oBACX,gBAAgB,EAAE,IAAI;oBACtB,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE;wBACX,iBAAiB,EAAE,gBAAgB;qBACpC;oBACD,WAAW,EACT,wKAAwK;iBAC3K;gBACD;oBACE,WAAW,EAAE,WAAW;oBACxB,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,aAAa;4BACnB,KAAK,EAAE,QAAQ;4BACf,MAAM,EAAE,gCAAgC;4BACxC,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,MAAM,EAAE,KAAK;oCACb,GAAG,EAAE,sDAAsD;iCAC5D;gCACD,MAAM,EAAE;oCACN,WAAW,EAAE,CAAC,8CAA2B,CAAC;iCAC3C;gCACD,IAAI,EAAE;oCACJ,OAAO,EAAE,CAAC,0CAAuB,CAAC;oCAClC,QAAQ,EAAE,IAAI;iCACf;gCACD,UAAU,EAAE,EAAE,UAAU,EAAV,6BAAU,EAAE;6BAC3B;yBACF;wBACD;4BACE,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,MAAM;4BACb,MAAM,EAAE,oCAAoC;4BAC5C,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,MAAM,EAAE,KAAK;oCACb,GAAG,EAAE,kFAAkF;iCACxF;gCACD,IAAI,EAAE;oCACJ,OAAO,EAAE,CAAC,0CAAuB,CAAC;iCACnC;6BACF;yBACF;wBACD;4BACE,IAAI,EAAE,QAAQ;4BACd,KAAK,EAAE,QAAQ;4BACf,MAAM,EAAE,sCAAsC;4BAC9C,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,MAAM,EAAE,MAAM;oCACd,GAAG,EAAE,sDAAsD;iCAC5D;gCACD,IAAI,EAAE;oCACJ,OAAO,EAAE,CAAC,4CAAyB,CAAC;iCACrC;6BACF;yBACF;wBACD;4BACE,IAAI,EAAE,QAAQ;4BACd,KAAK,EAAE,QAAQ;4BACf,MAAM,EAAE,sCAAsC;4BAC9C,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,MAAM,EAAE,OAAO;oCACf,GAAG,EAAE,kFAAkF;iCACxF;gCACD,IAAI,EAAE;oCACJ,OAAO,EAAE,CAAC,4CAAyB,CAAC;iCACrC;6BACF;yBACF;qBACF;oBACD,OAAO,EAAE,QAAQ;oBACjB,QAAQ,EAAE,IAAI;oBACd,gBAAgB,EAAE,IAAI;iBACvB;gBACD;oBACE,WAAW,EAAE,oBAAoB;oBACjC,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,gHAAgH;oBAClH,WAAW,EAAE;wBACX,oBAAoB,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC;wBACvD,iBAAiB,EAAE,SAAS;qBAC7B;oBACD,OAAO,EAAE,EAAE;oBACX,cAAc,EAAE;wBACd,IAAI,EAAE;4BACJ,SAAS,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC9B;qBACF;iBACF;gBACD;oBACE,WAAW,EAAE,YAAY;oBACzB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,EAAE;oBACX,OAAO,EAAE;wBACP;4BACE,WAAW,EAAE,cAAc;4BAC3B,IAAI,EAAE,aAAa;4BACnB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,KAAK;yBACf;wBACD;4BACE,WAAW,EAAE,mBAAmB;4BAChC,IAAI,EAAE,iBAAiB;4BACvB,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE;gCACX,QAAQ,EAAE,CAAC;6BACZ;4BACD,OAAO,EAAE,EAAE;4BACX,OAAO,EAAE;gCACP,IAAI,EAAE;oCACJ,IAAI,EAAE,OAAO;oCACb,QAAQ,EAAE,SAAS;iCACpB;6BACF;yBACF;wBACD;4BAEE,WAAW,EAAE,kBAAkB;4BAE/B,WAAW,EACT,mHAAmH;4BACrH,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,cAAc;4BACpB,OAAO,EAAE,EAAE;4BACX,WAAW,EAAE;gCACX,iBAAiB,EAAE,cAAc;6BAClC;4BACD,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,EAAE,EAAE;wCACF,MAAM,EAAE,8CAA8C;qCACvD;iCACF;6BACF;yBACF;wBACD;4BAEE,WAAW,EAAE,aAAa;4BAE1B,WAAW,EACT,gHAAgH;4BAClH,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,cAAc;4BACpB,WAAW,EAAE;gCACX,iBAAiB,EAAE,WAAW;6BAC/B;4BACD,OAAO,EAAE,EAAE;4BACX,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,EAAE,EAAE;wCACF,MAAM,EAAE,8CAA8C;qCACvD;iCACF;6BACF;yBACF;wBACD;4BACE,WAAW,EAAE,QAAQ;4BACrB,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,EAAE;4BACX,OAAO,EAAE;gCACP,IAAI,EAAE;oCACJ,IAAI,EAAE,OAAO;oCACb,QAAQ,EAAE,QAAQ;iCACnB;6BACF;yBACF;wBAED;4BACE,WAAW,EAAE,MAAM;4BACnB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE;gCACX,QAAQ,EAAE,CAAC;6BACZ;4BACD,OAAO,EAAE,CAAC;4BACV,OAAO,EAAE;gCACP,IAAI,EAAE;oCACJ,IAAI,EAAE,OAAO;oCACb,QAAQ,EAAE,MAAM;iCACjB;6BACF;yBACF;wBACD;4BACE,WAAW,EAAE,MAAM;4BACnB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,EAAE;4BACX,OAAO,EAAE;gCACP,IAAI,EAAE;oCACJ,IAAI,EAAE,OAAO;oCACb,QAAQ,EAAE,MAAM;iCACjB;6BACF;yBACF;qBACF;iBACF;gBACD;oBACE,WAAW,EAAE,WAAW;oBACxB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,cAAc;oBACpB,cAAc,EAAE;wBACd,IAAI,EAAE;4BACJ,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;yBAChC;qBACF;oBACD,OAAO,EAAE,CAAC,QAAQ,CAAC;oBACnB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,QAAQ;4BACd,KAAK,EAAE,QAAQ;yBAChB;wBACD;4BACE,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,UAAU;yBAClB;wBACD;4BACE,IAAI,EAAE,aAAa;4BACnB,KAAK,EAAE,YAAY;yBACpB;qBACF;iBACF;gBACD;oBACE,WAAW,EAAE,QAAQ;oBACrB,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,sBAAsB;oBAC5B,cAAc,EAAE;wBACd,IAAI,EAAE;4BACJ,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;4BAC/B,QAAQ,EAAE,CAAC,QAAQ,CAAC;yBACrB;qBACF;oBACD,WAAW,EAAE;wBACX,oBAAoB,EAAE,CAAC,UAAU,CAAC;wBAClC,iBAAiB,EAAE,WAAW;qBAC/B;oBACD,OAAO,EAAE,EAAE;iBACZ;gBACD;oBACE,WAAW,EAAE,WAAW;oBACxB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,MAAM;oBACZ,cAAc,EAAE;wBACd,IAAI,EAAE;4BACJ,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;4BAC/B,QAAQ,EAAE,CAAC,UAAU,CAAC;yBACvB;qBACF;oBACD,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,2CAA2C;iBACzD;gBACD;oBACE,WAAW,EAAE,sBAAsB;oBACnC,IAAI,EAAE,oBAAoB;oBAC1B,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,MAAM;oBACf,cAAc,EAAE;wBACd,IAAI,EAAE;4BACJ,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;4BAC/B,QAAQ,EAAE,CAAC,YAAY,CAAC;yBACzB;qBACF;oBACD,WAAW,EAAE,gEAAgE;iBAC9E;gBACD;oBACE,WAAW,EAAE,mBAAmB;oBAChC,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE;oBACX,cAAc,EAAE;wBACd,IAAI,EAAE;4BACJ,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;4BAC/B,QAAQ,EAAE,CAAC,YAAY,CAAC;yBACzB;qBACF;oBACD,WAAW,EACT,kIAAkI;iBACrI;aACF;SACF,CAAC;QAEF,YAAO,GAAG;YACR,WAAW,EAAE,yBAAW;SACzB,CAAC;IACJ,CAAC;CAAA;AAvUD,wCAuUC"}
1
+ {"version":3,"file":"PocketbaseHttp.node.js","sourceRoot":"","sources":["../../../nodes/PocketbaseHttp/PocketbaseHttp.node.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,12 @@
6
6
  "resources": {
7
7
  "credentialDocumentation": [
8
8
  {
9
- "url": "https://github.com/org/repo?tab=readme-ov-file#credentials"
9
+ "url": "https://github.com/TheFehr/n8n-nodes-pocketbase#credentials"
10
10
  }
11
11
  ],
12
12
  "primaryDocumentation": [
13
13
  {
14
- "url": "https://github.com/org/repo?tab=readme-ov-file"
14
+ "url": "https://github.com/TheFehr/n8n-nodes-pocketbase"
15
15
  }
16
16
  ]
17
17
  }
@@ -0,0 +1,13 @@
1
+ import { ITriggerFunctions, ITriggerResponse, INodeType, INodeTypeDescription } from "n8n-workflow";
2
+ export declare class PocketbaseTrigger implements INodeType {
3
+ description: INodeTypeDescription;
4
+ methods: {
5
+ loadOptions: {
6
+ getCollections(this: import("n8n-workflow").ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
7
+ getFields(this: import("n8n-workflow").ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
8
+ getRelations(this: import("n8n-workflow").ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
9
+ getRows(this: import("n8n-workflow").ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
10
+ };
11
+ };
12
+ trigger(this: ITriggerFunctions): Promise<ITriggerResponse>;
13
+ }