@nodetool-ai/base-nodes 0.7.0-rc.23 → 0.8.2

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 (367) hide show
  1. package/README.md +21 -0
  2. package/dist/.nodetool-build-stamp +1 -0
  3. package/dist/builtin-packs.d.ts +17 -0
  4. package/dist/builtin-packs.d.ts.map +1 -0
  5. package/dist/builtin-packs.js +95 -0
  6. package/dist/builtin-packs.js.map +1 -0
  7. package/dist/index.d.ts +63 -67
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +186 -173
  10. package/dist/index.js.map +1 -1
  11. package/dist/platforms/browser.d.ts +19 -0
  12. package/dist/platforms/browser.d.ts.map +1 -0
  13. package/dist/platforms/browser.js +29 -0
  14. package/dist/platforms/browser.js.map +1 -0
  15. package/package.json +72 -65
  16. package/dist/lib/audio-wav.d.ts +0 -66
  17. package/dist/lib/audio-wav.d.ts.map +0 -1
  18. package/dist/lib/audio-wav.js +0 -215
  19. package/dist/lib/audio-wav.js.map +0 -1
  20. package/dist/nodes/agent-tool-hydration.d.ts +0 -10
  21. package/dist/nodes/agent-tool-hydration.d.ts.map +0 -1
  22. package/dist/nodes/agent-tool-hydration.js +0 -43
  23. package/dist/nodes/agent-tool-hydration.js.map +0 -1
  24. package/dist/nodes/agents.d.ts +0 -262
  25. package/dist/nodes/agents.d.ts.map +0 -1
  26. package/dist/nodes/agents.js +0 -2856
  27. package/dist/nodes/agents.js.map +0 -1
  28. package/dist/nodes/anthropic.d.ts +0 -26
  29. package/dist/nodes/anthropic.d.ts.map +0 -1
  30. package/dist/nodes/anthropic.js +0 -133
  31. package/dist/nodes/anthropic.js.map +0 -1
  32. package/dist/nodes/apify.d.ts +0 -120
  33. package/dist/nodes/apify.d.ts.map +0 -1
  34. package/dist/nodes/apify.js +0 -618
  35. package/dist/nodes/apify.js.map +0 -1
  36. package/dist/nodes/audio.d.ts +0 -301
  37. package/dist/nodes/audio.d.ts.map +0 -1
  38. package/dist/nodes/audio.js +0 -1274
  39. package/dist/nodes/audio.js.map +0 -1
  40. package/dist/nodes/code-node.d.ts +0 -34
  41. package/dist/nodes/code-node.d.ts.map +0 -1
  42. package/dist/nodes/code-node.js +0 -343
  43. package/dist/nodes/code-node.js.map +0 -1
  44. package/dist/nodes/code.d.ts +0 -301
  45. package/dist/nodes/code.d.ts.map +0 -1
  46. package/dist/nodes/code.js +0 -850
  47. package/dist/nodes/code.js.map +0 -1
  48. package/dist/nodes/compare.d.ts +0 -18
  49. package/dist/nodes/compare.d.ts.map +0 -1
  50. package/dist/nodes/compare.js +0 -122
  51. package/dist/nodes/compare.js.map +0 -1
  52. package/dist/nodes/constant.d.ts +0 -315
  53. package/dist/nodes/constant.d.ts.map +0 -1
  54. package/dist/nodes/constant.js +0 -715
  55. package/dist/nodes/constant.js.map +0 -1
  56. package/dist/nodes/control.d.ts +0 -83
  57. package/dist/nodes/control.d.ts.map +0 -1
  58. package/dist/nodes/control.js +0 -212
  59. package/dist/nodes/control.js.map +0 -1
  60. package/dist/nodes/data.d.ts +0 -369
  61. package/dist/nodes/data.d.ts.map +0 -1
  62. package/dist/nodes/data.js +0 -1590
  63. package/dist/nodes/data.js.map +0 -1
  64. package/dist/nodes/document.d.ts +0 -134
  65. package/dist/nodes/document.d.ts.map +0 -1
  66. package/dist/nodes/document.js +0 -984
  67. package/dist/nodes/document.js.map +0 -1
  68. package/dist/nodes/extended-placeholders.d.ts +0 -6
  69. package/dist/nodes/extended-placeholders.d.ts.map +0 -1
  70. package/dist/nodes/extended-placeholders.js +0 -19
  71. package/dist/nodes/extended-placeholders.js.map +0 -1
  72. package/dist/nodes/gemini.d.ts +0 -110
  73. package/dist/nodes/gemini.d.ts.map +0 -1
  74. package/dist/nodes/gemini.js +0 -871
  75. package/dist/nodes/gemini.js.map +0 -1
  76. package/dist/nodes/generators.d.ts +0 -84
  77. package/dist/nodes/generators.d.ts.map +0 -1
  78. package/dist/nodes/generators.js +0 -968
  79. package/dist/nodes/generators.js.map +0 -1
  80. package/dist/nodes/image.d.ts +0 -232
  81. package/dist/nodes/image.d.ts.map +0 -1
  82. package/dist/nodes/image.js +0 -1395
  83. package/dist/nodes/image.js.map +0 -1
  84. package/dist/nodes/input.d.ts +0 -445
  85. package/dist/nodes/input.d.ts.map +0 -1
  86. package/dist/nodes/input.js +0 -1459
  87. package/dist/nodes/input.js.map +0 -1
  88. package/dist/nodes/kie-dynamic.d.ts +0 -31
  89. package/dist/nodes/kie-dynamic.d.ts.map +0 -1
  90. package/dist/nodes/kie-dynamic.js +0 -270
  91. package/dist/nodes/kie-dynamic.js.map +0 -1
  92. package/dist/nodes/lib-audio-dsp.d.ts +0 -85
  93. package/dist/nodes/lib-audio-dsp.d.ts.map +0 -1
  94. package/dist/nodes/lib-audio-dsp.js +0 -450
  95. package/dist/nodes/lib-audio-dsp.js.map +0 -1
  96. package/dist/nodes/lib-audio-effects.d.ts +0 -116
  97. package/dist/nodes/lib-audio-effects.d.ts.map +0 -1
  98. package/dist/nodes/lib-audio-effects.js +0 -905
  99. package/dist/nodes/lib-audio-effects.js.map +0 -1
  100. package/dist/nodes/lib-browser.d.ts +0 -99
  101. package/dist/nodes/lib-browser.d.ts.map +0 -1
  102. package/dist/nodes/lib-browser.js +0 -692
  103. package/dist/nodes/lib-browser.js.map +0 -1
  104. package/dist/nodes/lib-charts.d.ts +0 -20
  105. package/dist/nodes/lib-charts.d.ts.map +0 -1
  106. package/dist/nodes/lib-charts.js +0 -245
  107. package/dist/nodes/lib-charts.js.map +0 -1
  108. package/dist/nodes/lib-datetime.d.ts +0 -108
  109. package/dist/nodes/lib-datetime.d.ts.map +0 -1
  110. package/dist/nodes/lib-datetime.js +0 -421
  111. package/dist/nodes/lib-datetime.js.map +0 -1
  112. package/dist/nodes/lib-doc-convert.d.ts +0 -19
  113. package/dist/nodes/lib-doc-convert.d.ts.map +0 -1
  114. package/dist/nodes/lib-doc-convert.js +0 -257
  115. package/dist/nodes/lib-doc-convert.js.map +0 -1
  116. package/dist/nodes/lib-doc-transform.d.ts +0 -39
  117. package/dist/nodes/lib-doc-transform.d.ts.map +0 -1
  118. package/dist/nodes/lib-doc-transform.js +0 -335
  119. package/dist/nodes/lib-doc-transform.js.map +0 -1
  120. package/dist/nodes/lib-docx.d.ts +0 -106
  121. package/dist/nodes/lib-docx.d.ts.map +0 -1
  122. package/dist/nodes/lib-docx.js +0 -595
  123. package/dist/nodes/lib-docx.js.map +0 -1
  124. package/dist/nodes/lib-epub.d.ts +0 -55
  125. package/dist/nodes/lib-epub.d.ts.map +0 -1
  126. package/dist/nodes/lib-epub.js +0 -220
  127. package/dist/nodes/lib-epub.js.map +0 -1
  128. package/dist/nodes/lib-excel.d.ts +0 -74
  129. package/dist/nodes/lib-excel.d.ts.map +0 -1
  130. package/dist/nodes/lib-excel.js +0 -448
  131. package/dist/nodes/lib-excel.js.map +0 -1
  132. package/dist/nodes/lib-graphql.d.ts +0 -66
  133. package/dist/nodes/lib-graphql.d.ts.map +0 -1
  134. package/dist/nodes/lib-graphql.js +0 -333
  135. package/dist/nodes/lib-graphql.js.map +0 -1
  136. package/dist/nodes/lib-grid.d.ts +0 -27
  137. package/dist/nodes/lib-grid.d.ts.map +0 -1
  138. package/dist/nodes/lib-grid.js +0 -172
  139. package/dist/nodes/lib-grid.js.map +0 -1
  140. package/dist/nodes/lib-html-parse.d.ts +0 -108
  141. package/dist/nodes/lib-html-parse.d.ts.map +0 -1
  142. package/dist/nodes/lib-html-parse.js +0 -365
  143. package/dist/nodes/lib-html-parse.js.map +0 -1
  144. package/dist/nodes/lib-http.d.ts +0 -98
  145. package/dist/nodes/lib-http.d.ts.map +0 -1
  146. package/dist/nodes/lib-http.js +0 -267
  147. package/dist/nodes/lib-http.js.map +0 -1
  148. package/dist/nodes/lib-image-color-grading.d.ts +0 -3
  149. package/dist/nodes/lib-image-color-grading.d.ts.map +0 -1
  150. package/dist/nodes/lib-image-color-grading.js +0 -1386
  151. package/dist/nodes/lib-image-color-grading.js.map +0 -1
  152. package/dist/nodes/lib-image-draw.d.ts +0 -3
  153. package/dist/nodes/lib-image-draw.d.ts.map +0 -1
  154. package/dist/nodes/lib-image-draw.js +0 -470
  155. package/dist/nodes/lib-image-draw.js.map +0 -1
  156. package/dist/nodes/lib-image-enhance.d.ts +0 -3
  157. package/dist/nodes/lib-image-enhance.d.ts.map +0 -1
  158. package/dist/nodes/lib-image-enhance.js +0 -731
  159. package/dist/nodes/lib-image-enhance.js.map +0 -1
  160. package/dist/nodes/lib-image-filter.d.ts +0 -3
  161. package/dist/nodes/lib-image-filter.d.ts.map +0 -1
  162. package/dist/nodes/lib-image-filter.js +0 -684
  163. package/dist/nodes/lib-image-filter.js.map +0 -1
  164. package/dist/nodes/lib-image-utils.d.ts +0 -24
  165. package/dist/nodes/lib-image-utils.d.ts.map +0 -1
  166. package/dist/nodes/lib-image-utils.js +0 -150
  167. package/dist/nodes/lib-image-utils.js.map +0 -1
  168. package/dist/nodes/lib-mail.d.ts +0 -74
  169. package/dist/nodes/lib-mail.d.ts.map +0 -1
  170. package/dist/nodes/lib-mail.js +0 -452
  171. package/dist/nodes/lib-mail.js.map +0 -1
  172. package/dist/nodes/lib-markdown.d.ts +0 -70
  173. package/dist/nodes/lib-markdown.d.ts.map +0 -1
  174. package/dist/nodes/lib-markdown.js +0 -236
  175. package/dist/nodes/lib-markdown.js.map +0 -1
  176. package/dist/nodes/lib-nlp.d.ts +0 -98
  177. package/dist/nodes/lib-nlp.d.ts.map +0 -1
  178. package/dist/nodes/lib-nlp.js +0 -374
  179. package/dist/nodes/lib-nlp.js.map +0 -1
  180. package/dist/nodes/lib-notion.d.ts +0 -99
  181. package/dist/nodes/lib-notion.d.ts.map +0 -1
  182. package/dist/nodes/lib-notion.js +0 -601
  183. package/dist/nodes/lib-notion.js.map +0 -1
  184. package/dist/nodes/lib-ocr.d.ts +0 -31
  185. package/dist/nodes/lib-ocr.d.ts.map +0 -1
  186. package/dist/nodes/lib-ocr.js +0 -143
  187. package/dist/nodes/lib-ocr.js.map +0 -1
  188. package/dist/nodes/lib-os.d.ts +0 -312
  189. package/dist/nodes/lib-os.d.ts.map +0 -1
  190. package/dist/nodes/lib-os.js +0 -909
  191. package/dist/nodes/lib-os.js.map +0 -1
  192. package/dist/nodes/lib-pdf.d.ts +0 -142
  193. package/dist/nodes/lib-pdf.d.ts.map +0 -1
  194. package/dist/nodes/lib-pdf.js +0 -871
  195. package/dist/nodes/lib-pdf.js.map +0 -1
  196. package/dist/nodes/lib-pptx.d.ts +0 -29
  197. package/dist/nodes/lib-pptx.d.ts.map +0 -1
  198. package/dist/nodes/lib-pptx.js +0 -122
  199. package/dist/nodes/lib-pptx.js.map +0 -1
  200. package/dist/nodes/lib-rss.d.ts +0 -31
  201. package/dist/nodes/lib-rss.d.ts.map +0 -1
  202. package/dist/nodes/lib-rss.js +0 -163
  203. package/dist/nodes/lib-rss.js.map +0 -1
  204. package/dist/nodes/lib-s3.d.ts +0 -112
  205. package/dist/nodes/lib-s3.d.ts.map +0 -1
  206. package/dist/nodes/lib-s3.js +0 -521
  207. package/dist/nodes/lib-s3.js.map +0 -1
  208. package/dist/nodes/lib-secret.d.ts +0 -15
  209. package/dist/nodes/lib-secret.d.ts.map +0 -1
  210. package/dist/nodes/lib-secret.js +0 -42
  211. package/dist/nodes/lib-secret.js.map +0 -1
  212. package/dist/nodes/lib-sqlite.d.ts +0 -102
  213. package/dist/nodes/lib-sqlite.d.ts.map +0 -1
  214. package/dist/nodes/lib-sqlite.js +0 -532
  215. package/dist/nodes/lib-sqlite.js.map +0 -1
  216. package/dist/nodes/lib-supabase.d.ts +0 -86
  217. package/dist/nodes/lib-supabase.d.ts.map +0 -1
  218. package/dist/nodes/lib-supabase.js +0 -425
  219. package/dist/nodes/lib-supabase.js.map +0 -1
  220. package/dist/nodes/lib-svg.d.ts +0 -199
  221. package/dist/nodes/lib-svg.d.ts.map +0 -1
  222. package/dist/nodes/lib-svg.js +0 -1027
  223. package/dist/nodes/lib-svg.js.map +0 -1
  224. package/dist/nodes/lib-tensorflow.d.ts +0 -71
  225. package/dist/nodes/lib-tensorflow.d.ts.map +0 -1
  226. package/dist/nodes/lib-tensorflow.js +0 -351
  227. package/dist/nodes/lib-tensorflow.js.map +0 -1
  228. package/dist/nodes/lib-twilio.d.ts +0 -71
  229. package/dist/nodes/lib-twilio.d.ts.map +0 -1
  230. package/dist/nodes/lib-twilio.js +0 -469
  231. package/dist/nodes/lib-twilio.js.map +0 -1
  232. package/dist/nodes/lib-validate.d.ts +0 -84
  233. package/dist/nodes/lib-validate.d.ts.map +0 -1
  234. package/dist/nodes/lib-validate.js +0 -215
  235. package/dist/nodes/lib-validate.js.map +0 -1
  236. package/dist/nodes/lib-video-download.d.ts +0 -26
  237. package/dist/nodes/lib-video-download.d.ts.map +0 -1
  238. package/dist/nodes/lib-video-download.js +0 -299
  239. package/dist/nodes/lib-video-download.js.map +0 -1
  240. package/dist/nodes/messaging.d.ts +0 -88
  241. package/dist/nodes/messaging.d.ts.map +0 -1
  242. package/dist/nodes/messaging.js +0 -418
  243. package/dist/nodes/messaging.js.map +0 -1
  244. package/dist/nodes/mistral.d.ts +0 -83
  245. package/dist/nodes/mistral.d.ts.map +0 -1
  246. package/dist/nodes/mistral.js +0 -450
  247. package/dist/nodes/mistral.js.map +0 -1
  248. package/dist/nodes/model3d/analysis.d.ts +0 -13
  249. package/dist/nodes/model3d/analysis.d.ts.map +0 -1
  250. package/dist/nodes/model3d/analysis.js +0 -36
  251. package/dist/nodes/model3d/analysis.js.map +0 -1
  252. package/dist/nodes/model3d/base.d.ts +0 -11
  253. package/dist/nodes/model3d/base.d.ts.map +0 -1
  254. package/dist/nodes/model3d/base.js +0 -20
  255. package/dist/nodes/model3d/base.js.map +0 -1
  256. package/dist/nodes/model3d/boolean-ops.d.ts +0 -2
  257. package/dist/nodes/model3d/boolean-ops.d.ts.map +0 -1
  258. package/dist/nodes/model3d/boolean-ops.js +0 -172
  259. package/dist/nodes/model3d/boolean-ops.js.map +0 -1
  260. package/dist/nodes/model3d/cleanup.d.ts +0 -47
  261. package/dist/nodes/model3d/cleanup.d.ts.map +0 -1
  262. package/dist/nodes/model3d/cleanup.js +0 -136
  263. package/dist/nodes/model3d/cleanup.js.map +0 -1
  264. package/dist/nodes/model3d/convert.d.ts +0 -14
  265. package/dist/nodes/model3d/convert.d.ts.map +0 -1
  266. package/dist/nodes/model3d/convert.js +0 -64
  267. package/dist/nodes/model3d/convert.js.map +0 -1
  268. package/dist/nodes/model3d/defaults.d.ts +0 -34
  269. package/dist/nodes/model3d/defaults.d.ts.map +0 -1
  270. package/dist/nodes/model3d/defaults.js +0 -28
  271. package/dist/nodes/model3d/defaults.js.map +0 -1
  272. package/dist/nodes/model3d/document-ops.d.ts +0 -4
  273. package/dist/nodes/model3d/document-ops.d.ts.map +0 -1
  274. package/dist/nodes/model3d/document-ops.js +0 -40
  275. package/dist/nodes/model3d/document-ops.js.map +0 -1
  276. package/dist/nodes/model3d/generation.d.ts +0 -39
  277. package/dist/nodes/model3d/generation.d.ts.map +0 -1
  278. package/dist/nodes/model3d/generation.js +0 -179
  279. package/dist/nodes/model3d/generation.js.map +0 -1
  280. package/dist/nodes/model3d/glb.d.ts +0 -29
  281. package/dist/nodes/model3d/glb.d.ts.map +0 -1
  282. package/dist/nodes/model3d/glb.js +0 -255
  283. package/dist/nodes/model3d/glb.js.map +0 -1
  284. package/dist/nodes/model3d/index.d.ts +0 -20
  285. package/dist/nodes/model3d/index.d.ts.map +0 -1
  286. package/dist/nodes/model3d/index.js +0 -38
  287. package/dist/nodes/model3d/index.js.map +0 -1
  288. package/dist/nodes/model3d/io.d.ts +0 -38
  289. package/dist/nodes/model3d/io.d.ts.map +0 -1
  290. package/dist/nodes/model3d/io.js +0 -162
  291. package/dist/nodes/model3d/io.js.map +0 -1
  292. package/dist/nodes/model3d/mesh-ops.d.ts +0 -40
  293. package/dist/nodes/model3d/mesh-ops.d.ts.map +0 -1
  294. package/dist/nodes/model3d/mesh-ops.js +0 -775
  295. package/dist/nodes/model3d/mesh-ops.js.map +0 -1
  296. package/dist/nodes/model3d/nodes.d.ts +0 -2
  297. package/dist/nodes/model3d/nodes.d.ts.map +0 -1
  298. package/dist/nodes/model3d/nodes.js +0 -2
  299. package/dist/nodes/model3d/nodes.js.map +0 -1
  300. package/dist/nodes/model3d/ops.d.ts +0 -37
  301. package/dist/nodes/model3d/ops.d.ts.map +0 -1
  302. package/dist/nodes/model3d/ops.js +0 -137
  303. package/dist/nodes/model3d/ops.js.map +0 -1
  304. package/dist/nodes/model3d/transforms.d.ts +0 -49
  305. package/dist/nodes/model3d/transforms.d.ts.map +0 -1
  306. package/dist/nodes/model3d/transforms.js +0 -142
  307. package/dist/nodes/model3d/transforms.js.map +0 -1
  308. package/dist/nodes/model3d/types.d.ts +0 -81
  309. package/dist/nodes/model3d/types.d.ts.map +0 -1
  310. package/dist/nodes/model3d/types.js +0 -2
  311. package/dist/nodes/model3d/types.js.map +0 -1
  312. package/dist/nodes/model3d/utils.d.ts +0 -34
  313. package/dist/nodes/model3d/utils.d.ts.map +0 -1
  314. package/dist/nodes/model3d/utils.js +0 -185
  315. package/dist/nodes/model3d/utils.js.map +0 -1
  316. package/dist/nodes/model3d.d.ts +0 -2
  317. package/dist/nodes/model3d.d.ts.map +0 -1
  318. package/dist/nodes/model3d.js +0 -2
  319. package/dist/nodes/model3d.js.map +0 -1
  320. package/dist/nodes/openai.d.ts +0 -172
  321. package/dist/nodes/openai.d.ts.map +0 -1
  322. package/dist/nodes/openai.js +0 -1294
  323. package/dist/nodes/openai.js.map +0 -1
  324. package/dist/nodes/output.d.ts +0 -29
  325. package/dist/nodes/output.d.ts.map +0 -1
  326. package/dist/nodes/output.js +0 -87
  327. package/dist/nodes/output.js.map +0 -1
  328. package/dist/nodes/sandbox.d.ts +0 -63
  329. package/dist/nodes/sandbox.d.ts.map +0 -1
  330. package/dist/nodes/sandbox.js +0 -633
  331. package/dist/nodes/sandbox.js.map +0 -1
  332. package/dist/nodes/search.d.ts +0 -117
  333. package/dist/nodes/search.d.ts.map +0 -1
  334. package/dist/nodes/search.js +0 -607
  335. package/dist/nodes/search.js.map +0 -1
  336. package/dist/nodes/team.d.ts +0 -74
  337. package/dist/nodes/team.d.ts.map +0 -1
  338. package/dist/nodes/team.js +0 -309
  339. package/dist/nodes/team.js.map +0 -1
  340. package/dist/nodes/text-extra.d.ts +0 -633
  341. package/dist/nodes/text-extra.d.ts.map +0 -1
  342. package/dist/nodes/text-extra.js +0 -2226
  343. package/dist/nodes/text-extra.js.map +0 -1
  344. package/dist/nodes/tool-agents.d.ts +0 -334
  345. package/dist/nodes/tool-agents.d.ts.map +0 -1
  346. package/dist/nodes/tool-agents.js +0 -1861
  347. package/dist/nodes/tool-agents.js.map +0 -1
  348. package/dist/nodes/triggers.d.ts +0 -107
  349. package/dist/nodes/triggers.d.ts.map +0 -1
  350. package/dist/nodes/triggers.js +0 -706
  351. package/dist/nodes/triggers.js.map +0 -1
  352. package/dist/nodes/vector.d.ts +0 -168
  353. package/dist/nodes/vector.d.ts.map +0 -1
  354. package/dist/nodes/vector.js +0 -1121
  355. package/dist/nodes/vector.js.map +0 -1
  356. package/dist/nodes/video.d.ts +0 -387
  357. package/dist/nodes/video.d.ts.map +0 -1
  358. package/dist/nodes/video.js +0 -2383
  359. package/dist/nodes/video.js.map +0 -1
  360. package/dist/nodes/workflow.d.ts +0 -24
  361. package/dist/nodes/workflow.d.ts.map +0 -1
  362. package/dist/nodes/workflow.js +0 -146
  363. package/dist/nodes/workflow.js.map +0 -1
  364. package/dist/nodes/workspace.d.ts +0 -203
  365. package/dist/nodes/workspace.d.ts.map +0 -1
  366. package/dist/nodes/workspace.js +0 -795
  367. package/dist/nodes/workspace.js.map +0 -1
@@ -1,215 +0,0 @@
1
- /**
2
- * Text validation and sanitization nodes — pure-JS implementations.
3
- *
4
- * These replace the old `validator.js`-powered code snippets so the JS
5
- * sandbox can stay lib-free. The checks aim for "good-enough for workflow
6
- * use" rather than RFC-complete.
7
- */
8
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
9
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
12
- return c > 3 && r && Object.defineProperty(target, key, r), r;
13
- };
14
- import { BaseNode, prop } from "@nodetool-ai/node-sdk";
15
- // ---------------------------------------------------------------------------
16
- // Shared validators
17
- // ---------------------------------------------------------------------------
18
- // Practical email regex — rejects obvious garbage, accepts the common forms.
19
- // Local part: letters/digits/._%+- . Domain: letters/digits/.- with an
20
- // alphanumeric TLD of ≥2 characters.
21
- const EMAIL_RE = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z][A-Za-z0-9-]*$/;
22
- // Basic UUID v1-v5 shape.
23
- const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
24
- const IPV4_SEGMENT_RE = /^(25[0-5]|2[0-4]\d|1\d\d|\d{1,2})$/;
25
- const ALPHA_RE = /^[A-Za-z]+$/;
26
- const ALPHANUMERIC_RE = /^[A-Za-z0-9]+$/;
27
- export function isEmail(value) {
28
- return typeof value === "string" && EMAIL_RE.test(value.trim());
29
- }
30
- export function isURL(value) {
31
- if (typeof value !== "string" || !value.trim())
32
- return false;
33
- try {
34
- const u = new URL(value);
35
- // WHATWG URL accepts weird protocols — require http(s) or a scheme with authority
36
- return /^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(value) && u.host.length > 0;
37
- }
38
- catch {
39
- return false;
40
- }
41
- }
42
- export function isIPv4(value) {
43
- if (typeof value !== "string")
44
- return false;
45
- const parts = value.split(".");
46
- if (parts.length !== 4)
47
- return false;
48
- return parts.every((p) => IPV4_SEGMENT_RE.test(p));
49
- }
50
- export function isIPv6(value) {
51
- if (typeof value !== "string")
52
- return false;
53
- // Accept fully-written, "::"-compressed, and IPv4-suffixed forms.
54
- if (value.length < 2 || value.indexOf(":") === -1)
55
- return false;
56
- const groups = value.split("::");
57
- if (groups.length > 2)
58
- return false;
59
- const parts = value.replace("::", ":x:").split(":");
60
- // each chunk must be 1-4 hex chars (or our placeholder)
61
- return parts.every((p) => p === "" || p === "x" || /^[0-9a-fA-F]{1,4}$/.test(p));
62
- }
63
- export function isIP(value) {
64
- return isIPv4(value) || isIPv6(value);
65
- }
66
- export function isUUID(value) {
67
- return typeof value === "string" && UUID_RE.test(value);
68
- }
69
- export function isJSONString(value) {
70
- if (typeof value !== "string")
71
- return false;
72
- try {
73
- JSON.parse(value);
74
- return true;
75
- }
76
- catch {
77
- return false;
78
- }
79
- }
80
- export function isNumeric(value) {
81
- if (typeof value !== "string" || value.trim() === "")
82
- return false;
83
- return !Number.isNaN(Number(value));
84
- }
85
- export function isAlpha(value) {
86
- return typeof value === "string" && ALPHA_RE.test(value);
87
- }
88
- export function isAlphanumeric(value) {
89
- return typeof value === "string" && ALPHANUMERIC_RE.test(value);
90
- }
91
- /** HTML-entity-escape `&`, `<`, `>`, `"`, `'` and `/`. Matches validator.escape. */
92
- export function escapeHtml(value) {
93
- if (typeof value !== "string")
94
- return "";
95
- return value
96
- .replace(/&/g, "&amp;")
97
- .replace(/</g, "&lt;")
98
- .replace(/>/g, "&gt;")
99
- .replace(/"/g, "&quot;")
100
- .replace(/'/g, "&#x27;")
101
- .replace(/\//g, "&#x2F;");
102
- }
103
- /** Lowercase + strip leading/trailing whitespace. Good enough for common normalisation. */
104
- export function normalizeEmail(value) {
105
- if (typeof value !== "string")
106
- return "";
107
- const v = value.trim().toLowerCase();
108
- return isEmail(v) ? v : "";
109
- }
110
- // ---------------------------------------------------------------------------
111
- // Nodes
112
- // ---------------------------------------------------------------------------
113
- export class ValidateEmailNode extends BaseNode {
114
- static nodeType = "lib.validate.Email";
115
- static title = "Validate Email";
116
- static description = "Check whether a value is a syntactically valid email address.\n validate, email, check";
117
- static metadataOutputTypes = { output: "bool" };
118
- async process() {
119
- return { output: isEmail(String(this.value ?? "")) };
120
- }
121
- }
122
- __decorate([
123
- prop({ type: "str", default: "", title: "Value" })
124
- ], ValidateEmailNode.prototype, "value", void 0);
125
- export class ValidateURLNode extends BaseNode {
126
- static nodeType = "lib.validate.URL";
127
- static title = "Validate URL";
128
- static description = "Check whether a value is a syntactically valid absolute URL.\n validate, url, link, check";
129
- static metadataOutputTypes = { output: "bool" };
130
- async process() {
131
- return { output: isURL(String(this.value ?? "")) };
132
- }
133
- }
134
- __decorate([
135
- prop({ type: "str", default: "", title: "Value" })
136
- ], ValidateURLNode.prototype, "value", void 0);
137
- export class ValidateIPNode extends BaseNode {
138
- static nodeType = "lib.validate.IP";
139
- static title = "Validate IP Address";
140
- static description = "Check whether a value is a valid IPv4 or IPv6 address.\n validate, ip, ipv4, ipv6, address, network";
141
- static metadataOutputTypes = {
142
- is_ip: "bool",
143
- is_ipv4: "bool",
144
- is_ipv6: "bool"
145
- };
146
- async process() {
147
- const v = String(this.value ?? "");
148
- return {
149
- is_ip: isIP(v),
150
- is_ipv4: isIPv4(v),
151
- is_ipv6: isIPv6(v)
152
- };
153
- }
154
- }
155
- __decorate([
156
- prop({ type: "str", default: "", title: "Value" })
157
- ], ValidateIPNode.prototype, "value", void 0);
158
- export class ValidateStringNode extends BaseNode {
159
- static nodeType = "lib.validate.String";
160
- static title = "Validate String";
161
- static description = "Run several common string checks at once and return one bool per check.\n validate, check, email, url, uuid, json, number";
162
- static metadataOutputTypes = {
163
- is_email: "bool",
164
- is_url: "bool",
165
- is_uuid: "bool",
166
- is_json: "bool",
167
- is_numeric: "bool",
168
- is_alpha: "bool",
169
- is_alphanumeric: "bool"
170
- };
171
- async process() {
172
- const v = String(this.value ?? "");
173
- return {
174
- is_email: isEmail(v),
175
- is_url: isURL(v),
176
- is_uuid: isUUID(v),
177
- is_json: isJSONString(v),
178
- is_numeric: isNumeric(v),
179
- is_alpha: isAlpha(v),
180
- is_alphanumeric: isAlphanumeric(v)
181
- };
182
- }
183
- }
184
- __decorate([
185
- prop({ type: "str", default: "", title: "Value" })
186
- ], ValidateStringNode.prototype, "value", void 0);
187
- export class SanitizeStringNode extends BaseNode {
188
- static nodeType = "lib.validate.Sanitize";
189
- static title = "Sanitize String";
190
- static description = "HTML-escape, trim, and lowercase/normalise a string. Also emits the normalised email when applicable.\n sanitize, escape, html, xss, clean, trim";
191
- static metadataOutputTypes = {
192
- escaped: "str",
193
- trimmed: "str",
194
- normalized_email: "str"
195
- };
196
- async process() {
197
- const v = String(this.value ?? "");
198
- return {
199
- escaped: escapeHtml(v),
200
- trimmed: v.trim(),
201
- normalized_email: normalizeEmail(v)
202
- };
203
- }
204
- }
205
- __decorate([
206
- prop({ type: "str", default: "", title: "Value" })
207
- ], SanitizeStringNode.prototype, "value", void 0);
208
- export const LIB_VALIDATE_NODES = [
209
- ValidateEmailNode,
210
- ValidateURLNode,
211
- ValidateIPNode,
212
- ValidateStringNode,
213
- SanitizeStringNode
214
- ];
215
- //# sourceMappingURL=lib-validate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib-validate.js","sourceRoot":"","sources":["../../src/nodes/lib-validate.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { BaseNode } from "@nodetool-ai/node-sdk";
2
- export declare class YtDlpDownloadLibNode extends BaseNode {
3
- static readonly nodeType = "lib.video.download.YtDlpDownload";
4
- static readonly title = "YouTube Downloader";
5
- static readonly description = "Download media from URLs using yt-dlp.\n download, video, audio, youtube, media, yt-dlp, metadata, subtitles\n\n Use cases:\n - Download videos from YouTube and other platforms\n - Extract audio from video URLs\n - Retrieve video/audio metadata without downloading\n - Download subtitles and thumbnails";
6
- static readonly metadataOutputTypes: {
7
- video: string;
8
- audio: string;
9
- metadata: string;
10
- subtitles: string;
11
- thumbnail: string;
12
- };
13
- static readonly requiredRuntimes: string[];
14
- url: any;
15
- mode: any;
16
- format_selector: any;
17
- container: any;
18
- subtitles: any;
19
- thumbnail: any;
20
- overwrite: any;
21
- rate_limit_kbps: any;
22
- timeout: any;
23
- process(): Promise<Record<string, unknown>>;
24
- }
25
- export declare const LIB_YTDLP_NODES: readonly [typeof YtDlpDownloadLibNode];
26
- //# sourceMappingURL=lib-video-download.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib-video-download.d.ts","sourceRoot":"","sources":["../../src/nodes/lib-video-download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAQ,MAAM,uBAAuB,CAAC;AAsHvD,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD,MAAM,CAAC,QAAQ,CAAC,QAAQ,sCAAsC;IAC9D,MAAM,CAAC,QAAQ,CAAC,KAAK,wBAAwB;IAC7C,MAAM,CAAC,QAAQ,CAAC,WAAW,sUAC0S;IACrU,MAAM,CAAC,QAAQ,CAAC,mBAAmB;;;;;;MAMjC;IACF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAAc;IAQtC,GAAG,EAAE,GAAG,CAAC;IAST,IAAI,EAAE,GAAG,CAAC;IAQV,eAAe,EAAE,GAAG,CAAC;IAQrB,SAAS,EAAE,GAAG,CAAC;IAQf,SAAS,EAAE,GAAG,CAAC;IAQf,SAAS,EAAE,GAAG,CAAC;IAQf,SAAS,EAAE,GAAG,CAAC;IASf,eAAe,EAAE,GAAG,CAAC;IAUrB,OAAO,EAAE,GAAG,CAAC;IAEf,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAkJlD;AAED,eAAO,MAAM,eAAe,wCAAkC,CAAC"}
@@ -1,299 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { BaseNode, prop } from "@nodetool-ai/node-sdk";
8
- import { promises as fs } from "node:fs";
9
- import path from "node:path";
10
- import os from "node:os";
11
- import { spawn } from "node:child_process";
12
- async function runCommand(cmd, args, timeoutMs) {
13
- return new Promise((resolve, reject) => {
14
- const child = spawn(cmd, args, { stdio: "pipe" });
15
- let stdout = "";
16
- let stderr = "";
17
- let timedOut = false;
18
- const timer = setTimeout(() => {
19
- timedOut = true;
20
- child.kill("SIGTERM");
21
- }, timeoutMs);
22
- child.stdout.on("data", (d) => {
23
- stdout += String(d);
24
- });
25
- child.stderr.on("data", (d) => {
26
- stderr += String(d);
27
- });
28
- child.on("error", (err) => {
29
- clearTimeout(timer);
30
- reject(err);
31
- });
32
- child.on("close", (code) => {
33
- clearTimeout(timer);
34
- if (timedOut) {
35
- resolve({
36
- stdout,
37
- stderr: `${stderr}\nProcess timed out`,
38
- exitCode: 124
39
- });
40
- return;
41
- }
42
- resolve({ stdout, stderr, exitCode: code ?? 0 });
43
- });
44
- });
45
- }
46
- function isValidUrl(url) {
47
- return /^https?:\/\/[^\s/$.?#].[^\s]*$/i.test(url);
48
- }
49
- function safeMetadata(info) {
50
- const keys = [
51
- "id",
52
- "title",
53
- "description",
54
- "uploader",
55
- "upload_date",
56
- "duration",
57
- "view_count",
58
- "like_count",
59
- "channel",
60
- "channel_id",
61
- "webpage_url",
62
- "ext",
63
- "width",
64
- "height",
65
- "fps",
66
- "filesize",
67
- "tags",
68
- "categories"
69
- ];
70
- const out = {};
71
- for (const key of keys) {
72
- if (key in info)
73
- out[key] = info[key];
74
- }
75
- return out;
76
- }
77
- function base64Ref(bytes, kind) {
78
- return {
79
- type: kind,
80
- data: bytes.toString("base64")
81
- };
82
- }
83
- async function findFileByExt(dir, exts, preferredId = "") {
84
- const names = await fs.readdir(dir);
85
- const extSet = new Set(exts.map((e) => e.toLowerCase()));
86
- if (preferredId) {
87
- const exact = names.find((name) => {
88
- const ext = path.extname(name).slice(1).toLowerCase();
89
- const stem = path.basename(name, path.extname(name));
90
- return stem === preferredId && extSet.has(ext);
91
- });
92
- if (exact)
93
- return path.join(dir, exact);
94
- }
95
- const any = names.find((name) => extSet.has(path.extname(name).slice(1).toLowerCase()));
96
- return any ? path.join(dir, any) : null;
97
- }
98
- export class YtDlpDownloadLibNode extends BaseNode {
99
- static nodeType = "lib.video.download.YtDlpDownload";
100
- static title = "YouTube Downloader";
101
- static description = "Download media from URLs using yt-dlp.\n download, video, audio, youtube, media, yt-dlp, metadata, subtitles\n\n Use cases:\n - Download videos from YouTube and other platforms\n - Extract audio from video URLs\n - Retrieve video/audio metadata without downloading\n - Download subtitles and thumbnails";
102
- static metadataOutputTypes = {
103
- video: "video",
104
- audio: "audio",
105
- metadata: "dict",
106
- subtitles: "str",
107
- thumbnail: "image"
108
- };
109
- static requiredRuntimes = ["yt-dlp"];
110
- async process() {
111
- const url = String(this.url ?? "").trim();
112
- if (!url) {
113
- throw new Error("URL cannot be empty");
114
- }
115
- if (!isValidUrl(url)) {
116
- throw new Error(`Invalid URL format: ${url}`);
117
- }
118
- const mode = String(this.mode ?? "video").toLowerCase();
119
- const timeoutMs = Math.max(1000, Number(this.timeout ?? 600) * 1000);
120
- const formatSelector = String(this.format_selector ?? "best");
121
- const container = String(this.container ?? "auto");
122
- const subtitles = Boolean(this.subtitles ?? false);
123
- const thumbnail = Boolean(this.thumbnail ?? false);
124
- const overwrite = Boolean(this.overwrite ?? false);
125
- const rateLimitKbps = Number(this.rate_limit_kbps ?? 0);
126
- const tempDir = await fs.mkdtemp(path.join(os.tmpdir(), "ytdlp-"));
127
- try {
128
- const metadataArgs = [
129
- "--no-playlist",
130
- "--no-warnings",
131
- "--no-color",
132
- "--print-json",
133
- "--skip-download",
134
- url
135
- ];
136
- const metadataRes = await runCommand("yt-dlp", metadataArgs, timeoutMs);
137
- if (metadataRes.exitCode !== 0) {
138
- throw new Error(`yt-dlp metadata failed: ${metadataRes.stderr || metadataRes.stdout}`);
139
- }
140
- const lines = metadataRes.stdout
141
- .split(/\r?\n/)
142
- .map((line) => line.trim())
143
- .filter(Boolean);
144
- let jsonLine = "";
145
- for (let i = lines.length - 1; i >= 0; i -= 1) {
146
- if (lines[i].startsWith("{")) {
147
- jsonLine = lines[i];
148
- break;
149
- }
150
- }
151
- const parsedInfo = jsonLine
152
- ? JSON.parse(jsonLine)
153
- : {};
154
- const output = {
155
- video: {},
156
- audio: {},
157
- metadata: safeMetadata(parsedInfo),
158
- subtitles: "",
159
- thumbnail: null
160
- };
161
- if (mode !== "metadata") {
162
- const dlArgs = [
163
- "--no-playlist",
164
- "--no-warnings",
165
- "--no-color",
166
- "--restrict-filenames",
167
- "-o",
168
- path.join(tempDir, "%(id)s.%(ext)s")
169
- ];
170
- if (!overwrite)
171
- dlArgs.push("--no-overwrites");
172
- if (rateLimitKbps > 0)
173
- dlArgs.push("--limit-rate", `${Math.trunc(rateLimitKbps)}K`);
174
- if (subtitles)
175
- dlArgs.push("--write-subs", "--write-auto-subs", "--sub-langs", "en,en-US,en-GB", "--sub-format", "srt/vtt/ass/best");
176
- if (thumbnail)
177
- dlArgs.push("--write-thumbnail");
178
- if (mode === "audio") {
179
- dlArgs.push("-f", "bestaudio/best", "-x", "--audio-format", "mp3");
180
- }
181
- else {
182
- dlArgs.push("-f", formatSelector === "best"
183
- ? "bestvideo+bestaudio/best"
184
- : formatSelector);
185
- if (container !== "auto")
186
- dlArgs.push("--merge-output-format", container);
187
- }
188
- dlArgs.push(url);
189
- const dlRes = await runCommand("yt-dlp", dlArgs, timeoutMs);
190
- if (dlRes.exitCode !== 0) {
191
- throw new Error(`yt-dlp download failed: ${dlRes.stderr || dlRes.stdout}`);
192
- }
193
- const mediaId = typeof parsedInfo.id === "string" ? parsedInfo.id : "";
194
- if (mode === "audio") {
195
- const audioFile = await findFileByExt(tempDir, ["mp3", "m4a", "opus", "ogg", "wav", "webm"], mediaId);
196
- if (audioFile)
197
- output.audio = base64Ref(await fs.readFile(audioFile), "audio");
198
- }
199
- else {
200
- const videoFile = await findFileByExt(tempDir, ["mp4", "webm", "mkv", "avi", "mov", "flv"], mediaId);
201
- if (videoFile)
202
- output.video = base64Ref(await fs.readFile(videoFile), "video");
203
- }
204
- if (subtitles) {
205
- const subFile = await findFileByExt(tempDir, ["srt", "vtt", "ass", "ssa"], mediaId);
206
- if (subFile)
207
- output.subtitles = await fs.readFile(subFile, "utf8");
208
- }
209
- if (thumbnail) {
210
- const thumbFile = await findFileByExt(tempDir, ["jpg", "jpeg", "png", "webp"], mediaId);
211
- if (thumbFile)
212
- output.thumbnail = base64Ref(await fs.readFile(thumbFile), "image");
213
- }
214
- }
215
- return output;
216
- }
217
- finally {
218
- await fs.rm(tempDir, { recursive: true, force: true });
219
- }
220
- }
221
- }
222
- __decorate([
223
- prop({
224
- type: "str",
225
- default: "",
226
- title: "Url",
227
- description: "URL of the media to download"
228
- })
229
- ], YtDlpDownloadLibNode.prototype, "url", void 0);
230
- __decorate([
231
- prop({
232
- type: "enum",
233
- default: "video",
234
- title: "Mode",
235
- description: "Download mode: video, audio, or metadata only",
236
- values: ["video", "audio", "metadata"]
237
- })
238
- ], YtDlpDownloadLibNode.prototype, "mode", void 0);
239
- __decorate([
240
- prop({
241
- type: "str",
242
- default: "best",
243
- title: "Format Selector",
244
- description: "yt-dlp format selector (e.g., 'best', 'bestvideo+bestaudio')"
245
- })
246
- ], YtDlpDownloadLibNode.prototype, "format_selector", void 0);
247
- __decorate([
248
- prop({
249
- type: "str",
250
- default: "auto",
251
- title: "Container",
252
- description: "Output container format (e.g., 'mp4', 'webm', 'auto')"
253
- })
254
- ], YtDlpDownloadLibNode.prototype, "container", void 0);
255
- __decorate([
256
- prop({
257
- type: "bool",
258
- default: false,
259
- title: "Subtitles",
260
- description: "Download subtitles if available"
261
- })
262
- ], YtDlpDownloadLibNode.prototype, "subtitles", void 0);
263
- __decorate([
264
- prop({
265
- type: "bool",
266
- default: false,
267
- title: "Thumbnail",
268
- description: "Download thumbnail if available"
269
- })
270
- ], YtDlpDownloadLibNode.prototype, "thumbnail", void 0);
271
- __decorate([
272
- prop({
273
- type: "bool",
274
- default: false,
275
- title: "Overwrite",
276
- description: "Overwrite existing files"
277
- })
278
- ], YtDlpDownloadLibNode.prototype, "overwrite", void 0);
279
- __decorate([
280
- prop({
281
- type: "int",
282
- default: 0,
283
- title: "Rate Limit Kbps",
284
- description: "Rate limit in KB/s (0 = unlimited)",
285
- min: 0
286
- })
287
- ], YtDlpDownloadLibNode.prototype, "rate_limit_kbps", void 0);
288
- __decorate([
289
- prop({
290
- type: "int",
291
- default: 600,
292
- title: "Timeout",
293
- description: "Timeout in seconds",
294
- min: 1,
295
- max: 3600
296
- })
297
- ], YtDlpDownloadLibNode.prototype, "timeout", void 0);
298
- export const LIB_YTDLP_NODES = [YtDlpDownloadLibNode];
299
- //# sourceMappingURL=lib-video-download.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib-video-download.js","sourceRoot":"","sources":["../../src/nodes/lib-video-download.ts"],"names":[],"mappings":"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"}
@@ -1,88 +0,0 @@
1
- import { BaseNode } from "@nodetool-ai/node-sdk";
2
- import type { NodeClass } from "@nodetool-ai/node-sdk";
3
- export declare class DiscordBotTrigger extends BaseNode {
4
- static readonly nodeType = "messaging.discord.DiscordBotTrigger";
5
- static readonly title = "Discord Bot Trigger";
6
- static readonly description = "Trigger node that listens for Discord messages from a bot account.\n\n This trigger connects to Discord using a bot token and emits events\n for incoming messages.";
7
- static readonly metadataOutputTypes: {
8
- message_id: string;
9
- content: string;
10
- author: string;
11
- channel: string;
12
- guild: string;
13
- attachments: string;
14
- timestamp: string;
15
- source: string;
16
- event_type: string;
17
- };
18
- static readonly requiredSettings: string[];
19
- static readonly isStreamingOutput = true;
20
- max_events: any;
21
- token: any;
22
- channel_id: any;
23
- allow_bot_messages: any;
24
- process(): Promise<Record<string, unknown>>;
25
- }
26
- export declare class DiscordSendMessage extends BaseNode {
27
- static readonly nodeType = "messaging.discord.DiscordSendMessage";
28
- static readonly title = "Discord Send Message";
29
- static readonly description = "Node that sends a message to a Discord channel using a bot token.";
30
- static readonly metadataOutputTypes: {
31
- output: string;
32
- };
33
- static readonly requiredSettings: string[];
34
- token: any;
35
- channel_id: any;
36
- content: any;
37
- tts: any;
38
- embeds: any;
39
- process(): Promise<Record<string, unknown>>;
40
- }
41
- export declare class TelegramBotTrigger extends BaseNode {
42
- static readonly nodeType = "messaging.telegram.TelegramBotTrigger";
43
- static readonly title = "Telegram Bot Trigger";
44
- static readonly description = "Trigger node that listens for Telegram messages using long polling.\n\n This trigger connects to Telegram using a bot token and emits events\n for incoming messages.";
45
- static readonly metadataOutputTypes: {
46
- update_id: string;
47
- update_type: string;
48
- message_id: string;
49
- text: string;
50
- caption: string;
51
- entities: string;
52
- chat: string;
53
- from_user: string;
54
- attachments: string;
55
- timestamp: string;
56
- source: string;
57
- event_type: string;
58
- };
59
- static readonly requiredSettings: string[];
60
- static readonly isStreamingOutput = true;
61
- max_events: any;
62
- token: any;
63
- chat_id: any;
64
- allow_bot_messages: any;
65
- include_edited_messages: any;
66
- poll_timeout_seconds: any;
67
- poll_interval_seconds: any;
68
- process(): Promise<Record<string, unknown>>;
69
- }
70
- export declare class TelegramSendMessage extends BaseNode {
71
- static readonly nodeType = "messaging.telegram.TelegramSendMessage";
72
- static readonly title = "Telegram Send Message";
73
- static readonly description = "Node that sends a message to a Telegram chat using a bot token.";
74
- static readonly metadataOutputTypes: {
75
- output: string;
76
- };
77
- static readonly requiredSettings: string[];
78
- token: any;
79
- chat_id: any;
80
- text: any;
81
- parse_mode: any;
82
- disable_web_page_preview: any;
83
- disable_notification: any;
84
- reply_to_message_id: any;
85
- process(): Promise<Record<string, unknown>>;
86
- }
87
- export declare const MESSAGING_NODES: readonly NodeClass[];
88
- //# sourceMappingURL=messaging.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../src/nodes/messaging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAQ,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIvD,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,MAAM,CAAC,QAAQ,CAAC,QAAQ,yCAAyC;IACjE,MAAM,CAAC,QAAQ,CAAC,KAAK,yBAAyB;IAC9C,MAAM,CAAC,QAAQ,CAAC,WAAW,+KACmJ;IAC9K,MAAM,CAAC,QAAQ,CAAC,mBAAmB;;;;;;;;;;MAUjC;IACF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAAyB;IAEzD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,QAAQ;IAQjC,UAAU,EAAE,GAAG,CAAC;IAQhB,KAAK,EAAE,GAAG,CAAC;IAQX,UAAU,EAAE,GAAG,CAAC;IAQhB,kBAAkB,EAAE,GAAG,CAAC;IAE1B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CA2ClD;AAED,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,MAAM,CAAC,QAAQ,CAAC,QAAQ,0CAA0C;IAClE,MAAM,CAAC,QAAQ,CAAC,KAAK,0BAA0B;IAC/C,MAAM,CAAC,QAAQ,CAAC,WAAW,uEAC2C;IACtE,MAAM,CAAC,QAAQ,CAAC,mBAAmB;;MAEjC;IACF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAAyB;IAQjD,KAAK,EAAE,GAAG,CAAC;IAQX,UAAU,EAAE,GAAG,CAAC;IAQhB,OAAO,EAAE,GAAG,CAAC;IAQb,GAAG,EAAE,GAAG,CAAC;IAST,MAAM,EAAE,GAAG,CAAC;IAEd,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CA6ClD;AAID,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,MAAM,CAAC,QAAQ,CAAC,QAAQ,2CAA2C;IACnE,MAAM,CAAC,QAAQ,CAAC,KAAK,0BAA0B;IAC/C,MAAM,CAAC,QAAQ,CAAC,WAAW,iLACqJ;IAChL,MAAM,CAAC,QAAQ,CAAC,mBAAmB;;;;;;;;;;;;;MAajC;IACF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAA0B;IAE1D,MAAM,CAAC,QAAQ,CAAC,iBAAiB,QAAQ;IAQjC,UAAU,EAAE,GAAG,CAAC;IAQhB,KAAK,EAAE,GAAG,CAAC;IAQX,OAAO,EAAE,GAAG,CAAC;IAQb,kBAAkB,EAAE,GAAG,CAAC;IAQxB,uBAAuB,EAAE,GAAG,CAAC;IAU7B,oBAAoB,EAAE,GAAG,CAAC;IAS1B,qBAAqB,EAAE,GAAG,CAAC;IAE7B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CA+ClD;AAED,qBAAa,mBAAoB,SAAQ,QAAQ;IAC/C,MAAM,CAAC,QAAQ,CAAC,QAAQ,4CAA4C;IACpE,MAAM,CAAC,QAAQ,CAAC,KAAK,2BAA2B;IAChD,MAAM,CAAC,QAAQ,CAAC,WAAW,qEACyC;IACpE,MAAM,CAAC,QAAQ,CAAC,mBAAmB;;MAEjC;IACF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAA0B;IAQlD,KAAK,EAAE,GAAG,CAAC;IASX,OAAO,EAAE,GAAG,CAAC;IAQb,IAAI,EAAE,GAAG,CAAC;IAQV,UAAU,EAAE,GAAG,CAAC;IAQhB,wBAAwB,EAAE,GAAG,CAAC;IAQ9B,oBAAoB,EAAE,GAAG,CAAC;IAS1B,mBAAmB,EAAE,GAAG,CAAC;IAE3B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAyDlD;AAID,eAAO,MAAM,eAAe,EAAE,SAAS,SAAS,EAK/C,CAAC"}