@rjsebening/n8n-nodes-learningsuite 1.3.6 → 1.4.1
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 +1 -1
- package/README.md +2 -2
- package/dist/credentials/LearningSuiteApi.credentials.js +4 -1
- package/dist/credentials/learningsuite-icon-dark.svg +1 -0
- package/dist/nodes/LearningSuite/LearningSuite.node.js +5 -4
- package/dist/nodes/LearningSuite/LearningSuiteTrigger.node.js +0 -1
- package/dist/nodes/LearningSuite/descriptions/ai.properties.js +15 -135
- package/dist/nodes/LearningSuite/execute/ai.handlers.d.ts +1 -1
- package/dist/nodes/LearningSuite/execute/ai.handlers.js +51 -31
- package/dist/nodes/LearningSuite/shared/request.js +3 -3
- package/dist/nodes/LearningSuitePollingTrigger/LearningSuitePollingTrigger.node.js +0 -1
- package/package.json +73 -72
- /package/dist/credentials/{learningsuite.svg → learningsuite-icon-light.svg} +0 -0
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -88,9 +88,9 @@ This community node uses the public LearningSuite API and is not affiliated with
|
|
|
88
88
|
|
|
89
89
|
- Send push notification
|
|
90
90
|
|
|
91
|
-
### 🤖 **AI** (
|
|
91
|
+
### 🤖 **AI** (4 operations)
|
|
92
92
|
|
|
93
|
-
-
|
|
93
|
+
- Agent chat, concierge chat, get agent actions, get AI agents
|
|
94
94
|
|
|
95
95
|
### 🛡️ **Role** (1 operation)
|
|
96
96
|
|
|
@@ -5,7 +5,10 @@ class LearningSuiteApi {
|
|
|
5
5
|
constructor() {
|
|
6
6
|
this.name = 'learningSuiteApi';
|
|
7
7
|
this.displayName = 'LearningSuite API';
|
|
8
|
-
this.icon =
|
|
8
|
+
this.icon = {
|
|
9
|
+
light: 'file:learningsuite-icon-light.svg',
|
|
10
|
+
dark: 'file:learningsuite-icon-dark.svg',
|
|
11
|
+
};
|
|
9
12
|
this.documentationUrl = 'https://github.com/rjsebening/n8n-nodes-learningsuite/blob/main/CREDENTIALS.md';
|
|
10
13
|
this.properties = [
|
|
11
14
|
{
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" zoomAndPan="magnify" viewBox="0 0 384 391.91998" height="512" preserveAspectRatio="xMidYMid meet" version="1.0"><defs><clipPath id="c6dad2e7c9"><path d="M 127 2.066406 L 318 2.066406 L 318 214 L 127 214 Z M 127 2.066406 " clip-rule="nonzero"/></clipPath><clipPath id="a9b7033811"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath><clipPath id="46b7644509"><path d="M 224 54 L 369 54 L 369 293 L 224 293 Z M 224 54 " clip-rule="nonzero"/></clipPath><clipPath id="c0984bbd50"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath><clipPath id="4745944fd5"><path d="M 121 219 L 367 219 L 367 339 L 121 339 Z M 121 219 " clip-rule="nonzero"/></clipPath><clipPath id="dd2bba544f"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath><clipPath id="856a11e52a"><path d="M 66 170 L 258 170 L 258 381.488281 L 66 381.488281 Z M 66 170 " clip-rule="nonzero"/></clipPath><clipPath id="9bf386bdf1"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath><clipPath id="51e32676fa"><path d="M 15 89 L 160 89 L 160 329 L 15 329 Z M 15 89 " clip-rule="nonzero"/></clipPath><clipPath id="9db504f912"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath><clipPath id="32eae5f4c2"><path d="M 15 47 L 261 47 L 261 167 L 15 167 Z M 15 47 " clip-rule="nonzero"/></clipPath><clipPath id="6d7e40857c"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath><clipPath id="2d9abcf565"><path d="M 153 147 L 237 147 L 237 239 L 153 239 Z M 153 147 " clip-rule="nonzero"/></clipPath><clipPath id="13bfd7577d"><path d="M 14.773438 75.550781 L 14.773438 308.371094 C 14.773438 348.953125 47.671875 381.855469 88.257812 381.855469 L 295.742188 381.855469 C 336.328125 381.855469 369.226562 348.953125 369.226562 308.371094 L 369.226562 75.550781 C 369.226562 34.96875 336.328125 2.066406 295.742188 2.066406 L 88.257812 2.066406 C 47.671875 2.066406 14.773438 34.96875 14.773438 75.550781 Z M 14.773438 75.550781 " clip-rule="nonzero"/></clipPath></defs><g clip-path="url(#c6dad2e7c9)"><g clip-path="url(#a9b7033811)"><path fill="#1871d4" d="M 291.535156 213.332031 C 292.109375 198.699219 291.632812 184.101562 290.113281 169.539062 C 288.46875 153 285.269531 136.765625 280.519531 120.835938 C 275.351562 103.136719 267.582031 86.667969 257.210938 71.421875 C 252.648438 64.417969 247.363281 58.007812 241.367188 52.183594 C 235.367188 46.363281 228.796875 41.273438 221.660156 36.917969 C 217.097656 34.246094 212.265625 32.203125 207.164062 30.789062 C 202.066406 29.375 196.871094 28.640625 191.582031 28.582031 C 184.460938 28.492188 177.65625 29.90625 171.160156 32.824219 L 127.105469 27.867188 C 131.582031 24.050781 136.292969 20.554688 141.246094 17.378906 C 147.621094 13.257812 154.351562 9.84375 161.441406 7.132812 C 169.316406 4.101562 177.46875 2.425781 185.898438 2.097656 C 186.707031 2.0625 187.480469 2.0625 188.433594 2.0625 C 196.859375 2.078125 205.132812 3.210938 213.253906 5.464844 C 221.339844 7.722656 229.035156 10.925781 236.339844 15.070312 C 243.792969 19.347656 250.710938 24.367188 257.089844 30.128906 C 263.464844 35.894531 269.160156 42.265625 274.171875 49.253906 C 274.933594 50.308594 275.875 51.582031 277.121094 53.246094 L 277.1875 53.328125 C 282.804688 60.648438 287.882812 68.328125 292.425781 76.363281 C 298.816406 88.066406 303.621094 100.386719 306.84375 113.324219 C 315.109375 145.753906 317.941406 165.265625 317.882812 172.113281 C 311.984375 187.832031 298.851562 204.675781 291.550781 213.324219 Z M 291.535156 213.332031 " fill-opacity="1" fill-rule="nonzero"/></g></g><g clip-path="url(#46b7644509)"><g clip-path="url(#c0984bbd50)"><path fill="#ffffff" d="M 258.074219 292.765625 C 246.785156 292.621094 235.589844 291.515625 224.488281 289.449219 C 237.445312 282.628906 249.847656 274.914062 261.695312 266.3125 C 275.195312 256.617188 287.65625 245.730469 299.070312 233.652344 C 311.8125 220.3125 322.199219 205.34375 330.230469 188.738281 C 334.007812 181.285156 336.914062 173.503906 338.953125 165.398438 C 340.988281 157.292969 342.105469 149.0625 342.304688 140.707031 C 342.339844 135.414062 341.695312 130.207031 340.371094 125.085938 C 339.046875 119.964844 337.085938 115.097656 334.488281 110.488281 C 331.003906 104.289062 326.382812 99.113281 320.617188 94.949219 L 302.882812 54.304688 C 308.472656 56.289062 313.898438 58.648438 319.167969 61.375 C 325.898438 64.828125 332.199219 68.945312 338.058594 73.730469 C 344.605469 79.023438 350.117188 85.230469 354.605469 92.347656 C 355.050781 93.066406 355.449219 93.761719 355.894531 94.523438 C 360.101562 101.828125 363.261719 109.5625 365.371094 117.722656 C 367.460938 125.859375 368.539062 134.125 368.601562 142.523438 C 368.617188 151.117188 367.722656 159.617188 365.917969 168.019531 C 364.109375 176.421875 361.433594 184.539062 357.886719 192.367188 L 357.617188 192.992188 C 357.402344 193.484375 357.171875 193.980469 356.960938 194.492188 C 356.683594 195.140625 356.402344 195.792969 356.109375 196.46875 L 355.910156 196.910156 L 355.753906 197.25 C 352.265625 205.699219 348.191406 213.855469 343.535156 221.722656 C 336.609375 233.117188 328.34375 243.433594 318.734375 252.679688 C 294.765625 276.109375 279.289062 288.3125 273.339844 291.640625 C 268.28125 292.429688 263.191406 292.804688 258.074219 292.765625 Z M 258.074219 292.765625 " fill-opacity="1" fill-rule="nonzero"/></g></g><g clip-path="url(#4745944fd5)"><g clip-path="url(#dd2bba544f)"><path fill="#1871d4" d="M 243.128906 338.347656 C 241.90625 338.347656 240.941406 338.347656 240.097656 338.316406 C 226.773438 338.011719 213.703125 336.015625 200.894531 332.324219 C 168.550781 323.234375 150.28125 315.96875 144.445312 312.503906 C 133.777344 299.507812 125.765625 279.71875 121.9375 269.078125 C 134.3125 276.894531 147.1875 283.78125 160.558594 289.734375 C 175.699219 296.59375 191.355469 301.949219 207.527344 305.796875 C 221.261719 309.070312 235.191406 310.753906 249.308594 310.847656 C 253.585938 310.847656 257.851562 310.675781 261.988281 310.328125 C 270.335938 309.875 278.527344 308.507812 286.566406 306.222656 C 294.609375 303.933594 302.296875 300.789062 309.632812 296.78125 C 314.234375 294.164062 318.421875 291 322.199219 287.289062 C 325.976562 283.578125 329.214844 279.441406 331.917969 274.886719 C 335.550781 268.777344 337.730469 262.183594 338.445312 255.105469 L 364.765625 219.398438 C 365.851562 225.230469 366.523438 231.109375 366.777344 237.035156 C 367.164062 244.59375 366.746094 252.105469 365.53125 259.578125 C 364.21875 267.886719 361.59375 275.761719 357.664062 283.203125 C 357.359375 283.789062 357.011719 284.382812 356.679688 284.976562 L 356.480469 285.308594 L 356.414062 285.429688 C 352.191406 292.71875 347.078125 299.316406 341.074219 305.222656 C 335.070312 311.097656 328.445312 316.164062 321.203125 320.421875 C 313.765625 324.734375 305.957031 328.210938 297.777344 330.851562 C 289.59375 333.492188 281.226562 335.238281 272.667969 336.089844 C 271.019531 336.246094 269.246094 336.457031 267.742188 336.636719 L 267.640625 336.636719 C 259.503906 337.699219 251.335938 338.269531 243.128906 338.347656 Z M 243.128906 338.347656 " fill-opacity="1" fill-rule="nonzero"/></g></g><g clip-path="url(#856a11e52a)"><g clip-path="url(#9bf386bdf1)"><path fill="#ffffff" d="M 195.902344 381.847656 C 187.472656 381.835938 179.199219 380.703125 171.082031 378.449219 C 162.988281 376.199219 155.292969 372.996094 147.996094 368.839844 C 140.542969 364.558594 133.628906 359.539062 127.25 353.777344 C 120.871094 348.011719 115.175781 341.640625 110.164062 334.660156 C 109.390625 333.59375 108.359375 332.167969 107.210938 330.664062 L 107.015625 330.390625 C 101.457031 323.121094 96.425781 315.496094 91.921875 307.527344 C 85.523438 295.828125 80.71875 283.507812 77.507812 270.5625 C 69.207031 238.128906 66.367188 218.625 66.449219 211.796875 C 72.363281 196.050781 85.5 179.21875 92.804688 170.578125 C 92.222656 185.214844 92.695312 199.8125 94.226562 214.378906 C 95.859375 230.921875 99.046875 247.15625 103.789062 263.082031 C 108.96875 280.78125 116.742188 297.257812 127.105469 312.511719 C 131.671875 319.507812 136.957031 325.917969 142.957031 331.738281 C 148.957031 337.554688 155.523438 342.640625 162.660156 346.992188 C 167.226562 349.664062 172.0625 351.710938 177.164062 353.121094 C 182.261719 354.53125 187.460938 355.265625 192.753906 355.320312 C 199.871094 355.414062 206.679688 354.003906 213.175781 351.089844 L 257.242188 356.035156 C 252.738281 359.890625 247.988281 363.410156 242.984375 366.59375 C 236.621094 370.707031 229.902344 374.113281 222.820312 376.804688 C 214.976562 379.832031 206.851562 381.503906 198.449219 381.820312 C 197.597656 381.832031 196.816406 381.847656 195.902344 381.847656 Z M 195.902344 381.847656 " fill-opacity="1" fill-rule="nonzero"/></g></g><g clip-path="url(#51e32676fa)"><g clip-path="url(#9db504f912)"><path fill="#1871d4" d="M 81.433594 328.332031 C 75.847656 326.363281 70.429688 324.015625 65.171875 321.289062 C 58.4375 317.828125 52.136719 313.707031 46.265625 308.925781 C 39.730469 303.632812 34.21875 297.425781 29.738281 290.308594 C 29.292969 289.59375 28.851562 288.871094 28.429688 288.144531 C 24.222656 280.84375 21.070312 273.113281 18.972656 264.953125 C 16.882812 256.816406 15.800781 248.550781 15.730469 240.152344 C 15.71875 231.554688 16.613281 223.050781 18.417969 214.644531 C 20.21875 206.238281 22.890625 198.117188 26.425781 190.28125 C 27.074219 188.84375 27.757812 187.304688 28.378906 185.839844 L 28.425781 185.730469 L 28.492188 185.582031 L 28.492188 185.53125 C 32.007812 177.035156 36.109375 168.832031 40.800781 160.921875 C 47.726562 149.535156 55.988281 139.21875 65.585938 129.972656 C 89.53125 106.597656 104.734375 94.515625 110.980469 91.003906 C 116.046875 90.222656 121.144531 89.851562 126.269531 89.894531 C 137.558594 90.050781 148.75 91.160156 159.847656 93.214844 C 146.890625 100.03125 134.484375 107.742188 122.636719 116.347656 C 109.128906 126.03125 96.667969 136.910156 85.25 148.988281 C 72.511719 162.320312 62.128906 177.285156 54.097656 193.878906 C 50.316406 201.335938 47.40625 209.117188 45.367188 217.226562 C 43.324219 225.332031 42.203125 233.5625 42 241.921875 C 41.972656 247.214844 42.621094 252.425781 43.945312 257.550781 C 45.269531 262.675781 47.230469 267.546875 49.820312 272.164062 C 53.292969 278.367188 57.917969 283.546875 63.691406 287.699219 L 81.445312 328.328125 Z M 81.433594 328.332031 " fill-opacity="1" fill-rule="nonzero"/></g></g><g clip-path="url(#32eae5f4c2)"><g clip-path="url(#6d7e40857c)"><path fill="#ffffff" d="M 17.367188 166.121094 C 16.308594 160.292969 15.640625 154.421875 15.359375 148.503906 C 14.984375 140.945312 15.398438 133.425781 16.605469 125.953125 C 17.910156 117.644531 20.527344 109.765625 24.449219 102.324219 L 24.695312 101.878906 C 24.9375 101.4375 25.195312 100.96875 25.449219 100.523438 L 25.683594 100.109375 C 29.914062 92.820312 35.035156 86.230469 41.050781 80.332031 C 47.039062 74.441406 53.660156 69.371094 60.90625 65.117188 C 68.34375 60.808594 76.152344 57.335938 84.332031 54.699219 C 92.511719 52.058594 100.878906 50.316406 109.433594 49.464844 L 111.035156 49.285156 L 114.363281 48.910156 L 114.78125 48.855469 L 114.816406 48.855469 C 122.839844 47.824219 130.898438 47.269531 138.988281 47.1875 C 140.089844 47.1875 141.023438 47.1875 142.03125 47.222656 C 155.367188 47.527344 168.445312 49.523438 181.265625 53.210938 C 213.554688 62.28125 231.582031 69.40625 237.6875 73.039062 C 248.34375 86.046875 256.367188 105.820312 260.1875 116.457031 C 247.808594 108.644531 234.933594 101.757812 221.5625 95.792969 C 206.421875 88.945312 190.769531 83.59375 174.605469 79.738281 C 160.886719 76.476562 146.976562 74.800781 132.875 74.710938 C 128.609375 74.710938 124.316406 74.890625 120.140625 75.25 C 111.796875 75.695312 103.601562 77.058594 95.5625 79.339844 C 87.523438 81.621094 79.835938 84.765625 72.5 88.765625 C 67.902344 91.386719 63.710938 94.550781 59.9375 98.265625 C 56.164062 101.976562 52.929688 106.113281 50.234375 110.667969 C 46.59375 116.785156 44.417969 123.382812 43.703125 130.464844 L 17.367188 166.117188 Z M 17.367188 166.121094 " fill-opacity="1" fill-rule="nonzero"/></g></g><g clip-path="url(#2d9abcf565)"><g clip-path="url(#13bfd7577d)"><path fill="#ffffff" d="M 228.609375 179.730469 C 229.753906 180.390625 230.792969 181.1875 231.726562 182.121094 C 232.660156 183.054688 233.457031 184.09375 234.121094 185.238281 C 234.78125 186.382812 235.28125 187.59375 235.625 188.867188 C 235.964844 190.144531 236.136719 191.441406 236.136719 192.761719 C 236.136719 194.085938 235.964844 195.382812 235.625 196.660156 C 235.28125 197.933594 234.78125 199.144531 234.121094 200.289062 C 233.457031 201.429688 232.660156 202.46875 231.726562 203.402344 C 230.792969 204.335938 229.753906 205.136719 228.609375 205.792969 L 175.996094 236.15625 C 175.425781 236.484375 174.835938 236.773438 174.230469 237.023438 C 173.625 237.277344 173.003906 237.484375 172.367188 237.65625 C 171.730469 237.824219 171.089844 237.953125 170.4375 238.039062 C 169.785156 238.125 169.132812 238.167969 168.472656 238.167969 C 167.816406 238.167969 167.164062 238.125 166.511719 238.039062 C 165.859375 237.953125 165.21875 237.824219 164.582031 237.652344 C 163.949219 237.484375 163.328125 237.273438 162.71875 237.019531 C 162.113281 236.769531 161.523438 236.480469 160.957031 236.148438 C 160.386719 235.820312 159.839844 235.457031 159.320312 235.058594 C 158.796875 234.65625 158.304688 234.226562 157.839844 233.761719 C 157.375 233.296875 156.945312 232.800781 156.542969 232.28125 C 156.144531 231.757812 155.777344 231.214844 155.449219 230.644531 C 155.121094 230.078125 154.832031 229.488281 154.582031 228.882812 C 154.328125 228.273438 154.117188 227.652344 153.949219 227.019531 C 153.777344 226.382812 153.648438 225.742188 153.5625 225.089844 C 153.476562 224.4375 153.433594 223.78125 153.433594 223.125 L 153.433594 162.390625 C 153.433594 161.734375 153.476562 161.082031 153.5625 160.429688 C 153.648438 159.777344 153.777344 159.132812 153.949219 158.5 C 154.117188 157.863281 154.328125 157.242188 154.582031 156.636719 C 154.832031 156.03125 155.121094 155.441406 155.449219 154.871094 C 155.777344 154.304688 156.144531 153.757812 156.542969 153.238281 C 156.945312 152.714844 157.375 152.222656 157.839844 151.757812 C 158.304688 151.292969 158.796875 150.859375 159.320312 150.460938 C 159.839844 150.058594 160.386719 149.695312 160.957031 149.367188 C 161.523438 149.039062 162.113281 148.75 162.71875 148.496094 C 163.328125 148.246094 163.949219 148.035156 164.582031 147.863281 C 165.21875 147.695312 165.859375 147.566406 166.511719 147.480469 C 167.164062 147.394531 167.816406 147.351562 168.472656 147.351562 C 169.132812 147.351562 169.785156 147.394531 170.4375 147.480469 C 171.089844 147.5625 171.730469 147.691406 172.367188 147.863281 C 173.003906 148.03125 173.625 148.242188 174.230469 148.492188 C 174.835938 148.746094 175.425781 149.035156 175.996094 149.363281 Z M 228.609375 179.730469 " fill-opacity="1" fill-rule="nonzero"/></g></g></svg>
|
|
@@ -204,17 +204,18 @@ class LearningSuite {
|
|
|
204
204
|
}
|
|
205
205
|
}
|
|
206
206
|
catch (error) {
|
|
207
|
+
const nodeError = error instanceof n8n_workflow_1.NodeApiError || error instanceof n8n_workflow_1.NodeOperationError
|
|
208
|
+
? error
|
|
209
|
+
: new n8n_workflow_1.NodeOperationError(this.getNode(), error, { itemIndex: i });
|
|
207
210
|
if (this.continueOnFail()) {
|
|
208
211
|
returnData.push({
|
|
209
212
|
json: items[i].json,
|
|
210
|
-
error:
|
|
211
|
-
? error
|
|
212
|
-
: new n8n_workflow_1.NodeOperationError(this.getNode(), error, { itemIndex: i }),
|
|
213
|
+
error: nodeError,
|
|
213
214
|
pairedItem: { item: i },
|
|
214
215
|
});
|
|
215
216
|
continue;
|
|
216
217
|
}
|
|
217
|
-
throw
|
|
218
|
+
throw nodeError;
|
|
218
219
|
}
|
|
219
220
|
}
|
|
220
221
|
return [returnData];
|
|
@@ -7,7 +7,7 @@ exports.aiProperties = [
|
|
|
7
7
|
name: 'operation',
|
|
8
8
|
type: 'options',
|
|
9
9
|
noDataExpression: true,
|
|
10
|
-
default: '
|
|
10
|
+
default: 'agentChat',
|
|
11
11
|
displayOptions: { show: { resource: ['ai'] } },
|
|
12
12
|
options: [
|
|
13
13
|
{
|
|
@@ -16,6 +16,12 @@ exports.aiProperties = [
|
|
|
16
16
|
description: 'Send a message to an AI agent and get the response',
|
|
17
17
|
action: 'Send message to AI agent',
|
|
18
18
|
},
|
|
19
|
+
{
|
|
20
|
+
name: 'Concierge Chat',
|
|
21
|
+
value: 'conciergeChat',
|
|
22
|
+
description: 'Send a message to the global AI Concierge agent and get the response',
|
|
23
|
+
action: 'Send message to AI concierge',
|
|
24
|
+
},
|
|
19
25
|
{
|
|
20
26
|
name: 'Get Agent Actions',
|
|
21
27
|
value: 'getAgentActions',
|
|
@@ -28,12 +34,6 @@ exports.aiProperties = [
|
|
|
28
34
|
description: 'List all enabled AI agents',
|
|
29
35
|
action: 'List AI agents',
|
|
30
36
|
},
|
|
31
|
-
{
|
|
32
|
-
name: 'RAG Chat',
|
|
33
|
-
value: 'ragChat',
|
|
34
|
-
description: 'Ask a question using the AI RAG chat endpoint',
|
|
35
|
-
action: 'Ask AI question',
|
|
36
|
-
},
|
|
37
37
|
],
|
|
38
38
|
},
|
|
39
39
|
{
|
|
@@ -54,7 +54,7 @@ exports.aiProperties = [
|
|
|
54
54
|
required: true,
|
|
55
55
|
default: '',
|
|
56
56
|
description: 'The user ID of the member sending the message. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
|
|
57
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
57
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
58
58
|
},
|
|
59
59
|
{
|
|
60
60
|
displayName: 'Message',
|
|
@@ -62,7 +62,7 @@ exports.aiProperties = [
|
|
|
62
62
|
type: 'string',
|
|
63
63
|
default: '',
|
|
64
64
|
description: 'The message you want to send to the AI agent',
|
|
65
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
65
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
66
66
|
},
|
|
67
67
|
{
|
|
68
68
|
displayName: 'Chat ID',
|
|
@@ -70,7 +70,7 @@ exports.aiProperties = [
|
|
|
70
70
|
type: 'string',
|
|
71
71
|
default: '',
|
|
72
72
|
description: 'The chat/conversation you want to send the message to. Leave empty to start a new chat.',
|
|
73
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
73
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
74
74
|
},
|
|
75
75
|
{
|
|
76
76
|
displayName: 'Include Chat History',
|
|
@@ -78,7 +78,7 @@ exports.aiProperties = [
|
|
|
78
78
|
type: 'boolean',
|
|
79
79
|
default: false,
|
|
80
80
|
description: 'Whether to return the full chat history in the response. Otherwise, only the latest agent response is returned.',
|
|
81
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
81
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
84
|
displayName: 'End Chat',
|
|
@@ -86,7 +86,7 @@ exports.aiProperties = [
|
|
|
86
86
|
type: 'boolean',
|
|
87
87
|
default: false,
|
|
88
88
|
description: 'Whether to end the chat after this message. The agent will not generate a response. Useful when filling out a form is complete.',
|
|
89
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
89
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
90
90
|
},
|
|
91
91
|
{
|
|
92
92
|
displayName: 'Metadata',
|
|
@@ -94,134 +94,14 @@ exports.aiProperties = [
|
|
|
94
94
|
type: 'json',
|
|
95
95
|
default: '{}',
|
|
96
96
|
description: 'If a previous agent response included metadata, it should be included in the next request. Provide as JSON object.',
|
|
97
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
97
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
98
98
|
},
|
|
99
99
|
{
|
|
100
100
|
displayName: 'Profile Context',
|
|
101
101
|
name: 'profileContext',
|
|
102
102
|
type: 'json',
|
|
103
103
|
default: '{}',
|
|
104
|
-
description: 'Optional profile context to use when interacting with custom field (forms). Only used if the agent config supports it.
|
|
105
|
-
displayOptions: { show: { resource: ['ai'], operation: ['agentChat'] } },
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
displayName: 'Question',
|
|
109
|
-
name: 'question',
|
|
110
|
-
type: 'string',
|
|
111
|
-
required: true,
|
|
112
|
-
default: '',
|
|
113
|
-
description: 'The question to ask the AI',
|
|
114
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
displayName: 'User Name or ID',
|
|
118
|
-
name: 'userId',
|
|
119
|
-
type: 'options',
|
|
120
|
-
typeOptions: { loadOptionsMethod: 'member_getMembers' },
|
|
121
|
-
default: '',
|
|
122
|
-
description: 'The ID of the user making the request. Used to personalize and scope the AI response. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
|
|
123
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
displayName: 'Conversation ID',
|
|
127
|
-
name: 'conversationId',
|
|
128
|
-
type: 'string',
|
|
129
|
-
default: '',
|
|
130
|
-
description: 'If set, the conversation history with this ID will be taken into account',
|
|
131
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
displayName: 'Answer Length',
|
|
135
|
-
name: 'answerLength',
|
|
136
|
-
type: 'options',
|
|
137
|
-
default: 'standard',
|
|
138
|
-
description: 'The desired length of the AI’s answer',
|
|
139
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
140
|
-
options: [
|
|
141
|
-
{
|
|
142
|
-
name: 'Concise',
|
|
143
|
-
value: 'concise',
|
|
144
|
-
description: 'A short and to-the-point answer',
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
name: 'Standard',
|
|
148
|
-
value: 'standard',
|
|
149
|
-
description: 'A balanced answer with sufficient detail',
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
name: 'Detailed',
|
|
153
|
-
value: 'detailed',
|
|
154
|
-
description: 'A comprehensive and detailed answer',
|
|
155
|
-
},
|
|
156
|
-
],
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
displayName: 'Tone',
|
|
160
|
-
name: 'tone',
|
|
161
|
-
type: 'options',
|
|
162
|
-
default: 'neutral',
|
|
163
|
-
description: 'The desired tone of the AI’s answer',
|
|
164
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
165
|
-
options: [
|
|
166
|
-
{
|
|
167
|
-
name: 'Friendly',
|
|
168
|
-
value: 'friendly',
|
|
169
|
-
description: 'A warm and approachable tone',
|
|
170
|
-
},
|
|
171
|
-
{
|
|
172
|
-
name: 'Neutral',
|
|
173
|
-
value: 'neutral',
|
|
174
|
-
description: 'A neutral and factual tone',
|
|
175
|
-
},
|
|
176
|
-
{
|
|
177
|
-
name: 'Professional',
|
|
178
|
-
value: 'professional',
|
|
179
|
-
description: 'A formal and professional tone',
|
|
180
|
-
},
|
|
181
|
-
],
|
|
182
|
-
},
|
|
183
|
-
{
|
|
184
|
-
displayName: 'Format',
|
|
185
|
-
name: 'format',
|
|
186
|
-
type: 'options',
|
|
187
|
-
default: 'markdown',
|
|
188
|
-
description: 'The desired output format of the AI’s answer',
|
|
189
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
190
|
-
options: [
|
|
191
|
-
{
|
|
192
|
-
name: 'Markdown',
|
|
193
|
-
value: 'markdown',
|
|
194
|
-
description: 'Formatted output using Markdown',
|
|
195
|
-
},
|
|
196
|
-
{
|
|
197
|
-
name: 'Plain Text',
|
|
198
|
-
value: 'plaintext',
|
|
199
|
-
description: 'Unformatted plain text output',
|
|
200
|
-
},
|
|
201
|
-
],
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
displayName: 'Add Citations',
|
|
205
|
-
name: 'addCitations',
|
|
206
|
-
type: 'boolean',
|
|
207
|
-
default: false,
|
|
208
|
-
description: 'Whether the AI will add citations to its answer',
|
|
209
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
210
|
-
},
|
|
211
|
-
{
|
|
212
|
-
displayName: 'Unlock Content Drip',
|
|
213
|
-
name: 'unlockContentDrip',
|
|
214
|
-
type: 'boolean',
|
|
215
|
-
default: false,
|
|
216
|
-
description: 'Whether the AI will have access to content that is normally restricted by content drip settings',
|
|
217
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
displayName: 'System Prompt Addition',
|
|
221
|
-
name: 'systemPromptAddition',
|
|
222
|
-
type: 'string',
|
|
223
|
-
default: '',
|
|
224
|
-
description: 'Additional system prompt instructions to guide the AI’s behavior',
|
|
225
|
-
displayOptions: { show: { resource: ['ai'], operation: ['ragChat'] } },
|
|
104
|
+
description: 'Optional profile context to use when interacting with custom field (forms). Only used if the agent config supports it. Leave as {} to omit. Expected structure: { "selectedProfileIdByCard": { "cardId": "profileId or null" } } - keys are custom field card IDs, values are profile IDs or null for the default profile.',
|
|
105
|
+
displayOptions: { show: { resource: ['ai'], operation: ['agentChat', 'conciergeChat'] } },
|
|
226
106
|
},
|
|
227
107
|
];
|
|
@@ -13,24 +13,49 @@ function parseJsonObjectParam(ctx, i, name) {
|
|
|
13
13
|
const raw = ctx.getNodeParameter(name, i, '');
|
|
14
14
|
if (raw === undefined || raw === null || raw === '')
|
|
15
15
|
return undefined;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
16
|
+
let parsed = raw;
|
|
17
|
+
if (typeof raw !== 'object') {
|
|
18
|
+
try {
|
|
19
|
+
parsed = JSON.parse(raw);
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
throw new n8n_workflow_1.NodeOperationError(ctx.getNode(), `Invalid JSON in "${name}": ${String(err)}`);
|
|
23
|
+
}
|
|
24
24
|
}
|
|
25
25
|
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
26
26
|
throw new n8n_workflow_1.NodeOperationError(ctx.getNode(), `"${name}" must be a JSON object`);
|
|
27
27
|
}
|
|
28
|
+
// The "{}" placeholder means "not set" - sending it would fail the API's schema validation
|
|
29
|
+
if (Object.keys(parsed).length === 0)
|
|
30
|
+
return undefined;
|
|
28
31
|
return parsed;
|
|
29
32
|
}
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
const PROFILE_CONTEXT_EXAMPLE = '{ "selectedProfileIdByCard": { "<cardId>": "<profileId or null>" } }';
|
|
34
|
+
/** Reads and validates the optional profile context, which the API only accepts fully formed. */
|
|
35
|
+
function buildProfileContext(ctx, i) {
|
|
36
|
+
const profileContext = parseJsonObjectParam(ctx, i, 'profileContext');
|
|
37
|
+
if (!profileContext)
|
|
38
|
+
return undefined;
|
|
39
|
+
const selection = profileContext.selectedProfileIdByCard;
|
|
40
|
+
if (!selection || typeof selection !== 'object' || Array.isArray(selection)) {
|
|
41
|
+
throw new n8n_workflow_1.NodeOperationError(ctx.getNode(), '"Profile Context" must contain a "selectedProfileIdByCard" object', {
|
|
42
|
+
itemIndex: i,
|
|
43
|
+
description: `Expected structure: ${PROFILE_CONTEXT_EXAMPLE}. Keys are custom field card IDs, values are profile IDs (or null for the default profile).`,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
const invalid = Object.entries(selection)
|
|
47
|
+
.filter(([, v]) => v !== null && typeof v !== 'string')
|
|
48
|
+
.map(([k]) => k);
|
|
49
|
+
if (invalid.length) {
|
|
50
|
+
throw new n8n_workflow_1.NodeOperationError(ctx.getNode(), `"Profile Context" contains invalid profile IDs for the following cards: ${invalid.join(', ')}`, {
|
|
51
|
+
itemIndex: i,
|
|
52
|
+
description: `Each value must be a profile ID string or null (= default profile). Expected structure: ${PROFILE_CONTEXT_EXAMPLE}.`,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return profileContext;
|
|
56
|
+
}
|
|
57
|
+
/** Builds the chat request body shared by the agent and concierge chat endpoints. */
|
|
58
|
+
function buildChatBody(ctx, i) {
|
|
34
59
|
const body = {
|
|
35
60
|
userId: ctx.getNodeParameter('userId', i),
|
|
36
61
|
chatId: ctx.getNodeParameter('chatId', i, undefined),
|
|
@@ -38,30 +63,25 @@ const agentChat = async (ctx, i) => {
|
|
|
38
63
|
includeChatHistory: ctx.getNodeParameter('includeChatHistory', i, false),
|
|
39
64
|
endChat: ctx.getNodeParameter('endChat', i, false),
|
|
40
65
|
metadata: parseJsonObjectParam(ctx, i, 'metadata'),
|
|
41
|
-
profileContext:
|
|
42
|
-
};
|
|
43
|
-
const cleanBody = Object.fromEntries(Object.entries(body).filter(([, v]) => v !== undefined && v !== ''));
|
|
44
|
-
return await shared_1.lsRequest.call(ctx, 'POST', `/ai-agents/${encodeURIComponent(agentId)}/chat`, { body: cleanBody });
|
|
45
|
-
};
|
|
46
|
-
const ragChat = async (ctx, i) => {
|
|
47
|
-
const body = {
|
|
48
|
-
question: ctx.getNodeParameter('question', i),
|
|
49
|
-
userId: ctx.getNodeParameter('userId', i, undefined),
|
|
50
|
-
conversationId: ctx.getNodeParameter('conversationId', i, undefined),
|
|
51
|
-
addCitations: ctx.getNodeParameter('addCitations', i, false),
|
|
52
|
-
systemPromptAddition: ctx.getNodeParameter('systemPromptAddition', i, undefined),
|
|
53
|
-
answerLength: ctx.getNodeParameter('answerLength', i, 'standard'),
|
|
54
|
-
tone: ctx.getNodeParameter('tone', i, 'neutral'),
|
|
55
|
-
format: ctx.getNodeParameter('format', i, 'markdown'),
|
|
56
|
-
unlockContentDrip: ctx.getNodeParameter('unlockContentDrip', i, false),
|
|
66
|
+
profileContext: buildProfileContext(ctx, i),
|
|
57
67
|
};
|
|
58
68
|
// Remove keys with undefined or empty string values so optional params are not sent as empty
|
|
59
|
-
|
|
60
|
-
|
|
69
|
+
return Object.fromEntries(Object.entries(body).filter(([, v]) => v !== undefined && v !== ''));
|
|
70
|
+
}
|
|
71
|
+
const agentChat = async (ctx, i) => {
|
|
72
|
+
const agentId = ctx.getNodeParameter('agentId', i);
|
|
73
|
+
if (!agentId)
|
|
74
|
+
throw new n8n_workflow_1.NodeOperationError(ctx.getNode(), 'AI Agent is required');
|
|
75
|
+
return await shared_1.lsRequest.call(ctx, 'POST', `/ai-agents/${encodeURIComponent(agentId)}/chat`, {
|
|
76
|
+
body: buildChatBody(ctx, i),
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
const conciergeChat = async (ctx, i) => {
|
|
80
|
+
return await shared_1.lsRequest.call(ctx, 'POST', '/ai-agents/concierge/chat', { body: buildChatBody(ctx, i) });
|
|
61
81
|
};
|
|
62
82
|
exports.aiHandlers = {
|
|
63
83
|
agentChat,
|
|
84
|
+
conciergeChat,
|
|
64
85
|
getAgentActions,
|
|
65
86
|
getAiAgents,
|
|
66
|
-
ragChat,
|
|
67
87
|
};
|
|
@@ -41,9 +41,9 @@ async function requestCore({ method, endpoint, qs, body, }) {
|
|
|
41
41
|
return await this.helpers.httpRequestWithAuthentication.call(this, 'learningSuiteApi', options);
|
|
42
42
|
}
|
|
43
43
|
catch (error) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
throw error instanceof n8n_workflow_1.NodeApiError
|
|
45
|
+
? error
|
|
46
|
+
: new n8n_workflow_1.NodeApiError(this.getNode(), error);
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
async function lsRequest(method, endpoint, { qs, body } = {}) {
|
|
@@ -158,7 +158,6 @@ class LearningSuitePollingTrigger {
|
|
|
158
158
|
},
|
|
159
159
|
inputs: [],
|
|
160
160
|
outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
161
|
-
usableAsTool: true,
|
|
162
161
|
credentials: [{ name: 'learningSuiteApi', required: true }],
|
|
163
162
|
properties: trigger_polling_properties_1.properties,
|
|
164
163
|
};
|
package/package.json
CHANGED
|
@@ -1,74 +1,75 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
2
|
+
"name": "@rjsebening/n8n-nodes-learningsuite",
|
|
3
|
+
"version": "1.4.1",
|
|
4
|
+
"description": "n8n node for LearningSuite API",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"n8n-community-node-package",
|
|
7
|
+
"learningsuite",
|
|
8
|
+
"learningsuite.io",
|
|
9
|
+
"learning",
|
|
10
|
+
"education",
|
|
11
|
+
"courses"
|
|
12
|
+
],
|
|
13
|
+
"license": "MIT",
|
|
14
|
+
"homepage": "https://github.com/rjsebening/n8n-nodes-learningsuite#readme",
|
|
15
|
+
"author": {
|
|
16
|
+
"name": "Jörg Sebening",
|
|
17
|
+
"email": "dev@joerg-sebening.com"
|
|
18
|
+
},
|
|
19
|
+
"repository": {
|
|
20
|
+
"type": "git",
|
|
21
|
+
"url": "https://github.com/rjsebening/n8n-nodes-learningsuite.git"
|
|
22
|
+
},
|
|
23
|
+
"bugs": {
|
|
24
|
+
"url": "https://github.com/rjsebening/n8n-nodes-learningsuite/issues"
|
|
25
|
+
},
|
|
26
|
+
"main": "index.js",
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "npx rimraf dist && tsc && gulp build:icons",
|
|
29
|
+
"dev": "tsc --watch",
|
|
30
|
+
"format": "prettier nodes credentials --write",
|
|
31
|
+
"lint": "eslint nodes credentials package.json",
|
|
32
|
+
"lintfix": "eslint nodes credentials package.json --fix",
|
|
33
|
+
"lint:node": "n8n-node lint",
|
|
34
|
+
"lint:all": "npm run lint && npm run lint:node",
|
|
35
|
+
"lint:scan": "node scripts/scan-local.mjs",
|
|
36
|
+
"release": "n8n-node release",
|
|
37
|
+
"prepublishOnly": "n8n-node prerelease"
|
|
38
|
+
},
|
|
39
|
+
"files": [
|
|
40
|
+
"dist",
|
|
41
|
+
"README.md",
|
|
42
|
+
"LICENSE"
|
|
43
|
+
],
|
|
44
|
+
"n8n": {
|
|
45
|
+
"n8nNodesApiVersion": 1,
|
|
46
|
+
"strict": true,
|
|
47
|
+
"credentials": [
|
|
48
|
+
"dist/credentials/LearningSuiteApi.credentials.js"
|
|
49
|
+
],
|
|
50
|
+
"nodes": [
|
|
51
|
+
"dist/nodes/LearningSuite/LearningSuite.node.js",
|
|
52
|
+
"dist/nodes/LearningSuite/LearningSuiteTrigger.node.js",
|
|
53
|
+
"dist/nodes/LearningSuitePollingTrigger/LearningSuitePollingTrigger.node.js"
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@n8n/node-cli": "^0.43.2",
|
|
58
|
+
"@typescript-eslint/parser": "^8.52.0",
|
|
59
|
+
"eslint": "^9.39.4",
|
|
60
|
+
"eslint-plugin-n8n-nodes-base": "^1.16.3",
|
|
61
|
+
"gulp": "^5.0.0",
|
|
62
|
+
"gulp-cli": "^3.1.0",
|
|
63
|
+
"package-json-from-dist": "^1.0.1",
|
|
64
|
+
"prettier": "^3.8.1",
|
|
65
|
+
"release-it": "^19.2.4",
|
|
66
|
+
"rimraf": "^6.0.1",
|
|
67
|
+
"typescript": "^5.9.3"
|
|
68
|
+
},
|
|
69
|
+
"peerDependencies": {
|
|
70
|
+
"n8n-workflow": "*"
|
|
71
|
+
},
|
|
72
|
+
"publishConfig": {
|
|
73
|
+
"access": "public"
|
|
74
|
+
}
|
|
74
75
|
}
|
|
File without changes
|