n8n-atom-mcp 0.0.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.
Files changed (794) hide show
  1. package/.env.example +220 -0
  2. package/LICENSE +21 -0
  3. package/README.md +78 -0
  4. package/data/nodes.db +0 -0
  5. package/dist/community/community-node-fetcher.d.ts +118 -0
  6. package/dist/community/community-node-fetcher.d.ts.map +1 -0
  7. package/dist/community/community-node-fetcher.js +239 -0
  8. package/dist/community/community-node-fetcher.js.map +1 -0
  9. package/dist/community/community-node-service.d.ts +42 -0
  10. package/dist/community/community-node-service.d.ts.map +1 -0
  11. package/dist/community/community-node-service.js +210 -0
  12. package/dist/community/community-node-service.js.map +1 -0
  13. package/dist/community/documentation-batch-processor.d.ts +33 -0
  14. package/dist/community/documentation-batch-processor.d.ts.map +1 -0
  15. package/dist/community/documentation-batch-processor.js +156 -0
  16. package/dist/community/documentation-batch-processor.js.map +1 -0
  17. package/dist/community/documentation-generator.d.ts +65 -0
  18. package/dist/community/documentation-generator.d.ts.map +1 -0
  19. package/dist/community/documentation-generator.js +220 -0
  20. package/dist/community/documentation-generator.js.map +1 -0
  21. package/dist/community/index.d.ts +5 -0
  22. package/dist/community/index.d.ts.map +1 -0
  23. package/dist/community/index.js +14 -0
  24. package/dist/community/index.js.map +1 -0
  25. package/dist/config/n8n-api.d.ts +15 -0
  26. package/dist/config/n8n-api.d.ts.map +1 -0
  27. package/dist/config/n8n-api.js +53 -0
  28. package/dist/config/n8n-api.js.map +1 -0
  29. package/dist/constants/type-structures.d.ts +123 -0
  30. package/dist/constants/type-structures.d.ts.map +1 -0
  31. package/dist/constants/type-structures.js +654 -0
  32. package/dist/constants/type-structures.js.map +1 -0
  33. package/dist/database/database-adapter.d.ts +33 -0
  34. package/dist/database/database-adapter.d.ts.map +1 -0
  35. package/dist/database/database-adapter.js +420 -0
  36. package/dist/database/database-adapter.js.map +1 -0
  37. package/dist/database/node-repository.d.ts +152 -0
  38. package/dist/database/node-repository.d.ts.map +1 -0
  39. package/dist/database/node-repository.js +791 -0
  40. package/dist/database/node-repository.js.map +1 -0
  41. package/dist/errors/validation-service-error.d.ts +10 -0
  42. package/dist/errors/validation-service-error.d.ts.map +1 -0
  43. package/dist/errors/validation-service-error.js +26 -0
  44. package/dist/errors/validation-service-error.js.map +1 -0
  45. package/dist/http-server-single-session.d.ts +52 -0
  46. package/dist/http-server-single-session.d.ts.map +1 -0
  47. package/dist/http-server-single-session.js +1180 -0
  48. package/dist/http-server-single-session.js.map +1 -0
  49. package/dist/http-server.d.ts +9 -0
  50. package/dist/http-server.d.ts.map +1 -0
  51. package/dist/http-server.js +481 -0
  52. package/dist/http-server.js.map +1 -0
  53. package/dist/index.d.ts +11 -0
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +20 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/loaders/node-loader.d.ts +11 -0
  58. package/dist/loaders/node-loader.d.ts.map +1 -0
  59. package/dist/loaders/node-loader.js +79 -0
  60. package/dist/loaders/node-loader.js.map +1 -0
  61. package/dist/mappers/docs-mapper.d.ts +7 -0
  62. package/dist/mappers/docs-mapper.d.ts.map +1 -0
  63. package/dist/mappers/docs-mapper.js +106 -0
  64. package/dist/mappers/docs-mapper.js.map +1 -0
  65. package/dist/mcp/handlers-n8n-manager.d.ts +58 -0
  66. package/dist/mcp/handlers-n8n-manager.d.ts.map +1 -0
  67. package/dist/mcp/handlers-n8n-manager.js +3299 -0
  68. package/dist/mcp/handlers-n8n-manager.js.map +1 -0
  69. package/dist/mcp/handlers-workflow-diff.d.ts +5 -0
  70. package/dist/mcp/handlers-workflow-diff.d.ts.map +1 -0
  71. package/dist/mcp/handlers-workflow-diff.js +461 -0
  72. package/dist/mcp/handlers-workflow-diff.js.map +1 -0
  73. package/dist/mcp/index.d.ts +3 -0
  74. package/dist/mcp/index.d.ts.map +1 -0
  75. package/dist/mcp/index.js +228 -0
  76. package/dist/mcp/index.js.map +1 -0
  77. package/dist/mcp/server.d.ts +82 -0
  78. package/dist/mcp/server.d.ts.map +1 -0
  79. package/dist/mcp/server.js +3006 -0
  80. package/dist/mcp/server.js.map +1 -0
  81. package/dist/mcp/stdio-wrapper.d.ts +3 -0
  82. package/dist/mcp/stdio-wrapper.d.ts.map +1 -0
  83. package/dist/mcp/stdio-wrapper.js +81 -0
  84. package/dist/mcp/stdio-wrapper.js.map +1 -0
  85. package/dist/mcp/tool-docs/configuration/get-node.d.ts +3 -0
  86. package/dist/mcp/tool-docs/configuration/get-node.d.ts.map +1 -0
  87. package/dist/mcp/tool-docs/configuration/get-node.js +90 -0
  88. package/dist/mcp/tool-docs/configuration/get-node.js.map +1 -0
  89. package/dist/mcp/tool-docs/configuration/index.d.ts +2 -0
  90. package/dist/mcp/tool-docs/configuration/index.d.ts.map +1 -0
  91. package/dist/mcp/tool-docs/configuration/index.js +6 -0
  92. package/dist/mcp/tool-docs/configuration/index.js.map +1 -0
  93. package/dist/mcp/tool-docs/discovery/index.d.ts +2 -0
  94. package/dist/mcp/tool-docs/discovery/index.d.ts.map +1 -0
  95. package/dist/mcp/tool-docs/discovery/index.js +6 -0
  96. package/dist/mcp/tool-docs/discovery/index.js.map +1 -0
  97. package/dist/mcp/tool-docs/discovery/search-nodes.d.ts +3 -0
  98. package/dist/mcp/tool-docs/discovery/search-nodes.d.ts.map +1 -0
  99. package/dist/mcp/tool-docs/discovery/search-nodes.js +70 -0
  100. package/dist/mcp/tool-docs/discovery/search-nodes.js.map +1 -0
  101. package/dist/mcp/tool-docs/guides/ai-agents-guide.d.ts +3 -0
  102. package/dist/mcp/tool-docs/guides/ai-agents-guide.d.ts.map +1 -0
  103. package/dist/mcp/tool-docs/guides/ai-agents-guide.js +739 -0
  104. package/dist/mcp/tool-docs/guides/ai-agents-guide.js.map +1 -0
  105. package/dist/mcp/tool-docs/guides/index.d.ts +2 -0
  106. package/dist/mcp/tool-docs/guides/index.d.ts.map +1 -0
  107. package/dist/mcp/tool-docs/guides/index.js +6 -0
  108. package/dist/mcp/tool-docs/guides/index.js.map +1 -0
  109. package/dist/mcp/tool-docs/index.d.ts +4 -0
  110. package/dist/mcp/tool-docs/index.d.ts.map +1 -0
  111. package/dist/mcp/tool-docs/index.js +34 -0
  112. package/dist/mcp/tool-docs/index.js.map +1 -0
  113. package/dist/mcp/tool-docs/system/index.d.ts +3 -0
  114. package/dist/mcp/tool-docs/system/index.d.ts.map +1 -0
  115. package/dist/mcp/tool-docs/system/index.js +8 -0
  116. package/dist/mcp/tool-docs/system/index.js.map +1 -0
  117. package/dist/mcp/tool-docs/system/n8n-diagnostic.d.ts +3 -0
  118. package/dist/mcp/tool-docs/system/n8n-diagnostic.d.ts.map +1 -0
  119. package/dist/mcp/tool-docs/system/n8n-diagnostic.js +99 -0
  120. package/dist/mcp/tool-docs/system/n8n-diagnostic.js.map +1 -0
  121. package/dist/mcp/tool-docs/system/n8n-health-check.d.ts +3 -0
  122. package/dist/mcp/tool-docs/system/n8n-health-check.d.ts.map +1 -0
  123. package/dist/mcp/tool-docs/system/n8n-health-check.js +102 -0
  124. package/dist/mcp/tool-docs/system/n8n-health-check.js.map +1 -0
  125. package/dist/mcp/tool-docs/system/n8n-list-available-tools.d.ts +3 -0
  126. package/dist/mcp/tool-docs/system/n8n-list-available-tools.d.ts.map +1 -0
  127. package/dist/mcp/tool-docs/system/n8n-list-available-tools.js +75 -0
  128. package/dist/mcp/tool-docs/system/n8n-list-available-tools.js.map +1 -0
  129. package/dist/mcp/tool-docs/system/tools-documentation.d.ts +3 -0
  130. package/dist/mcp/tool-docs/system/tools-documentation.d.ts.map +1 -0
  131. package/dist/mcp/tool-docs/system/tools-documentation.js +65 -0
  132. package/dist/mcp/tool-docs/system/tools-documentation.js.map +1 -0
  133. package/dist/mcp/tool-docs/templates/get-template.d.ts +3 -0
  134. package/dist/mcp/tool-docs/templates/get-template.d.ts.map +1 -0
  135. package/dist/mcp/tool-docs/templates/get-template.js +84 -0
  136. package/dist/mcp/tool-docs/templates/get-template.js.map +1 -0
  137. package/dist/mcp/tool-docs/templates/index.d.ts +3 -0
  138. package/dist/mcp/tool-docs/templates/index.d.ts.map +1 -0
  139. package/dist/mcp/tool-docs/templates/index.js +8 -0
  140. package/dist/mcp/tool-docs/templates/index.js.map +1 -0
  141. package/dist/mcp/tool-docs/templates/search-templates.d.ts +3 -0
  142. package/dist/mcp/tool-docs/templates/search-templates.d.ts.map +1 -0
  143. package/dist/mcp/tool-docs/templates/search-templates.js +143 -0
  144. package/dist/mcp/tool-docs/templates/search-templates.js.map +1 -0
  145. package/dist/mcp/tool-docs/types.d.ts +32 -0
  146. package/dist/mcp/tool-docs/types.d.ts.map +1 -0
  147. package/dist/mcp/tool-docs/types.js +3 -0
  148. package/dist/mcp/tool-docs/types.js.map +1 -0
  149. package/dist/mcp/tool-docs/validation/index.d.ts +3 -0
  150. package/dist/mcp/tool-docs/validation/index.d.ts.map +1 -0
  151. package/dist/mcp/tool-docs/validation/index.js +8 -0
  152. package/dist/mcp/tool-docs/validation/index.js.map +1 -0
  153. package/dist/mcp/tool-docs/validation/validate-node.d.ts +3 -0
  154. package/dist/mcp/tool-docs/validation/validate-node.d.ts.map +1 -0
  155. package/dist/mcp/tool-docs/validation/validate-node.js +82 -0
  156. package/dist/mcp/tool-docs/validation/validate-node.js.map +1 -0
  157. package/dist/mcp/tool-docs/validation/validate-workflow.d.ts +3 -0
  158. package/dist/mcp/tool-docs/validation/validate-workflow.d.ts.map +1 -0
  159. package/dist/mcp/tool-docs/validation/validate-workflow.js +86 -0
  160. package/dist/mcp/tool-docs/validation/validate-workflow.js.map +1 -0
  161. package/dist/mcp/tool-docs/workflow_management/index.d.ts +13 -0
  162. package/dist/mcp/tool-docs/workflow_management/index.d.ts.map +1 -0
  163. package/dist/mcp/tool-docs/workflow_management/index.js +28 -0
  164. package/dist/mcp/tool-docs/workflow_management/index.js.map +1 -0
  165. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.d.ts +3 -0
  166. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.d.ts.map +1 -0
  167. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.js +162 -0
  168. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.js.map +1 -0
  169. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.d.ts +3 -0
  170. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.d.ts.map +1 -0
  171. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.js +102 -0
  172. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.js.map +1 -0
  173. package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.d.ts +3 -0
  174. package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.d.ts.map +1 -0
  175. package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.js +52 -0
  176. package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.js.map +1 -0
  177. package/dist/mcp/tool-docs/workflow_management/n8n-deploy-template.d.ts +3 -0
  178. package/dist/mcp/tool-docs/workflow_management/n8n-deploy-template.d.ts.map +1 -0
  179. package/dist/mcp/tool-docs/workflow_management/n8n-deploy-template.js +73 -0
  180. package/dist/mcp/tool-docs/workflow_management/n8n-deploy-template.js.map +1 -0
  181. package/dist/mcp/tool-docs/workflow_management/n8n-executions.d.ts +3 -0
  182. package/dist/mcp/tool-docs/workflow_management/n8n-executions.d.ts.map +1 -0
  183. package/dist/mcp/tool-docs/workflow_management/n8n-executions.js +109 -0
  184. package/dist/mcp/tool-docs/workflow_management/n8n-executions.js.map +1 -0
  185. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.d.ts +3 -0
  186. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.d.ts.map +1 -0
  187. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.js +68 -0
  188. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.js.map +1 -0
  189. package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.d.ts +3 -0
  190. package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.d.ts.map +1 -0
  191. package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.js +57 -0
  192. package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.js.map +1 -0
  193. package/dist/mcp/tool-docs/workflow_management/n8n-test-workflow.d.ts +3 -0
  194. package/dist/mcp/tool-docs/workflow_management/n8n-test-workflow.d.ts.map +1 -0
  195. package/dist/mcp/tool-docs/workflow_management/n8n-test-workflow.js +140 -0
  196. package/dist/mcp/tool-docs/workflow_management/n8n-test-workflow.js.map +1 -0
  197. package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.d.ts +3 -0
  198. package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.d.ts.map +1 -0
  199. package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.js +61 -0
  200. package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.js.map +1 -0
  201. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.d.ts +3 -0
  202. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.d.ts.map +1 -0
  203. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.js +420 -0
  204. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.js.map +1 -0
  205. package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.d.ts +3 -0
  206. package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.d.ts.map +1 -0
  207. package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.js +73 -0
  208. package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.js.map +1 -0
  209. package/dist/mcp/tool-docs/workflow_management/n8n-workflow-versions.d.ts +3 -0
  210. package/dist/mcp/tool-docs/workflow_management/n8n-workflow-versions.d.ts.map +1 -0
  211. package/dist/mcp/tool-docs/workflow_management/n8n-workflow-versions.js +170 -0
  212. package/dist/mcp/tool-docs/workflow_management/n8n-workflow-versions.js.map +1 -0
  213. package/dist/mcp/tools-documentation.d.ts +6 -0
  214. package/dist/mcp/tools-documentation.d.ts.map +1 -0
  215. package/dist/mcp/tools-documentation.js +682 -0
  216. package/dist/mcp/tools-documentation.js.map +1 -0
  217. package/dist/mcp/tools-file-operations.d.ts +154 -0
  218. package/dist/mcp/tools-file-operations.d.ts.map +1 -0
  219. package/dist/mcp/tools-file-operations.js +213 -0
  220. package/dist/mcp/tools-file-operations.js.map +1 -0
  221. package/dist/mcp/tools-n8n-friendly.d.ts +6 -0
  222. package/dist/mcp/tools-n8n-friendly.d.ts.map +1 -0
  223. package/dist/mcp/tools-n8n-friendly.js +89 -0
  224. package/dist/mcp/tools-n8n-friendly.js.map +1 -0
  225. package/dist/mcp/tools-n8n-manager.d.ts +3 -0
  226. package/dist/mcp/tools-n8n-manager.d.ts.map +1 -0
  227. package/dist/mcp/tools-n8n-manager.js +1320 -0
  228. package/dist/mcp/tools-n8n-manager.js.map +1 -0
  229. package/dist/mcp/tools.d.ts +3 -0
  230. package/dist/mcp/tools.d.ts.map +1 -0
  231. package/dist/mcp/tools.js +424 -0
  232. package/dist/mcp/tools.js.map +1 -0
  233. package/dist/mcp/workflow-examples.d.ts +76 -0
  234. package/dist/mcp/workflow-examples.d.ts.map +1 -0
  235. package/dist/mcp/workflow-examples.js +111 -0
  236. package/dist/mcp/workflow-examples.js.map +1 -0
  237. package/dist/mcp-engine.d.ts +36 -0
  238. package/dist/mcp-engine.d.ts.map +1 -0
  239. package/dist/mcp-engine.js +77 -0
  240. package/dist/mcp-engine.js.map +1 -0
  241. package/dist/mcp-tools-engine.d.ts +47 -0
  242. package/dist/mcp-tools-engine.d.ts.map +1 -0
  243. package/dist/mcp-tools-engine.js +89 -0
  244. package/dist/mcp-tools-engine.js.map +1 -0
  245. package/dist/n8n/MCPApi.credentials.d.ts +8 -0
  246. package/dist/n8n/MCPApi.credentials.d.ts.map +1 -0
  247. package/dist/n8n/MCPApi.credentials.js +53 -0
  248. package/dist/n8n/MCPApi.credentials.js.map +1 -0
  249. package/dist/n8n/MCPNode.node.d.ts +13 -0
  250. package/dist/n8n/MCPNode.node.d.ts.map +1 -0
  251. package/dist/n8n/MCPNode.node.js +260 -0
  252. package/dist/n8n/MCPNode.node.js.map +1 -0
  253. package/dist/parsers/node-parser.d.ts +38 -0
  254. package/dist/parsers/node-parser.d.ts.map +1 -0
  255. package/dist/parsers/node-parser.js +250 -0
  256. package/dist/parsers/node-parser.js.map +1 -0
  257. package/dist/parsers/property-extractor.d.ts +11 -0
  258. package/dist/parsers/property-extractor.d.ts.map +1 -0
  259. package/dist/parsers/property-extractor.js +172 -0
  260. package/dist/parsers/property-extractor.js.map +1 -0
  261. package/dist/parsers/simple-parser.d.ts +25 -0
  262. package/dist/parsers/simple-parser.d.ts.map +1 -0
  263. package/dist/parsers/simple-parser.js +212 -0
  264. package/dist/parsers/simple-parser.js.map +1 -0
  265. package/dist/scripts/debug-http-search.d.ts +3 -0
  266. package/dist/scripts/debug-http-search.d.ts.map +1 -0
  267. package/dist/scripts/debug-http-search.js +57 -0
  268. package/dist/scripts/debug-http-search.js.map +1 -0
  269. package/dist/scripts/extract-from-docker.d.ts +3 -0
  270. package/dist/scripts/extract-from-docker.d.ts.map +1 -0
  271. package/dist/scripts/extract-from-docker.js +210 -0
  272. package/dist/scripts/extract-from-docker.js.map +1 -0
  273. package/dist/scripts/fetch-community-nodes.d.ts +3 -0
  274. package/dist/scripts/fetch-community-nodes.d.ts.map +1 -0
  275. package/dist/scripts/fetch-community-nodes.js +114 -0
  276. package/dist/scripts/fetch-community-nodes.js.map +1 -0
  277. package/dist/scripts/fetch-templates-robust.d.ts +4 -0
  278. package/dist/scripts/fetch-templates-robust.d.ts.map +1 -0
  279. package/dist/scripts/fetch-templates-robust.js +132 -0
  280. package/dist/scripts/fetch-templates-robust.js.map +1 -0
  281. package/dist/scripts/fetch-templates.d.ts +4 -0
  282. package/dist/scripts/fetch-templates.d.ts.map +1 -0
  283. package/dist/scripts/fetch-templates.js +411 -0
  284. package/dist/scripts/fetch-templates.js.map +1 -0
  285. package/dist/scripts/generate-community-docs.d.ts +3 -0
  286. package/dist/scripts/generate-community-docs.d.ts.map +1 -0
  287. package/dist/scripts/generate-community-docs.js +183 -0
  288. package/dist/scripts/generate-community-docs.js.map +1 -0
  289. package/dist/scripts/migrate-readme-columns.d.ts +2 -0
  290. package/dist/scripts/migrate-readme-columns.d.ts.map +1 -0
  291. package/dist/scripts/migrate-readme-columns.js +62 -0
  292. package/dist/scripts/migrate-readme-columns.js.map +1 -0
  293. package/dist/scripts/rebuild-database.d.ts +4 -0
  294. package/dist/scripts/rebuild-database.d.ts.map +1 -0
  295. package/dist/scripts/rebuild-database.js +95 -0
  296. package/dist/scripts/rebuild-database.js.map +1 -0
  297. package/dist/scripts/rebuild-optimized.d.ts +3 -0
  298. package/dist/scripts/rebuild-optimized.d.ts.map +1 -0
  299. package/dist/scripts/rebuild-optimized.js +198 -0
  300. package/dist/scripts/rebuild-optimized.js.map +1 -0
  301. package/dist/scripts/rebuild.d.ts +3 -0
  302. package/dist/scripts/rebuild.d.ts.map +1 -0
  303. package/dist/scripts/rebuild.js +258 -0
  304. package/dist/scripts/rebuild.js.map +1 -0
  305. package/dist/scripts/sanitize-templates.d.ts +3 -0
  306. package/dist/scripts/sanitize-templates.d.ts.map +1 -0
  307. package/dist/scripts/sanitize-templates.js +88 -0
  308. package/dist/scripts/sanitize-templates.js.map +1 -0
  309. package/dist/scripts/seed-canonical-ai-examples.d.ts +4 -0
  310. package/dist/scripts/seed-canonical-ai-examples.d.ts.map +1 -0
  311. package/dist/scripts/seed-canonical-ai-examples.js +121 -0
  312. package/dist/scripts/seed-canonical-ai-examples.js.map +1 -0
  313. package/dist/scripts/test-autofix-documentation.d.ts +3 -0
  314. package/dist/scripts/test-autofix-documentation.d.ts.map +1 -0
  315. package/dist/scripts/test-autofix-documentation.js +103 -0
  316. package/dist/scripts/test-autofix-documentation.js.map +1 -0
  317. package/dist/scripts/test-autofix-workflow.d.ts +2 -0
  318. package/dist/scripts/test-autofix-workflow.d.ts.map +1 -0
  319. package/dist/scripts/test-autofix-workflow.js +223 -0
  320. package/dist/scripts/test-autofix-workflow.js.map +1 -0
  321. package/dist/scripts/test-execution-filtering.d.ts +3 -0
  322. package/dist/scripts/test-execution-filtering.d.ts.map +1 -0
  323. package/dist/scripts/test-execution-filtering.js +206 -0
  324. package/dist/scripts/test-execution-filtering.js.map +1 -0
  325. package/dist/scripts/test-node-suggestions.d.ts +3 -0
  326. package/dist/scripts/test-node-suggestions.d.ts.map +1 -0
  327. package/dist/scripts/test-node-suggestions.js +165 -0
  328. package/dist/scripts/test-node-suggestions.js.map +1 -0
  329. package/dist/scripts/test-protocol-negotiation.d.ts +3 -0
  330. package/dist/scripts/test-protocol-negotiation.d.ts.map +1 -0
  331. package/dist/scripts/test-protocol-negotiation.js +154 -0
  332. package/dist/scripts/test-protocol-negotiation.js.map +1 -0
  333. package/dist/scripts/test-summary.d.ts +3 -0
  334. package/dist/scripts/test-summary.d.ts.map +1 -0
  335. package/dist/scripts/test-summary.js +77 -0
  336. package/dist/scripts/test-summary.js.map +1 -0
  337. package/dist/scripts/test-telemetry-mutations-verbose.d.ts +2 -0
  338. package/dist/scripts/test-telemetry-mutations-verbose.d.ts.map +1 -0
  339. package/dist/scripts/test-telemetry-mutations-verbose.js +133 -0
  340. package/dist/scripts/test-telemetry-mutations-verbose.js.map +1 -0
  341. package/dist/scripts/test-telemetry-mutations.d.ts +2 -0
  342. package/dist/scripts/test-telemetry-mutations.d.ts.map +1 -0
  343. package/dist/scripts/test-telemetry-mutations.js +129 -0
  344. package/dist/scripts/test-telemetry-mutations.js.map +1 -0
  345. package/dist/scripts/test-webhook-autofix.d.ts +3 -0
  346. package/dist/scripts/test-webhook-autofix.d.ts.map +1 -0
  347. package/dist/scripts/test-webhook-autofix.js +117 -0
  348. package/dist/scripts/test-webhook-autofix.js.map +1 -0
  349. package/dist/scripts/validate.d.ts +3 -0
  350. package/dist/scripts/validate.d.ts.map +1 -0
  351. package/dist/scripts/validate.js +121 -0
  352. package/dist/scripts/validate.js.map +1 -0
  353. package/dist/scripts/validation-summary.d.ts +3 -0
  354. package/dist/scripts/validation-summary.d.ts.map +1 -0
  355. package/dist/scripts/validation-summary.js +135 -0
  356. package/dist/scripts/validation-summary.js.map +1 -0
  357. package/dist/services/ai-node-validator.d.ts +12 -0
  358. package/dist/services/ai-node-validator.d.ts.map +1 -0
  359. package/dist/services/ai-node-validator.js +429 -0
  360. package/dist/services/ai-node-validator.js.map +1 -0
  361. package/dist/services/ai-tool-validators.d.ts +58 -0
  362. package/dist/services/ai-tool-validators.d.ts.map +1 -0
  363. package/dist/services/ai-tool-validators.js +438 -0
  364. package/dist/services/ai-tool-validators.js.map +1 -0
  365. package/dist/services/breaking-change-detector.d.ts +38 -0
  366. package/dist/services/breaking-change-detector.d.ts.map +1 -0
  367. package/dist/services/breaking-change-detector.js +184 -0
  368. package/dist/services/breaking-change-detector.js.map +1 -0
  369. package/dist/services/breaking-changes-registry.d.ts +28 -0
  370. package/dist/services/breaking-changes-registry.d.ts.map +1 -0
  371. package/dist/services/breaking-changes-registry.js +200 -0
  372. package/dist/services/breaking-changes-registry.js.map +1 -0
  373. package/dist/services/community-package-service.d.ts +69 -0
  374. package/dist/services/community-package-service.d.ts.map +1 -0
  375. package/dist/services/community-package-service.js +202 -0
  376. package/dist/services/community-package-service.js.map +1 -0
  377. package/dist/services/confidence-scorer.d.ts +24 -0
  378. package/dist/services/confidence-scorer.d.ts.map +1 -0
  379. package/dist/services/confidence-scorer.js +139 -0
  380. package/dist/services/confidence-scorer.js.map +1 -0
  381. package/dist/services/config-validator.d.ts +49 -0
  382. package/dist/services/config-validator.d.ts.map +1 -0
  383. package/dist/services/config-validator.js +724 -0
  384. package/dist/services/config-validator.js.map +1 -0
  385. package/dist/services/enhanced-config-validator.d.ts +54 -0
  386. package/dist/services/enhanced-config-validator.d.ts.map +1 -0
  387. package/dist/services/enhanced-config-validator.js +789 -0
  388. package/dist/services/enhanced-config-validator.js.map +1 -0
  389. package/dist/services/error-execution-processor.d.ts +9 -0
  390. package/dist/services/error-execution-processor.d.ts.map +1 -0
  391. package/dist/services/error-execution-processor.js +380 -0
  392. package/dist/services/error-execution-processor.js.map +1 -0
  393. package/dist/services/example-generator.d.ts +14 -0
  394. package/dist/services/example-generator.d.ts.map +1 -0
  395. package/dist/services/example-generator.js +970 -0
  396. package/dist/services/example-generator.js.map +1 -0
  397. package/dist/services/execution-processor.d.ts +8 -0
  398. package/dist/services/execution-processor.d.ts.map +1 -0
  399. package/dist/services/execution-processor.js +381 -0
  400. package/dist/services/execution-processor.js.map +1 -0
  401. package/dist/services/expression-format-validator.d.ts +33 -0
  402. package/dist/services/expression-format-validator.d.ts.map +1 -0
  403. package/dist/services/expression-format-validator.js +209 -0
  404. package/dist/services/expression-format-validator.js.map +1 -0
  405. package/dist/services/expression-validator.d.ts +27 -0
  406. package/dist/services/expression-validator.d.ts.map +1 -0
  407. package/dist/services/expression-validator.js +187 -0
  408. package/dist/services/expression-validator.js.map +1 -0
  409. package/dist/services/installed-node-sync-service.d.ts +32 -0
  410. package/dist/services/installed-node-sync-service.d.ts.map +1 -0
  411. package/dist/services/installed-node-sync-service.js +190 -0
  412. package/dist/services/installed-node-sync-service.js.map +1 -0
  413. package/dist/services/n8n-api-client.d.ts +48 -0
  414. package/dist/services/n8n-api-client.d.ts.map +1 -0
  415. package/dist/services/n8n-api-client.js +458 -0
  416. package/dist/services/n8n-api-client.js.map +1 -0
  417. package/dist/services/n8n-file-format.d.ts +58 -0
  418. package/dist/services/n8n-file-format.d.ts.map +1 -0
  419. package/dist/services/n8n-file-format.js +203 -0
  420. package/dist/services/n8n-file-format.js.map +1 -0
  421. package/dist/services/n8n-validation.d.ts +273 -0
  422. package/dist/services/n8n-validation.d.ts.map +1 -0
  423. package/dist/services/n8n-validation.js +491 -0
  424. package/dist/services/n8n-validation.js.map +1 -0
  425. package/dist/services/n8n-version.d.ts +23 -0
  426. package/dist/services/n8n-version.d.ts.map +1 -0
  427. package/dist/services/n8n-version.js +151 -0
  428. package/dist/services/n8n-version.js.map +1 -0
  429. package/dist/services/node-documentation-service.d.ts +70 -0
  430. package/dist/services/node-documentation-service.d.ts.map +1 -0
  431. package/dist/services/node-documentation-service.js +518 -0
  432. package/dist/services/node-documentation-service.js.map +1 -0
  433. package/dist/services/node-migration-service.d.ts +44 -0
  434. package/dist/services/node-migration-service.d.ts.map +1 -0
  435. package/dist/services/node-migration-service.js +231 -0
  436. package/dist/services/node-migration-service.js.map +1 -0
  437. package/dist/services/node-sanitizer.d.ts +5 -0
  438. package/dist/services/node-sanitizer.d.ts.map +1 -0
  439. package/dist/services/node-sanitizer.js +225 -0
  440. package/dist/services/node-sanitizer.js.map +1 -0
  441. package/dist/services/node-similarity-service.d.ts +51 -0
  442. package/dist/services/node-similarity-service.d.ts.map +1 -0
  443. package/dist/services/node-similarity-service.js +352 -0
  444. package/dist/services/node-similarity-service.js.map +1 -0
  445. package/dist/services/node-specific-validators.d.ts +37 -0
  446. package/dist/services/node-specific-validators.d.ts.map +1 -0
  447. package/dist/services/node-specific-validators.js +1331 -0
  448. package/dist/services/node-specific-validators.js.map +1 -0
  449. package/dist/services/node-version-service.d.ts +63 -0
  450. package/dist/services/node-version-service.d.ts.map +1 -0
  451. package/dist/services/node-version-service.js +215 -0
  452. package/dist/services/node-version-service.js.map +1 -0
  453. package/dist/services/operation-similarity-service.d.ts +32 -0
  454. package/dist/services/operation-similarity-service.d.ts.map +1 -0
  455. package/dist/services/operation-similarity-service.js +341 -0
  456. package/dist/services/operation-similarity-service.js.map +1 -0
  457. package/dist/services/post-update-validator.d.ts +59 -0
  458. package/dist/services/post-update-validator.d.ts.map +1 -0
  459. package/dist/services/post-update-validator.js +231 -0
  460. package/dist/services/post-update-validator.js.map +1 -0
  461. package/dist/services/property-dependencies.d.ts +36 -0
  462. package/dist/services/property-dependencies.d.ts.map +1 -0
  463. package/dist/services/property-dependencies.js +168 -0
  464. package/dist/services/property-dependencies.js.map +1 -0
  465. package/dist/services/property-filter.d.ts +44 -0
  466. package/dist/services/property-filter.d.ts.map +1 -0
  467. package/dist/services/property-filter.js +395 -0
  468. package/dist/services/property-filter.js.map +1 -0
  469. package/dist/services/resource-similarity-service.d.ts +33 -0
  470. package/dist/services/resource-similarity-service.d.ts.map +1 -0
  471. package/dist/services/resource-similarity-service.js +358 -0
  472. package/dist/services/resource-similarity-service.js.map +1 -0
  473. package/dist/services/sqlite-storage-service.d.ts +11 -0
  474. package/dist/services/sqlite-storage-service.d.ts.map +1 -0
  475. package/dist/services/sqlite-storage-service.js +74 -0
  476. package/dist/services/sqlite-storage-service.js.map +1 -0
  477. package/dist/services/task-templates.d.ts +27 -0
  478. package/dist/services/task-templates.d.ts.map +1 -0
  479. package/dist/services/task-templates.js +1397 -0
  480. package/dist/services/task-templates.js.map +1 -0
  481. package/dist/services/tool-variant-generator.d.ts +10 -0
  482. package/dist/services/tool-variant-generator.d.ts.map +1 -0
  483. package/dist/services/tool-variant-generator.js +93 -0
  484. package/dist/services/tool-variant-generator.js.map +1 -0
  485. package/dist/services/type-structure-service.d.ts +23 -0
  486. package/dist/services/type-structure-service.d.ts.map +1 -0
  487. package/dist/services/type-structure-service.js +109 -0
  488. package/dist/services/type-structure-service.js.map +1 -0
  489. package/dist/services/universal-expression-validator.d.ts +20 -0
  490. package/dist/services/universal-expression-validator.d.ts.map +1 -0
  491. package/dist/services/universal-expression-validator.js +192 -0
  492. package/dist/services/universal-expression-validator.js.map +1 -0
  493. package/dist/services/workflow-analytics-service.d.ts +34 -0
  494. package/dist/services/workflow-analytics-service.d.ts.map +1 -0
  495. package/dist/services/workflow-analytics-service.js +144 -0
  496. package/dist/services/workflow-analytics-service.js.map +1 -0
  497. package/dist/services/workflow-auto-fixer.d.ts +74 -0
  498. package/dist/services/workflow-auto-fixer.d.ts.map +1 -0
  499. package/dist/services/workflow-auto-fixer.js +557 -0
  500. package/dist/services/workflow-auto-fixer.js.map +1 -0
  501. package/dist/services/workflow-comparison.d.ts +13 -0
  502. package/dist/services/workflow-comparison.d.ts.map +1 -0
  503. package/dist/services/workflow-comparison.js +306 -0
  504. package/dist/services/workflow-comparison.js.map +1 -0
  505. package/dist/services/workflow-debugging-service.d.ts +62 -0
  506. package/dist/services/workflow-debugging-service.d.ts.map +1 -0
  507. package/dist/services/workflow-debugging-service.js +153 -0
  508. package/dist/services/workflow-debugging-service.js.map +1 -0
  509. package/dist/services/workflow-diff-engine.d.ts +45 -0
  510. package/dist/services/workflow-diff-engine.d.ts.map +1 -0
  511. package/dist/services/workflow-diff-engine.js +830 -0
  512. package/dist/services/workflow-diff-engine.js.map +1 -0
  513. package/dist/services/workflow-validator.d.ts +112 -0
  514. package/dist/services/workflow-validator.d.ts.map +1 -0
  515. package/dist/services/workflow-validator.js +1328 -0
  516. package/dist/services/workflow-validator.js.map +1 -0
  517. package/dist/services/workflow-versioning-service.d.ts +102 -0
  518. package/dist/services/workflow-versioning-service.d.ts.map +1 -0
  519. package/dist/services/workflow-versioning-service.js +264 -0
  520. package/dist/services/workflow-versioning-service.js.map +1 -0
  521. package/dist/telemetry/batch-processor.d.ts +34 -0
  522. package/dist/telemetry/batch-processor.d.ts.map +1 -0
  523. package/dist/telemetry/batch-processor.js +337 -0
  524. package/dist/telemetry/batch-processor.js.map +1 -0
  525. package/dist/telemetry/config-manager.d.ts +32 -0
  526. package/dist/telemetry/config-manager.d.ts.map +1 -0
  527. package/dist/telemetry/config-manager.js +289 -0
  528. package/dist/telemetry/config-manager.js.map +1 -0
  529. package/dist/telemetry/early-error-logger.d.ts +26 -0
  530. package/dist/telemetry/early-error-logger.d.ts.map +1 -0
  531. package/dist/telemetry/early-error-logger.js +187 -0
  532. package/dist/telemetry/early-error-logger.js.map +1 -0
  533. package/dist/telemetry/error-sanitization-utils.d.ts +2 -0
  534. package/dist/telemetry/error-sanitization-utils.d.ts.map +1 -0
  535. package/dist/telemetry/error-sanitization-utils.js +37 -0
  536. package/dist/telemetry/error-sanitization-utils.js.map +1 -0
  537. package/dist/telemetry/error-sanitizer.d.ts +4 -0
  538. package/dist/telemetry/error-sanitizer.d.ts.map +1 -0
  539. package/dist/telemetry/error-sanitizer.js +45 -0
  540. package/dist/telemetry/error-sanitizer.js.map +1 -0
  541. package/dist/telemetry/event-tracker.d.ts +71 -0
  542. package/dist/telemetry/event-tracker.d.ts.map +1 -0
  543. package/dist/telemetry/event-tracker.js +356 -0
  544. package/dist/telemetry/event-tracker.js.map +1 -0
  545. package/dist/telemetry/event-validator.d.ts +78 -0
  546. package/dist/telemetry/event-validator.d.ts.map +1 -0
  547. package/dist/telemetry/event-validator.js +227 -0
  548. package/dist/telemetry/event-validator.js.map +1 -0
  549. package/dist/telemetry/index.d.ts +5 -0
  550. package/dist/telemetry/index.d.ts.map +1 -0
  551. package/dist/telemetry/index.js +11 -0
  552. package/dist/telemetry/index.js.map +1 -0
  553. package/dist/telemetry/intent-classifier.d.ts +11 -0
  554. package/dist/telemetry/intent-classifier.d.ts.map +1 -0
  555. package/dist/telemetry/intent-classifier.js +141 -0
  556. package/dist/telemetry/intent-classifier.js.map +1 -0
  557. package/dist/telemetry/intent-sanitizer.d.ts +9 -0
  558. package/dist/telemetry/intent-sanitizer.d.ts.map +1 -0
  559. package/dist/telemetry/intent-sanitizer.js +103 -0
  560. package/dist/telemetry/intent-sanitizer.js.map +1 -0
  561. package/dist/telemetry/mutation-tracker.d.ts +15 -0
  562. package/dist/telemetry/mutation-tracker.d.ts.map +1 -0
  563. package/dist/telemetry/mutation-tracker.js +177 -0
  564. package/dist/telemetry/mutation-tracker.js.map +1 -0
  565. package/dist/telemetry/mutation-types.d.ts +106 -0
  566. package/dist/telemetry/mutation-types.d.ts.map +1 -0
  567. package/dist/telemetry/mutation-types.js +18 -0
  568. package/dist/telemetry/mutation-types.js.map +1 -0
  569. package/dist/telemetry/mutation-validator.d.ts +20 -0
  570. package/dist/telemetry/mutation-validator.d.ts.map +1 -0
  571. package/dist/telemetry/mutation-validator.js +144 -0
  572. package/dist/telemetry/mutation-validator.js.map +1 -0
  573. package/dist/telemetry/performance-monitor.d.ts +113 -0
  574. package/dist/telemetry/performance-monitor.d.ts.map +1 -0
  575. package/dist/telemetry/performance-monitor.js +208 -0
  576. package/dist/telemetry/performance-monitor.js.map +1 -0
  577. package/dist/telemetry/rate-limiter.d.ts +30 -0
  578. package/dist/telemetry/rate-limiter.d.ts.map +1 -0
  579. package/dist/telemetry/rate-limiter.js +103 -0
  580. package/dist/telemetry/rate-limiter.js.map +1 -0
  581. package/dist/telemetry/startup-checkpoints.d.ts +26 -0
  582. package/dist/telemetry/startup-checkpoints.d.ts.map +1 -0
  583. package/dist/telemetry/startup-checkpoints.js +65 -0
  584. package/dist/telemetry/startup-checkpoints.js.map +1 -0
  585. package/dist/telemetry/telemetry-error.d.ts +44 -0
  586. package/dist/telemetry/telemetry-error.d.ts.map +1 -0
  587. package/dist/telemetry/telemetry-error.js +153 -0
  588. package/dist/telemetry/telemetry-error.js.map +1 -0
  589. package/dist/telemetry/telemetry-manager.d.ts +130 -0
  590. package/dist/telemetry/telemetry-manager.d.ts.map +1 -0
  591. package/dist/telemetry/telemetry-manager.js +257 -0
  592. package/dist/telemetry/telemetry-manager.js.map +1 -0
  593. package/dist/telemetry/telemetry-types.d.ts +103 -0
  594. package/dist/telemetry/telemetry-types.d.ts.map +1 -0
  595. package/dist/telemetry/telemetry-types.js +29 -0
  596. package/dist/telemetry/telemetry-types.js.map +1 -0
  597. package/dist/telemetry/workflow-sanitizer.d.ts +34 -0
  598. package/dist/telemetry/workflow-sanitizer.d.ts.map +1 -0
  599. package/dist/telemetry/workflow-sanitizer.js +242 -0
  600. package/dist/telemetry/workflow-sanitizer.js.map +1 -0
  601. package/dist/templates/batch-processor.d.ts +35 -0
  602. package/dist/templates/batch-processor.d.ts.map +1 -0
  603. package/dist/templates/batch-processor.js +320 -0
  604. package/dist/templates/batch-processor.js.map +1 -0
  605. package/dist/templates/metadata-generator.d.ts +52 -0
  606. package/dist/templates/metadata-generator.d.ts.map +1 -0
  607. package/dist/templates/metadata-generator.js +252 -0
  608. package/dist/templates/metadata-generator.js.map +1 -0
  609. package/dist/templates/template-fetcher.d.ts +45 -0
  610. package/dist/templates/template-fetcher.d.ts.map +1 -0
  611. package/dist/templates/template-fetcher.js +122 -0
  612. package/dist/templates/template-fetcher.js.map +1 -0
  613. package/dist/templates/template-repository.d.ts +93 -0
  614. package/dist/templates/template-repository.d.ts.map +1 -0
  615. package/dist/templates/template-repository.js +644 -0
  616. package/dist/templates/template-repository.js.map +1 -0
  617. package/dist/templates/template-service.d.ts +79 -0
  618. package/dist/templates/template-service.d.ts.map +1 -0
  619. package/dist/templates/template-service.js +300 -0
  620. package/dist/templates/template-service.js.map +1 -0
  621. package/dist/triggers/handlers/base-handler.d.ts +21 -0
  622. package/dist/triggers/handlers/base-handler.d.ts.map +1 -0
  623. package/dist/triggers/handlers/base-handler.js +60 -0
  624. package/dist/triggers/handlers/base-handler.js.map +1 -0
  625. package/dist/triggers/handlers/chat-handler.d.ts +38 -0
  626. package/dist/triggers/handlers/chat-handler.d.ts.map +1 -0
  627. package/dist/triggers/handlers/chat-handler.js +129 -0
  628. package/dist/triggers/handlers/chat-handler.js.map +1 -0
  629. package/dist/triggers/handlers/form-handler.d.ts +35 -0
  630. package/dist/triggers/handlers/form-handler.d.ts.map +1 -0
  631. package/dist/triggers/handlers/form-handler.js +362 -0
  632. package/dist/triggers/handlers/form-handler.js.map +1 -0
  633. package/dist/triggers/handlers/webhook-handler.d.ts +38 -0
  634. package/dist/triggers/handlers/webhook-handler.d.ts.map +1 -0
  635. package/dist/triggers/handlers/webhook-handler.js +115 -0
  636. package/dist/triggers/handlers/webhook-handler.js.map +1 -0
  637. package/dist/triggers/index.d.ts +5 -0
  638. package/dist/triggers/index.d.ts.map +1 -0
  639. package/dist/triggers/index.js +14 -0
  640. package/dist/triggers/index.js.map +1 -0
  641. package/dist/triggers/trigger-detector.d.ts +6 -0
  642. package/dist/triggers/trigger-detector.d.ts.map +1 -0
  643. package/dist/triggers/trigger-detector.js +201 -0
  644. package/dist/triggers/trigger-detector.js.map +1 -0
  645. package/dist/triggers/trigger-registry.d.ts +18 -0
  646. package/dist/triggers/trigger-registry.d.ts.map +1 -0
  647. package/dist/triggers/trigger-registry.js +87 -0
  648. package/dist/triggers/trigger-registry.js.map +1 -0
  649. package/dist/triggers/types.d.ts +76 -0
  650. package/dist/triggers/types.d.ts.map +1 -0
  651. package/dist/triggers/types.js +3 -0
  652. package/dist/triggers/types.js.map +1 -0
  653. package/dist/types/index.d.ts +49 -0
  654. package/dist/types/index.d.ts.map +1 -0
  655. package/dist/types/index.js +21 -0
  656. package/dist/types/index.js.map +1 -0
  657. package/dist/types/instance-context.d.ts +20 -0
  658. package/dist/types/instance-context.d.ts.map +1 -0
  659. package/dist/types/instance-context.js +153 -0
  660. package/dist/types/instance-context.js.map +1 -0
  661. package/dist/types/n8n-api.d.ts +376 -0
  662. package/dist/types/n8n-api.d.ts.map +1 -0
  663. package/dist/types/n8n-api.js +10 -0
  664. package/dist/types/n8n-api.js.map +1 -0
  665. package/dist/types/node-types.d.ts +19 -0
  666. package/dist/types/node-types.d.ts.map +1 -0
  667. package/dist/types/node-types.js +62 -0
  668. package/dist/types/node-types.js.map +1 -0
  669. package/dist/types/session-state.d.ts +15 -0
  670. package/dist/types/session-state.d.ts.map +1 -0
  671. package/dist/types/session-state.js +3 -0
  672. package/dist/types/session-state.js.map +1 -0
  673. package/dist/types/type-structures.d.ts +42 -0
  674. package/dist/types/type-structures.d.ts.map +1 -0
  675. package/dist/types/type-structures.js +32 -0
  676. package/dist/types/type-structures.js.map +1 -0
  677. package/dist/types/workflow-comparison.d.ts +51 -0
  678. package/dist/types/workflow-comparison.d.ts.map +1 -0
  679. package/dist/types/workflow-comparison.js +3 -0
  680. package/dist/types/workflow-comparison.js.map +1 -0
  681. package/dist/types/workflow-diff.d.ts +148 -0
  682. package/dist/types/workflow-diff.d.ts.map +1 -0
  683. package/dist/types/workflow-diff.js +15 -0
  684. package/dist/types/workflow-diff.js.map +1 -0
  685. package/dist/utils/auth.d.ts +13 -0
  686. package/dist/utils/auth.d.ts.map +1 -0
  687. package/dist/utils/auth.js +82 -0
  688. package/dist/utils/auth.js.map +1 -0
  689. package/dist/utils/bridge.d.ts +12 -0
  690. package/dist/utils/bridge.d.ts.map +1 -0
  691. package/dist/utils/bridge.js +127 -0
  692. package/dist/utils/bridge.js.map +1 -0
  693. package/dist/utils/cache-utils.d.ts +58 -0
  694. package/dist/utils/cache-utils.d.ts.map +1 -0
  695. package/dist/utils/cache-utils.js +243 -0
  696. package/dist/utils/cache-utils.js.map +1 -0
  697. package/dist/utils/console-manager.d.ts +10 -0
  698. package/dist/utils/console-manager.d.ts.map +1 -0
  699. package/dist/utils/console-manager.js +63 -0
  700. package/dist/utils/console-manager.js.map +1 -0
  701. package/dist/utils/documentation-fetcher.d.ts +2 -0
  702. package/dist/utils/documentation-fetcher.d.ts.map +1 -0
  703. package/dist/utils/documentation-fetcher.js +18 -0
  704. package/dist/utils/documentation-fetcher.js.map +1 -0
  705. package/dist/utils/enhanced-documentation-fetcher.d.ts +74 -0
  706. package/dist/utils/enhanced-documentation-fetcher.d.ts.map +1 -0
  707. package/dist/utils/enhanced-documentation-fetcher.js +521 -0
  708. package/dist/utils/enhanced-documentation-fetcher.js.map +1 -0
  709. package/dist/utils/error-handler.d.ts +24 -0
  710. package/dist/utils/error-handler.d.ts.map +1 -0
  711. package/dist/utils/error-handler.js +84 -0
  712. package/dist/utils/error-handler.js.map +1 -0
  713. package/dist/utils/example-generator.d.ts +8 -0
  714. package/dist/utils/example-generator.d.ts.map +1 -0
  715. package/dist/utils/example-generator.js +106 -0
  716. package/dist/utils/example-generator.js.map +1 -0
  717. package/dist/utils/expression-utils.d.ts +6 -0
  718. package/dist/utils/expression-utils.d.ts.map +1 -0
  719. package/dist/utils/expression-utils.js +47 -0
  720. package/dist/utils/expression-utils.js.map +1 -0
  721. package/dist/utils/fixed-collection-validator.d.ts +35 -0
  722. package/dist/utils/fixed-collection-validator.d.ts.map +1 -0
  723. package/dist/utils/fixed-collection-validator.js +358 -0
  724. package/dist/utils/fixed-collection-validator.js.map +1 -0
  725. package/dist/utils/logger.d.ts +33 -0
  726. package/dist/utils/logger.d.ts.map +1 -0
  727. package/dist/utils/logger.js +101 -0
  728. package/dist/utils/logger.js.map +1 -0
  729. package/dist/utils/mcp-client.d.ts +21 -0
  730. package/dist/utils/mcp-client.d.ts.map +1 -0
  731. package/dist/utils/mcp-client.js +96 -0
  732. package/dist/utils/mcp-client.js.map +1 -0
  733. package/dist/utils/n8n-errors.d.ts +27 -0
  734. package/dist/utils/n8n-errors.d.ts.map +1 -0
  735. package/dist/utils/n8n-errors.js +138 -0
  736. package/dist/utils/n8n-errors.js.map +1 -0
  737. package/dist/utils/node-classification.d.ts +5 -0
  738. package/dist/utils/node-classification.d.ts.map +1 -0
  739. package/dist/utils/node-classification.js +31 -0
  740. package/dist/utils/node-classification.js.map +1 -0
  741. package/dist/utils/node-source-extractor.d.ts +21 -0
  742. package/dist/utils/node-source-extractor.d.ts.map +1 -0
  743. package/dist/utils/node-source-extractor.js +377 -0
  744. package/dist/utils/node-source-extractor.js.map +1 -0
  745. package/dist/utils/node-type-normalizer.d.ts +17 -0
  746. package/dist/utils/node-type-normalizer.d.ts.map +1 -0
  747. package/dist/utils/node-type-normalizer.js +87 -0
  748. package/dist/utils/node-type-normalizer.js.map +1 -0
  749. package/dist/utils/node-type-utils.d.ts +12 -0
  750. package/dist/utils/node-type-utils.d.ts.map +1 -0
  751. package/dist/utils/node-type-utils.js +126 -0
  752. package/dist/utils/node-type-utils.js.map +1 -0
  753. package/dist/utils/node-utils.d.ts +4 -0
  754. package/dist/utils/node-utils.d.ts.map +1 -0
  755. package/dist/utils/node-utils.js +81 -0
  756. package/dist/utils/node-utils.js.map +1 -0
  757. package/dist/utils/npm-version-checker.d.ts +14 -0
  758. package/dist/utils/npm-version-checker.d.ts.map +1 -0
  759. package/dist/utils/npm-version-checker.js +125 -0
  760. package/dist/utils/npm-version-checker.js.map +1 -0
  761. package/dist/utils/protocol-version.d.ts +19 -0
  762. package/dist/utils/protocol-version.d.ts.map +1 -0
  763. package/dist/utils/protocol-version.js +95 -0
  764. package/dist/utils/protocol-version.js.map +1 -0
  765. package/dist/utils/simple-cache.d.ts +10 -0
  766. package/dist/utils/simple-cache.d.ts.map +1 -0
  767. package/dist/utils/simple-cache.js +42 -0
  768. package/dist/utils/simple-cache.js.map +1 -0
  769. package/dist/utils/ssrf-protection.d.ts +7 -0
  770. package/dist/utils/ssrf-protection.d.ts.map +1 -0
  771. package/dist/utils/ssrf-protection.js +118 -0
  772. package/dist/utils/ssrf-protection.js.map +1 -0
  773. package/dist/utils/template-node-resolver.d.ts +2 -0
  774. package/dist/utils/template-node-resolver.d.ts.map +1 -0
  775. package/dist/utils/template-node-resolver.js +161 -0
  776. package/dist/utils/template-node-resolver.js.map +1 -0
  777. package/dist/utils/template-sanitizer.d.ts +21 -0
  778. package/dist/utils/template-sanitizer.d.ts.map +1 -0
  779. package/dist/utils/template-sanitizer.js +126 -0
  780. package/dist/utils/template-sanitizer.js.map +1 -0
  781. package/dist/utils/url-detector.d.ts +9 -0
  782. package/dist/utils/url-detector.d.ts.map +1 -0
  783. package/dist/utils/url-detector.js +79 -0
  784. package/dist/utils/url-detector.js.map +1 -0
  785. package/dist/utils/validation-schemas.d.ts +32 -0
  786. package/dist/utils/validation-schemas.d.ts.map +1 -0
  787. package/dist/utils/validation-schemas.js +219 -0
  788. package/dist/utils/validation-schemas.js.map +1 -0
  789. package/dist/utils/version.d.ts +2 -0
  790. package/dist/utils/version.d.ts.map +1 -0
  791. package/dist/utils/version.js +18 -0
  792. package/dist/utils/version.js.map +1 -0
  793. package/package.json +178 -0
  794. package/package.runtime.json +24 -0
@@ -0,0 +1,791 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NodeRepository = void 0;
4
+ const sqlite_storage_service_1 = require("../services/sqlite-storage-service");
5
+ const node_type_normalizer_1 = require("../utils/node-type-normalizer");
6
+ class NodeRepository {
7
+ constructor(dbOrService) {
8
+ if (dbOrService instanceof sqlite_storage_service_1.SQLiteStorageService) {
9
+ this.db = dbOrService.db;
10
+ return;
11
+ }
12
+ this.db = dbOrService;
13
+ }
14
+ saveNode(node) {
15
+ const stmt = this.db.prepare(`
16
+ INSERT OR REPLACE INTO nodes (
17
+ node_type, package_name, display_name, description,
18
+ category, development_style, is_ai_tool, is_trigger,
19
+ is_webhook, is_versioned, is_tool_variant, tool_variant_of,
20
+ has_tool_variant, version, documentation,
21
+ properties_schema, operations, credentials_required,
22
+ outputs, output_names,
23
+ is_community, is_verified, author_name, author_github_url,
24
+ npm_package_name, npm_version, npm_downloads, community_fetched_at
25
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
26
+ `);
27
+ stmt.run(node.nodeType, node.packageName, node.displayName, node.description, node.category, node.style, node.isAITool ? 1 : 0, node.isTrigger ? 1 : 0, node.isWebhook ? 1 : 0, node.isVersioned ? 1 : 0, node.isToolVariant ? 1 : 0, node.toolVariantOf || null, node.hasToolVariant ? 1 : 0, node.version, node.documentation || null, JSON.stringify(node.properties, null, 2), JSON.stringify(node.operations, null, 2), JSON.stringify(node.credentials, null, 2), node.outputs ? JSON.stringify(node.outputs, null, 2) : null, node.outputNames ? JSON.stringify(node.outputNames, null, 2) : null, node.isCommunity ? 1 : 0, node.isVerified ? 1 : 0, node.authorName || null, node.authorGithubUrl || null, node.npmPackageName || null, node.npmVersion || null, node.npmDownloads || 0, node.communityFetchedAt || null);
28
+ }
29
+ getNode(nodeType) {
30
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
31
+ const row = this.db.prepare(`
32
+ SELECT * FROM nodes WHERE node_type = ?
33
+ `).get(normalizedType);
34
+ if (!row && normalizedType !== nodeType) {
35
+ const originalRow = this.db.prepare(`
36
+ SELECT * FROM nodes WHERE node_type = ?
37
+ `).get(nodeType);
38
+ if (originalRow) {
39
+ return this.parseNodeRow(originalRow);
40
+ }
41
+ }
42
+ if (!row) {
43
+ const caseInsensitiveRow = this.db.prepare(`
44
+ SELECT * FROM nodes WHERE LOWER(node_type) = LOWER(?)
45
+ `).get(nodeType);
46
+ if (caseInsensitiveRow) {
47
+ return this.parseNodeRow(caseInsensitiveRow);
48
+ }
49
+ }
50
+ if (!row)
51
+ return null;
52
+ return this.parseNodeRow(row);
53
+ }
54
+ getAITools() {
55
+ const rows = this.db.prepare(`
56
+ SELECT node_type, display_name, description, package_name
57
+ FROM nodes
58
+ WHERE is_ai_tool = 1
59
+ ORDER BY display_name
60
+ `).all();
61
+ return rows.map(row => ({
62
+ nodeType: row.node_type,
63
+ displayName: row.display_name,
64
+ description: row.description,
65
+ package: row.package_name
66
+ }));
67
+ }
68
+ safeJsonParse(json, defaultValue) {
69
+ try {
70
+ return JSON.parse(json);
71
+ }
72
+ catch {
73
+ return defaultValue;
74
+ }
75
+ }
76
+ upsertNode(node) {
77
+ this.saveNode(node);
78
+ }
79
+ getNodeByType(nodeType) {
80
+ return this.getNode(nodeType);
81
+ }
82
+ getNodesByCategory(category) {
83
+ const rows = this.db.prepare(`
84
+ SELECT * FROM nodes WHERE category = ?
85
+ ORDER BY display_name
86
+ `).all(category);
87
+ return rows.map(row => this.parseNodeRow(row));
88
+ }
89
+ searchNodes(query, mode = 'OR', limit = 20) {
90
+ let sql = '';
91
+ const params = [];
92
+ if (mode === 'FUZZY') {
93
+ sql = `
94
+ SELECT * FROM nodes
95
+ WHERE node_type LIKE ? OR display_name LIKE ? OR description LIKE ?
96
+ ORDER BY display_name
97
+ LIMIT ?
98
+ `;
99
+ const fuzzyQuery = `%${query}%`;
100
+ params.push(fuzzyQuery, fuzzyQuery, fuzzyQuery, limit);
101
+ }
102
+ else {
103
+ const words = query.split(/\s+/).filter(w => w.length > 0);
104
+ const conditions = words.map(() => '(node_type LIKE ? OR display_name LIKE ? OR description LIKE ?)');
105
+ const operator = mode === 'AND' ? ' AND ' : ' OR ';
106
+ sql = `
107
+ SELECT * FROM nodes
108
+ WHERE ${conditions.join(operator)}
109
+ ORDER BY display_name
110
+ LIMIT ?
111
+ `;
112
+ for (const word of words) {
113
+ const searchTerm = `%${word}%`;
114
+ params.push(searchTerm, searchTerm, searchTerm);
115
+ }
116
+ params.push(limit);
117
+ }
118
+ const rows = this.db.prepare(sql).all(...params);
119
+ return rows.map(row => this.parseNodeRow(row));
120
+ }
121
+ getAllNodes(limit) {
122
+ let sql = 'SELECT * FROM nodes ORDER BY display_name';
123
+ if (limit) {
124
+ sql += ` LIMIT ${limit}`;
125
+ }
126
+ const rows = this.db.prepare(sql).all();
127
+ return rows.map(row => this.parseNodeRow(row));
128
+ }
129
+ getNodeCount() {
130
+ const result = this.db.prepare('SELECT COUNT(*) as count FROM nodes').get();
131
+ return result.count;
132
+ }
133
+ getAIToolNodes() {
134
+ return this.getAITools();
135
+ }
136
+ getToolVariant(baseNodeType) {
137
+ if (!baseNodeType || typeof baseNodeType !== 'string' || !baseNodeType.includes('.')) {
138
+ return null;
139
+ }
140
+ const toolNodeType = `${baseNodeType}Tool`;
141
+ return this.getNode(toolNodeType);
142
+ }
143
+ getBaseNodeForToolVariant(toolNodeType) {
144
+ const row = this.db.prepare(`
145
+ SELECT tool_variant_of FROM nodes WHERE node_type = ?
146
+ `).get(toolNodeType);
147
+ if (!row?.tool_variant_of)
148
+ return null;
149
+ return this.getNode(row.tool_variant_of);
150
+ }
151
+ getToolVariants() {
152
+ const rows = this.db.prepare(`
153
+ SELECT node_type, display_name, description, package_name, tool_variant_of
154
+ FROM nodes
155
+ WHERE is_tool_variant = 1
156
+ ORDER BY display_name
157
+ `).all();
158
+ return rows.map(row => ({
159
+ nodeType: row.node_type,
160
+ displayName: row.display_name,
161
+ description: row.description,
162
+ package: row.package_name,
163
+ toolVariantOf: row.tool_variant_of
164
+ }));
165
+ }
166
+ getToolVariantCount() {
167
+ const result = this.db.prepare('SELECT COUNT(*) as count FROM nodes WHERE is_tool_variant = 1').get();
168
+ return result.count;
169
+ }
170
+ getNodesByPackage(packageName) {
171
+ const rows = this.db.prepare(`
172
+ SELECT * FROM nodes WHERE package_name = ?
173
+ ORDER BY display_name
174
+ `).all(packageName);
175
+ return rows.map(row => this.parseNodeRow(row));
176
+ }
177
+ searchNodeProperties(nodeType, query, maxResults = 20) {
178
+ const node = this.getNode(nodeType);
179
+ if (!node || !node.properties)
180
+ return [];
181
+ const results = [];
182
+ const searchLower = query.toLowerCase();
183
+ function searchProperties(properties, path = []) {
184
+ for (const prop of properties) {
185
+ if (results.length >= maxResults)
186
+ break;
187
+ const currentPath = [...path, prop.name || prop.displayName];
188
+ const pathString = currentPath.join('.');
189
+ if (prop.name?.toLowerCase().includes(searchLower) ||
190
+ prop.displayName?.toLowerCase().includes(searchLower) ||
191
+ prop.description?.toLowerCase().includes(searchLower)) {
192
+ results.push({
193
+ path: pathString,
194
+ property: prop,
195
+ description: prop.description
196
+ });
197
+ }
198
+ if (prop.options) {
199
+ searchProperties(prop.options, currentPath);
200
+ }
201
+ }
202
+ }
203
+ searchProperties(node.properties);
204
+ return results;
205
+ }
206
+ parseNodeRow(row) {
207
+ return {
208
+ nodeType: row.node_type,
209
+ displayName: row.display_name,
210
+ description: row.description,
211
+ category: row.category,
212
+ developmentStyle: row.development_style,
213
+ package: row.package_name,
214
+ isAITool: Number(row.is_ai_tool) === 1,
215
+ isTrigger: Number(row.is_trigger) === 1,
216
+ isWebhook: Number(row.is_webhook) === 1,
217
+ isVersioned: Number(row.is_versioned) === 1,
218
+ isToolVariant: Number(row.is_tool_variant) === 1,
219
+ toolVariantOf: row.tool_variant_of || null,
220
+ hasToolVariant: Number(row.has_tool_variant) === 1,
221
+ version: row.version,
222
+ properties: this.safeJsonParse(row.properties_schema, []),
223
+ operations: this.safeJsonParse(row.operations, []),
224
+ credentials: this.safeJsonParse(row.credentials_required, []),
225
+ hasDocumentation: !!row.documentation,
226
+ outputs: row.outputs ? this.safeJsonParse(row.outputs, null) : null,
227
+ outputNames: row.output_names ? this.safeJsonParse(row.output_names, null) : null,
228
+ isCommunity: Number(row.is_community) === 1,
229
+ isVerified: Number(row.is_verified) === 1,
230
+ authorName: row.author_name || null,
231
+ authorGithubUrl: row.author_github_url || null,
232
+ npmPackageName: row.npm_package_name || null,
233
+ npmVersion: row.npm_version || null,
234
+ npmDownloads: row.npm_downloads || 0,
235
+ communityFetchedAt: row.community_fetched_at || null,
236
+ npmReadme: row.npm_readme || null,
237
+ aiDocumentationSummary: row.ai_documentation_summary
238
+ ? this.safeJsonParse(row.ai_documentation_summary, null)
239
+ : null,
240
+ aiSummaryGeneratedAt: row.ai_summary_generated_at || null,
241
+ };
242
+ }
243
+ getNodeOperations(nodeType, resource) {
244
+ const node = this.getNode(nodeType);
245
+ if (!node)
246
+ return [];
247
+ const operations = [];
248
+ if (node.operations) {
249
+ if (Array.isArray(node.operations)) {
250
+ operations.push(...node.operations);
251
+ }
252
+ else if (typeof node.operations === 'object') {
253
+ if (resource && node.operations[resource]) {
254
+ return node.operations[resource];
255
+ }
256
+ else {
257
+ Object.values(node.operations).forEach(ops => {
258
+ if (Array.isArray(ops)) {
259
+ operations.push(...ops);
260
+ }
261
+ });
262
+ }
263
+ }
264
+ }
265
+ if (node.properties && Array.isArray(node.properties)) {
266
+ for (const prop of node.properties) {
267
+ if (prop.name === 'operation' && prop.options) {
268
+ if (resource && prop.displayOptions?.show?.resource) {
269
+ const allowedResources = Array.isArray(prop.displayOptions.show.resource)
270
+ ? prop.displayOptions.show.resource
271
+ : [prop.displayOptions.show.resource];
272
+ if (!allowedResources.includes(resource)) {
273
+ continue;
274
+ }
275
+ }
276
+ operations.push(...prop.options);
277
+ }
278
+ }
279
+ }
280
+ return operations;
281
+ }
282
+ getNodeResources(nodeType) {
283
+ const node = this.getNode(nodeType);
284
+ if (!node || !node.properties)
285
+ return [];
286
+ const resources = [];
287
+ for (const prop of node.properties) {
288
+ if (prop.name === 'resource' && prop.options) {
289
+ resources.push(...prop.options);
290
+ }
291
+ }
292
+ return resources;
293
+ }
294
+ getOperationsForResource(nodeType, resource) {
295
+ const node = this.getNode(nodeType);
296
+ if (!node || !node.properties)
297
+ return [];
298
+ const operations = [];
299
+ for (const prop of node.properties) {
300
+ if (prop.name === 'operation' && prop.displayOptions?.show?.resource) {
301
+ const allowedResources = Array.isArray(prop.displayOptions.show.resource)
302
+ ? prop.displayOptions.show.resource
303
+ : [prop.displayOptions.show.resource];
304
+ if (allowedResources.includes(resource) && prop.options) {
305
+ operations.push(...prop.options);
306
+ }
307
+ }
308
+ }
309
+ return operations;
310
+ }
311
+ getAllOperations() {
312
+ const allOperations = new Map();
313
+ const nodes = this.getAllNodes();
314
+ for (const node of nodes) {
315
+ const operations = this.getNodeOperations(node.nodeType);
316
+ if (operations.length > 0) {
317
+ allOperations.set(node.nodeType, operations);
318
+ }
319
+ }
320
+ return allOperations;
321
+ }
322
+ getAllResources() {
323
+ const allResources = new Map();
324
+ const nodes = this.getAllNodes();
325
+ for (const node of nodes) {
326
+ const resources = this.getNodeResources(node.nodeType);
327
+ if (resources.length > 0) {
328
+ allResources.set(node.nodeType, resources);
329
+ }
330
+ }
331
+ return allResources;
332
+ }
333
+ getNodePropertyDefaults(nodeType) {
334
+ try {
335
+ const node = this.getNode(nodeType);
336
+ if (!node || !node.properties)
337
+ return {};
338
+ const defaults = {};
339
+ for (const prop of node.properties) {
340
+ if (prop.name && prop.default !== undefined) {
341
+ defaults[prop.name] = prop.default;
342
+ }
343
+ }
344
+ return defaults;
345
+ }
346
+ catch (error) {
347
+ console.error(`Error getting property defaults for ${nodeType}:`, error);
348
+ return {};
349
+ }
350
+ }
351
+ getDefaultOperationForResource(nodeType, resource) {
352
+ try {
353
+ const node = this.getNode(nodeType);
354
+ if (!node || !node.properties)
355
+ return undefined;
356
+ for (const prop of node.properties) {
357
+ if (prop.name === 'operation') {
358
+ if (resource && prop.displayOptions?.show?.resource) {
359
+ const resourceDep = prop.displayOptions.show.resource;
360
+ if (!Array.isArray(resourceDep) && typeof resourceDep !== 'string') {
361
+ continue;
362
+ }
363
+ const allowedResources = Array.isArray(resourceDep)
364
+ ? resourceDep
365
+ : [resourceDep];
366
+ if (!allowedResources.includes(resource)) {
367
+ continue;
368
+ }
369
+ }
370
+ if (prop.default !== undefined) {
371
+ return prop.default;
372
+ }
373
+ if (prop.options && Array.isArray(prop.options) && prop.options.length > 0) {
374
+ const firstOption = prop.options[0];
375
+ return typeof firstOption === 'string' ? firstOption : firstOption.value;
376
+ }
377
+ }
378
+ }
379
+ }
380
+ catch (error) {
381
+ console.error(`Error getting default operation for ${nodeType}:`, error);
382
+ return undefined;
383
+ }
384
+ return undefined;
385
+ }
386
+ getCommunityNodes(options) {
387
+ let sql = 'SELECT * FROM nodes WHERE is_community = 1';
388
+ const params = [];
389
+ if (options?.verified !== undefined) {
390
+ sql += ' AND is_verified = ?';
391
+ params.push(options.verified ? 1 : 0);
392
+ }
393
+ switch (options?.orderBy) {
394
+ case 'downloads':
395
+ sql += ' ORDER BY npm_downloads DESC';
396
+ break;
397
+ case 'updated':
398
+ sql += ' ORDER BY community_fetched_at DESC';
399
+ break;
400
+ case 'name':
401
+ default:
402
+ sql += ' ORDER BY display_name';
403
+ }
404
+ if (options?.limit) {
405
+ sql += ' LIMIT ?';
406
+ params.push(options.limit);
407
+ }
408
+ const rows = this.db.prepare(sql).all(...params);
409
+ return rows.map(row => this.parseNodeRow(row));
410
+ }
411
+ getCommunityStats() {
412
+ const totalResult = this.db.prepare('SELECT COUNT(*) as count FROM nodes WHERE is_community = 1').get();
413
+ const verifiedResult = this.db.prepare('SELECT COUNT(*) as count FROM nodes WHERE is_community = 1 AND is_verified = 1').get();
414
+ return {
415
+ total: totalResult.count,
416
+ verified: verifiedResult.count,
417
+ unverified: totalResult.count - verifiedResult.count
418
+ };
419
+ }
420
+ hasNodeByNpmPackage(npmPackageName) {
421
+ const result = this.db.prepare('SELECT 1 FROM nodes WHERE npm_package_name = ? LIMIT 1').get(npmPackageName);
422
+ return !!result;
423
+ }
424
+ getNodeByNpmPackage(npmPackageName) {
425
+ const row = this.db.prepare('SELECT * FROM nodes WHERE npm_package_name = ?').get(npmPackageName);
426
+ if (!row)
427
+ return null;
428
+ return this.parseNodeRow(row);
429
+ }
430
+ deleteCommunityNodes() {
431
+ const result = this.db.prepare('DELETE FROM nodes WHERE is_community = 1').run();
432
+ return result.changes;
433
+ }
434
+ updateNodeReadme(nodeType, readme) {
435
+ const stmt = this.db.prepare(`
436
+ UPDATE nodes SET npm_readme = ? WHERE node_type = ?
437
+ `);
438
+ stmt.run(readme, nodeType);
439
+ }
440
+ updateNodeAISummary(nodeType, summary) {
441
+ const stmt = this.db.prepare(`
442
+ UPDATE nodes
443
+ SET ai_documentation_summary = ?, ai_summary_generated_at = datetime('now')
444
+ WHERE node_type = ?
445
+ `);
446
+ stmt.run(JSON.stringify(summary), nodeType);
447
+ }
448
+ getCommunityNodesWithoutReadme() {
449
+ const rows = this.db.prepare(`
450
+ SELECT * FROM nodes
451
+ WHERE is_community = 1 AND (npm_readme IS NULL OR npm_readme = '')
452
+ ORDER BY npm_downloads DESC
453
+ `).all();
454
+ return rows.map(row => this.parseNodeRow(row));
455
+ }
456
+ getCommunityNodesWithoutAISummary() {
457
+ const rows = this.db.prepare(`
458
+ SELECT * FROM nodes
459
+ WHERE is_community = 1
460
+ AND npm_readme IS NOT NULL AND npm_readme != ''
461
+ AND (ai_documentation_summary IS NULL OR ai_documentation_summary = '')
462
+ ORDER BY npm_downloads DESC
463
+ `).all();
464
+ return rows.map(row => this.parseNodeRow(row));
465
+ }
466
+ getDocumentationStats() {
467
+ const total = this.db.prepare('SELECT COUNT(*) as count FROM nodes WHERE is_community = 1').get().count;
468
+ const withReadme = this.db.prepare("SELECT COUNT(*) as count FROM nodes WHERE is_community = 1 AND npm_readme IS NOT NULL AND npm_readme != ''").get().count;
469
+ const withAISummary = this.db.prepare("SELECT COUNT(*) as count FROM nodes WHERE is_community = 1 AND ai_documentation_summary IS NOT NULL AND ai_documentation_summary != ''").get().count;
470
+ return {
471
+ total,
472
+ withReadme,
473
+ withAISummary,
474
+ needingReadme: total - withReadme,
475
+ needingAISummary: withReadme - withAISummary
476
+ };
477
+ }
478
+ getInstalledNodes() {
479
+ const rows = this.db.prepare(`
480
+ SELECT * FROM nodes WHERE is_installed = 1
481
+ ORDER BY display_name
482
+ `).all();
483
+ return rows.map(row => this.parseNodeRow(row));
484
+ }
485
+ updateNodeInstalled(nodeType, isInstalled) {
486
+ const stmt = this.db.prepare(`
487
+ UPDATE nodes
488
+ SET is_installed = ?, installed_synced_at = datetime('now')
489
+ WHERE node_type = ?
490
+ `);
491
+ stmt.run(isInstalled ? 1 : 0, nodeType);
492
+ }
493
+ saveInstalledNode(node) {
494
+ const stmt = this.db.prepare(`
495
+ INSERT OR REPLACE INTO nodes (
496
+ node_type, package_name, display_name, description,
497
+ category, is_community, is_installed,
498
+ npm_package_name, npm_version, author_name, version,
499
+ properties_schema, operations, credentials_required,
500
+ installed_synced_at, updated_at
501
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, datetime('now'))
502
+ `);
503
+ stmt.run(node.node_type, node.package_name, node.display_name, node.description || null, node.category || 'Community', node.is_community ?? 1, node.is_installed ?? 1, node.npm_package_name || null, node.npm_version || null, node.author_name || null, node.version || '1', node.properties_schema || null, node.operations || null, node.credentials_required || null, node.installed_synced_at || new Date().toISOString());
504
+ }
505
+ getInstalledStats() {
506
+ const totalResult = this.db.prepare('SELECT COUNT(*) as count FROM nodes WHERE is_installed = 1').get();
507
+ const packagesResult = this.db.prepare('SELECT DISTINCT npm_package_name FROM nodes WHERE is_installed = 1 AND npm_package_name IS NOT NULL').all();
508
+ return {
509
+ total: totalResult.count,
510
+ fromPackages: packagesResult.map(r => r.npm_package_name).filter(Boolean)
511
+ };
512
+ }
513
+ saveNodeVersion(versionData) {
514
+ const stmt = this.db.prepare(`
515
+ INSERT OR REPLACE INTO node_versions (
516
+ node_type, version, package_name, display_name, description,
517
+ category, is_current_max, properties_schema, operations,
518
+ credentials_required, outputs, minimum_n8n_version,
519
+ breaking_changes, deprecated_properties, added_properties,
520
+ released_at
521
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
522
+ `);
523
+ stmt.run(versionData.nodeType, versionData.version, versionData.packageName, versionData.displayName, versionData.description || null, versionData.category || null, versionData.isCurrentMax ? 1 : 0, versionData.propertiesSchema ? JSON.stringify(versionData.propertiesSchema) : null, versionData.operations ? JSON.stringify(versionData.operations) : null, versionData.credentialsRequired ? JSON.stringify(versionData.credentialsRequired) : null, versionData.outputs ? JSON.stringify(versionData.outputs) : null, versionData.minimumN8nVersion || null, versionData.breakingChanges ? JSON.stringify(versionData.breakingChanges) : null, versionData.deprecatedProperties ? JSON.stringify(versionData.deprecatedProperties) : null, versionData.addedProperties ? JSON.stringify(versionData.addedProperties) : null, versionData.releasedAt || null);
524
+ }
525
+ getNodeVersions(nodeType) {
526
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
527
+ const rows = this.db.prepare(`
528
+ SELECT * FROM node_versions
529
+ WHERE node_type = ?
530
+ ORDER BY version DESC
531
+ `).all(normalizedType);
532
+ return rows.map(row => this.parseNodeVersionRow(row));
533
+ }
534
+ getLatestNodeVersion(nodeType) {
535
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
536
+ const row = this.db.prepare(`
537
+ SELECT * FROM node_versions
538
+ WHERE node_type = ? AND is_current_max = 1
539
+ LIMIT 1
540
+ `).get(normalizedType);
541
+ if (!row)
542
+ return null;
543
+ return this.parseNodeVersionRow(row);
544
+ }
545
+ getNodeVersion(nodeType, version) {
546
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
547
+ const row = this.db.prepare(`
548
+ SELECT * FROM node_versions
549
+ WHERE node_type = ? AND version = ?
550
+ `).get(normalizedType, version);
551
+ if (!row)
552
+ return null;
553
+ return this.parseNodeVersionRow(row);
554
+ }
555
+ savePropertyChange(changeData) {
556
+ const stmt = this.db.prepare(`
557
+ INSERT INTO version_property_changes (
558
+ node_type, from_version, to_version, property_name, change_type,
559
+ is_breaking, old_value, new_value, migration_hint, auto_migratable,
560
+ migration_strategy, severity
561
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
562
+ `);
563
+ stmt.run(changeData.nodeType, changeData.fromVersion, changeData.toVersion, changeData.propertyName, changeData.changeType, changeData.isBreaking ? 1 : 0, changeData.oldValue || null, changeData.newValue || null, changeData.migrationHint || null, changeData.autoMigratable ? 1 : 0, changeData.migrationStrategy ? JSON.stringify(changeData.migrationStrategy) : null, changeData.severity || 'MEDIUM');
564
+ }
565
+ getPropertyChanges(nodeType, fromVersion, toVersion) {
566
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
567
+ const rows = this.db.prepare(`
568
+ SELECT * FROM version_property_changes
569
+ WHERE node_type = ? AND from_version = ? AND to_version = ?
570
+ ORDER BY severity DESC, property_name
571
+ `).all(normalizedType, fromVersion, toVersion);
572
+ return rows.map(row => this.parsePropertyChangeRow(row));
573
+ }
574
+ getBreakingChanges(nodeType, fromVersion, toVersion) {
575
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
576
+ let sql = `
577
+ SELECT * FROM version_property_changes
578
+ WHERE node_type = ? AND is_breaking = 1
579
+ `;
580
+ const params = [normalizedType];
581
+ if (toVersion) {
582
+ sql += ` AND from_version >= ? AND to_version <= ?`;
583
+ params.push(fromVersion, toVersion);
584
+ }
585
+ else {
586
+ sql += ` AND from_version >= ?`;
587
+ params.push(fromVersion);
588
+ }
589
+ sql += ` ORDER BY from_version, to_version, severity DESC`;
590
+ const rows = this.db.prepare(sql).all(...params);
591
+ return rows.map(row => this.parsePropertyChangeRow(row));
592
+ }
593
+ getAutoMigratableChanges(nodeType, fromVersion, toVersion) {
594
+ const normalizedType = node_type_normalizer_1.NodeTypeNormalizer.normalizeToFullForm(nodeType);
595
+ const rows = this.db.prepare(`
596
+ SELECT * FROM version_property_changes
597
+ WHERE node_type = ?
598
+ AND from_version = ?
599
+ AND to_version = ?
600
+ AND auto_migratable = 1
601
+ ORDER BY severity DESC
602
+ `).all(normalizedType, fromVersion, toVersion);
603
+ return rows.map(row => this.parsePropertyChangeRow(row));
604
+ }
605
+ hasVersionUpgradePath(nodeType, fromVersion, toVersion) {
606
+ const versions = this.getNodeVersions(nodeType);
607
+ if (versions.length === 0)
608
+ return false;
609
+ const fromExists = versions.some(v => v.version === fromVersion);
610
+ const toExists = versions.some(v => v.version === toVersion);
611
+ return fromExists && toExists;
612
+ }
613
+ getVersionedNodesCount() {
614
+ const result = this.db.prepare(`
615
+ SELECT COUNT(DISTINCT node_type) as count
616
+ FROM node_versions
617
+ `).get();
618
+ return result.count;
619
+ }
620
+ parseNodeVersionRow(row) {
621
+ return {
622
+ id: row.id,
623
+ nodeType: row.node_type,
624
+ version: row.version,
625
+ packageName: row.package_name,
626
+ displayName: row.display_name,
627
+ description: row.description,
628
+ category: row.category,
629
+ isCurrentMax: Number(row.is_current_max) === 1,
630
+ propertiesSchema: row.properties_schema ? this.safeJsonParse(row.properties_schema, []) : null,
631
+ operations: row.operations ? this.safeJsonParse(row.operations, []) : null,
632
+ credentialsRequired: row.credentials_required ? this.safeJsonParse(row.credentials_required, []) : null,
633
+ outputs: row.outputs ? this.safeJsonParse(row.outputs, null) : null,
634
+ minimumN8nVersion: row.minimum_n8n_version,
635
+ breakingChanges: row.breaking_changes ? this.safeJsonParse(row.breaking_changes, []) : [],
636
+ deprecatedProperties: row.deprecated_properties ? this.safeJsonParse(row.deprecated_properties, []) : [],
637
+ addedProperties: row.added_properties ? this.safeJsonParse(row.added_properties, []) : [],
638
+ releasedAt: row.released_at,
639
+ createdAt: row.created_at
640
+ };
641
+ }
642
+ parsePropertyChangeRow(row) {
643
+ return {
644
+ id: row.id,
645
+ nodeType: row.node_type,
646
+ fromVersion: row.from_version,
647
+ toVersion: row.to_version,
648
+ propertyName: row.property_name,
649
+ changeType: row.change_type,
650
+ isBreaking: Number(row.is_breaking) === 1,
651
+ oldValue: row.old_value,
652
+ newValue: row.new_value,
653
+ migrationHint: row.migration_hint,
654
+ autoMigratable: Number(row.auto_migratable) === 1,
655
+ migrationStrategy: row.migration_strategy ? this.safeJsonParse(row.migration_strategy, null) : null,
656
+ severity: row.severity,
657
+ createdAt: row.created_at
658
+ };
659
+ }
660
+ createWorkflowVersion(data) {
661
+ const stmt = this.db.prepare(`
662
+ INSERT INTO workflow_versions (
663
+ workflow_id, version_number, workflow_name, workflow_snapshot,
664
+ trigger, operations, fix_types, metadata
665
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
666
+ `);
667
+ const result = stmt.run(data.workflowId, data.versionNumber, data.workflowName, JSON.stringify(data.workflowSnapshot), data.trigger, data.operations ? JSON.stringify(data.operations) : null, data.fixTypes ? JSON.stringify(data.fixTypes) : null, data.metadata ? JSON.stringify(data.metadata) : null);
668
+ return result.lastInsertRowid;
669
+ }
670
+ getWorkflowVersions(workflowId, limit) {
671
+ let sql = `
672
+ SELECT * FROM workflow_versions
673
+ WHERE workflow_id = ?
674
+ ORDER BY version_number DESC
675
+ `;
676
+ if (limit) {
677
+ sql += ` LIMIT ?`;
678
+ const rows = this.db.prepare(sql).all(workflowId, limit);
679
+ return rows.map(row => this.parseWorkflowVersionRow(row));
680
+ }
681
+ const rows = this.db.prepare(sql).all(workflowId);
682
+ return rows.map(row => this.parseWorkflowVersionRow(row));
683
+ }
684
+ getWorkflowVersion(versionId) {
685
+ const row = this.db.prepare(`
686
+ SELECT * FROM workflow_versions WHERE id = ?
687
+ `).get(versionId);
688
+ if (!row)
689
+ return null;
690
+ return this.parseWorkflowVersionRow(row);
691
+ }
692
+ getLatestWorkflowVersion(workflowId) {
693
+ const row = this.db.prepare(`
694
+ SELECT * FROM workflow_versions
695
+ WHERE workflow_id = ?
696
+ ORDER BY version_number DESC
697
+ LIMIT 1
698
+ `).get(workflowId);
699
+ if (!row)
700
+ return null;
701
+ return this.parseWorkflowVersionRow(row);
702
+ }
703
+ deleteWorkflowVersion(versionId) {
704
+ this.db.prepare(`
705
+ DELETE FROM workflow_versions WHERE id = ?
706
+ `).run(versionId);
707
+ }
708
+ deleteWorkflowVersionsByWorkflowId(workflowId) {
709
+ const result = this.db.prepare(`
710
+ DELETE FROM workflow_versions WHERE workflow_id = ?
711
+ `).run(workflowId);
712
+ return result.changes;
713
+ }
714
+ pruneWorkflowVersions(workflowId, keepCount) {
715
+ const versions = this.db.prepare(`
716
+ SELECT id FROM workflow_versions
717
+ WHERE workflow_id = ?
718
+ ORDER BY version_number DESC
719
+ `).all(workflowId);
720
+ if (versions.length <= keepCount) {
721
+ return 0;
722
+ }
723
+ const idsToDelete = versions.slice(keepCount).map(v => v.id);
724
+ if (idsToDelete.length === 0) {
725
+ return 0;
726
+ }
727
+ const placeholders = idsToDelete.map(() => '?').join(',');
728
+ const result = this.db.prepare(`
729
+ DELETE FROM workflow_versions WHERE id IN (${placeholders})
730
+ `).run(...idsToDelete);
731
+ return result.changes;
732
+ }
733
+ truncateWorkflowVersions() {
734
+ const result = this.db.prepare(`
735
+ DELETE FROM workflow_versions
736
+ `).run();
737
+ return result.changes;
738
+ }
739
+ getWorkflowVersionCount(workflowId) {
740
+ const result = this.db.prepare(`
741
+ SELECT COUNT(*) as count FROM workflow_versions WHERE workflow_id = ?
742
+ `).get(workflowId);
743
+ return result.count;
744
+ }
745
+ getVersionStorageStats() {
746
+ const totalResult = this.db.prepare(`
747
+ SELECT COUNT(*) as count FROM workflow_versions
748
+ `).get();
749
+ const sizeResult = this.db.prepare(`
750
+ SELECT SUM(LENGTH(workflow_snapshot)) as total_size FROM workflow_versions
751
+ `).get();
752
+ const byWorkflow = this.db.prepare(`
753
+ SELECT
754
+ workflow_id,
755
+ workflow_name,
756
+ COUNT(*) as version_count,
757
+ SUM(LENGTH(workflow_snapshot)) as total_size,
758
+ MAX(created_at) as last_backup
759
+ FROM workflow_versions
760
+ GROUP BY workflow_id
761
+ ORDER BY version_count DESC
762
+ `).all();
763
+ return {
764
+ totalVersions: totalResult.count,
765
+ totalSize: sizeResult.total_size || 0,
766
+ byWorkflow: byWorkflow.map(row => ({
767
+ workflowId: row.workflow_id,
768
+ workflowName: row.workflow_name,
769
+ versionCount: row.version_count,
770
+ totalSize: row.total_size,
771
+ lastBackup: row.last_backup
772
+ }))
773
+ };
774
+ }
775
+ parseWorkflowVersionRow(row) {
776
+ return {
777
+ id: row.id,
778
+ workflowId: row.workflow_id,
779
+ versionNumber: row.version_number,
780
+ workflowName: row.workflow_name,
781
+ workflowSnapshot: this.safeJsonParse(row.workflow_snapshot, null),
782
+ trigger: row.trigger,
783
+ operations: row.operations ? this.safeJsonParse(row.operations, null) : null,
784
+ fixTypes: row.fix_types ? this.safeJsonParse(row.fix_types, null) : null,
785
+ metadata: row.metadata ? this.safeJsonParse(row.metadata, null) : null,
786
+ createdAt: row.created_at
787
+ };
788
+ }
789
+ }
790
+ exports.NodeRepository = NodeRepository;
791
+ //# sourceMappingURL=node-repository.js.map