n8n-nodes-craft-daily-notes 1.0.26 → 2.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.
Files changed (76) hide show
  1. package/README.md +311 -62
  2. package/dist/nodes/CraftDailyNotes/CraftDailyNotes.node.json +2 -2
  3. package/dist/nodes/CraftDailyNotes/loadOptions/getCollections.js +16 -7
  4. package/dist/nodes/CraftDailyNotes/loadOptions/getCollections.js.map +1 -1
  5. package/dist/nodes/CraftDailyNotes/resources/block/delete.js +1 -1
  6. package/dist/nodes/CraftDailyNotes/resources/block/delete.js.map +1 -1
  7. package/dist/nodes/CraftDailyNotes/resources/block/insert.js +11 -33
  8. package/dist/nodes/CraftDailyNotes/resources/block/insert.js.map +1 -1
  9. package/dist/nodes/CraftDailyNotes/resources/block/move.js +2 -2
  10. package/dist/nodes/CraftDailyNotes/resources/block/move.js.map +1 -1
  11. package/dist/nodes/CraftDailyNotes/resources/block/search.js +3 -3
  12. package/dist/nodes/CraftDailyNotes/resources/block/search.js.map +1 -1
  13. package/dist/nodes/CraftDailyNotes/resources/block/update.js +118 -29
  14. package/dist/nodes/CraftDailyNotes/resources/block/update.js.map +1 -1
  15. package/dist/nodes/CraftDailyNotes/resources/collection/addItems.js +15 -1
  16. package/dist/nodes/CraftDailyNotes/resources/collection/addItems.js.map +1 -1
  17. package/dist/nodes/CraftDailyNotes/resources/collection/deleteItems.js +1 -1
  18. package/dist/nodes/CraftDailyNotes/resources/collection/deleteItems.js.map +1 -1
  19. package/dist/nodes/CraftDailyNotes/resources/collection/getSchema.js +3 -3
  20. package/dist/nodes/CraftDailyNotes/resources/collection/getSchema.js.map +1 -1
  21. package/dist/nodes/CraftDailyNotes/resources/collection/updateItems.js +15 -1
  22. package/dist/nodes/CraftDailyNotes/resources/collection/updateItems.js.map +1 -1
  23. package/dist/nodes/CraftDailyNotes/resources/search/index.js +67 -0
  24. package/dist/nodes/CraftDailyNotes/resources/search/index.js.map +1 -1
  25. package/dist/nodes/CraftDailyNotes/resources/task/add.js +5 -5
  26. package/dist/nodes/CraftDailyNotes/resources/task/add.js.map +1 -1
  27. package/dist/nodes/CraftDailyNotes/resources/task/delete.js +1 -1
  28. package/dist/nodes/CraftDailyNotes/resources/task/delete.js.map +1 -1
  29. package/dist/nodes/CraftDailyNotes/shared/transport.js +24 -1
  30. package/dist/nodes/CraftDailyNotes/shared/transport.js.map +1 -1
  31. package/dist/nodes/CraftDocuments/CraftDocuments.node.d.ts +2 -0
  32. package/dist/nodes/CraftDocuments/CraftDocuments.node.js +2 -0
  33. package/dist/nodes/CraftDocuments/CraftDocuments.node.js.map +1 -1
  34. package/dist/nodes/CraftDocuments/CraftDocuments.node.json +1 -1
  35. package/dist/nodes/CraftDocuments/loadOptions/getBlocks.d.ts +2 -0
  36. package/dist/nodes/CraftDocuments/loadOptions/getBlocks.js +42 -0
  37. package/dist/nodes/CraftDocuments/loadOptions/getBlocks.js.map +1 -0
  38. package/dist/nodes/CraftDocuments/loadOptions/getCollections.js +14 -9
  39. package/dist/nodes/CraftDocuments/loadOptions/getCollections.js.map +1 -1
  40. package/dist/nodes/CraftDocuments/loadOptions/getDocuments.js +14 -9
  41. package/dist/nodes/CraftDocuments/loadOptions/getDocuments.js.map +1 -1
  42. package/dist/nodes/CraftDocuments/resources/block/delete.js +1 -1
  43. package/dist/nodes/CraftDocuments/resources/block/delete.js.map +1 -1
  44. package/dist/nodes/CraftDocuments/resources/block/get.js +6 -4
  45. package/dist/nodes/CraftDocuments/resources/block/get.js.map +1 -1
  46. package/dist/nodes/CraftDocuments/resources/block/insert.js +16 -36
  47. package/dist/nodes/CraftDocuments/resources/block/insert.js.map +1 -1
  48. package/dist/nodes/CraftDocuments/resources/block/move.js +8 -6
  49. package/dist/nodes/CraftDocuments/resources/block/move.js.map +1 -1
  50. package/dist/nodes/CraftDocuments/resources/block/search.js +9 -7
  51. package/dist/nodes/CraftDocuments/resources/block/search.js.map +1 -1
  52. package/dist/nodes/CraftDocuments/resources/block/update.js +118 -29
  53. package/dist/nodes/CraftDocuments/resources/block/update.js.map +1 -1
  54. package/dist/nodes/CraftDocuments/resources/collection/addItems.js +15 -1
  55. package/dist/nodes/CraftDocuments/resources/collection/addItems.js.map +1 -1
  56. package/dist/nodes/CraftDocuments/resources/collection/deleteItems.js +1 -1
  57. package/dist/nodes/CraftDocuments/resources/collection/deleteItems.js.map +1 -1
  58. package/dist/nodes/CraftDocuments/resources/collection/list.js +1 -1
  59. package/dist/nodes/CraftDocuments/resources/collection/list.js.map +1 -1
  60. package/dist/nodes/CraftDocuments/resources/collection/updateItems.js +15 -1
  61. package/dist/nodes/CraftDocuments/resources/collection/updateItems.js.map +1 -1
  62. package/dist/nodes/CraftDocuments/resources/document/list.js +20 -5
  63. package/dist/nodes/CraftDocuments/resources/document/list.js.map +1 -1
  64. package/dist/nodes/CraftDocuments/resources/search/index.js +68 -1
  65. package/dist/nodes/CraftDocuments/resources/search/index.js.map +1 -1
  66. package/dist/nodes/CraftDocuments/shared/transport.js +24 -1
  67. package/dist/nodes/CraftDocuments/shared/transport.js.map +1 -1
  68. package/dist/nodes/shared/blockDefinitions.d.ts +6 -0
  69. package/dist/nodes/shared/blockDefinitions.js +42 -0
  70. package/dist/nodes/shared/blockDefinitions.js.map +1 -0
  71. package/dist/nodes/shared/transport.d.ts +3 -0
  72. package/dist/nodes/shared/transport.js +64 -0
  73. package/dist/nodes/shared/transport.js.map +1 -0
  74. package/dist/package.json +1 -1
  75. package/dist/tsconfig.tsbuildinfo +1 -1
  76. package/package.json +1 -1
@@ -3,16 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getCollections = getCollections;
4
4
  const transport_1 = require("../shared/transport");
5
5
  async function getCollections() {
6
- const response = (await transport_1.craftApiRequest.call(this, 'GET', '/collections'));
7
- if (!(response === null || response === void 0 ? void 0 : response.items) || !Array.isArray(response.items)) {
6
+ try {
7
+ const response = (await transport_1.craftApiRequest.call(this, 'GET', '/collections'));
8
+ if (!(response === null || response === void 0 ? void 0 : response.items) || !Array.isArray(response.items)) {
9
+ return [];
10
+ }
11
+ return response.items.map((collection) => ({
12
+ name: collection.name || `Collection ${collection.key}`,
13
+ value: collection.key,
14
+ description: collection.documentId
15
+ ? `In document: ${collection.documentId}`
16
+ : `ID: ${collection.key}`,
17
+ }));
18
+ }
19
+ catch {
8
20
  return [];
9
21
  }
10
- return response.items.map((collection) => ({
11
- name: collection.name || `Collection ${collection.key}`,
12
- value: collection.key,
13
- description: collection.documentId
14
- ? `In document: ${collection.documentId}`
15
- : `ID: ${collection.key}`,
16
- }));
17
22
  }
18
23
  //# sourceMappingURL=getCollections.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCollections.js","sourceRoot":"","sources":["../../../../nodes/CraftDocuments/loadOptions/getCollections.ts"],"names":[],"mappings":";;AAyBA,wCAoBC;AAxCD,mDAAsD;AAoB/C,KAAK,UAAU,cAAc;IAGnC,MAAM,QAAQ,GAAG,CAAC,MAAM,2BAAe,CAAC,IAAI,CAC3C,IAAI,EACJ,KAAK,EACL,cAAc,CACd,CAAmC,CAAC;IAErC,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC1C,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,cAAc,UAAU,CAAC,GAAG,EAAE;QACvD,KAAK,EAAE,UAAU,CAAC,GAAG;QACrB,WAAW,EAAE,UAAU,CAAC,UAAU;YACjC,CAAC,CAAC,gBAAgB,UAAU,CAAC,UAAU,EAAE;YACzC,CAAC,CAAC,OAAO,UAAU,CAAC,GAAG,EAAE;KAC1B,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"getCollections.js","sourceRoot":"","sources":["../../../../nodes/CraftDocuments/loadOptions/getCollections.ts"],"names":[],"mappings":";;AA4BA,wCAyBC;AA/CD,mDAAsD;AAsB/C,KAAK,UAAU,cAAc;IAGnC,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,CAAC,MAAM,2BAAe,CAAC,IAAI,CAC3C,IAAI,EACJ,KAAK,EACL,cAAc,CACd,CAAmC,CAAC;QAErC,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,EAAE,CAAC;QACX,CAAC;QAED,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC1C,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,cAAc,UAAU,CAAC,GAAG,EAAE;YACvD,KAAK,EAAE,UAAU,CAAC,GAAG;YACrB,WAAW,EAAE,UAAU,CAAC,UAAU;gBACjC,CAAC,CAAC,gBAAgB,UAAU,CAAC,UAAU,EAAE;gBACzC,CAAC,CAAC,OAAO,UAAU,CAAC,GAAG,EAAE;SAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QAER,OAAO,EAAE,CAAC;IACX,CAAC;AACF,CAAC"}
@@ -3,16 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getDocuments = getDocuments;
4
4
  const transport_1 = require("../shared/transport");
5
5
  async function getDocuments() {
6
- const response = (await transport_1.craftApiRequest.call(this, 'GET', '/documents'));
7
- if (!(response === null || response === void 0 ? void 0 : response.items) || !Array.isArray(response.items)) {
6
+ try {
7
+ const response = (await transport_1.craftApiRequest.call(this, 'GET', '/documents'));
8
+ if (!(response === null || response === void 0 ? void 0 : response.items) || !Array.isArray(response.items)) {
9
+ return [];
10
+ }
11
+ return response.items
12
+ .filter((doc) => !doc.isDeleted)
13
+ .map((doc) => ({
14
+ name: doc.title || `Document ${doc.id}`,
15
+ value: doc.id,
16
+ description: `ID: ${doc.id}`,
17
+ }));
18
+ }
19
+ catch {
8
20
  return [];
9
21
  }
10
- return response.items
11
- .filter((doc) => !doc.isDeleted)
12
- .map((doc) => ({
13
- name: doc.title || `Document ${doc.id}`,
14
- value: doc.id,
15
- description: `ID: ${doc.id}`,
16
- }));
17
22
  }
18
23
  //# sourceMappingURL=getDocuments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getDocuments.js","sourceRoot":"","sources":["../../../../nodes/CraftDocuments/loadOptions/getDocuments.ts"],"names":[],"mappings":";;AAqBA,oCAqBC;AArCD,mDAAsD;AAgB/C,KAAK,UAAU,YAAY;IAGjC,MAAM,QAAQ,GAAG,CAAC,MAAM,2BAAe,CAAC,IAAI,CAC3C,IAAI,EACJ,KAAK,EACL,YAAY,CACZ,CAAiC,CAAC;IAEnC,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,CAAC;IACX,CAAC;IAGD,OAAO,QAAQ,CAAC,KAAK;SACnB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;SAC/B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACd,IAAI,EAAE,GAAG,CAAC,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,EAAE;QACvC,KAAK,EAAE,GAAG,CAAC,EAAE;QACb,WAAW,EAAE,OAAO,GAAG,CAAC,EAAE,EAAE;KAC5B,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"getDocuments.js","sourceRoot":"","sources":["../../../../nodes/CraftDocuments/loadOptions/getDocuments.ts"],"names":[],"mappings":";;AAwBA,oCA0BC;AA5CD,mDAAsD;AAkB/C,KAAK,UAAU,YAAY;IAGjC,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,CAAC,MAAM,2BAAe,CAAC,IAAI,CAC3C,IAAI,EACJ,KAAK,EACL,YAAY,CACZ,CAAiC,CAAC;QAEnC,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,EAAE,CAAC;QACX,CAAC;QAGD,OAAO,QAAQ,CAAC,KAAK;aACnB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;aAC/B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACd,IAAI,EAAE,GAAG,CAAC,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,EAAE;YACvC,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,WAAW,EAAE,OAAO,GAAG,CAAC,EAAE,EAAE;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;IAAC,MAAM,CAAC;QAER,OAAO,EAAE,CAAC;IACX,CAAC;AACF,CAAC"}
@@ -16,7 +16,7 @@ exports.blockDeleteDescription = [
16
16
  send: {
17
17
  type: 'body',
18
18
  property: 'blockIds',
19
- value: '={{ $value.startsWith("[") ? JSON.parse($value) : $value.split(",").map(id => id.trim()) }}',
19
+ value: '={{ $value && $value.trim().startsWith("[") ? (() => { try { return JSON.parse($value); } catch { return $value.split(",").map(id => id.trim()).filter(id => id); } })() : ($value ? $value.split(",").map(id => id.trim()).filter(id => id) : []) }}',
20
20
  },
21
21
  },
22
22
  },
@@ -1 +1 @@
1
- {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/delete.ts"],"names":[],"mappings":";;;AAQA,MAAM,sBAAsB,GAAG,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAEjE,QAAA,sBAAsB,GAAsB;IAExD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EACV,uEAAuE;QACxE,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBACpB,KAAK,EACJ,6FAA6F;aAC9F;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/delete.ts"],"names":[],"mappings":";;;AAQA,MAAM,sBAAsB,GAAG,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAEjE,QAAA,sBAAsB,GAAsB;IAExD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EACV,uEAAuE;QACxE,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBAEpB,KAAK,EACJ,uPAAuP;aACxP;SACD;KACD;CACD,CAAC"}
@@ -4,13 +4,15 @@ exports.blockGetDescription = void 0;
4
4
  const showOnlyForBlockGet = { operation: ['get'], resource: ['block'] };
5
5
  exports.blockGetDescription = [
6
6
  {
7
- displayName: 'Document or Block ID',
7
+ displayName: 'Document or Block Name or ID',
8
8
  name: 'blockId',
9
- type: 'string',
9
+ type: 'options',
10
+ typeOptions: {
11
+ loadOptionsMethod: 'getDocuments',
12
+ },
10
13
  default: '',
11
14
  required: true,
12
- placeholder: 'doc-123 or block-uuid',
13
- description: 'The ID of the document or block to fetch. Use "List Documents" to discover available document IDs.',
15
+ description: 'Select a document or enter a block ID. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
14
16
  displayOptions: { show: showOnlyForBlockGet },
15
17
  routing: {
16
18
  send: {
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/get.ts"],"names":[],"mappings":";;;AAQA,MAAM,mBAAmB,GAAG,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAE3D,QAAA,mBAAmB,GAAsB;IAErD;QACC,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE,oGAAoG;QACjH,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,IAAI;aACd;SACD;KACD;IAGD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;YACZ,QAAQ,EAAE,CAAC,CAAC;YACZ,QAAQ,EAAE,EAAE;SACZ;QACD,OAAO,EAAE,CAAC,CAAC;QACX,WAAW,EACV,gGAAgG;QACjG,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,UAAU;aACpB;SACD;KACD;IAGD;QACC,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,uDAAuD;aACpE;YACD;gBACC,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,mCAAmC;aAChD;SACD;QACD,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,wBAAwB;QACrC,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,qEAAqE;iBAC7E;aACD;SACD;KACD;IAGD;QACC,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EACV,4EAA4E;gBAC7E,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,eAAe;qBACzB;iBACD;aACD;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/get.ts"],"names":[],"mappings":";;;AAQA,MAAM,mBAAmB,GAAG,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAE3D,QAAA,mBAAmB,GAAsB;IAErD;QACC,WAAW,EAAE,8BAA8B;QAC3C,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACZ,iBAAiB,EAAE,cAAc;SACjC;QACD,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,wJAAwJ;QACrK,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,IAAI;aACd;SACD;KACD;IAGD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;YACZ,QAAQ,EAAE,CAAC,CAAC;YACZ,QAAQ,EAAE,EAAE;SACZ;QACD,OAAO,EAAE,CAAC,CAAC;QACX,WAAW,EACV,gGAAgG;QACjG,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,UAAU;aACpB;SACD;KACD;IAGD;QACC,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,uDAAuD;aACpE;YACD;gBACC,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,mCAAmC;aAChD;SACD;QACD,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,wBAAwB;QACrC,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,qEAAqE;iBAC7E;aACD;SACD;KACD;IAGD;QACC,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QAC7C,OAAO,EAAE;YACR;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EACV,4EAA4E;gBAC7E,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,eAAe;qBACzB;iBACD;aACD;SACD;KACD;CACD,CAAC"}
@@ -4,40 +4,22 @@ exports.blockInsertDescription = void 0;
4
4
  exports.blockInsertPreSend = blockInsertPreSend;
5
5
  const showOnlyForBlockInsert = { operation: ['insert'], resource: ['block'] };
6
6
  function buildPositionObject(context) {
7
- let positionType = 'end';
8
- let targetPageId = '';
9
- let referenceBlockId = '';
10
- try {
11
- positionType = context.getNodeParameter('positionType', 'end');
12
- targetPageId = context.getNodeParameter('targetPageId', '');
13
- referenceBlockId = context.getNodeParameter('referenceBlockId', '');
14
- }
15
- catch {
16
- }
7
+ const positionType = context.getNodeParameter('positionType', 'end') || 'end';
8
+ const targetPageId = context.getNodeParameter('targetPageId', '') || '';
9
+ const referenceBlockId = context.getNodeParameter('referenceBlockId', '') || '';
17
10
  const position = {
18
- position: positionType || 'end',
11
+ position: positionType,
19
12
  pageId: targetPageId,
20
13
  };
21
14
  if (['before', 'after'].includes(positionType) && referenceBlockId) {
22
- position.referenceBlockId = referenceBlockId;
15
+ position.siblingId = referenceBlockId;
23
16
  }
24
17
  return position;
25
18
  }
26
19
  async function blockInsertPreSend(requestOptions) {
27
20
  const position = buildPositionObject(this);
28
- let markdownContent = '';
29
- try {
30
- const rawValue = this.getNodeParameter('markdownContent', '');
31
- if (typeof rawValue === 'string') {
32
- markdownContent = rawValue;
33
- }
34
- else if (rawValue) {
35
- markdownContent = String(rawValue);
36
- }
37
- }
38
- catch {
39
- markdownContent = '';
40
- }
21
+ const rawValue = this.getNodeParameter('markdownContent', '');
22
+ const markdownContent = typeof rawValue === 'string' ? rawValue : String(rawValue !== null && rawValue !== void 0 ? rawValue : '');
41
23
  const requestBody = {
42
24
  blocks: [
43
25
  {
@@ -50,25 +32,23 @@ async function blockInsertPreSend(requestOptions) {
50
32
  pageId: String(position.pageId || ''),
51
33
  },
52
34
  };
53
- if (position.referenceBlockId) {
54
- requestBody.position.referenceBlockId = String(position.referenceBlockId);
35
+ if (position.siblingId) {
36
+ requestBody.position.siblingId = String(position.siblingId);
55
37
  }
56
- requestOptions.body = JSON.stringify(requestBody);
57
- requestOptions.headers = {
58
- 'Content-Type': 'application/json',
59
- 'Accept': 'application/json',
60
- };
38
+ requestOptions.body = requestBody;
61
39
  return requestOptions;
62
40
  }
63
41
  exports.blockInsertDescription = [
64
42
  {
65
- displayName: 'Target Document/Page ID',
43
+ displayName: 'Target Document Name or ID',
66
44
  name: 'targetPageId',
67
- type: 'string',
45
+ type: 'options',
46
+ typeOptions: {
47
+ loadOptionsMethod: 'getDocuments',
48
+ },
68
49
  default: '',
69
50
  required: true,
70
- placeholder: 'doc-123',
71
- description: 'The ID of the document or page to insert into. Use "List Documents" to find available IDs.',
51
+ description: 'Select a document to insert into. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
72
52
  displayOptions: { show: showOnlyForBlockInsert },
73
53
  },
74
54
  {
@@ -1 +1 @@
1
- {"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/insert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/insert.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ exports.blockMoveDescription = [
16
16
  send: {
17
17
  type: 'body',
18
18
  property: 'blockIds',
19
- value: '={{ $value.startsWith("[") ? JSON.parse($value) : $value.split(",").map(id => id.trim()) }}',
19
+ value: '={{ $value && $value.trim().startsWith("[") ? (() => { try { return JSON.parse($value); } catch { return $value.split(",").map(id => id.trim()).filter(id => id); } })() : ($value ? $value.split(",").map(id => id.trim()).filter(id => id) : []) }}',
20
20
  },
21
21
  },
22
22
  },
@@ -45,13 +45,15 @@ exports.blockMoveDescription = [
45
45
  default: 'end',
46
46
  },
47
47
  {
48
- displayName: 'Target Document/Page ID',
48
+ displayName: 'Target Document Name or ID',
49
49
  name: 'pageId',
50
- type: 'string',
50
+ type: 'options',
51
+ typeOptions: {
52
+ loadOptionsMethod: 'getDocuments',
53
+ },
51
54
  default: '',
52
55
  required: true,
53
- placeholder: 'doc-123',
54
- description: 'Which document/page to move the blocks to',
56
+ description: 'Select a document to move the blocks to. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
55
57
  },
56
58
  {
57
59
  displayName: 'Reference Block ID',
@@ -73,7 +75,7 @@ exports.blockMoveDescription = [
73
75
  send: {
74
76
  type: 'body',
75
77
  property: 'position',
76
- value: '={{ $value.positionValues ? { position: $value.positionValues.position, pageId: $value.positionValues.pageId, ...(["before", "after"].includes($value.positionValues.position) && $value.positionValues.referenceBlockId ? { referenceBlockId: $value.positionValues.referenceBlockId } : {}) } : { position: "end", pageId: "" } }}',
78
+ value: '={{ $value.positionValues ? { position: $value.positionValues.position, pageId: $value.positionValues.pageId, ...(["before", "after"].includes($value.positionValues.position) && $value.positionValues.referenceBlockId ? { siblingId: $value.positionValues.referenceBlockId } : {}) } : { position: "end", pageId: "" } }}',
77
79
  },
78
80
  },
79
81
  },
@@ -1 +1 @@
1
- {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/move.ts"],"names":[],"mappings":";;;AAQA,MAAM,oBAAoB,GAAG,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAE7D,QAAA,oBAAoB,GAAsB;IAEtD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EAAE,qEAAqE;QAClF,cAAc,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;QAC9C,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBACpB,KAAK,EACJ,6FAA6F;aAC9F;SACD;KACD;IAGD;QACC,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;QAC9C,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,UAAU;gBACvB,MAAM,EAAE;oBACP;wBACC,WAAW,EAAE,eAAe;wBAC5B,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE;4BACR,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iCAAiC,EAAE;4BAC7E,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,mCAAmC,EAAE;4BACnF,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;4BAChF,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,6BAA6B,EAAE;yBAC7E;wBACD,OAAO,EAAE,KAAK;qBACd;oBACD;wBACC,WAAW,EAAE,yBAAyB;wBACtC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;wBACX,QAAQ,EAAE,IAAI;wBACd,WAAW,EAAE,SAAS;wBACtB,WAAW,EAAE,2CAA2C;qBACxD;oBACD;wBACC,WAAW,EAAE,oBAAoB;wBACjC,IAAI,EAAE,kBAAkB;wBACxB,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;wBACX,WAAW,EAAE,iBAAiB;wBAC9B,WAAW,EAAE,kEAAkE;wBAC/E,cAAc,EAAE;4BACf,IAAI,EAAE;gCACL,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;6BAC7B;yBACD;qBACD;iBACD;aACD;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBAEpB,KAAK,EACJ,sUAAsU;aACvU;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/move.ts"],"names":[],"mappings":";;;AAQA,MAAM,oBAAoB,GAAG,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAE7D,QAAA,oBAAoB,GAAsB;IAEtD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EAAE,qEAAqE;QAClF,cAAc,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;QAC9C,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBAEpB,KAAK,EACJ,uPAAuP;aACxP;SACD;KACD;IAGD;QACC,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;QAC9C,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,UAAU;gBACvB,MAAM,EAAE;oBACP;wBACC,WAAW,EAAE,eAAe;wBAC5B,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE;4BACR,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iCAAiC,EAAE;4BAC7E,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,mCAAmC,EAAE;4BACnF,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;4BAChF,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,6BAA6B,EAAE;yBAC7E;wBACD,OAAO,EAAE,KAAK;qBACd;oBACD;wBACC,WAAW,EAAE,4BAA4B;wBACzC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE;4BACZ,iBAAiB,EAAE,cAAc;yBACjC;wBACD,OAAO,EAAE,EAAE;wBACX,QAAQ,EAAE,IAAI;wBACd,WAAW,EAAE,0JAA0J;qBACvK;oBACD;wBACC,WAAW,EAAE,oBAAoB;wBACjC,IAAI,EAAE,kBAAkB;wBACxB,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;wBACX,WAAW,EAAE,iBAAiB;wBAC9B,WAAW,EAAE,kEAAkE;wBAC/E,cAAc,EAAE;4BACf,IAAI,EAAE;gCACL,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;6BAC7B;yBACD;qBACD;iBACD;aACD;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBAEpB,KAAK,EACJ,+TAA+T;aAChU;SACD;KACD;CACD,CAAC"}
@@ -4,13 +4,15 @@ exports.blockSearchDescription = void 0;
4
4
  const showOnlyForBlockSearch = { operation: ['searchInDocument'], resource: ['block'] };
5
5
  exports.blockSearchDescription = [
6
6
  {
7
- displayName: 'Document ID',
7
+ displayName: 'Document Name or ID',
8
8
  name: 'documentId',
9
- type: 'string',
9
+ type: 'options',
10
+ typeOptions: {
11
+ loadOptionsMethod: 'getDocuments',
12
+ },
10
13
  default: '',
11
14
  required: true,
12
- placeholder: 'doc-123',
13
- description: 'The document ID to search within. Use "List Documents" to find available IDs.',
15
+ description: 'Select a document to search within. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
14
16
  displayOptions: { show: showOnlyForBlockSearch },
15
17
  routing: {
16
18
  send: {
@@ -26,7 +28,7 @@ exports.blockSearchDescription = [
26
28
  default: '',
27
29
  required: true,
28
30
  placeholder: 'meeting|agenda',
29
- description: 'The search pattern. Supports NodeJS regular expressions.',
31
+ description: 'The search pattern. Supports RE2-compatible regex syntax.',
30
32
  displayOptions: { show: showOnlyForBlockSearch },
31
33
  routing: {
32
34
  send: {
@@ -64,7 +66,7 @@ exports.blockSearchDescription = [
64
66
  minValue: 0,
65
67
  maxValue: 5,
66
68
  },
67
- default: 0,
69
+ default: 5,
68
70
  description: 'Number of blocks to include before each match for context',
69
71
  routing: {
70
72
  send: {
@@ -81,7 +83,7 @@ exports.blockSearchDescription = [
81
83
  minValue: 0,
82
84
  maxValue: 5,
83
85
  },
84
- default: 0,
86
+ default: 5,
85
87
  description: 'Number of blocks to include after each match for context',
86
88
  routing: {
87
89
  send: {
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/search.ts"],"names":[],"mappings":";;;AAQA,MAAM,sBAAsB,GAAG,EAAE,SAAS,EAAE,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAE3E,QAAA,sBAAsB,GAAsB;IAExD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,+EAA+E;QAC5F,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,YAAY;aACtB;SACD;KACD;IAGD;QACC,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,0DAA0D;QACvE,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,SAAS;aACnB;SACD;KACD;IAGD;QACC,WAAW,EAAE,SAAS;QACtB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,6CAA6C;gBAC1D,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,eAAe;qBACzB;iBACD;aACD;YACD;gBACC,WAAW,EAAE,eAAe;gBAC5B,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,CAAC;oBACX,QAAQ,EAAE,CAAC;iBACX;gBACD,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,2DAA2D;gBACxE,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,kBAAkB;qBAC5B;iBACD;aACD;YACD;gBACC,WAAW,EAAE,cAAc;gBAC3B,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,CAAC;oBACX,QAAQ,EAAE,CAAC;iBACX;gBACD,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,0DAA0D;gBACvE,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,iBAAiB;qBAC3B;iBACD;aACD;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/search.ts"],"names":[],"mappings":";;;AAQA,MAAM,sBAAsB,GAAG,EAAE,SAAS,EAAE,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAE3E,QAAA,sBAAsB,GAAsB;IAExD;QACC,WAAW,EAAE,qBAAqB;QAClC,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACZ,iBAAiB,EAAE,cAAc;SACjC;QACD,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,qJAAqJ;QAClK,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,YAAY;aACtB;SACD;KACD;IAGD;QACC,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,2DAA2D;QACxE,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,SAAS;aACnB;SACD;KACD;IAGD;QACC,WAAW,EAAE,SAAS;QACtB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,6CAA6C;gBAC1D,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,eAAe;qBACzB;iBACD;aACD;YACD;gBACC,WAAW,EAAE,eAAe;gBAC5B,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,CAAC;oBACX,QAAQ,EAAE,CAAC;iBACX;gBACD,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,2DAA2D;gBACxE,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,kBAAkB;qBAC5B;iBACD;aACD;YACD;gBACC,WAAW,EAAE,cAAc;gBAC3B,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,CAAC;oBACX,QAAQ,EAAE,CAAC;iBACX;gBACD,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,0DAA0D;gBACvE,OAAO,EAAE;oBACR,IAAI,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,iBAAiB;qBAC3B;iBACD;aACD;SACD;KACD;CACD,CAAC"}
@@ -18,6 +18,14 @@ exports.blockUpdateDescription = [
18
18
  name: 'blockValues',
19
19
  displayName: 'Block',
20
20
  values: [
21
+ {
22
+ displayName: 'Block Color (Hex)',
23
+ name: 'color',
24
+ type: 'color',
25
+ default: '',
26
+ placeholder: '#FF5733',
27
+ description: 'Block highlight color in hex format (e.g., #FF5733). Leave empty to keep current.',
28
+ },
21
29
  {
22
30
  displayName: 'Block ID',
23
31
  name: 'id',
@@ -28,48 +36,129 @@ exports.blockUpdateDescription = [
28
36
  description: 'The UUID of the block to update',
29
37
  },
30
38
  {
31
- displayName: 'New Markdown',
32
- name: 'markdown',
33
- type: 'string',
34
- typeOptions: {
35
- rows: 4,
36
- },
37
- default: '',
38
- description: 'The new markdown content for the block',
39
- },
40
- {
41
- displayName: 'Text Style',
42
- name: 'textStyle',
39
+ displayName: 'Font',
40
+ name: 'font',
43
41
  type: 'options',
44
42
  options: [
45
- { name: 'Body', value: 'body' },
46
- { name: 'Caption', value: 'caption' },
47
- { name: 'Card', value: 'card' },
48
- { name: "Don't Change", value: '', description: 'Keep current text style' },
49
- { name: 'Heading 1', value: 'h1' },
50
- { name: 'Heading 2', value: 'h2' },
51
- { name: 'Heading 3', value: 'h3' },
52
- { name: 'Heading 4', value: 'h4' },
53
- { name: 'Page', value: 'page' },
43
+ {
44
+ name: "Don't Change",
45
+ value: '',
46
+ description: 'Keep current font',
47
+ },
48
+ {
49
+ name: 'Mono',
50
+ value: 'mono',
51
+ },
52
+ {
53
+ name: 'Rounded',
54
+ value: 'rounded',
55
+ },
56
+ {
57
+ name: 'Serif',
58
+ value: 'serif',
59
+ },
60
+ {
61
+ name: 'System',
62
+ value: 'system',
63
+ },
54
64
  ],
55
65
  default: '',
56
- description: 'The text style for the block. Code blocks are auto-detected from ``` markdown syntax.',
66
+ description: 'The font family for the block',
67
+ },
68
+ {
69
+ displayName: 'Indentation Level',
70
+ name: 'indentationLevel',
71
+ type: 'number',
72
+ default: -1,
73
+ description: 'Indentation level (0-5). Set to -1 to keep current level.',
57
74
  },
58
75
  {
59
76
  displayName: 'List Style',
60
77
  name: 'listStyle',
61
78
  type: 'options',
62
79
  options: [
63
- { name: 'Bullet', value: 'bullet' },
64
- { name: "Don't Change", value: '', description: 'Keep current list style' },
65
- { name: 'None', value: 'none' },
66
- { name: 'Numbered', value: 'numbered' },
67
- { name: 'Todo', value: 'todo' },
68
- { name: 'Toggle', value: 'toggle' },
80
+ {
81
+ name: 'Bullet',
82
+ value: 'bullet',
83
+ },
84
+ {
85
+ name: 'Don\'t Change',
86
+ value: '',
87
+ description: 'Keep current list style',
88
+ },
89
+ {
90
+ name: 'None',
91
+ value: 'none',
92
+ },
93
+ {
94
+ name: 'Numbered',
95
+ value: 'numbered',
96
+ },
97
+ {
98
+ name: 'Task',
99
+ value: 'task',
100
+ },
101
+ {
102
+ name: 'Toggle',
103
+ value: 'toggle',
104
+ },
69
105
  ],
70
106
  default: '',
71
107
  description: 'The list style for the block',
72
108
  },
109
+ {
110
+ displayName: 'New Markdown',
111
+ name: 'markdown',
112
+ type: 'string',
113
+ default: '',
114
+ description: 'The new markdown content for the block',
115
+ },
116
+ {
117
+ displayName: 'Text Style',
118
+ name: 'textStyle',
119
+ type: 'options',
120
+ options: [
121
+ {
122
+ name: 'Body',
123
+ value: 'body',
124
+ },
125
+ {
126
+ name: 'Caption',
127
+ value: 'caption',
128
+ },
129
+ {
130
+ name: 'Card',
131
+ value: 'card',
132
+ },
133
+ {
134
+ name: 'Don\'t Change',
135
+ value: '',
136
+ description: 'Keep current text style',
137
+ },
138
+ {
139
+ name: 'Heading 1',
140
+ value: 'h1',
141
+ },
142
+ {
143
+ name: 'Heading 2',
144
+ value: 'h2',
145
+ },
146
+ {
147
+ name: 'Heading 3',
148
+ value: 'h3',
149
+ },
150
+ {
151
+ name: 'Heading 4',
152
+ value: 'h4',
153
+ },
154
+ {
155
+ name: 'Page',
156
+ value: 'page',
157
+ },
158
+ ],
159
+ default: '',
160
+ description: 'The text style for the block. Code blocks are auto-detected from ``` markdown syntax.',
161
+ },
73
162
  ],
74
163
  },
75
164
  ],
@@ -77,7 +166,7 @@ exports.blockUpdateDescription = [
77
166
  send: {
78
167
  type: 'body',
79
168
  property: 'blocks',
80
- value: '={{ $value.blockValues ? $value.blockValues.map(b => { const block = { id: b.id }; if (b.markdown) block.markdown = b.markdown; if (b.textStyle && b.textStyle !== "") block.textStyle = b.textStyle; if (b.listStyle && b.listStyle !== "") block.listStyle = b.listStyle; return block; }) : [] }}',
169
+ value: '={{ $value.blockValues ? $value.blockValues.map(b => { const block = { id: b.id }; if (b.markdown) block.markdown = b.markdown; if (b.textStyle && b.textStyle !== "") block.textStyle = b.textStyle; if (b.listStyle && b.listStyle !== "") block.listStyle = b.listStyle; if (b.font && b.font !== "") block.font = b.font; if (b.indentationLevel >= 0) block.indentationLevel = b.indentationLevel; if (b.color) block.decorations = [{ color: b.color }]; return block; }) : [] }}',
81
170
  },
82
171
  },
83
172
  },
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/update.ts"],"names":[],"mappings":";;;AAQA,MAAM,sBAAsB,GAAG,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAEjE,QAAA,sBAAsB,GAAsB;IAExD;QACC,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;YACZ,cAAc,EAAE,IAAI;SACpB;QACD,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QAChD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE;oBACP;wBACC,WAAW,EAAE,UAAU;wBACvB,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;wBACX,QAAQ,EAAE,IAAI;wBACd,WAAW,EAAE,sCAAsC;wBACnD,WAAW,EAAE,iCAAiC;qBAC9C;oBACD;wBACC,WAAW,EAAE,cAAc;wBAC3B,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE;4BACZ,IAAI,EAAE,CAAC;yBACP;wBACD,OAAO,EAAE,EAAE;wBACX,WAAW,EAAE,wCAAwC;qBACrD;oBACD;wBACC,WAAW,EAAE,YAAY;wBACzB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBAGf,OAAO,EAAE;4BACR,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;4BAC/B,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;4BACrC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;4BAC/B,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,yBAAyB,EAAE;4BAC3E,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;4BAClC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;4BAClC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;4BAClC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;4BAClC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;yBAC/B;wBACD,OAAO,EAAE,EAAE;wBACX,WAAW,EAAE,uFAAuF;qBACpG;oBACD;wBACC,WAAW,EAAE,YAAY;wBACzB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE;4BACR,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;4BACnC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,yBAAyB,EAAE;4BAC3E,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;4BAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;4BACvC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;4BAC/B,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;yBACnC;wBACD,OAAO,EAAE,EAAE;wBACX,WAAW,EAAE,8BAA8B;qBAC3C;iBACD;aACD;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,QAAQ;gBAElB,KAAK,EACJ,sSAAsS;aACvS;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/block/update.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,21 @@ exports.collectionAddItemsDescription = [
52
52
  send: {
53
53
  type: 'body',
54
54
  property: 'items',
55
- value: '={{ $value.itemValues ? $value.itemValues.map(item => ({ title: item.title, properties: typeof item.properties === "string" ? JSON.parse(item.properties || "{}") : (item.properties || {}) })) : [] }}',
55
+ value: '={{ $value.itemValues ? $value.itemValues.map(item => ({ title: item.title, properties: typeof item.properties === "string" ? (() => { try { return JSON.parse(item.properties || "{}"); } catch { return {}; } })() : (item.properties || {}) })) : [] }}',
56
+ },
57
+ },
58
+ },
59
+ {
60
+ displayName: 'Allow New Select Options',
61
+ name: 'allowNewSelectOptions',
62
+ type: 'boolean',
63
+ default: false,
64
+ description: 'Whether to allow creating new options for select properties if the value doesn\'t exist in the schema. Use with caution.',
65
+ displayOptions: { show: showOnlyForCollectionAddItems },
66
+ routing: {
67
+ send: {
68
+ type: 'body',
69
+ property: 'allowNewSelectOptions',
56
70
  },
57
71
  },
58
72
  },
@@ -1 +1 @@
1
- {"version":3,"file":"addItems.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/collection/addItems.ts"],"names":[],"mappings":";;;AAQA,MAAM,6BAA6B,GAAG,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;AAE/E,QAAA,6BAA6B,GAAsB;IAE/D;QACC,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACZ,iBAAiB,EAAE,gBAAgB;SACnC;QACD,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,0JAA0J;QACvK,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE;KACvD;IAED;QACC,WAAW,EAAE,OAAO;QACpB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;YACZ,cAAc,EAAE,IAAI;SACpB;QACD,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE;QACvD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,MAAM;gBACnB,MAAM,EAAE;oBACP;wBACC,WAAW,EAAE,OAAO;wBACpB,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;wBACX,QAAQ,EAAE,IAAI;wBACd,WAAW,EAAE,4BAA4B;qBACzC;oBACD;wBACC,WAAW,EAAE,mBAAmB;wBAChC,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,IAAI;wBACb,WAAW,EAAE,kFAAkF;qBAC/F;iBACD;aACD;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,OAAO;gBACjB,KAAK,EACJ,yMAAyM;aAC1M;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"addItems.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/collection/addItems.ts"],"names":[],"mappings":";;;AAQA,MAAM,6BAA6B,GAAG,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;AAE/E,QAAA,6BAA6B,GAAsB;IAE/D;QACC,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACZ,iBAAiB,EAAE,gBAAgB;SACnC;QACD,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,0JAA0J;QACvK,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE;KACvD;IAED;QACC,WAAW,EAAE,OAAO;QACpB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;YACZ,cAAc,EAAE,IAAI;SACpB;QACD,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE;QACvD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,MAAM;gBACnB,MAAM,EAAE;oBACP;wBACC,WAAW,EAAE,OAAO;wBACpB,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;wBACX,QAAQ,EAAE,IAAI;wBACd,WAAW,EAAE,4BAA4B;qBACzC;oBACD;wBACC,WAAW,EAAE,mBAAmB;wBAChC,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,IAAI;wBACb,WAAW,EAAE,kFAAkF;qBAC/F;iBACD;aACD;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,OAAO;gBAEjB,KAAK,EACJ,4PAA4P;aAC7P;SACD;KACD;IAGD;QACC,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,0HAA0H;QACvI,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE;QACvD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,uBAAuB;aACjC;SACD;KACD;CACD,CAAC"}
@@ -28,7 +28,7 @@ exports.collectionDeleteItemsDescription = [
28
28
  send: {
29
29
  type: 'body',
30
30
  property: 'idsToDelete',
31
- value: '={{ $value.startsWith("[") ? JSON.parse($value) : $value.split(",").map(id => id.trim()) }}',
31
+ value: '={{ $value && $value.trim().startsWith("[") ? (() => { try { return JSON.parse($value); } catch { return $value.split(",").map(id => id.trim()).filter(id => id); } })() : ($value ? $value.split(",").map(id => id.trim()).filter(id => id) : []) }}',
32
32
  },
33
33
  },
34
34
  },
@@ -1 +1 @@
1
- {"version":3,"file":"deleteItems.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/collection/deleteItems.ts"],"names":[],"mappings":";;;AAQA,MAAM,gCAAgC,GAAG,EAAE,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;AAErF,QAAA,gCAAgC,GAAsB;IAElE;QACC,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACZ,iBAAiB,EAAE,gBAAgB;SACnC;QACD,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,0JAA0J;QACvK,cAAc,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;KAC1D;IAED;QACC,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EAAE,sEAAsE;QACnF,cAAc,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;QAC1D,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,aAAa;gBACvB,KAAK,EACJ,6FAA6F;aAC9F;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"deleteItems.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/collection/deleteItems.ts"],"names":[],"mappings":";;;AAQA,MAAM,gCAAgC,GAAG,EAAE,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;AAErF,QAAA,gCAAgC,GAAsB;IAElE;QACC,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACZ,iBAAiB,EAAE,gBAAgB;SACnC;QACD,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,0JAA0J;QACvK,cAAc,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;KAC1D;IAED;QACC,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EAAE,sEAAsE;QACnF,cAAc,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;QAC1D,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,aAAa;gBAEvB,KAAK,EACJ,uPAAuP;aACxP;SACD;KACD;CACD,CAAC"}
@@ -28,7 +28,7 @@ exports.collectionListDescription = [
28
28
  send: {
29
29
  type: 'query',
30
30
  property: 'documentIds',
31
- value: '={{ $value ? ($value.startsWith("[") ? JSON.parse($value) : $value.split(",").map(id => id.trim())) : undefined }}',
31
+ value: '={{ $value ? ($value.trim().startsWith("[") ? (() => { try { return JSON.parse($value); } catch { return $value.split(",").map(id => id.trim()).filter(id => id); } })() : $value.split(",").map(id => id.trim()).filter(id => id)) : undefined }}',
32
32
  },
33
33
  },
34
34
  },
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/collection/list.ts"],"names":[],"mappings":";;;AAQA,MAAM,yBAAyB,GAAG,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;AAEvE,QAAA,yBAAyB,GAAsB;IAE3D;QACC,WAAW,EAAE,qBAAqB;QAClC,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,cAAc,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;QACnD,WAAW,EAAE,qDAAqD;KAClE;IACD;QACC,WAAW,EAAE,cAAc;QAC3B,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,4CAA4C;QACzD,WAAW,EAAE,sFAAsF;QACnG,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,GAAG,yBAAyB;gBAC5B,iBAAiB,EAAE,CAAC,IAAI,CAAC;aACzB;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,aAAa;gBACvB,KAAK,EAAE,oHAAoH;aAC3H;SACD;KACD;IACD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE;YACR,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,mDAAmD,EAAE;YACvG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,8CAA8C,EAAE;SAClG;QACD,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,uDAAuD;QACpE,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,GAAG,yBAAyB;gBAC5B,iBAAiB,EAAE,CAAC,IAAI,CAAC;aACzB;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,oBAAoB;gBAC9B,KAAK,EAAE,4BAA4B;aACnC;SACD;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../nodes/CraftDocuments/resources/collection/list.ts"],"names":[],"mappings":";;;AAQA,MAAM,yBAAyB,GAAG,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;AAEvE,QAAA,yBAAyB,GAAsB;IAE3D;QACC,WAAW,EAAE,qBAAqB;QAClC,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,cAAc,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;QACnD,WAAW,EAAE,qDAAqD;KAClE;IACD;QACC,WAAW,EAAE,cAAc;QAC3B,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,4CAA4C;QACzD,WAAW,EAAE,sFAAsF;QACnG,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,GAAG,yBAAyB;gBAC5B,iBAAiB,EAAE,CAAC,IAAI,CAAC;aACzB;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,aAAa;gBAEvB,KAAK,EAAE,oPAAoP;aAC3P;SACD;KACD;IACD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE;YACR,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,mDAAmD,EAAE;YACvG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,8CAA8C,EAAE;SAClG;QACD,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,uDAAuD;QACpE,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,GAAG,yBAAyB;gBAC5B,iBAAiB,EAAE,CAAC,IAAI,CAAC;aACzB;SACD;QACD,OAAO,EAAE;YACR,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,oBAAoB;gBAC9B,KAAK,EAAE,4BAA4B;aACnC;SACD;KACD;CACD,CAAC"}