@nodetool-ai/base-nodes 0.7.0-rc.11

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 (353) hide show
  1. package/dist/index.d.ts +72 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +270 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/lib/audio-wav.d.ts +66 -0
  6. package/dist/lib/audio-wav.d.ts.map +1 -0
  7. package/dist/lib/audio-wav.js +215 -0
  8. package/dist/lib/audio-wav.js.map +1 -0
  9. package/dist/nodes/agents.d.ts +253 -0
  10. package/dist/nodes/agents.d.ts.map +1 -0
  11. package/dist/nodes/agents.js +2784 -0
  12. package/dist/nodes/agents.js.map +1 -0
  13. package/dist/nodes/anthropic.d.ts +26 -0
  14. package/dist/nodes/anthropic.d.ts.map +1 -0
  15. package/dist/nodes/anthropic.js +133 -0
  16. package/dist/nodes/anthropic.js.map +1 -0
  17. package/dist/nodes/apify.d.ts +120 -0
  18. package/dist/nodes/apify.d.ts.map +1 -0
  19. package/dist/nodes/apify.js +618 -0
  20. package/dist/nodes/apify.js.map +1 -0
  21. package/dist/nodes/audio.d.ts +301 -0
  22. package/dist/nodes/audio.d.ts.map +1 -0
  23. package/dist/nodes/audio.js +1274 -0
  24. package/dist/nodes/audio.js.map +1 -0
  25. package/dist/nodes/code-node.d.ts +34 -0
  26. package/dist/nodes/code-node.d.ts.map +1 -0
  27. package/dist/nodes/code-node.js +343 -0
  28. package/dist/nodes/code-node.js.map +1 -0
  29. package/dist/nodes/code.d.ts +301 -0
  30. package/dist/nodes/code.d.ts.map +1 -0
  31. package/dist/nodes/code.js +850 -0
  32. package/dist/nodes/code.js.map +1 -0
  33. package/dist/nodes/compare.d.ts +18 -0
  34. package/dist/nodes/compare.d.ts.map +1 -0
  35. package/dist/nodes/compare.js +122 -0
  36. package/dist/nodes/compare.js.map +1 -0
  37. package/dist/nodes/constant.d.ts +315 -0
  38. package/dist/nodes/constant.d.ts.map +1 -0
  39. package/dist/nodes/constant.js +715 -0
  40. package/dist/nodes/constant.js.map +1 -0
  41. package/dist/nodes/control.d.ts +83 -0
  42. package/dist/nodes/control.d.ts.map +1 -0
  43. package/dist/nodes/control.js +212 -0
  44. package/dist/nodes/control.js.map +1 -0
  45. package/dist/nodes/data.d.ts +369 -0
  46. package/dist/nodes/data.d.ts.map +1 -0
  47. package/dist/nodes/data.js +1590 -0
  48. package/dist/nodes/data.js.map +1 -0
  49. package/dist/nodes/document.d.ts +134 -0
  50. package/dist/nodes/document.d.ts.map +1 -0
  51. package/dist/nodes/document.js +984 -0
  52. package/dist/nodes/document.js.map +1 -0
  53. package/dist/nodes/extended-placeholders.d.ts +6 -0
  54. package/dist/nodes/extended-placeholders.d.ts.map +1 -0
  55. package/dist/nodes/extended-placeholders.js +19 -0
  56. package/dist/nodes/extended-placeholders.js.map +1 -0
  57. package/dist/nodes/gemini.d.ts +109 -0
  58. package/dist/nodes/gemini.d.ts.map +1 -0
  59. package/dist/nodes/gemini.js +861 -0
  60. package/dist/nodes/gemini.js.map +1 -0
  61. package/dist/nodes/generators.d.ts +84 -0
  62. package/dist/nodes/generators.d.ts.map +1 -0
  63. package/dist/nodes/generators.js +937 -0
  64. package/dist/nodes/generators.js.map +1 -0
  65. package/dist/nodes/image.d.ts +232 -0
  66. package/dist/nodes/image.d.ts.map +1 -0
  67. package/dist/nodes/image.js +1395 -0
  68. package/dist/nodes/image.js.map +1 -0
  69. package/dist/nodes/input.d.ts +445 -0
  70. package/dist/nodes/input.d.ts.map +1 -0
  71. package/dist/nodes/input.js +1459 -0
  72. package/dist/nodes/input.js.map +1 -0
  73. package/dist/nodes/kie-dynamic.d.ts +31 -0
  74. package/dist/nodes/kie-dynamic.d.ts.map +1 -0
  75. package/dist/nodes/kie-dynamic.js +270 -0
  76. package/dist/nodes/kie-dynamic.js.map +1 -0
  77. package/dist/nodes/lib-audio-dsp.d.ts +85 -0
  78. package/dist/nodes/lib-audio-dsp.d.ts.map +1 -0
  79. package/dist/nodes/lib-audio-dsp.js +450 -0
  80. package/dist/nodes/lib-audio-dsp.js.map +1 -0
  81. package/dist/nodes/lib-audio-effects.d.ts +116 -0
  82. package/dist/nodes/lib-audio-effects.d.ts.map +1 -0
  83. package/dist/nodes/lib-audio-effects.js +905 -0
  84. package/dist/nodes/lib-audio-effects.js.map +1 -0
  85. package/dist/nodes/lib-browser.d.ts +99 -0
  86. package/dist/nodes/lib-browser.d.ts.map +1 -0
  87. package/dist/nodes/lib-browser.js +692 -0
  88. package/dist/nodes/lib-browser.js.map +1 -0
  89. package/dist/nodes/lib-charts.d.ts +20 -0
  90. package/dist/nodes/lib-charts.d.ts.map +1 -0
  91. package/dist/nodes/lib-charts.js +245 -0
  92. package/dist/nodes/lib-charts.js.map +1 -0
  93. package/dist/nodes/lib-datetime.d.ts +108 -0
  94. package/dist/nodes/lib-datetime.d.ts.map +1 -0
  95. package/dist/nodes/lib-datetime.js +421 -0
  96. package/dist/nodes/lib-datetime.js.map +1 -0
  97. package/dist/nodes/lib-doc-convert.d.ts +19 -0
  98. package/dist/nodes/lib-doc-convert.d.ts.map +1 -0
  99. package/dist/nodes/lib-doc-convert.js +257 -0
  100. package/dist/nodes/lib-doc-convert.js.map +1 -0
  101. package/dist/nodes/lib-doc-transform.d.ts +39 -0
  102. package/dist/nodes/lib-doc-transform.d.ts.map +1 -0
  103. package/dist/nodes/lib-doc-transform.js +335 -0
  104. package/dist/nodes/lib-doc-transform.js.map +1 -0
  105. package/dist/nodes/lib-docx.d.ts +106 -0
  106. package/dist/nodes/lib-docx.d.ts.map +1 -0
  107. package/dist/nodes/lib-docx.js +595 -0
  108. package/dist/nodes/lib-docx.js.map +1 -0
  109. package/dist/nodes/lib-epub.d.ts +55 -0
  110. package/dist/nodes/lib-epub.d.ts.map +1 -0
  111. package/dist/nodes/lib-epub.js +220 -0
  112. package/dist/nodes/lib-epub.js.map +1 -0
  113. package/dist/nodes/lib-excel.d.ts +74 -0
  114. package/dist/nodes/lib-excel.d.ts.map +1 -0
  115. package/dist/nodes/lib-excel.js +448 -0
  116. package/dist/nodes/lib-excel.js.map +1 -0
  117. package/dist/nodes/lib-graphql.d.ts +66 -0
  118. package/dist/nodes/lib-graphql.d.ts.map +1 -0
  119. package/dist/nodes/lib-graphql.js +333 -0
  120. package/dist/nodes/lib-graphql.js.map +1 -0
  121. package/dist/nodes/lib-grid.d.ts +27 -0
  122. package/dist/nodes/lib-grid.d.ts.map +1 -0
  123. package/dist/nodes/lib-grid.js +172 -0
  124. package/dist/nodes/lib-grid.js.map +1 -0
  125. package/dist/nodes/lib-html-parse.d.ts +108 -0
  126. package/dist/nodes/lib-html-parse.d.ts.map +1 -0
  127. package/dist/nodes/lib-html-parse.js +365 -0
  128. package/dist/nodes/lib-html-parse.js.map +1 -0
  129. package/dist/nodes/lib-http.d.ts +98 -0
  130. package/dist/nodes/lib-http.d.ts.map +1 -0
  131. package/dist/nodes/lib-http.js +267 -0
  132. package/dist/nodes/lib-http.js.map +1 -0
  133. package/dist/nodes/lib-image-color-grading.d.ts +3 -0
  134. package/dist/nodes/lib-image-color-grading.d.ts.map +1 -0
  135. package/dist/nodes/lib-image-color-grading.js +1386 -0
  136. package/dist/nodes/lib-image-color-grading.js.map +1 -0
  137. package/dist/nodes/lib-image-draw.d.ts +3 -0
  138. package/dist/nodes/lib-image-draw.d.ts.map +1 -0
  139. package/dist/nodes/lib-image-draw.js +470 -0
  140. package/dist/nodes/lib-image-draw.js.map +1 -0
  141. package/dist/nodes/lib-image-enhance.d.ts +3 -0
  142. package/dist/nodes/lib-image-enhance.d.ts.map +1 -0
  143. package/dist/nodes/lib-image-enhance.js +731 -0
  144. package/dist/nodes/lib-image-enhance.js.map +1 -0
  145. package/dist/nodes/lib-image-filter.d.ts +3 -0
  146. package/dist/nodes/lib-image-filter.d.ts.map +1 -0
  147. package/dist/nodes/lib-image-filter.js +684 -0
  148. package/dist/nodes/lib-image-filter.js.map +1 -0
  149. package/dist/nodes/lib-image-utils.d.ts +24 -0
  150. package/dist/nodes/lib-image-utils.d.ts.map +1 -0
  151. package/dist/nodes/lib-image-utils.js +150 -0
  152. package/dist/nodes/lib-image-utils.js.map +1 -0
  153. package/dist/nodes/lib-mail.d.ts +74 -0
  154. package/dist/nodes/lib-mail.d.ts.map +1 -0
  155. package/dist/nodes/lib-mail.js +452 -0
  156. package/dist/nodes/lib-mail.js.map +1 -0
  157. package/dist/nodes/lib-markdown.d.ts +70 -0
  158. package/dist/nodes/lib-markdown.d.ts.map +1 -0
  159. package/dist/nodes/lib-markdown.js +236 -0
  160. package/dist/nodes/lib-markdown.js.map +1 -0
  161. package/dist/nodes/lib-nlp.d.ts +98 -0
  162. package/dist/nodes/lib-nlp.d.ts.map +1 -0
  163. package/dist/nodes/lib-nlp.js +374 -0
  164. package/dist/nodes/lib-nlp.js.map +1 -0
  165. package/dist/nodes/lib-notion.d.ts +99 -0
  166. package/dist/nodes/lib-notion.d.ts.map +1 -0
  167. package/dist/nodes/lib-notion.js +601 -0
  168. package/dist/nodes/lib-notion.js.map +1 -0
  169. package/dist/nodes/lib-ocr.d.ts +31 -0
  170. package/dist/nodes/lib-ocr.d.ts.map +1 -0
  171. package/dist/nodes/lib-ocr.js +143 -0
  172. package/dist/nodes/lib-ocr.js.map +1 -0
  173. package/dist/nodes/lib-os.d.ts +312 -0
  174. package/dist/nodes/lib-os.d.ts.map +1 -0
  175. package/dist/nodes/lib-os.js +909 -0
  176. package/dist/nodes/lib-os.js.map +1 -0
  177. package/dist/nodes/lib-pdf.d.ts +142 -0
  178. package/dist/nodes/lib-pdf.d.ts.map +1 -0
  179. package/dist/nodes/lib-pdf.js +871 -0
  180. package/dist/nodes/lib-pdf.js.map +1 -0
  181. package/dist/nodes/lib-pptx.d.ts +29 -0
  182. package/dist/nodes/lib-pptx.d.ts.map +1 -0
  183. package/dist/nodes/lib-pptx.js +122 -0
  184. package/dist/nodes/lib-pptx.js.map +1 -0
  185. package/dist/nodes/lib-rss.d.ts +31 -0
  186. package/dist/nodes/lib-rss.d.ts.map +1 -0
  187. package/dist/nodes/lib-rss.js +163 -0
  188. package/dist/nodes/lib-rss.js.map +1 -0
  189. package/dist/nodes/lib-s3.d.ts +112 -0
  190. package/dist/nodes/lib-s3.d.ts.map +1 -0
  191. package/dist/nodes/lib-s3.js +521 -0
  192. package/dist/nodes/lib-s3.js.map +1 -0
  193. package/dist/nodes/lib-secret.d.ts +15 -0
  194. package/dist/nodes/lib-secret.d.ts.map +1 -0
  195. package/dist/nodes/lib-secret.js +42 -0
  196. package/dist/nodes/lib-secret.js.map +1 -0
  197. package/dist/nodes/lib-sqlite.d.ts +102 -0
  198. package/dist/nodes/lib-sqlite.d.ts.map +1 -0
  199. package/dist/nodes/lib-sqlite.js +532 -0
  200. package/dist/nodes/lib-sqlite.js.map +1 -0
  201. package/dist/nodes/lib-supabase.d.ts +86 -0
  202. package/dist/nodes/lib-supabase.d.ts.map +1 -0
  203. package/dist/nodes/lib-supabase.js +425 -0
  204. package/dist/nodes/lib-supabase.js.map +1 -0
  205. package/dist/nodes/lib-svg.d.ts +199 -0
  206. package/dist/nodes/lib-svg.d.ts.map +1 -0
  207. package/dist/nodes/lib-svg.js +1027 -0
  208. package/dist/nodes/lib-svg.js.map +1 -0
  209. package/dist/nodes/lib-tensorflow.d.ts +71 -0
  210. package/dist/nodes/lib-tensorflow.d.ts.map +1 -0
  211. package/dist/nodes/lib-tensorflow.js +351 -0
  212. package/dist/nodes/lib-tensorflow.js.map +1 -0
  213. package/dist/nodes/lib-twilio.d.ts +71 -0
  214. package/dist/nodes/lib-twilio.d.ts.map +1 -0
  215. package/dist/nodes/lib-twilio.js +469 -0
  216. package/dist/nodes/lib-twilio.js.map +1 -0
  217. package/dist/nodes/lib-validate.d.ts +84 -0
  218. package/dist/nodes/lib-validate.d.ts.map +1 -0
  219. package/dist/nodes/lib-validate.js +215 -0
  220. package/dist/nodes/lib-validate.js.map +1 -0
  221. package/dist/nodes/lib-video-download.d.ts +26 -0
  222. package/dist/nodes/lib-video-download.d.ts.map +1 -0
  223. package/dist/nodes/lib-video-download.js +299 -0
  224. package/dist/nodes/lib-video-download.js.map +1 -0
  225. package/dist/nodes/messaging.d.ts +88 -0
  226. package/dist/nodes/messaging.d.ts.map +1 -0
  227. package/dist/nodes/messaging.js +418 -0
  228. package/dist/nodes/messaging.js.map +1 -0
  229. package/dist/nodes/mistral.d.ts +83 -0
  230. package/dist/nodes/mistral.d.ts.map +1 -0
  231. package/dist/nodes/mistral.js +450 -0
  232. package/dist/nodes/mistral.js.map +1 -0
  233. package/dist/nodes/model3d/analysis.d.ts +13 -0
  234. package/dist/nodes/model3d/analysis.d.ts.map +1 -0
  235. package/dist/nodes/model3d/analysis.js +36 -0
  236. package/dist/nodes/model3d/analysis.js.map +1 -0
  237. package/dist/nodes/model3d/base.d.ts +11 -0
  238. package/dist/nodes/model3d/base.d.ts.map +1 -0
  239. package/dist/nodes/model3d/base.js +20 -0
  240. package/dist/nodes/model3d/base.js.map +1 -0
  241. package/dist/nodes/model3d/boolean-ops.d.ts +2 -0
  242. package/dist/nodes/model3d/boolean-ops.d.ts.map +1 -0
  243. package/dist/nodes/model3d/boolean-ops.js +172 -0
  244. package/dist/nodes/model3d/boolean-ops.js.map +1 -0
  245. package/dist/nodes/model3d/cleanup.d.ts +47 -0
  246. package/dist/nodes/model3d/cleanup.d.ts.map +1 -0
  247. package/dist/nodes/model3d/cleanup.js +136 -0
  248. package/dist/nodes/model3d/cleanup.js.map +1 -0
  249. package/dist/nodes/model3d/convert.d.ts +14 -0
  250. package/dist/nodes/model3d/convert.d.ts.map +1 -0
  251. package/dist/nodes/model3d/convert.js +64 -0
  252. package/dist/nodes/model3d/convert.js.map +1 -0
  253. package/dist/nodes/model3d/defaults.d.ts +34 -0
  254. package/dist/nodes/model3d/defaults.d.ts.map +1 -0
  255. package/dist/nodes/model3d/defaults.js +28 -0
  256. package/dist/nodes/model3d/defaults.js.map +1 -0
  257. package/dist/nodes/model3d/document-ops.d.ts +4 -0
  258. package/dist/nodes/model3d/document-ops.d.ts.map +1 -0
  259. package/dist/nodes/model3d/document-ops.js +40 -0
  260. package/dist/nodes/model3d/document-ops.js.map +1 -0
  261. package/dist/nodes/model3d/generation.d.ts +39 -0
  262. package/dist/nodes/model3d/generation.d.ts.map +1 -0
  263. package/dist/nodes/model3d/generation.js +179 -0
  264. package/dist/nodes/model3d/generation.js.map +1 -0
  265. package/dist/nodes/model3d/glb.d.ts +29 -0
  266. package/dist/nodes/model3d/glb.d.ts.map +1 -0
  267. package/dist/nodes/model3d/glb.js +255 -0
  268. package/dist/nodes/model3d/glb.js.map +1 -0
  269. package/dist/nodes/model3d/index.d.ts +20 -0
  270. package/dist/nodes/model3d/index.d.ts.map +1 -0
  271. package/dist/nodes/model3d/index.js +38 -0
  272. package/dist/nodes/model3d/index.js.map +1 -0
  273. package/dist/nodes/model3d/io.d.ts +38 -0
  274. package/dist/nodes/model3d/io.d.ts.map +1 -0
  275. package/dist/nodes/model3d/io.js +162 -0
  276. package/dist/nodes/model3d/io.js.map +1 -0
  277. package/dist/nodes/model3d/mesh-ops.d.ts +40 -0
  278. package/dist/nodes/model3d/mesh-ops.d.ts.map +1 -0
  279. package/dist/nodes/model3d/mesh-ops.js +775 -0
  280. package/dist/nodes/model3d/mesh-ops.js.map +1 -0
  281. package/dist/nodes/model3d/nodes.d.ts +2 -0
  282. package/dist/nodes/model3d/nodes.d.ts.map +1 -0
  283. package/dist/nodes/model3d/nodes.js +2 -0
  284. package/dist/nodes/model3d/nodes.js.map +1 -0
  285. package/dist/nodes/model3d/ops.d.ts +37 -0
  286. package/dist/nodes/model3d/ops.d.ts.map +1 -0
  287. package/dist/nodes/model3d/ops.js +137 -0
  288. package/dist/nodes/model3d/ops.js.map +1 -0
  289. package/dist/nodes/model3d/transforms.d.ts +49 -0
  290. package/dist/nodes/model3d/transforms.d.ts.map +1 -0
  291. package/dist/nodes/model3d/transforms.js +142 -0
  292. package/dist/nodes/model3d/transforms.js.map +1 -0
  293. package/dist/nodes/model3d/types.d.ts +81 -0
  294. package/dist/nodes/model3d/types.d.ts.map +1 -0
  295. package/dist/nodes/model3d/types.js +2 -0
  296. package/dist/nodes/model3d/types.js.map +1 -0
  297. package/dist/nodes/model3d/utils.d.ts +34 -0
  298. package/dist/nodes/model3d/utils.d.ts.map +1 -0
  299. package/dist/nodes/model3d/utils.js +185 -0
  300. package/dist/nodes/model3d/utils.js.map +1 -0
  301. package/dist/nodes/model3d.d.ts +2 -0
  302. package/dist/nodes/model3d.d.ts.map +1 -0
  303. package/dist/nodes/model3d.js +2 -0
  304. package/dist/nodes/model3d.js.map +1 -0
  305. package/dist/nodes/openai.d.ts +172 -0
  306. package/dist/nodes/openai.d.ts.map +1 -0
  307. package/dist/nodes/openai.js +1294 -0
  308. package/dist/nodes/openai.js.map +1 -0
  309. package/dist/nodes/output.d.ts +29 -0
  310. package/dist/nodes/output.d.ts.map +1 -0
  311. package/dist/nodes/output.js +87 -0
  312. package/dist/nodes/output.js.map +1 -0
  313. package/dist/nodes/sandbox.d.ts +67 -0
  314. package/dist/nodes/sandbox.d.ts.map +1 -0
  315. package/dist/nodes/sandbox.js +681 -0
  316. package/dist/nodes/sandbox.js.map +1 -0
  317. package/dist/nodes/search.d.ts +117 -0
  318. package/dist/nodes/search.d.ts.map +1 -0
  319. package/dist/nodes/search.js +607 -0
  320. package/dist/nodes/search.js.map +1 -0
  321. package/dist/nodes/team.d.ts +74 -0
  322. package/dist/nodes/team.d.ts.map +1 -0
  323. package/dist/nodes/team.js +304 -0
  324. package/dist/nodes/team.js.map +1 -0
  325. package/dist/nodes/text-extra.d.ts +633 -0
  326. package/dist/nodes/text-extra.d.ts.map +1 -0
  327. package/dist/nodes/text-extra.js +2226 -0
  328. package/dist/nodes/text-extra.js.map +1 -0
  329. package/dist/nodes/tool-agents.d.ts +334 -0
  330. package/dist/nodes/tool-agents.d.ts.map +1 -0
  331. package/dist/nodes/tool-agents.js +1861 -0
  332. package/dist/nodes/tool-agents.js.map +1 -0
  333. package/dist/nodes/triggers.d.ts +107 -0
  334. package/dist/nodes/triggers.d.ts.map +1 -0
  335. package/dist/nodes/triggers.js +706 -0
  336. package/dist/nodes/triggers.js.map +1 -0
  337. package/dist/nodes/vector.d.ts +168 -0
  338. package/dist/nodes/vector.d.ts.map +1 -0
  339. package/dist/nodes/vector.js +1121 -0
  340. package/dist/nodes/vector.js.map +1 -0
  341. package/dist/nodes/video.d.ts +387 -0
  342. package/dist/nodes/video.d.ts.map +1 -0
  343. package/dist/nodes/video.js +2361 -0
  344. package/dist/nodes/video.js.map +1 -0
  345. package/dist/nodes/workflow.d.ts +24 -0
  346. package/dist/nodes/workflow.d.ts.map +1 -0
  347. package/dist/nodes/workflow.js +146 -0
  348. package/dist/nodes/workflow.js.map +1 -0
  349. package/dist/nodes/workspace.d.ts +203 -0
  350. package/dist/nodes/workspace.d.ts.map +1 -0
  351. package/dist/nodes/workspace.js +795 -0
  352. package/dist/nodes/workspace.js.map +1 -0
  353. package/package.json +103 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib-image-color-grading.js","sourceRoot":"","sources":["../../src/nodes/lib-image-color-grading.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { NodeClass } from "@nodetool-ai/node-sdk";
2
+ export declare const LIB_IMAGE_DRAW_NODES: readonly NodeClass[];
3
+ //# sourceMappingURL=lib-image-draw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib-image-draw.d.ts","sourceRoot":"","sources":["../../src/nodes/lib-image-draw.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAe,MAAM,uBAAuB,CAAC;AAsgBpE,eAAO,MAAM,oBAAoB,EAAE,SAAS,SAAS,EACpB,CAAC"}
@@ -0,0 +1,470 @@
1
+ import { BaseNode, registerDeclaredProperty } from "@nodetool-ai/node-sdk";
2
+ import sharp from "sharp";
3
+ import { decodeImage, toRef, pickImage } from "./lib-image-utils.js";
4
+ function createDrawNode(desc) {
5
+ const C = class extends BaseNode {
6
+ static nodeType = desc.nodeType;
7
+ static title = desc.title;
8
+ static description = desc.description;
9
+ static basicFields = desc.basicFields;
10
+ static metadataOutputTypes = desc.outputs;
11
+ async process(context) {
12
+ const t = desc.nodeType;
13
+ if (t === "lib.image.draw.Background") {
14
+ const width = Number(this.width ?? 512);
15
+ const height = Number(this.height ?? 512);
16
+ const colorVal = this.color ?? "#FFFFFF";
17
+ const color = colorVal &&
18
+ typeof colorVal === "object" &&
19
+ "value" in colorVal
20
+ ? String(colorVal.value)
21
+ : String(colorVal);
22
+ const buf = await sharp({
23
+ create: {
24
+ width: Math.max(1, width),
25
+ height: Math.max(1, height),
26
+ channels: 4,
27
+ background: color
28
+ }
29
+ })
30
+ .png()
31
+ .toBuffer();
32
+ return { output: { type: "image", data: buf.toString("base64") } };
33
+ }
34
+ if (t === "lib.image.draw.GaussianNoise") {
35
+ const w = Math.max(1, Number(this.width ?? 512));
36
+ const h = Math.max(1, Number(this.height ?? 512));
37
+ const mean = Number(this.mean ?? 0);
38
+ const stddev = Number(this.stddev ?? 1);
39
+ const noiseRaw = Buffer.alloc(w * h * 3);
40
+ for (let i = 0; i < noiseRaw.length; i += 1) {
41
+ // Box-Muller transform for Gaussian distribution
42
+ const u1 = Math.random() || 1e-10;
43
+ const u2 = Math.random();
44
+ const gaussian = Math.sqrt(-2 * Math.log(u1)) * Math.cos(2 * Math.PI * u2);
45
+ const value = (mean + gaussian * stddev) * 128 + 128;
46
+ noiseRaw[i] = Math.max(0, Math.min(255, Math.round(value)));
47
+ }
48
+ const noiseBuf = await sharp(noiseRaw, {
49
+ raw: { width: w, height: h, channels: 3 }
50
+ })
51
+ .png()
52
+ .toBuffer();
53
+ return { output: { type: "image", data: noiseBuf.toString("base64") } };
54
+ }
55
+ const baseObj = pickImage(this.serialize(), this.serialize());
56
+ const baseBytes = await decodeImage(baseObj, context);
57
+ if (!baseBytes) {
58
+ return { output: baseObj ?? {} };
59
+ }
60
+ let img = sharp(baseBytes, { failOn: "none" });
61
+ if (t === "lib.image.Blend") {
62
+ const other = await decodeImage(this.image2, context);
63
+ if (other) {
64
+ const alpha = Number(this.alpha ?? 0.5);
65
+ const adjusted = await sharp(other)
66
+ .ensureAlpha(Math.max(0, Math.min(1, alpha)))
67
+ .png()
68
+ .toBuffer();
69
+ const mixed = await sharp(baseBytes)
70
+ .composite([{ input: adjusted, blend: "over" }])
71
+ .png()
72
+ .toBuffer();
73
+ return { output: toRef(mixed, baseObj) };
74
+ }
75
+ }
76
+ if (t === "lib.image.Composite") {
77
+ const fg = await decodeImage(this.foreground ??
78
+ this.foreground ??
79
+ this.image2 ??
80
+ this.image2 ??
81
+ this.image1 ??
82
+ this.image1, context);
83
+ if (fg) {
84
+ const mask = await decodeImage(this.mask ??
85
+ this.mask, context);
86
+ const baseMeta = await sharp(baseBytes, { failOn: "none" }).metadata();
87
+ const width = Math.max(1, baseMeta.width ?? 1);
88
+ const height = Math.max(1, baseMeta.height ?? 1);
89
+ let fgInput = await sharp(fg, { failOn: "none" })
90
+ .resize(width, height, { fit: "fill" })
91
+ .ensureAlpha()
92
+ .png()
93
+ .toBuffer();
94
+ if (mask) {
95
+ const { data: fgRaw, info } = await sharp(fgInput, {
96
+ failOn: "none"
97
+ })
98
+ .ensureAlpha()
99
+ .raw()
100
+ .toBuffer({ resolveWithObject: true });
101
+ const maskRaw = await sharp(mask, { failOn: "none" })
102
+ .resize(info.width, info.height, { fit: "fill" })
103
+ .greyscale()
104
+ .raw()
105
+ .toBuffer();
106
+ for (let i = 0; i < info.width * info.height; i += 1) {
107
+ fgRaw[i * 4 + 3] = maskRaw[i];
108
+ }
109
+ fgInput = await sharp(fgRaw, {
110
+ raw: { width: info.width, height: info.height, channels: 4 }
111
+ })
112
+ .png()
113
+ .toBuffer();
114
+ }
115
+ const mixed = await sharp(baseBytes)
116
+ .resize(width, height, { fit: "fill" })
117
+ .composite([{ input: fgInput, blend: "over" }])
118
+ .png()
119
+ .toBuffer();
120
+ return { output: toRef(mixed, baseObj) };
121
+ }
122
+ }
123
+ if (t.includes(".draw.RenderText")) {
124
+ const text = String(this.text ?? "");
125
+ if (text) {
126
+ const x = Number(this.x ?? 0);
127
+ const y = Number(this.y ?? 0);
128
+ const size = Number(this.size ?? 12);
129
+ const colorVal = this.color ?? "#000000";
130
+ const color = colorVal &&
131
+ typeof colorVal === "object" &&
132
+ "value" in colorVal
133
+ ? String(colorVal.value)
134
+ : String(colorVal);
135
+ const fontVal = this.font;
136
+ const fontFamily = fontVal &&
137
+ typeof fontVal === "object" &&
138
+ "name" in fontVal
139
+ ? String(fontVal.name)
140
+ : "sans-serif";
141
+ const align = String(this.align ?? "left");
142
+ const textAnchor = align === "center"
143
+ ? "middle"
144
+ : align === "right"
145
+ ? "end"
146
+ : "start";
147
+ const escapedText = text
148
+ .replaceAll("&", "&amp;")
149
+ .replaceAll("<", "&lt;")
150
+ .replaceAll(">", "&gt;");
151
+ const md = await img.metadata();
152
+ const svgWidth = md.width ?? 512;
153
+ const svgHeight = md.height ?? 512;
154
+ const svg = `<svg xmlns="http://www.w3.org/2000/svg" width="${svgWidth}" height="${svgHeight}"><text x="${x}" y="${y + size}" font-size="${size}" fill="${color}" font-family="${fontFamily}" text-anchor="${textAnchor}">${escapedText}</text></svg>`;
155
+ img = sharp(await sharp(baseBytes)
156
+ .composite([{ input: Buffer.from(svg) }])
157
+ .png()
158
+ .toBuffer());
159
+ }
160
+ }
161
+ const out = await img.png().toBuffer();
162
+ return { output: toRef(out, baseObj) };
163
+ }
164
+ };
165
+ for (const property of desc.properties) {
166
+ registerDeclaredProperty(C, property.name, property.options);
167
+ }
168
+ return C;
169
+ }
170
+ const DESCRIPTORS = [
171
+ {
172
+ nodeType: "lib.image.draw.Background",
173
+ title: "Background",
174
+ description: "The Background Node creates a blank background.\n image, background, blank, base, layer\n This node is mainly used for generating a base layer for image processing tasks. It produces a uniform image, having a user-specified width, height and color. The color is given in a hexadecimal format, defaulting to white if not specified.\n\n #### Applications\n - As a base layer for creating composite images.\n - As a starting point for generating patterns or graphics.\n - When blank backgrounds of specific colors are required for visualization tasks.",
175
+ basicFields: ["width", "height", "color"],
176
+ outputs: {
177
+ output: "image"
178
+ },
179
+ properties: [
180
+ {
181
+ name: "width",
182
+ options: {
183
+ type: "int",
184
+ default: 512,
185
+ title: "Width",
186
+ min: 1,
187
+ max: 4096
188
+ }
189
+ },
190
+ {
191
+ name: "height",
192
+ options: {
193
+ type: "int",
194
+ default: 512,
195
+ title: "Height",
196
+ min: 1,
197
+ max: 4096
198
+ }
199
+ },
200
+ {
201
+ name: "color",
202
+ options: {
203
+ type: "color",
204
+ default: {
205
+ type: "color",
206
+ value: "#FFFFFF"
207
+ },
208
+ title: "Color"
209
+ }
210
+ }
211
+ ]
212
+ },
213
+ {
214
+ nodeType: "lib.image.draw.GaussianNoise",
215
+ title: "Gaussian Noise",
216
+ description: "This node creates and adds Gaussian noise to an image.\n image, noise, gaussian, distortion, artifact\n\n The Gaussian Noise Node is designed to simulate realistic distortions that can occur in a photographic image. It generates a noise-filled image using the Gaussian (normal) distribution. The noise level can be adjusted using the mean and standard deviation parameters.\n\n #### Applications\n - Simulating sensor noise in synthetic data.\n - Testing image-processing algorithms' resilience to noise.\n - Creating artistic effects in images.",
217
+ basicFields: ["mean", "stddev", "width", "height"],
218
+ outputs: {
219
+ output: "image"
220
+ },
221
+ properties: [
222
+ {
223
+ name: "mean",
224
+ options: {
225
+ type: "float",
226
+ default: 0,
227
+ title: "Mean"
228
+ }
229
+ },
230
+ {
231
+ name: "stddev",
232
+ options: {
233
+ type: "float",
234
+ default: 1,
235
+ title: "Stddev"
236
+ }
237
+ },
238
+ {
239
+ name: "width",
240
+ options: {
241
+ type: "int",
242
+ default: 512,
243
+ title: "Width",
244
+ min: 1,
245
+ max: 1024
246
+ }
247
+ },
248
+ {
249
+ name: "height",
250
+ options: {
251
+ type: "int",
252
+ default: 512,
253
+ title: "Height",
254
+ min: 1,
255
+ max: 1024
256
+ }
257
+ }
258
+ ]
259
+ },
260
+ {
261
+ nodeType: "lib.image.draw.RenderText",
262
+ title: "Render Text",
263
+ description: 'This node allows you to add text to images using system fonts or web fonts.\n text, font, label, title, watermark, caption, image, overlay, google fonts\n\n This node takes text, font updates, coordinates (where to place the text), and an image to work with.\n A user can use the Render Text Node to add a label or title to an image, watermark an image,\n or place a caption directly on an image.\n\n The Render Text Node offers customizable options, including the ability to choose the text\'s font,\n size, color, and alignment (left, center, or right). Text placement can also be defined,\n providing flexibility to place the text wherever you see fit.\n\n ### Font Sources\n\n The node supports three font sources:\n\n 1. **System Fonts** (default): Use fonts installed on the system\n - `FontRef(name="Arial")` - Uses local Arial font\n\n 2. **Google Fonts**: Automatically download and cache fonts from Google Fonts\n - `FontRef(name="Roboto", source=FontSource.GOOGLE_FONTS)`\n - `FontRef(name="Open Sans", source=FontSource.GOOGLE_FONTS, weight="bold")`\n - Supports 50+ popular fonts including Roboto, Open Sans, Lato, Montserrat, Poppins, etc.\n\n 3. **Custom URL**: Download fonts from any URL\n - `FontRef(name="CustomFont", source=FontSource.URL, url="https://example.com/font.ttf")`\n\n #### Applications\n - Labeling images in an image gallery or database.\n - Watermarking images for copyright protection.\n - Adding custom captions to photographs.\n - Creating instructional images to guide the reader\'s view.\n - Using premium Google Fonts for professional typography.',
264
+ basicFields: ["text", "font", "x", "y", "size", "color", "align", "image"],
265
+ outputs: {
266
+ output: "image"
267
+ },
268
+ properties: [
269
+ {
270
+ name: "text",
271
+ options: {
272
+ type: "str",
273
+ default: "",
274
+ title: "Text",
275
+ description: "The text to render."
276
+ }
277
+ },
278
+ {
279
+ name: "font",
280
+ options: {
281
+ type: "font",
282
+ default: {
283
+ type: "font",
284
+ name: "DejaVuSans",
285
+ source: "system",
286
+ url: "",
287
+ weight: "regular"
288
+ },
289
+ title: "Font",
290
+ description: "The font to use. Supports system fonts, Google Fonts, and custom URLs."
291
+ }
292
+ },
293
+ {
294
+ name: "x",
295
+ options: {
296
+ type: "int",
297
+ default: 0,
298
+ title: "X",
299
+ description: "The x coordinate."
300
+ }
301
+ },
302
+ {
303
+ name: "y",
304
+ options: {
305
+ type: "int",
306
+ default: 0,
307
+ title: "Y",
308
+ description: "The y coordinate."
309
+ }
310
+ },
311
+ {
312
+ name: "size",
313
+ options: {
314
+ type: "int",
315
+ default: 12,
316
+ title: "Size",
317
+ description: "The font size.",
318
+ min: 1,
319
+ max: 512
320
+ }
321
+ },
322
+ {
323
+ name: "color",
324
+ options: {
325
+ type: "color",
326
+ default: {
327
+ type: "color",
328
+ value: "#000000"
329
+ },
330
+ title: "Color",
331
+ description: "The font color."
332
+ }
333
+ },
334
+ {
335
+ name: "align",
336
+ options: {
337
+ type: "enum",
338
+ default: "left",
339
+ title: "Align",
340
+ values: ["left", "center", "right"]
341
+ }
342
+ },
343
+ {
344
+ name: "image",
345
+ options: {
346
+ type: "image",
347
+ default: {
348
+ type: "image",
349
+ uri: "",
350
+ asset_id: null,
351
+ data: null,
352
+ metadata: null
353
+ },
354
+ title: "Image",
355
+ description: "The image to render on."
356
+ }
357
+ }
358
+ ]
359
+ },
360
+ {
361
+ nodeType: "lib.image.Blend",
362
+ title: "Blend",
363
+ description: "Blend two images with adjustable alpha mixing.\n blend, mix, fade, transition\n\n Use cases:\n - Create smooth transitions between images\n - Adjust opacity of overlays\n - Combine multiple exposures or effects",
364
+ basicFields: ["image1", "image2", "alpha"],
365
+ outputs: {
366
+ output: "image"
367
+ },
368
+ properties: [
369
+ {
370
+ name: "image1",
371
+ options: {
372
+ type: "image",
373
+ default: {
374
+ type: "image",
375
+ uri: "",
376
+ asset_id: null,
377
+ data: null,
378
+ metadata: null
379
+ },
380
+ title: "Image1",
381
+ description: "The first image to blend."
382
+ }
383
+ },
384
+ {
385
+ name: "image2",
386
+ options: {
387
+ type: "image",
388
+ default: {
389
+ type: "image",
390
+ uri: "",
391
+ asset_id: null,
392
+ data: null,
393
+ metadata: null
394
+ },
395
+ title: "Image2",
396
+ description: "The second image to blend."
397
+ }
398
+ },
399
+ {
400
+ name: "alpha",
401
+ options: {
402
+ type: "float",
403
+ default: 0.5,
404
+ title: "Alpha",
405
+ description: "The mix ratio.",
406
+ min: 0,
407
+ max: 1
408
+ }
409
+ }
410
+ ]
411
+ },
412
+ {
413
+ nodeType: "lib.image.Composite",
414
+ title: "Composite",
415
+ description: "Combine two images using a mask for advanced compositing.\n composite, mask, blend, layering\n\n Use cases:\n - Create complex image compositions\n - Apply selective blending or effects\n - Implement advanced photo editing techniques",
416
+ basicFields: ["image1", "image2", "mask"],
417
+ outputs: {
418
+ output: "image"
419
+ },
420
+ properties: [
421
+ {
422
+ name: "image1",
423
+ options: {
424
+ type: "image",
425
+ default: {
426
+ type: "image",
427
+ uri: "",
428
+ asset_id: null,
429
+ data: null,
430
+ metadata: null
431
+ },
432
+ title: "Image1",
433
+ description: "The first image to composite."
434
+ }
435
+ },
436
+ {
437
+ name: "image2",
438
+ options: {
439
+ type: "image",
440
+ default: {
441
+ type: "image",
442
+ uri: "",
443
+ asset_id: null,
444
+ data: null,
445
+ metadata: null
446
+ },
447
+ title: "Image2",
448
+ description: "The second image to composite."
449
+ }
450
+ },
451
+ {
452
+ name: "mask",
453
+ options: {
454
+ type: "image",
455
+ default: {
456
+ type: "image",
457
+ uri: "",
458
+ asset_id: null,
459
+ data: null,
460
+ metadata: null
461
+ },
462
+ title: "Mask",
463
+ description: "The mask to composite with."
464
+ }
465
+ }
466
+ ]
467
+ }
468
+ ];
469
+ export const LIB_IMAGE_DRAW_NODES = DESCRIPTORS.map(createDrawNode);
470
+ //# sourceMappingURL=lib-image-draw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib-image-draw.js","sourceRoot":"","sources":["../../src/nodes/lib-image-draw.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { NodeClass } from "@nodetool-ai/node-sdk";
2
+ export declare const LIB_IMAGE_ENHANCE_NODES: NodeClass[];
3
+ //# sourceMappingURL=lib-image-enhance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib-image-enhance.d.ts","sourceRoot":"","sources":["../../src/nodes/lib-image-enhance.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAe,MAAM,uBAAuB,CAAC;AA8vBpE,eAAO,MAAM,uBAAuB,EAAE,SAAS,EACX,CAAC"}