@botpress/cli 4.17.13 → 4.17.15

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 (305) hide show
  1. package/.turbo/turbo-build.log +16 -12
  2. package/bin.js +1 -1
  3. package/dist/api/bot-body.d.ts +5 -0
  4. package/dist/api/client.d.ts +50 -0
  5. package/dist/api/client.js +2 -1
  6. package/dist/api/client.js.map +1 -1
  7. package/dist/api/index.d.ts +6 -0
  8. package/dist/api/index.js +9 -0
  9. package/dist/api/integration-body.d.ts +5 -0
  10. package/dist/api/interface-body.d.ts +7 -0
  11. package/dist/api/paging.d.ts +9 -0
  12. package/dist/api/plugin-body.d.ts +5 -0
  13. package/dist/api/retry.d.ts +2 -0
  14. package/dist/api/types.d.ts +62 -0
  15. package/dist/chat/index.d.ts +25 -0
  16. package/dist/chat/index.js +1 -1
  17. package/dist/chat/index.js.map +1 -1
  18. package/dist/cli.d.ts +1 -0
  19. package/dist/cli.js +51 -0
  20. package/dist/cli.js.map +7 -0
  21. package/dist/code-generation/bot-implementation/bot-implementation.d.ts +8 -0
  22. package/dist/code-generation/bot-implementation/bot-implementation.js.map +1 -1
  23. package/dist/code-generation/bot-implementation/bot-plugins/index.d.ts +7 -0
  24. package/dist/code-generation/bot-implementation/bot-plugins/index.js.map +1 -1
  25. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.d.ts +13 -0
  26. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js.map +1 -1
  27. package/dist/code-generation/bot-implementation/bot-typings/actions-module.d.ts +21 -0
  28. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js.map +1 -1
  29. package/dist/code-generation/bot-implementation/bot-typings/events-module.d.ts +10 -0
  30. package/dist/code-generation/bot-implementation/bot-typings/events-module.js.map +1 -1
  31. package/dist/code-generation/bot-implementation/bot-typings/index.d.ts +7 -0
  32. package/dist/code-generation/bot-implementation/bot-typings/index.js.map +1 -1
  33. package/dist/code-generation/bot-implementation/bot-typings/states-module.d.ts +17 -0
  34. package/dist/code-generation/bot-implementation/bot-typings/states-module.js.map +1 -1
  35. package/dist/code-generation/bot-implementation/bot-typings/tables-module.d.ts +10 -0
  36. package/dist/code-generation/bot-implementation/bot-typings/tables-module.js.map +1 -1
  37. package/dist/code-generation/bot-implementation/bot-typings/workflows-module.d.ts +27 -0
  38. package/dist/code-generation/bot-implementation/bot-typings/workflows-module.js.map +1 -1
  39. package/dist/code-generation/bot-implementation/index.d.ts +3 -0
  40. package/dist/code-generation/bot-implementation/index.js.map +1 -1
  41. package/dist/code-generation/consts.d.ts +5 -0
  42. package/dist/code-generation/consts.js +2 -1
  43. package/dist/code-generation/generators.d.ts +10 -0
  44. package/dist/code-generation/generators.js.map +1 -1
  45. package/dist/code-generation/index.d.ts +8 -0
  46. package/dist/code-generation/index.js +2 -1
  47. package/dist/code-generation/integration-implementation/index.d.ts +3 -0
  48. package/dist/code-generation/integration-implementation/index.js.map +1 -1
  49. package/dist/code-generation/integration-implementation/integration-implementation.d.ts +7 -0
  50. package/dist/code-generation/integration-implementation/integration-implementation.js.map +1 -1
  51. package/dist/code-generation/integration-implementation/integration-secret.d.ts +8 -0
  52. package/dist/code-generation/integration-implementation/integration-secret.js.map +1 -1
  53. package/dist/code-generation/integration-implementation/integration-typings/actions-module.d.ts +21 -0
  54. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js.map +1 -1
  55. package/dist/code-generation/integration-implementation/integration-typings/channels-module.d.ts +5 -0
  56. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js.map +1 -1
  57. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.d.ts +7 -0
  58. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.d.ts +10 -0
  59. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js.map +1 -1
  60. package/dist/code-generation/integration-implementation/integration-typings/entities-module.d.ts +10 -0
  61. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js.map +1 -1
  62. package/dist/code-generation/integration-implementation/integration-typings/events-module.d.ts +10 -0
  63. package/dist/code-generation/integration-implementation/integration-typings/events-module.js.map +1 -1
  64. package/dist/code-generation/integration-implementation/integration-typings/index.d.ts +8 -0
  65. package/dist/code-generation/integration-implementation/integration-typings/index.js.map +1 -1
  66. package/dist/code-generation/integration-implementation/integration-typings/states-module.d.ts +17 -0
  67. package/dist/code-generation/integration-implementation/integration-typings/states-module.js.map +1 -1
  68. package/dist/code-generation/integration-package/index.d.ts +2 -0
  69. package/dist/code-generation/integration-package/index.js.map +1 -1
  70. package/dist/code-generation/integration-package/integration-package-definition/actions-module.d.ts +21 -0
  71. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js.map +1 -1
  72. package/dist/code-generation/integration-package/integration-package-definition/channels-module.d.ts +5 -0
  73. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js.map +1 -1
  74. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.d.ts +7 -0
  75. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.d.ts +10 -0
  76. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js.map +1 -1
  77. package/dist/code-generation/integration-package/integration-package-definition/entities-module.d.ts +10 -0
  78. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js.map +1 -1
  79. package/dist/code-generation/integration-package/integration-package-definition/events-module.d.ts +10 -0
  80. package/dist/code-generation/integration-package/integration-package-definition/events-module.js.map +1 -1
  81. package/dist/code-generation/integration-package/integration-package-definition/index.d.ts +8 -0
  82. package/dist/code-generation/integration-package/integration-package-definition/index.js.map +1 -1
  83. package/dist/code-generation/integration-package/integration-package-definition/interfaces-module.d.ts +10 -0
  84. package/dist/code-generation/integration-package/integration-package-definition/interfaces-module.js.map +1 -1
  85. package/dist/code-generation/integration-package/integration-package-definition/states-module.d.ts +10 -0
  86. package/dist/code-generation/integration-package/integration-package-definition/states-module.js.map +1 -1
  87. package/dist/code-generation/integration-package/integration-package-definition/typings.d.ts +10 -0
  88. package/dist/code-generation/interface-implementation/index.d.ts +4 -0
  89. package/dist/code-generation/interface-implementation/integration-typings/actions-module.d.ts +21 -0
  90. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js.map +1 -1
  91. package/dist/code-generation/interface-implementation/integration-typings/channels-module.d.ts +5 -0
  92. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js.map +1 -1
  93. package/dist/code-generation/interface-implementation/integration-typings/entities-module.d.ts +10 -0
  94. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js.map +1 -1
  95. package/dist/code-generation/interface-implementation/integration-typings/events-module.d.ts +10 -0
  96. package/dist/code-generation/interface-implementation/integration-typings/events-module.js.map +1 -1
  97. package/dist/code-generation/interface-implementation/integration-typings/index.d.ts +8 -0
  98. package/dist/code-generation/interface-implementation/integration-typings/index.js.map +1 -1
  99. package/dist/code-generation/interface-package/index.d.ts +2 -0
  100. package/dist/code-generation/interface-package/index.js.map +1 -1
  101. package/dist/code-generation/interface-package/interface-package-definition/actions-module.d.ts +21 -0
  102. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js.map +1 -1
  103. package/dist/code-generation/interface-package/interface-package-definition/channels-module.d.ts +5 -0
  104. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js.map +1 -1
  105. package/dist/code-generation/interface-package/interface-package-definition/entities-module.d.ts +10 -0
  106. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js.map +1 -1
  107. package/dist/code-generation/interface-package/interface-package-definition/events-module.d.ts +10 -0
  108. package/dist/code-generation/interface-package/interface-package-definition/events-module.js.map +1 -1
  109. package/dist/code-generation/interface-package/interface-package-definition/index.d.ts +8 -0
  110. package/dist/code-generation/interface-package/interface-package-definition/index.js.map +1 -1
  111. package/dist/code-generation/interface-package/interface-package-definition/typings.d.ts +7 -0
  112. package/dist/code-generation/module.d.ts +49 -0
  113. package/dist/code-generation/module.js +2 -2
  114. package/dist/code-generation/module.js.map +2 -2
  115. package/dist/code-generation/plugin-implementation/index.d.ts +3 -0
  116. package/dist/code-generation/plugin-implementation/index.js.map +1 -1
  117. package/dist/code-generation/plugin-implementation/plugin-implementation.d.ts +7 -0
  118. package/dist/code-generation/plugin-implementation/plugin-implementation.js.map +1 -1
  119. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.d.ts +21 -0
  120. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js.map +1 -1
  121. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.d.ts +7 -0
  122. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.d.ts +10 -0
  123. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js.map +1 -1
  124. package/dist/code-generation/plugin-implementation/plugin-typings/index.d.ts +8 -0
  125. package/dist/code-generation/plugin-implementation/plugin-typings/index.js.map +1 -1
  126. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.d.ts +17 -0
  127. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js.map +1 -1
  128. package/dist/code-generation/plugin-implementation/plugin-typings/tables-module.d.ts +10 -0
  129. package/dist/code-generation/plugin-implementation/plugin-typings/tables-module.js.map +1 -1
  130. package/dist/code-generation/plugin-implementation/plugin-typings/workflows-module.d.ts +27 -0
  131. package/dist/code-generation/plugin-implementation/plugin-typings/workflows-module.js.map +1 -1
  132. package/dist/code-generation/plugin-package/index.d.ts +2 -0
  133. package/dist/code-generation/plugin-package/index.js.map +1 -1
  134. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.d.ts +21 -0
  135. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js.map +1 -1
  136. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.d.ts +7 -0
  137. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.d.ts +10 -0
  138. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js.map +1 -1
  139. package/dist/code-generation/plugin-package/plugin-package-definition/index.d.ts +8 -0
  140. package/dist/code-generation/plugin-package/plugin-package-definition/index.js.map +1 -1
  141. package/dist/code-generation/plugin-package/plugin-package-definition/interfaces-module.d.ts +7 -0
  142. package/dist/code-generation/plugin-package/plugin-package-definition/interfaces-module.js.map +1 -1
  143. package/dist/code-generation/plugin-package/plugin-package-definition/recurring-events-module.d.ts +5 -0
  144. package/dist/code-generation/plugin-package/plugin-package-definition/recurring-events-module.js.map +1 -1
  145. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.d.ts +10 -0
  146. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js.map +1 -1
  147. package/dist/code-generation/plugin-package/plugin-package-definition/typings.d.ts +7 -0
  148. package/dist/code-generation/strings.d.ts +4 -0
  149. package/dist/code-generation/strings.js.map +1 -1
  150. package/dist/code-generation/typings.d.ts +162 -0
  151. package/dist/code-generation/typings.test.d.ts +1 -0
  152. package/dist/command-definitions.d.ts +1480 -0
  153. package/dist/command-definitions.js +0 -2
  154. package/dist/command-implementations/add-command.d.ts +15 -0
  155. package/dist/command-implementations/add-command.js.map +1 -1
  156. package/dist/command-implementations/base-command.d.ts +13 -0
  157. package/dist/command-implementations/base-command.js.map +1 -1
  158. package/dist/command-implementations/bot-commands.d.ts +20 -0
  159. package/dist/command-implementations/bot-commands.js.map +1 -1
  160. package/dist/command-implementations/build-command.d.ts +9 -0
  161. package/dist/command-implementations/build-command.js +4 -4
  162. package/dist/command-implementations/build-command.js.map +2 -2
  163. package/dist/command-implementations/bundle-command.d.ts +10 -0
  164. package/dist/command-implementations/bundle-command.js +8 -7
  165. package/dist/command-implementations/bundle-command.js.map +2 -2
  166. package/dist/command-implementations/chat-command.d.ts +13 -0
  167. package/dist/command-implementations/chat-command.js.map +1 -1
  168. package/dist/command-implementations/deploy-command.d.ts +18 -0
  169. package/dist/command-implementations/deploy-command.js +1 -2
  170. package/dist/command-implementations/deploy-command.js.map +1 -1
  171. package/dist/command-implementations/dev-command.d.ts +21 -0
  172. package/dist/command-implementations/dev-command.js +6 -1
  173. package/dist/command-implementations/dev-command.js.map +2 -2
  174. package/dist/command-implementations/gen-command.d.ts +11 -0
  175. package/dist/command-implementations/gen-command.js.map +1 -1
  176. package/dist/command-implementations/global-command.d.ts +57 -0
  177. package/dist/command-implementations/global-command.js.map +1 -1
  178. package/dist/command-implementations/index.d.ts +1534 -0
  179. package/dist/command-implementations/index.js +0 -2
  180. package/dist/command-implementations/init-command.d.ts +17 -0
  181. package/dist/command-implementations/init-command.js.map +1 -1
  182. package/dist/command-implementations/integration-commands.d.ts +15 -0
  183. package/dist/command-implementations/integration-commands.js.map +1 -1
  184. package/dist/command-implementations/interface-commands.d.ts +14 -0
  185. package/dist/command-implementations/interface-commands.js.map +1 -1
  186. package/dist/command-implementations/lint-command.d.ts +15 -0
  187. package/dist/command-implementations/login-command.d.ts +6 -0
  188. package/dist/command-implementations/login-command.js +1 -2
  189. package/dist/command-implementations/login-command.js.map +1 -1
  190. package/dist/command-implementations/logout-command.d.ts +6 -0
  191. package/dist/command-implementations/plugin-commands.d.ts +14 -0
  192. package/dist/command-implementations/plugin-commands.js.map +1 -1
  193. package/dist/command-implementations/profile-commands.d.ts +14 -0
  194. package/dist/command-implementations/profile-commands.js +1 -2
  195. package/dist/command-implementations/profile-commands.js.map +1 -1
  196. package/dist/command-implementations/project-command.d.ts +67 -0
  197. package/dist/command-implementations/project-command.js.map +1 -1
  198. package/dist/command-implementations/read-command.d.ts +10 -0
  199. package/dist/command-implementations/serve-command.d.ts +6 -0
  200. package/dist/command-implementations/serve-command.js.map +1 -1
  201. package/dist/command-tree.d.ts +39 -0
  202. package/dist/config.d.ts +1441 -0
  203. package/dist/consts.d.ts +41 -0
  204. package/dist/errors.d.ts +56 -0
  205. package/dist/errors.js.map +1 -1
  206. package/dist/index.d.ts +1524 -0
  207. package/dist/index.js +50 -25
  208. package/dist/index.js.map +3 -3
  209. package/dist/init.d.ts +1 -0
  210. package/dist/linter/base-linter.d.ts +21 -0
  211. package/dist/linter/base-linter.js.map +1 -1
  212. package/dist/linter/base-linter.test.d.ts +1 -0
  213. package/dist/linter/base-linter.test.js +4 -4
  214. package/dist/linter/base-linter.test.js.map +1 -1
  215. package/dist/linter/bot-linter.d.ts +5 -0
  216. package/dist/linter/integration-linter.d.ts +7 -0
  217. package/dist/linter/interface-linter.d.ts +5 -0
  218. package/dist/linter/ruleset-tests/bot.ruleset.test.d.ts +1 -0
  219. package/dist/linter/ruleset-tests/common.d.ts +9 -0
  220. package/dist/linter/ruleset-tests/integration.ruleset.test.d.ts +1 -0
  221. package/dist/linter/ruleset-tests/interface.ruleset.test.d.ts +1 -0
  222. package/dist/linter/rulesets/bot.ruleset.d.ts +165 -0
  223. package/dist/linter/rulesets/bot.ruleset.js.map +1 -1
  224. package/dist/linter/rulesets/integration.ruleset.d.ts +390 -0
  225. package/dist/linter/rulesets/integration.ruleset.js.map +1 -1
  226. package/dist/linter/rulesets/interface.ruleset.d.ts +141 -0
  227. package/dist/linter/rulesets/interface.ruleset.js.map +1 -1
  228. package/dist/linter/spectral-functions.d.ts +11 -0
  229. package/dist/logger/base-logger.d.ts +43 -0
  230. package/dist/logger/base-logger.js.map +1 -1
  231. package/dist/logger/index.d.ts +22 -0
  232. package/dist/logger/index.js.map +1 -1
  233. package/dist/logger/logger.test.d.ts +1 -0
  234. package/dist/package-ref.d.ts +22 -0
  235. package/dist/package-ref.js.map +1 -1
  236. package/dist/package-ref.test.d.ts +1 -0
  237. package/dist/package-ref.test.js.map +1 -1
  238. package/dist/project-templates.d.ts +42 -0
  239. package/dist/register-yargs.d.ts +4 -0
  240. package/dist/register-yargs.js.map +1 -1
  241. package/dist/root.d.ts +7 -0
  242. package/dist/sdk/index.d.ts +2 -0
  243. package/dist/sdk/index.js +5 -0
  244. package/dist/sdk/validate-bot.d.ts +2 -0
  245. package/dist/sdk/validate-bot.js.map +1 -1
  246. package/dist/sdk/validate-bot.test.d.ts +1 -0
  247. package/dist/sdk/validate-integration.d.ts +2 -0
  248. package/dist/sdk/validate-integration.js.map +1 -1
  249. package/dist/tables/index.d.ts +1 -0
  250. package/dist/tables/schemas.d.ts +1259 -0
  251. package/dist/tables/tables-publisher.d.ts +22 -0
  252. package/dist/tables/tables-publisher.js.map +1 -1
  253. package/dist/typings.d.ts +27 -0
  254. package/dist/utils/attribute-utils.d.ts +10 -0
  255. package/dist/utils/cache-utils.d.ts +14 -0
  256. package/dist/utils/case-utils.d.ts +14 -0
  257. package/dist/utils/case-utils.test.d.ts +1 -0
  258. package/dist/utils/case-utils.test.js.map +1 -1
  259. package/dist/utils/concurrency-utils.d.ts +1 -0
  260. package/dist/utils/concurrency-utils.test.d.ts +1 -0
  261. package/dist/utils/esbuild-utils.d.ts +29 -0
  262. package/dist/utils/esbuild-utils.js +32 -1
  263. package/dist/utils/esbuild-utils.js.map +3 -3
  264. package/dist/utils/event-emitter.d.ts +7 -0
  265. package/dist/utils/file-watcher.d.ts +17 -0
  266. package/dist/utils/file-watcher.js.map +1 -1
  267. package/dist/utils/guard-utils.d.ts +4 -0
  268. package/dist/utils/id-utils.d.ts +2 -0
  269. package/dist/utils/index.d.ts +22 -0
  270. package/dist/utils/object-utils.d.ts +1 -0
  271. package/dist/utils/path-utils.d.ts +28 -0
  272. package/dist/utils/path-utils.test.d.ts +1 -0
  273. package/dist/utils/pkgjson-utils.d.ts +17 -0
  274. package/dist/utils/promise-utils.d.ts +2 -0
  275. package/dist/utils/promise-utils.test.d.ts +1 -0
  276. package/dist/utils/prompt-utils.d.ts +33 -0
  277. package/dist/utils/prompt-utils.js.map +1 -1
  278. package/dist/utils/record-utils.d.ts +8 -0
  279. package/dist/utils/record-utils.test.d.ts +1 -0
  280. package/dist/utils/require-utils.d.ts +2 -0
  281. package/dist/utils/require-utils.js.map +1 -1
  282. package/dist/utils/require-utils.test.d.ts +1 -0
  283. package/dist/utils/require-utils.test.js.map +1 -1
  284. package/dist/utils/schema-utils.d.ts +13 -0
  285. package/dist/utils/schema-utils.test.d.ts +1 -0
  286. package/dist/utils/semver-utils.d.ts +8 -0
  287. package/dist/utils/string-utils.d.ts +2 -0
  288. package/dist/utils/template-utils.d.ts +1 -0
  289. package/dist/utils/tunnel-utils.d.ts +49 -0
  290. package/dist/utils/tunnel-utils.js.map +1 -1
  291. package/dist/utils/type-utils.d.ts +19 -0
  292. package/dist/utils/url-utils.d.ts +19 -0
  293. package/dist/utils/url-utils.js.map +1 -1
  294. package/dist/worker/child-entrypoint.d.ts +1 -0
  295. package/dist/worker/child-entrypoint.js.map +1 -1
  296. package/dist/worker/child-wrapper.d.ts +18 -0
  297. package/dist/worker/child-wrapper.js.map +1 -1
  298. package/dist/worker/config.d.ts +28 -0
  299. package/dist/worker/index.d.ts +2 -0
  300. package/dist/worker/is-child.d.ts +14 -0
  301. package/dist/worker/is-child.js.map +1 -1
  302. package/dist/worker/worker-state.d.ts +30 -0
  303. package/dist/worker/worker.d.ts +20 -0
  304. package/package.json +7 -5
  305. package/tsconfig.build.json +14 -0
@@ -1,32 +1,36 @@
1
1
 
2
- > @botpress/cli@4.17.13 build /home/runner/work/botpress/botpress/packages/cli
3
- > pnpm run bundle && pnpm run template:gen
2
+ > @botpress/cli@4.17.15 build /home/runner/work/botpress/botpress/packages/cli
3
+ > pnpm run build:types && pnpm run bundle && pnpm run template:gen
4
4
 
5
5
 
6
- > @botpress/cli@4.17.13 bundle /home/runner/work/botpress/botpress/packages/cli
6
+ > @botpress/cli@4.17.15 build:types /home/runner/work/botpress/botpress/packages/cli
7
+ > tsc -p ./tsconfig.build.json
8
+
9
+
10
+ > @botpress/cli@4.17.15 bundle /home/runner/work/botpress/botpress/packages/cli
7
11
  > ts-node -T build.ts
8
12
 
9
13
 
10
- > @botpress/cli@4.17.13 template:gen /home/runner/work/botpress/botpress/packages/cli
14
+ > @botpress/cli@4.17.15 template:gen /home/runner/work/botpress/botpress/packages/cli
11
15
  > pnpm -r --stream -F @bp-templates/* exec bp gen
12
16
 
13
- 🤖 Botpress CLI v4.17.13
14
- 🤖 Botpress CLI v4.17.13
15
- 🤖 Botpress CLI v4.17.13
16
- 🤖 Botpress CLI v4.17.13
17
- ○ Generating typings for integration empty-integration...
17
+ 🤖 Botpress CLI v4.17.15
18
+ 🤖 Botpress CLI v4.17.15
19
+ 🤖 Botpress CLI v4.17.15
20
+ 🤖 Botpress CLI v4.17.15
21
+ ○ Generating typings for bot...
18
22
  ✓ Typings available at .botpress
19
23
 
20
24
  ○ Generating typings for plugin empty-plugin...
25
+ ○ Generating typings for integration hello-world...
21
26
  ✓ Typings available at .botpress
22
27
 
23
- ○ Generating typings for bot...
24
- ○ Generating typings for integration hello-world...
28
+ ○ Generating typings for integration empty-integration...
25
29
  ✓ Typings available at .botpress
26
30
 
27
31
  ✓ Typings available at .botpress
28
32
 
29
- 🤖 Botpress CLI v4.17.13
33
+ 🤖 Botpress CLI v4.17.15
30
34
  ○ Generating typings for integration webhook-message...
31
35
  ✓ Typings available at .botpress
32
36
 
package/bin.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- require("./dist/index.js");
2
+ require("./dist/cli.js");
@@ -0,0 +1,5 @@
1
+ import * as client from '@botpress/client';
2
+ import * as sdk from '@botpress/sdk';
3
+ import * as types from './types';
4
+ export declare const prepareCreateBotBody: (bot: sdk.BotDefinition) => Promise<types.CreateBotRequestBody>;
5
+ export declare const prepareUpdateBotBody: (localBot: types.UpdateBotRequestBody, remoteBot: client.Bot) => types.UpdateBotRequestBody;
@@ -0,0 +1,50 @@
1
+ import * as client from '@botpress/client';
2
+ import type { Logger } from '../logger';
3
+ import { ApiPackageRef, NamePackageRef } from '../package-ref';
4
+ import * as utils from '../utils';
5
+ import * as paging from './paging';
6
+ import { ApiClientProps, PublicOrUnlistedIntegration, PrivateIntegration, PublicOrPrivateIntegration, PublicInterface, PrivateInterface, PublicOrPrivateInterface, PrivatePlugin, PublicPlugin, PublicOrPrivatePlugin, BotSummary } from './types';
7
+ export * from './types';
8
+ /**
9
+ * This class is used to wrap the Botpress API and provide a more convenient way to interact with it.
10
+ */
11
+ export declare class ApiClient {
12
+ private _logger;
13
+ readonly client: client.Client;
14
+ readonly url: string;
15
+ readonly token: string;
16
+ readonly workspaceId: string;
17
+ readonly botId?: string;
18
+ static newClient: (props: ApiClientProps, logger: Logger) => ApiClient;
19
+ constructor(props: ApiClientProps, _logger: Logger);
20
+ get isBotpressWorkspace(): boolean;
21
+ safeListTables(req: client.ClientInputs['listTables']): Promise<{
22
+ success: true;
23
+ tables: client.ClientOutputs['listTables']['tables'];
24
+ } | {
25
+ success: false;
26
+ error: Error;
27
+ }>;
28
+ getWorkspace(): Promise<client.ClientOutputs['getWorkspace']>;
29
+ findWorkspaceByHandle(handle: string): Promise<client.ClientOutputs['getWorkspace'] | undefined>;
30
+ switchWorkspace(workspaceId: string): ApiClient;
31
+ switchBot(botId: string): ApiClient;
32
+ updateWorkspace(props: utils.types.SafeOmit<client.ClientInputs['updateWorkspace'], 'id'>): Promise<client.ClientOutputs['updateWorkspace']>;
33
+ getPublicOrPrivateIntegration(ref: ApiPackageRef): Promise<PublicOrPrivateIntegration>;
34
+ findPublicOrPrivateIntegration(ref: ApiPackageRef): Promise<PublicOrPrivateIntegration | undefined>;
35
+ findPrivateIntegration(ref: ApiPackageRef): Promise<PrivateIntegration | undefined>;
36
+ findPublicIntegration(ref: ApiPackageRef): Promise<PublicOrUnlistedIntegration | undefined>;
37
+ findPublicOrPrivateInterface(ref: ApiPackageRef): Promise<PublicOrPrivateInterface | undefined>;
38
+ findPrivateInterface(ref: ApiPackageRef): Promise<PrivateInterface | undefined>;
39
+ getPublicInterface(ref: ApiPackageRef): Promise<PublicInterface>;
40
+ findPublicInterface(ref: ApiPackageRef): Promise<PublicInterface | undefined>;
41
+ findPublicPlugin(ref: ApiPackageRef): Promise<PublicPlugin | undefined>;
42
+ getPublicOrPrivatePlugin(ref: ApiPackageRef): Promise<PublicOrPrivatePlugin>;
43
+ findPublicOrPrivatePlugin(ref: ApiPackageRef): Promise<PublicOrPrivatePlugin | undefined>;
44
+ findPrivatePlugin(ref: ApiPackageRef): Promise<PrivatePlugin | undefined>;
45
+ testLogin(): Promise<void>;
46
+ listAllPages: typeof paging.listAllPages;
47
+ findPreviousIntegrationVersion(ref: NamePackageRef): Promise<PublicOrPrivateIntegration | undefined>;
48
+ findBotByName(name: string): Promise<BotSummary | undefined>;
49
+ private _returnUndefinedOnError;
50
+ }
@@ -227,6 +227,7 @@ class ApiClient {
227
227
  }
228
228
  // Annotate the CommonJS export names for ESM import in node:
229
229
  0 && (module.exports = {
230
- ApiClient
230
+ ApiClient,
231
+ ...require("./types")
231
232
  });
232
233
  //# sourceMappingURL=client.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/api/client.ts"],
4
4
  "sourcesContent": ["import * as client from '@botpress/client'\nimport semver from 'semver'\nimport yn from 'yn'\nimport * as errors from '../errors'\nimport type { Logger } from '../logger'\nimport { formatPackageRef, ApiPackageRef, NamePackageRef } from '../package-ref'\nimport * as utils from '../utils'\nimport * as paging from './paging'\nimport * as retry from './retry'\n\nimport {\n ApiClientProps,\n PublicOrUnlistedIntegration,\n PrivateIntegration,\n PublicOrPrivateIntegration,\n PublicInterface,\n PrivateInterface,\n PublicOrPrivateInterface,\n PrivatePlugin,\n PublicPlugin,\n PublicOrPrivatePlugin,\n BotSummary,\n} from './types'\n\nexport * from './types'\n\n/**\n * This class is used to wrap the Botpress API and provide a more convenient way to interact with it.\n */\nexport class ApiClient {\n public readonly client: client.Client\n public readonly url: string\n public readonly token: string\n public readonly workspaceId: string\n public readonly botId?: string\n\n public static newClient = (props: ApiClientProps, logger: Logger) => new ApiClient(props, logger)\n\n public constructor(\n props: ApiClientProps,\n private _logger: Logger\n ) {\n const { apiUrl, token, workspaceId, botId } = props\n this.client = new client.Client({\n apiUrl,\n token,\n workspaceId,\n botId,\n retry: retry.config,\n })\n this.url = apiUrl\n this.token = token\n this.workspaceId = workspaceId\n this.botId = botId\n }\n\n public get isBotpressWorkspace(): boolean {\n // this environment variable is undocumented and only used internally for dev purposes\n const isBotpressWorkspace = yn(process.env.BP_IS_BOTPRESS_WORKSPACE)\n if (isBotpressWorkspace !== undefined) {\n return isBotpressWorkspace\n }\n return [\n '6a76fa10-e150-4ff6-8f59-a300feec06c1',\n '95de33eb-1551-4af9-9088-e5dcb02efd09',\n '11111111-1111-1111-aaaa-111111111111',\n ].includes(this.workspaceId)\n }\n\n public async safeListTables(req: client.ClientInputs['listTables']): Promise<\n | {\n success: true\n tables: client.ClientOutputs['listTables']['tables']\n }\n | {\n success: false\n error: Error\n }\n > {\n try {\n const result = await this.client.listTables(req)\n return { success: true, tables: result.tables }\n } catch (thrown) {\n const error = thrown instanceof Error ? thrown : new Error(String(thrown))\n return { success: false, error }\n }\n }\n\n public async getWorkspace(): Promise<client.ClientOutputs['getWorkspace']> {\n return this.client.getWorkspace({ id: this.workspaceId })\n }\n\n public async findWorkspaceByHandle(handle: string): Promise<client.ClientOutputs['getWorkspace'] | undefined> {\n const { workspaces } = await this.client.listWorkspaces({ handle })\n return workspaces[0] // There should be only one workspace with a given handle\n }\n\n public switchWorkspace(workspaceId: string): ApiClient {\n return ApiClient.newClient({ apiUrl: this.url, token: this.token, workspaceId }, this._logger)\n }\n\n public switchBot(botId: string): ApiClient {\n return ApiClient.newClient(\n { apiUrl: this.url, token: this.token, botId, workspaceId: this.workspaceId },\n this._logger\n )\n }\n\n public async updateWorkspace(\n props: utils.types.SafeOmit<client.ClientInputs['updateWorkspace'], 'id'>\n ): Promise<client.ClientOutputs['updateWorkspace']> {\n return this.client.updateWorkspace({ id: this.workspaceId, ...props })\n }\n\n public async getPublicOrPrivateIntegration(ref: ApiPackageRef): Promise<PublicOrPrivateIntegration> {\n const integration = await this.findPublicOrPrivateIntegration(ref)\n if (!integration) {\n throw new Error(`Integration \"${formatPackageRef(ref)}\" not found`)\n }\n return integration\n }\n\n public async findPublicOrPrivateIntegration(ref: ApiPackageRef): Promise<PublicOrPrivateIntegration | undefined> {\n const formatted = formatPackageRef(ref)\n\n const privateIntegration = await this.findPrivateIntegration(ref)\n if (privateIntegration) {\n this._logger.debug(`Found integration \"${formatted}\" in workspace`)\n return privateIntegration\n }\n\n const publicIntegration = await this.findPublicIntegration(ref)\n if (publicIntegration) {\n this._logger.debug(`Found integration \"${formatted}\" in hub`)\n return publicIntegration\n }\n\n return\n }\n\n public async findPrivateIntegration(ref: ApiPackageRef): Promise<PrivateIntegration | undefined> {\n const { workspaceId } = this\n if (ref.type === 'id') {\n return this.client\n .getIntegration(ref)\n .then((r) => ({ ...r.integration, workspaceId }))\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n return this.client\n .getIntegrationByName(ref)\n .then((r) => ({ ...r.integration, workspaceId }))\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n public async findPublicIntegration(ref: ApiPackageRef): Promise<PublicOrUnlistedIntegration | undefined> {\n if (ref.type === 'id') {\n return this.client\n .getPublicIntegrationById(ref)\n .then((r) => ({ ...r.integration, visibility: r.integration.visibility as 'public' | 'unlisted' }) as const)\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n return this.client\n .getPublicIntegration(ref)\n .then((r) => ({ ...r.integration, visibility: r.integration.visibility as 'public' | 'unlisted' }) as const)\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n public async findPublicOrPrivateInterface(ref: ApiPackageRef): Promise<PublicOrPrivateInterface | undefined> {\n const formatted = formatPackageRef(ref)\n\n const privateInterface = await this.findPrivateInterface(ref)\n if (privateInterface) {\n this._logger.debug(`Found interface \"${formatted}\" in workspace`)\n return privateInterface\n }\n\n const publicInterface = await this.findPublicInterface(ref)\n if (publicInterface) {\n this._logger.debug(`Found interface \"${formatted}\" in hub`)\n return publicInterface\n }\n\n return\n }\n\n public async findPrivateInterface(ref: ApiPackageRef): Promise<PrivateInterface | undefined> {\n const { workspaceId } = this\n if (ref.type === 'id') {\n return this.client\n .getInterface(ref)\n .then((r) => ({ ...r.interface, workspaceId }))\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n return this.client\n .getInterfaceByName(ref)\n .then((r) => ({ ...r.interface, workspaceId }))\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n public async getPublicInterface(ref: ApiPackageRef): Promise<PublicInterface> {\n const intrface = await this.findPublicInterface(ref)\n if (!intrface) {\n throw new Error(`Interface \"${formatPackageRef(ref)}\" not found`)\n }\n return intrface\n }\n\n public async findPublicInterface(ref: ApiPackageRef): Promise<PublicInterface | undefined> {\n if (ref.type === 'id') {\n return this.client\n .getPublicInterfaceById(ref)\n .then((r) => ({ ...r.interface, public: true }) as const)\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n return this.client\n .getPublicInterface(ref)\n .then((r) => ({ ...r.interface, public: true }) as const)\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n public async findPublicPlugin(ref: ApiPackageRef): Promise<PublicPlugin | undefined> {\n if (ref.type === 'id') {\n return this.client\n .getPublicPluginById(ref)\n .then((r) => ({ ...r.plugin, public: true }) as const)\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n return this.client\n .getPublicPlugin(ref)\n .then((r) => ({ ...r.plugin, public: true }) as const)\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n public async getPublicOrPrivatePlugin(ref: ApiPackageRef): Promise<PublicOrPrivatePlugin> {\n const plugin = await this.findPublicOrPrivatePlugin(ref)\n if (!plugin) {\n throw new Error(`Plugin \"${formatPackageRef(ref)}\" not found`)\n }\n return plugin\n }\n\n public async findPublicOrPrivatePlugin(ref: ApiPackageRef): Promise<PublicOrPrivatePlugin | undefined> {\n const formatted = formatPackageRef(ref)\n\n const privatePlugin = await this.findPrivatePlugin(ref)\n if (privatePlugin) {\n this._logger.debug(`Found plugin \"${formatted}\" in workspace`)\n return privatePlugin\n }\n\n const publicPlugin = await this.findPublicPlugin(ref)\n if (publicPlugin) {\n this._logger.debug(`Found plugin \"${formatted}\" in hub`)\n return publicPlugin\n }\n\n return\n }\n\n public async findPrivatePlugin(ref: ApiPackageRef): Promise<PrivatePlugin | undefined> {\n const { workspaceId } = this\n if (ref.type === 'id') {\n return this.client\n .getPlugin(ref)\n .then((r) => ({ ...r.plugin, workspaceId }))\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n return this.client\n .getPluginByName(ref)\n .then((r) => ({ ...r.plugin, workspaceId }))\n .catch(this._returnUndefinedOnError('ResourceNotFound'))\n }\n\n public async testLogin(): Promise<void> {\n await this.client.listBots({})\n }\n\n public listAllPages = paging.listAllPages\n\n public async findPreviousIntegrationVersion(ref: NamePackageRef): Promise<PublicOrPrivateIntegration | undefined> {\n const isValidSemverVersion = semver.valid(ref.version)\n\n // Sanity check (this should never happen):\n if (!isValidSemverVersion) {\n throw new errors.BotpressCLIError(`Invalid version \"${ref.version}\" for integration \"${ref.name}\"`)\n }\n\n return this.findPublicOrPrivateIntegration({ ...ref, version: `<${ref.version}` })\n }\n\n public async findBotByName(name: string): Promise<BotSummary | undefined> {\n // api does not allow filtering bots by name\n const allBots = await this.listAllPages(this.client.listBots, (r) => r.bots)\n return allBots.find((b) => b.name === name)\n }\n\n private _returnUndefinedOnError =\n (type: client.ApiError['type']) =>\n (thrown: any): undefined => {\n if (client.isApiError(thrown) && thrown.type === type) {\n return\n }\n throw thrown\n }\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["yn", "semver"]
7
7
  }
@@ -0,0 +1,6 @@
1
+ export * from './client';
2
+ export * from './types';
3
+ export * from './integration-body';
4
+ export * from './interface-body';
5
+ export * from './bot-body';
6
+ export * from './plugin-body';
package/dist/api/index.js CHANGED
@@ -21,4 +21,13 @@ __reExport(api_exports, require("./integration-body"), module.exports);
21
21
  __reExport(api_exports, require("./interface-body"), module.exports);
22
22
  __reExport(api_exports, require("./bot-body"), module.exports);
23
23
  __reExport(api_exports, require("./plugin-body"), module.exports);
24
+ // Annotate the CommonJS export names for ESM import in node:
25
+ 0 && (module.exports = {
26
+ ...require("./client"),
27
+ ...require("./types"),
28
+ ...require("./integration-body"),
29
+ ...require("./interface-body"),
30
+ ...require("./bot-body"),
31
+ ...require("./plugin-body")
32
+ });
24
33
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,5 @@
1
+ import * as client from '@botpress/client';
2
+ import * as sdk from '@botpress/sdk';
3
+ import * as types from './types';
4
+ export declare const prepareCreateIntegrationBody: (integration: sdk.IntegrationDefinition | sdk.IntegrationPackage["definition"]) => Promise<types.CreateIntegrationRequestBody>;
5
+ export declare const prepareUpdateIntegrationBody: (localIntegration: types.UpdateIntegrationRequestBody, remoteIntegration: client.Integration) => types.UpdateIntegrationRequestBody;
@@ -0,0 +1,7 @@
1
+ import * as client from '@botpress/client';
2
+ import * as sdk from '@botpress/sdk';
3
+ import * as types from './types';
4
+ export declare const prepareCreateInterfaceBody: (intrface: sdk.InterfaceDefinition | sdk.InterfacePackage["definition"]) => Promise<types.CreateInterfaceRequestBody>;
5
+ export declare const prepareUpdateInterfaceBody: (localInterface: types.CreateInterfaceRequestBody & {
6
+ id: string;
7
+ }, remoteInterface: client.Interface) => types.UpdateInterfaceRequestBody;
@@ -0,0 +1,9 @@
1
+ export type PageLister<R extends object> = (t: {
2
+ nextToken?: string;
3
+ }) => Promise<R & {
4
+ meta: {
5
+ nextToken?: string;
6
+ };
7
+ }>;
8
+ export declare function listAllPages<R extends object>(lister: PageLister<R>): Promise<R[]>;
9
+ export declare function listAllPages<R extends object, M>(lister: PageLister<R>, mapper?: (r: R) => M[]): Promise<M[]>;
@@ -0,0 +1,5 @@
1
+ import * as client from '@botpress/client';
2
+ import * as sdk from '@botpress/sdk';
3
+ import * as types from './types';
4
+ export declare const prepareCreatePluginBody: (plugin: sdk.PluginDefinition | sdk.PluginPackage["definition"]) => Promise<types.CreatePluginRequestBody>;
5
+ export declare const prepareUpdatePluginBody: (localPlugin: types.UpdatePluginRequestBody, remotePlugin: client.Plugin) => types.UpdatePluginRequestBody;
@@ -0,0 +1,2 @@
1
+ import * as client from '@botpress/client';
2
+ export declare const config: client.RetryConfig;
@@ -0,0 +1,62 @@
1
+ import * as client from '@botpress/client';
2
+ import { Logger } from '../logger';
3
+ import { SafeOmit, Merge } from '../utils/type-utils';
4
+ import { ApiClient } from './client';
5
+ export type ApiClientProps = {
6
+ apiUrl: string;
7
+ token: string;
8
+ workspaceId: string;
9
+ botId?: string;
10
+ };
11
+ export type ApiClientFactory = {
12
+ newClient: (props: ApiClientProps, logger: Logger) => ApiClient;
13
+ };
14
+ export type PublicOrUnlistedIntegration = client.Integration & {
15
+ visibility: 'public' | 'unlisted';
16
+ };
17
+ export type PrivateIntegration = client.Integration & {
18
+ workspaceId: string;
19
+ };
20
+ export type PublicOrPrivateIntegration = client.Integration & {
21
+ workspaceId?: string;
22
+ };
23
+ export type IntegrationSummary = client.ClientOutputs['listIntegrations']['integrations'][number];
24
+ export type BotSummary = client.ClientOutputs['listBots']['bots'][number];
25
+ export type PublicInterface = client.Interface & {
26
+ public: true;
27
+ };
28
+ export type PrivateInterface = client.Interface & {
29
+ workspaceId: string;
30
+ };
31
+ export type PublicOrPrivateInterface = client.Interface & {
32
+ workspaceId?: string;
33
+ };
34
+ export type PublicPlugin = client.Plugin & {
35
+ public: true;
36
+ };
37
+ export type PrivatePlugin = client.Plugin & {
38
+ workspaceId: string;
39
+ };
40
+ export type PublicOrPrivatePlugin = client.Plugin & {
41
+ workspaceId?: string;
42
+ };
43
+ export type CreateBotRequestBody = client.ClientInputs['createBot'];
44
+ export type UpdateBotRequestBody = client.ClientInputs['updateBot'];
45
+ export type CreateIntegrationRequestBody = client.ClientInputs['createIntegration'];
46
+ export type UpdateIntegrationRequestBody = client.ClientInputs['updateIntegration'];
47
+ export type CreateInterfaceRequestBody = client.ClientInputs['createInterface'];
48
+ export type UpdateInterfaceRequestBody = client.ClientInputs['updateInterface'];
49
+ type PluginDependency = client.Plugin['dependencies']['integrations'][string];
50
+ export type CreatePluginRequestBody = Merge<SafeOmit<client.ClientInputs['createPlugin'], 'code'>, {
51
+ dependencies?: {
52
+ integrations?: Record<string, PluginDependency>;
53
+ interfaces?: Record<string, PluginDependency>;
54
+ };
55
+ }>;
56
+ export type UpdatePluginRequestBody = Merge<client.ClientInputs['updatePlugin'], {
57
+ dependencies?: {
58
+ integrations?: Record<string, PluginDependency | null>;
59
+ interfaces?: Record<string, PluginDependency | null>;
60
+ };
61
+ }>;
62
+ export {};
@@ -0,0 +1,25 @@
1
+ import * as chat from '@botpress/chat';
2
+ export type ChatProps = {
3
+ client: chat.AuthenticatedClient;
4
+ conversationId: string;
5
+ };
6
+ export declare class Chat {
7
+ private _props;
8
+ private _events;
9
+ private _state;
10
+ static launch(props: ChatProps): Chat;
11
+ private constructor();
12
+ private _run;
13
+ private _setState;
14
+ private _onMessageReceived;
15
+ private _onKeyboardInput;
16
+ private _onExit;
17
+ wait(): Promise<void>;
18
+ private _renderMessages;
19
+ private _printHeader;
20
+ private _switchAlternateScreenBuffer;
21
+ private _restoreOriginalScreenBuffer;
22
+ private _clearStdOut;
23
+ private _messageToText;
24
+ private _textToMessage;
25
+ }
@@ -205,7 +205,7 @@ class Chat {
205
205
  userId: this._props.client.user.id,
206
206
  source: "myself",
207
207
  conversationId: this._props.conversationId,
208
- createdAt: new Date().toISOString(),
208
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
209
209
  payload: { type: "text", text }
210
210
  };
211
211
  };
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/chat/index.ts"],
4
4
  "sourcesContent": ["import * as chat from '@botpress/chat'\nimport * as chalk from 'chalk'\nimport * as readline from 'readline'\nimport * as uuid from 'uuid'\nimport * as utils from '../utils'\n\ntype MessageSource = 'myself' | 'bot' | 'other'\ntype ChatMessage = chat.Message & { source: MessageSource }\ntype ChatState =\n | {\n status: 'stopped'\n }\n | {\n status: 'running'\n messages: ChatMessage[]\n connection: chat.SignalListener\n keyboard: readline.Interface\n }\n\nconst USER_ICONS: Record<MessageSource, string> = {\n myself: '\uD83D\uDC64',\n bot: '\uD83E\uDD16',\n other: '\uD83D\uDC65',\n}\n\nconst MESSAGE_ICONS: Record<chat.Message['payload']['type'], string> = {\n audio: '\uD83C\uDFB5',\n card: '\uD83C\uDCCF',\n carousel: '\uD83C\uDFA0',\n choice: '\uD83D\uDD3D',\n dropdown: '\uD83D\uDD3D',\n file: '\uD83D\uDCC1',\n image: '\uD83C\uDF05',\n location: '\uD83D\uDCCD',\n text: '',\n video: '\uD83C\uDFA5',\n markdown: '',\n bloc: '\uD83E\uDDF1',\n}\n\nconst EXIT_KEYWORDS = ['exit', '.exit']\n\nexport type ChatProps = {\n client: chat.AuthenticatedClient\n conversationId: string\n}\n\nexport class Chat {\n private _events = new utils.emitter.EventEmitter<{ state: ChatState }>()\n private _state: ChatState = { status: 'stopped' }\n\n public static launch(props: ChatProps): Chat {\n const instance = new Chat(props)\n void instance._run()\n return instance\n }\n\n private constructor(private _props: ChatProps) {}\n\n private async _run() {\n this._switchAlternateScreenBuffer()\n this._events.on('state', this._renderMessages)\n\n const connection = await this._props.client.listenConversation({ id: this._props.conversationId })\n const keyboard = readline.createInterface({\n input: process.stdin,\n output: process.stdout,\n })\n\n connection.on('message_created', (m) => void this._onMessageReceived(m))\n keyboard.on('line', (l) => void this._onKeyboardInput(l))\n process.stdin.on('keypress', (_, key) => {\n if (key.name === 'escape') {\n void this._onExit()\n }\n })\n\n this._setState({ status: 'running', messages: [], connection, keyboard })\n }\n\n private _setState = (newState: ChatState) => {\n this._state = newState\n this._events.emit('state', this._state)\n }\n\n private _onMessageReceived = async (message: chat.Signals['message_created']) => {\n if (this._state.status === 'stopped') {\n return\n }\n if (message.userId === this._props.client.user.id) {\n return\n }\n const source: MessageSource = message.isBot ? 'bot' : 'other'\n this._setState({ ...this._state, messages: [...this._state.messages, { ...message, source }] })\n }\n\n private _onKeyboardInput = async (line: string) => {\n if (this._state.status === 'stopped') {\n return\n }\n\n if (EXIT_KEYWORDS.includes(line)) {\n await this._onExit()\n return\n }\n\n if (!line) {\n this._setState({ ...this._state })\n return\n }\n\n const message = this._textToMessage(line)\n this._setState({ ...this._state, messages: [...this._state.messages, message] })\n await this._props.client.createMessage(message)\n }\n\n private _onExit = async () => {\n if (this._state.status === 'stopped') {\n return\n }\n const { connection, keyboard } = this._state\n await connection.disconnect()\n connection.cleanup()\n keyboard.close()\n this._setState({ status: 'stopped' })\n this._clearStdOut()\n this._restoreOriginalScreenBuffer()\n }\n\n public wait(): Promise<void> {\n return new Promise<void>((resolve) => {\n const cb = (state: ChatState) => {\n if (state.status === 'stopped') {\n this._events.off('state', cb)\n resolve()\n }\n }\n this._events.on('state', cb)\n })\n }\n\n private _renderMessages = () => {\n if (this._state.status === 'stopped') {\n return\n }\n\n this._clearStdOut()\n this._printHeader()\n\n for (const message of this._state.messages) {\n const prefix = USER_ICONS[message.source]\n const text = this._messageToText(message)\n const coloredText = message.source === 'bot' ? text : chalk.gray(text)\n process.stdout.write(`${prefix} ${coloredText}\\n`)\n }\n\n this._state.keyboard.setPrompt('>> ')\n this._state.keyboard.prompt(true) // Redisplay the prompt and maintain current input\n }\n\n private _printHeader = () => {\n process.stdout.write(chalk.bold('Botpress Chat\\n'))\n process.stdout.write(chalk.gray('Type \"exit\" or press ESC key to quit\\n'))\n }\n\n private _switchAlternateScreenBuffer = () => {\n process.stdout.write('\\x1B[?1049h')\n }\n\n private _restoreOriginalScreenBuffer = () => {\n process.stdout.write('\\x1B[?1049l')\n }\n\n private _clearStdOut = () => {\n process.stdout.write('\\x1B[2J\\x1B[0;0H')\n }\n\n private _messageToText = (message: Pick<chat.Message, 'payload'>): string => {\n const prefix = MESSAGE_ICONS[message.payload.type]\n switch (message.payload.type) {\n case 'audio':\n return prefix + message.payload.audioUrl\n case 'card':\n return prefix + JSON.stringify(message.payload)\n case 'carousel':\n return prefix + JSON.stringify(message.payload)\n case 'choice':\n return (\n prefix +\n [message.payload.text, ...message.payload.options.map((o) => ` - ${o.label} (${o.value})`)].join('\\n')\n )\n case 'dropdown':\n return (\n prefix +\n [message.payload.text, ...message.payload.options.map((o) => ` - ${o.label} (${o.value})`)].join('\\n')\n )\n case 'file':\n return prefix + message.payload.fileUrl\n case 'image':\n return prefix + message.payload.imageUrl\n case 'location':\n return prefix + `${message.payload.latitude},${message.payload.longitude} (${message.payload.address})`\n case 'text':\n return prefix + message.payload.text\n case 'video':\n return prefix + message.payload.videoUrl\n case 'markdown':\n return prefix + message.payload.markdown\n case 'bloc':\n return [\n prefix,\n ...message.payload.items.map((item) => this._messageToText({ payload: item })).map((l) => `\\t${l}`),\n ].join('\\n')\n default:\n type _assertion = utils.types.AssertNever<typeof message.payload>\n return '<unknown>'\n }\n }\n\n private _textToMessage = (text: string): ChatMessage => {\n return {\n id: uuid.v4(),\n userId: this._props.client.user.id,\n source: 'myself',\n conversationId: this._props.conversationId,\n createdAt: new Date().toISOString(),\n payload: { type: 'text', text },\n }\n }\n}\n"],
5
- "mappings": "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",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,YAAuB;AACvB,eAA0B;AAC1B,WAAsB;AACtB,YAAuB;AAevB,MAAM,aAA4C;AAAA,EAChD,QAAQ;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AACT;AAEA,MAAM,gBAAiE;AAAA,EACrE,OAAO;AAAA,EACP,MAAM;AAAA,EACN,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,MAAM;AACR;AAEA,MAAM,gBAAgB,CAAC,QAAQ,OAAO;AAO/B,MAAM,KAAK;AAAA,EAUR,YAAoB,QAAmB;AAAnB;AAAA,EAAoB;AAAA,EATxC,UAAU,IAAI,MAAM,QAAQ,aAAmC;AAAA,EAC/D,SAAoB,EAAE,QAAQ,UAAU;AAAA,EAEhD,OAAc,OAAO,OAAwB;AAC3C,UAAM,WAAW,IAAI,KAAK,KAAK;AAC/B,SAAK,SAAS,KAAK;AACnB,WAAO;AAAA,EACT;AAAA,EAIA,MAAc,OAAO;AACnB,SAAK,6BAA6B;AAClC,SAAK,QAAQ,GAAG,SAAS,KAAK,eAAe;AAE7C,UAAM,aAAa,MAAM,KAAK,OAAO,OAAO,mBAAmB,EAAE,IAAI,KAAK,OAAO,eAAe,CAAC;AACjG,UAAM,WAAW,SAAS,gBAAgB;AAAA,MACxC,OAAO,QAAQ;AAAA,MACf,QAAQ,QAAQ;AAAA,IAClB,CAAC;AAED,eAAW,GAAG,mBAAmB,CAAC,MAAM,KAAK,KAAK,mBAAmB,CAAC,CAAC;AACvE,aAAS,GAAG,QAAQ,CAAC,MAAM,KAAK,KAAK,iBAAiB,CAAC,CAAC;AACxD,YAAQ,MAAM,GAAG,YAAY,CAAC,GAAG,QAAQ;AACvC,UAAI,IAAI,SAAS,UAAU;AACzB,aAAK,KAAK,QAAQ;AAAA,MACpB;AAAA,IACF,CAAC;AAED,SAAK,UAAU,EAAE,QAAQ,WAAW,UAAU,CAAC,GAAG,YAAY,SAAS,CAAC;AAAA,EAC1E;AAAA,EAEQ,YAAY,CAAC,aAAwB;AAC3C,SAAK,SAAS;AACd,SAAK,QAAQ,KAAK,SAAS,KAAK,MAAM;AAAA,EACxC;AAAA,EAEQ,qBAAqB,OAAO,YAA6C;AAC/E,QAAI,KAAK,OAAO,WAAW,WAAW;AACpC;AAAA,IACF;AACA,QAAI,QAAQ,WAAW,KAAK,OAAO,OAAO,KAAK,IAAI;AACjD;AAAA,IACF;AACA,UAAM,SAAwB,QAAQ,QAAQ,QAAQ;AACtD,SAAK,UAAU,EAAE,GAAG,KAAK,QAAQ,UAAU,CAAC,GAAG,KAAK,OAAO,UAAU,EAAE,GAAG,SAAS,OAAO,CAAC,EAAE,CAAC;AAAA,EAChG;AAAA,EAEQ,mBAAmB,OAAO,SAAiB;AACjD,QAAI,KAAK,OAAO,WAAW,WAAW;AACpC;AAAA,IACF;AAEA,QAAI,cAAc,SAAS,IAAI,GAAG;AAChC,YAAM,KAAK,QAAQ;AACnB;AAAA,IACF;AAEA,QAAI,CAAC,MAAM;AACT,WAAK,UAAU,EAAE,GAAG,KAAK,OAAO,CAAC;AACjC;AAAA,IACF;AAEA,UAAM,UAAU,KAAK,eAAe,IAAI;AACxC,SAAK,UAAU,EAAE,GAAG,KAAK,QAAQ,UAAU,CAAC,GAAG,KAAK,OAAO,UAAU,OAAO,EAAE,CAAC;AAC/E,UAAM,KAAK,OAAO,OAAO,cAAc,OAAO;AAAA,EAChD;AAAA,EAEQ,UAAU,YAAY;AAC5B,QAAI,KAAK,OAAO,WAAW,WAAW;AACpC;AAAA,IACF;AACA,UAAM,EAAE,YAAY,SAAS,IAAI,KAAK;AACtC,UAAM,WAAW,WAAW;AAC5B,eAAW,QAAQ;AACnB,aAAS,MAAM;AACf,SAAK,UAAU,EAAE,QAAQ,UAAU,CAAC;AACpC,SAAK,aAAa;AAClB,SAAK,6BAA6B;AAAA,EACpC;AAAA,EAEO,OAAsB;AAC3B,WAAO,IAAI,QAAc,CAAC,YAAY;AACpC,YAAM,KAAK,CAAC,UAAqB;AAC/B,YAAI,MAAM,WAAW,WAAW;AAC9B,eAAK,QAAQ,IAAI,SAAS,EAAE;AAC5B,kBAAQ;AAAA,QACV;AAAA,MACF;AACA,WAAK,QAAQ,GAAG,SAAS,EAAE;AAAA,IAC7B,CAAC;AAAA,EACH;AAAA,EAEQ,kBAAkB,MAAM;AAC9B,QAAI,KAAK,OAAO,WAAW,WAAW;AACpC;AAAA,IACF;AAEA,SAAK,aAAa;AAClB,SAAK,aAAa;AAElB,eAAW,WAAW,KAAK,OAAO,UAAU;AAC1C,YAAM,SAAS,WAAW,QAAQ,MAAM;AACxC,YAAM,OAAO,KAAK,eAAe,OAAO;AACxC,YAAM,cAAc,QAAQ,WAAW,QAAQ,OAAO,MAAM,KAAK,IAAI;AACrE,cAAQ,OAAO,MAAM,GAAG,MAAM,IAAI,WAAW;AAAA,CAAI;AAAA,IACnD;AAEA,SAAK,OAAO,SAAS,UAAU,KAAK;AACpC,SAAK,OAAO,SAAS,OAAO,IAAI;AAAA,EAClC;AAAA,EAEQ,eAAe,MAAM;AAC3B,YAAQ,OAAO,MAAM,MAAM,KAAK,iBAAiB,CAAC;AAClD,YAAQ,OAAO,MAAM,MAAM,KAAK,wCAAwC,CAAC;AAAA,EAC3E;AAAA,EAEQ,+BAA+B,MAAM;AAC3C,YAAQ,OAAO,MAAM,aAAa;AAAA,EACpC;AAAA,EAEQ,+BAA+B,MAAM;AAC3C,YAAQ,OAAO,MAAM,aAAa;AAAA,EACpC;AAAA,EAEQ,eAAe,MAAM;AAC3B,YAAQ,OAAO,MAAM,kBAAkB;AAAA,EACzC;AAAA,EAEQ,iBAAiB,CAAC,YAAmD;AAC3E,UAAM,SAAS,cAAc,QAAQ,QAAQ,IAAI;AACjD,YAAQ,QAAQ,QAAQ,MAAM;AAAA,MAC5B,KAAK;AACH,eAAO,SAAS,QAAQ,QAAQ;AAAA,MAClC,KAAK;AACH,eAAO,SAAS,KAAK,UAAU,QAAQ,OAAO;AAAA,MAChD,KAAK;AACH,eAAO,SAAS,KAAK,UAAU,QAAQ,OAAO;AAAA,MAChD,KAAK;AACH,eACE,SACA,CAAC,QAAQ,QAAQ,MAAM,GAAG,QAAQ,QAAQ,QAAQ,IAAI,CAAC,MAAM,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI;AAAA,MAE1G,KAAK;AACH,eACE,SACA,CAAC,QAAQ,QAAQ,MAAM,GAAG,QAAQ,QAAQ,QAAQ,IAAI,CAAC,MAAM,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI;AAAA,MAE1G,KAAK;AACH,eAAO,SAAS,QAAQ,QAAQ;AAAA,MAClC,KAAK;AACH,eAAO,SAAS,QAAQ,QAAQ;AAAA,MAClC,KAAK;AACH,eAAO,SAAS,GAAG,QAAQ,QAAQ,QAAQ,IAAI,QAAQ,QAAQ,SAAS,KAAK,QAAQ,QAAQ,OAAO;AAAA,MACtG,KAAK;AACH,eAAO,SAAS,QAAQ,QAAQ;AAAA,MAClC,KAAK;AACH,eAAO,SAAS,QAAQ,QAAQ;AAAA,MAClC,KAAK;AACH,eAAO,SAAS,QAAQ,QAAQ;AAAA,MAClC,KAAK;AACH,eAAO;AAAA,UACL;AAAA,UACA,GAAG,QAAQ,QAAQ,MAAM,IAAI,CAAC,SAAS,KAAK,eAAe,EAAE,SAAS,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,IAAK,CAAC,EAAE;AAAA,QACpG,EAAE,KAAK,IAAI;AAAA,MACb;AAEE,eAAO;AAAA,IACX;AAAA,EACF;AAAA,EAEQ,iBAAiB,CAAC,SAA8B;AACtD,WAAO;AAAA,MACL,IAAI,KAAK,GAAG;AAAA,MACZ,QAAQ,KAAK,OAAO,OAAO,KAAK;AAAA,MAChC,QAAQ;AAAA,MACR,gBAAgB,KAAK,OAAO;AAAA,MAC5B,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,MAClC,SAAS,EAAE,MAAM,QAAQ,KAAK;AAAA,IAChC;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
package/dist/cli.d.ts ADDED
@@ -0,0 +1 @@
1
+ import 'dotenv/config';
package/dist/cli.js ADDED
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (let key of __getOwnPropNames(from))
11
+ if (!__hasOwnProp.call(to, key) && key !== except)
12
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ }
14
+ return to;
15
+ };
16
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
17
+ // If the importer is in node compatibility mode or this is not an ESM
18
+ // file that has been converted to a CommonJS file using a Babel-
19
+ // compatible transform (i.e. "__esModule" has not been set), then set
20
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var import_config = require("dotenv/config");
25
+ var import_yargs_extra = __toESM(require("@bpinternal/yargs-extra"));
26
+ var import_command_definitions = __toESM(require("./command-definitions"));
27
+ var import_command_implementations = __toESM(require("./command-implementations"));
28
+ var tree = __toESM(require("./command-tree"));
29
+ var errors = __toESM(require("./errors"));
30
+ var import_logger = require("./logger");
31
+ var import_register_yargs = require("./register-yargs");
32
+ const logError = (thrown) => {
33
+ const error = errors.BotpressCLIError.map(thrown);
34
+ new import_logger.Logger().error(error.message);
35
+ };
36
+ const onError = (thrown) => {
37
+ logError(thrown);
38
+ process.exit(1);
39
+ };
40
+ const yargsFail = (msg) => {
41
+ logError(`${msg}
42
+ `);
43
+ import_yargs_extra.default.showHelp();
44
+ process.exit(1);
45
+ };
46
+ process.on("uncaughtException", (thrown) => onError(thrown));
47
+ process.on("unhandledRejection", (thrown) => onError(thrown));
48
+ const commands = tree.zipTree(import_command_definitions.default, import_command_implementations.default);
49
+ (0, import_register_yargs.registerYargs)(import_yargs_extra.default, commands);
50
+ void import_yargs_extra.default.version().scriptName("bp").demandCommand(1, "You didn't provide any command. Use the --help flag to see the list of available commands.").recommendCommands().strict().help().fail(yargsFail).parse();
51
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/cli.ts"],
4
+ "sourcesContent": ["import 'dotenv/config'\nimport yargs from '@bpinternal/yargs-extra'\nimport commandDefinitions from './command-definitions'\nimport commandImplementations from './command-implementations'\nimport * as tree from './command-tree'\nimport * as errors from './errors'\nimport { Logger } from './logger'\nimport { registerYargs } from './register-yargs'\n\nconst logError = (thrown: unknown) => {\n const error = errors.BotpressCLIError.map(thrown)\n new Logger().error(error.message)\n}\n\nconst onError = (thrown: unknown) => {\n logError(thrown)\n process.exit(1)\n}\n\nconst yargsFail = (msg: string) => {\n logError(`${msg}\\n`)\n yargs.showHelp()\n process.exit(1)\n}\n\nprocess.on('uncaughtException', (thrown: unknown) => onError(thrown))\nprocess.on('unhandledRejection', (thrown: unknown) => onError(thrown))\n\nconst commands = tree.zipTree(commandDefinitions, commandImplementations)\n\nregisterYargs(yargs, commands)\n\nvoid yargs\n .version()\n .scriptName('bp')\n .demandCommand(1, \"You didn't provide any command. Use the --help flag to see the list of available commands.\")\n .recommendCommands()\n .strict()\n .help()\n .fail(yargsFail)\n .parse()\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,oBAAO;AACP,yBAAkB;AAClB,iCAA+B;AAC/B,qCAAmC;AACnC,WAAsB;AACtB,aAAwB;AACxB,oBAAuB;AACvB,4BAA8B;AAE9B,MAAM,WAAW,CAAC,WAAoB;AACpC,QAAM,QAAQ,OAAO,iBAAiB,IAAI,MAAM;AAChD,MAAI,qBAAO,EAAE,MAAM,MAAM,OAAO;AAClC;AAEA,MAAM,UAAU,CAAC,WAAoB;AACnC,WAAS,MAAM;AACf,UAAQ,KAAK,CAAC;AAChB;AAEA,MAAM,YAAY,CAAC,QAAgB;AACjC,WAAS,GAAG,GAAG;AAAA,CAAI;AACnB,qBAAAA,QAAM,SAAS;AACf,UAAQ,KAAK,CAAC;AAChB;AAEA,QAAQ,GAAG,qBAAqB,CAAC,WAAoB,QAAQ,MAAM,CAAC;AACpE,QAAQ,GAAG,sBAAsB,CAAC,WAAoB,QAAQ,MAAM,CAAC;AAErE,MAAM,WAAW,KAAK,QAAQ,2BAAAC,SAAoB,+BAAAC,OAAsB;AAAA,IAExE,qCAAc,mBAAAF,SAAO,QAAQ;AAE7B,KAAK,mBAAAA,QACF,QAAQ,EACR,WAAW,IAAI,EACf,cAAc,GAAG,4FAA4F,EAC7G,kBAAkB,EAClB,OAAO,EACP,KAAK,EACL,KAAK,SAAS,EACd,MAAM;",
6
+ "names": ["yargs", "commandDefinitions", "commandImplementations"]
7
+ }
@@ -0,0 +1,8 @@
1
+ import * as sdk from '@botpress/sdk';
2
+ import { Module } from '../module';
3
+ export declare class BotImplementationModule extends Module {
4
+ private _typingsModule;
5
+ private _pluginsModule;
6
+ constructor(bot: sdk.BotDefinition);
7
+ getContent(): Promise<string>;
8
+ }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/code-generation/bot-implementation/bot-implementation.ts"],
4
4
  "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport * as consts from '../consts'\nimport { Module } from '../module'\nimport { BotPluginsIndexModule } from './bot-plugins'\nimport { BotTypingsModule } from './bot-typings'\n\nexport class BotImplementationModule extends Module {\n private _typingsModule: BotTypingsModule\n private _pluginsModule: BotPluginsIndexModule\n\n public constructor(bot: sdk.BotDefinition) {\n super({\n exportName: 'Bot',\n path: consts.INDEX_FILE,\n })\n\n this._typingsModule = new BotTypingsModule(bot)\n this._typingsModule.unshift('typings')\n this.pushDep(this._typingsModule)\n\n this._pluginsModule = new BotPluginsIndexModule(bot)\n this._pluginsModule.unshift(consts.fromOutDir.pluginsDir)\n this.pushDep(this._pluginsModule)\n }\n\n public async getContent() {\n const {\n //\n _typingsModule: typingsModule,\n _pluginsModule: pluginsModule,\n } = this\n\n const typingsImport = typingsModule.import(this)\n const pluginsImport = pluginsModule.import(this)\n\n return [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n `import * as ${typingsModule.name} from \"./${typingsImport}\"`,\n `import * as ${pluginsModule.name} from \"./${pluginsImport}\"`,\n '',\n `export * from \"./${typingsImport}\"`,\n `export * from \"./${pluginsImport}\"`,\n '',\n `type TPlugins = ${pluginsModule.name}.TPlugins`,\n `type TBot = sdk.DefaultBot<${typingsModule.name}.${typingsModule.exportName}>`,\n '',\n 'export type BotProps = {',\n ' actions: sdk.BotProps<TBot, TPlugins>[\"actions\"]',\n '}',\n '',\n 'export class Bot extends sdk.Bot<TBot, TPlugins> {',\n ' public constructor(props: BotProps) {',\n ' super({',\n ' actions: props.actions,',\n ` plugins: ${pluginsModule.name}.${pluginsModule.exportName}`,\n ' })',\n ' }',\n '}',\n '',\n '// extra types',\n '',\n 'type AsyncFunction = (...args: any[]) => Promise<any>',\n '',\n 'export type BotHandlers = sdk.BotHandlers<TBot>',\n '',\n 'export type EventHandlers = Required<{',\n \" [K in keyof BotHandlers['eventHandlers']]: NonNullable<BotHandlers['eventHandlers'][K]>[number]\",\n '}>',\n 'export type MessageHandlers = Required<{',\n \" [K in keyof BotHandlers['messageHandlers']]: NonNullable<BotHandlers['messageHandlers'][K]>[number]\",\n '}>',\n 'export type WorkflowHandlers = {',\n \" [TWorkflowName in keyof Required<BotHandlers['workflowHandlers'][keyof BotHandlers['workflowHandlers']]>]:\",\n \" Required<BotHandlers['workflowHandlers'][keyof BotHandlers['workflowHandlers']]>[TWorkflowName] extends\",\n ' ({ handler: infer U })[] ? U : never',\n '}',\n '',\n \"export type MessageHandlerProps = Parameters<MessageHandlers['*']>[0]\",\n \"export type EventHandlerProps = Parameters<EventHandlers['*']>[0]\",\n 'export type WorkflowHandlerProps = {',\n ' [TWorkflowName in keyof WorkflowHandlers]: WorkflowHandlers[TWorkflowName] extends',\n ' (..._: infer U) => any ? U[0] : never',\n '}',\n '',\n \"export type Client = (MessageHandlerProps | EventHandlerProps)['client']\",\n 'export type ClientOperation = keyof {',\n ' [K in keyof Client as Client[K] extends AsyncFunction ? K : never]: null',\n '}',\n 'export type ClientInputs = {',\n ' [K in ClientOperation]: Parameters<Client[K]>[0]',\n '}',\n 'export type ClientOutputs = {',\n ' [K in ClientOperation]: Awaited<ReturnType<Client[K]>>',\n '}',\n ].join('\\n')\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,oBAAuB;AACvB,yBAAsC;AACtC,yBAAiC;AAE1B,MAAM,gCAAgC,qBAAO;AAAA,EAC1C;AAAA,EACA;AAAA,EAED,YAAY,KAAwB;AACzC,UAAM;AAAA,MACJ,YAAY;AAAA,MACZ,MAAM,OAAO;AAAA,IACf,CAAC;AAED,SAAK,iBAAiB,IAAI,oCAAiB,GAAG;AAC9C,SAAK,eAAe,QAAQ,SAAS;AACrC,SAAK,QAAQ,KAAK,cAAc;AAEhC,SAAK,iBAAiB,IAAI,yCAAsB,GAAG;AACnD,SAAK,eAAe,QAAQ,OAAO,WAAW,UAAU;AACxD,SAAK,QAAQ,KAAK,cAAc;AAAA,EAClC;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM;AAAA;AAAA,MAEJ,gBAAgB;AAAA,MAChB,gBAAgB;AAAA,IAClB,IAAI;AAEJ,UAAM,gBAAgB,cAAc,OAAO,IAAI;AAC/C,UAAM,gBAAgB,cAAc,OAAO,IAAI;AAE/C,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA,eAAe,cAAc,gBAAgB;AAAA,MAC7C,eAAe,cAAc,gBAAgB;AAAA,MAC7C;AAAA,MACA,oBAAoB;AAAA,MACpB,oBAAoB;AAAA,MACpB;AAAA,MACA,mBAAmB,cAAc;AAAA,MACjC,8BAA8B,cAAc,QAAQ,cAAc;AAAA,MAClE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,kBAAkB,cAAc,QAAQ,cAAc;AAAA,MACtD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,oBAAuB;AACvB,yBAAsC;AACtC,yBAAiC;AAE1B,MAAM,gCAAgC,qBAAO;AAAA,EAC1C;AAAA,EACA;AAAA,EAED,YAAY,KAAwB;AACzC,UAAM;AAAA,MACJ,YAAY;AAAA,MACZ,MAAM,OAAO;AAAA,IACf,CAAC;AAED,SAAK,iBAAiB,IAAI,oCAAiB,GAAG;AAC9C,SAAK,eAAe,QAAQ,SAAS;AACrC,SAAK,QAAQ,KAAK,cAAc;AAEhC,SAAK,iBAAiB,IAAI,yCAAsB,GAAG;AACnD,SAAK,eAAe,QAAQ,OAAO,WAAW,UAAU;AACxD,SAAK,QAAQ,KAAK,cAAc;AAAA,EAClC;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM;AAAA;AAAA,MAEJ,gBAAgB;AAAA,MAChB,gBAAgB;AAAA,IAClB,IAAI;AAEJ,UAAM,gBAAgB,cAAc,OAAO,IAAI;AAC/C,UAAM,gBAAgB,cAAc,OAAO,IAAI;AAE/C,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA,eAAe,cAAc,IAAI,YAAY,aAAa;AAAA,MAC1D,eAAe,cAAc,IAAI,YAAY,aAAa;AAAA,MAC1D;AAAA,MACA,oBAAoB,aAAa;AAAA,MACjC,oBAAoB,aAAa;AAAA,MACjC;AAAA,MACA,mBAAmB,cAAc,IAAI;AAAA,MACrC,8BAA8B,cAAc,IAAI,IAAI,cAAc,UAAU;AAAA,MAC5E;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,kBAAkB,cAAc,IAAI,IAAI,cAAc,UAAU;AAAA,MAChE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,7 @@
1
+ import * as sdk from '@botpress/sdk';
2
+ import * as mod from '../../module';
3
+ export declare class BotPluginsIndexModule extends mod.Module {
4
+ private _pluginModules;
5
+ constructor(sdkBotDefinition: sdk.BotDefinition);
6
+ getContent(): Promise<string>;
7
+ }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/bot-implementation/bot-plugins/index.ts"],
4
4
  "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport * as consts from '../../consts'\nimport * as mod from '../../module'\nimport * as strings from '../../strings'\nimport { BotPluginModule } from './plugin-module'\n\nexport class BotPluginsIndexModule extends mod.Module {\n private _pluginModules: BotPluginModule[]\n\n public constructor(sdkBotDefinition: sdk.BotDefinition) {\n super({\n path: consts.INDEX_FILE,\n exportName: 'plugins',\n })\n\n const pluginsModules: BotPluginModule[] = []\n for (const plugin of Object.values(sdkBotDefinition.plugins ?? {})) {\n const pluginModule = new BotPluginModule(plugin)\n pluginModule.unshift(pluginModule.pluginKey)\n this.pushDep(pluginModule)\n pluginsModules.push(pluginModule)\n }\n\n this._pluginModules = pluginsModules\n }\n\n public async getContent(): Promise<string> {\n const modules = this._pluginModules.map((module) => ({\n importAlias: strings.importAlias(module.name),\n importFrom: module.import(this),\n module,\n }))\n\n return [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n ...modules.map(({ importAlias, importFrom }) => `import * as ${importAlias} from \"./${importFrom}\";`),\n ...modules.map(({ importAlias, importFrom }) => `export * as ${importAlias} from \"./${importFrom}\";`),\n '',\n `export const ${this.exportName} = {`,\n ...modules.map(({ module, importAlias }) => ` \"${module.pluginKey}\": ${importAlias}.${module.exportName},`),\n '}',\n '',\n 'export type TPlugins = {',\n ...modules.map(({ module, importAlias }) => ` \"${module.pluginKey}\": ${importAlias}.TPlugin;`),\n '}',\n ].join('\\n')\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,UAAqB;AACrB,cAAyB;AACzB,2BAAgC;AAEzB,MAAM,8BAA8B,IAAI,OAAO;AAAA,EAC5C;AAAA,EAED,YAAY,kBAAqC;AACtD,UAAM;AAAA,MACJ,MAAM,OAAO;AAAA,MACb,YAAY;AAAA,IACd,CAAC;AAED,UAAM,iBAAoC,CAAC;AAC3C,eAAW,UAAU,OAAO,OAAO,iBAAiB,WAAW,CAAC,CAAC,GAAG;AAClE,YAAM,eAAe,IAAI,qCAAgB,MAAM;AAC/C,mBAAa,QAAQ,aAAa,SAAS;AAC3C,WAAK,QAAQ,YAAY;AACzB,qBAAe,KAAK,YAAY;AAAA,IAClC;AAEA,SAAK,iBAAiB;AAAA,EACxB;AAAA,EAEA,MAAa,aAA8B;AACzC,UAAM,UAAU,KAAK,eAAe,IAAI,CAACA,aAAY;AAAA,MACnD,aAAa,QAAQ,YAAYA,QAAO,IAAI;AAAA,MAC5C,YAAYA,QAAO,OAAO,IAAI;AAAA,MAC9B,QAAAA;AAAA,IACF,EAAE;AAEF,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA,GAAG,QAAQ,IAAI,CAAC,EAAE,aAAa,WAAW,MAAM,eAAe,uBAAuB,cAAc;AAAA,MACpG,GAAG,QAAQ,IAAI,CAAC,EAAE,aAAa,WAAW,MAAM,eAAe,uBAAuB,cAAc;AAAA,MACpG;AAAA,MACA,gBAAgB,KAAK;AAAA,MACrB,GAAG,QAAQ,IAAI,CAAC,EAAE,QAAAA,SAAQ,YAAY,MAAM,MAAMA,QAAO,eAAe,eAAeA,QAAO,aAAa;AAAA,MAC3G;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG,QAAQ,IAAI,CAAC,EAAE,QAAAA,SAAQ,YAAY,MAAM,MAAMA,QAAO,eAAe,sBAAsB;AAAA,MAC9F;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,UAAqB;AACrB,cAAyB;AACzB,2BAAgC;AAEzB,MAAM,8BAA8B,IAAI,OAAO;AAAA,EAC5C;AAAA,EAED,YAAY,kBAAqC;AACtD,UAAM;AAAA,MACJ,MAAM,OAAO;AAAA,MACb,YAAY;AAAA,IACd,CAAC;AAED,UAAM,iBAAoC,CAAC;AAC3C,eAAW,UAAU,OAAO,OAAO,iBAAiB,WAAW,CAAC,CAAC,GAAG;AAClE,YAAM,eAAe,IAAI,qCAAgB,MAAM;AAC/C,mBAAa,QAAQ,aAAa,SAAS;AAC3C,WAAK,QAAQ,YAAY;AACzB,qBAAe,KAAK,YAAY;AAAA,IAClC;AAEA,SAAK,iBAAiB;AAAA,EACxB;AAAA,EAEA,MAAa,aAA8B;AACzC,UAAM,UAAU,KAAK,eAAe,IAAI,CAACA,aAAY;AAAA,MACnD,aAAa,QAAQ,YAAYA,QAAO,IAAI;AAAA,MAC5C,YAAYA,QAAO,OAAO,IAAI;AAAA,MAC9B,QAAAA;AAAA,IACF,EAAE;AAEF,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA,GAAG,QAAQ,IAAI,CAAC,EAAE,aAAa,WAAW,MAAM,eAAe,WAAW,YAAY,UAAU,IAAI;AAAA,MACpG,GAAG,QAAQ,IAAI,CAAC,EAAE,aAAa,WAAW,MAAM,eAAe,WAAW,YAAY,UAAU,IAAI;AAAA,MACpG;AAAA,MACA,gBAAgB,KAAK,UAAU;AAAA,MAC/B,GAAG,QAAQ,IAAI,CAAC,EAAE,QAAAA,SAAQ,YAAY,MAAM,MAAMA,QAAO,SAAS,MAAM,WAAW,IAAIA,QAAO,UAAU,GAAG;AAAA,MAC3G;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG,QAAQ,IAAI,CAAC,EAAE,QAAAA,SAAQ,YAAY,MAAM,MAAMA,QAAO,SAAS,MAAM,WAAW,WAAW;AAAA,MAC9F;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;",
6
6
  "names": ["module"]
7
7
  }
@@ -0,0 +1,13 @@
1
+ import * as sdk from '@botpress/sdk';
2
+ import { Module } from '../../module';
3
+ type PluginInstance = NonNullable<sdk.BotDefinition['plugins']>[string];
4
+ export declare class BotPluginModule extends Module {
5
+ private _typingsModule;
6
+ private _bundleJsModule;
7
+ private _bundleDtsModule;
8
+ private _configModule;
9
+ readonly pluginKey: string;
10
+ constructor(plugin: PluginInstance);
11
+ getContent(): Promise<string>;
12
+ }
13
+ export {};
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/bot-implementation/bot-plugins/plugin-module.ts"],
4
4
  "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport * as consts from '../../consts'\nimport { Module, ModuleProps } from '../../module'\nimport { PluginTypingsModule } from '../../plugin-implementation/plugin-typings'\n\ntype PluginInstance = NonNullable<sdk.BotDefinition['plugins']>[string]\n\nclass BundleJsModule extends Module {\n private _indexJs: string\n public constructor(plugin: PluginInstance) {\n super({\n path: 'bundle.js',\n exportName: 'default',\n })\n this._indexJs = plugin.implementation.toString()\n }\n\n public async getContent() {\n return this._indexJs\n }\n}\n\nclass BundleDtsModule extends Module {\n public constructor(private _typingsModule: PluginTypingsModule) {\n super({\n path: 'bundle.d.ts',\n exportName: 'default',\n })\n }\n\n public async getContent() {\n const typingsImport = this._typingsModule.import(this)\n\n return [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n `import * as ${this._typingsModule.name} from \"./${typingsImport}\"`,\n `type TPlugin = sdk.DefaultPlugin<${this._typingsModule.name}.${this._typingsModule.exportName}>`,\n 'export default new sdk.Plugin<TPlugin>({})',\n '',\n ].join('\\n')\n }\n}\n\nclass PluginConfigModule extends Module {\n private _plugin: PluginInstance\n public constructor(config: ModuleProps & { plugin: PluginInstance }) {\n super(config)\n this._plugin = config.plugin\n }\n\n public async getContent() {\n const { interfaces, configuration, alias } = this._plugin\n const content = JSON.stringify({ alias, interfaces, configuration }, null, 2)\n return `export default ${content}`\n }\n}\n\nexport class BotPluginModule extends Module {\n private _typingsModule: PluginTypingsModule\n private _bundleJsModule: BundleJsModule\n private _bundleDtsModule: BundleDtsModule\n private _configModule: PluginConfigModule\n\n public readonly pluginKey: string\n\n public constructor(plugin: PluginInstance) {\n super({\n exportName: 'default',\n path: consts.INDEX_FILE,\n })\n\n this.pluginKey = plugin.alias ?? plugin.name\n\n this._typingsModule = new PluginTypingsModule(plugin.definition)\n this._typingsModule.unshift('typings')\n this.pushDep(this._typingsModule)\n\n this._bundleJsModule = new BundleJsModule(plugin)\n this.pushDep(this._bundleJsModule)\n\n this._bundleDtsModule = new BundleDtsModule(this._typingsModule)\n this.pushDep(this._bundleDtsModule)\n\n this._configModule = new PluginConfigModule({\n path: 'config.ts',\n exportName: 'default',\n plugin,\n })\n this.pushDep(this._configModule)\n }\n\n public async getContent() {\n const configImport = this._configModule.import(this)\n const typingsImport = this._typingsModule.import(this)\n return [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n 'import bundle from \"./bundle\"',\n `import * as ${this._typingsModule.name} from \"./${typingsImport}\"`,\n `import * as ${this._configModule.name} from \"./${configImport}\"`,\n '',\n `export type TPlugin = sdk.DefaultPlugin<${this._typingsModule.name}.${this._typingsModule.exportName}>`,\n '',\n `export const configuration = ${this._configModule.name}.${this._configModule.exportName}.configuration`,\n `export const interfaces = ${this._configModule.name}.${this._configModule.exportName}.interfaces`,\n '',\n `export default bundle.initialize(${this._configModule.name}.${this._configModule.exportName})`,\n '',\n ].join('\\n')\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,oBAAoC;AACpC,4BAAoC;AAIpC,MAAM,uBAAuB,qBAAO;AAAA,EAC1B;AAAA,EACD,YAAY,QAAwB;AACzC,UAAM;AAAA,MACJ,MAAM;AAAA,MACN,YAAY;AAAA,IACd,CAAC;AACD,SAAK,WAAW,OAAO,eAAe,SAAS;AAAA,EACjD;AAAA,EAEA,MAAa,aAAa;AACxB,WAAO,KAAK;AAAA,EACd;AACF;AAEA,MAAM,wBAAwB,qBAAO;AAAA,EAC5B,YAAoB,gBAAqC;AAC9D,UAAM;AAAA,MACJ,MAAM;AAAA,MACN,YAAY;AAAA,IACd,CAAC;AAJwB;AAAA,EAK3B;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM,gBAAgB,KAAK,eAAe,OAAO,IAAI;AAErD,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA,eAAe,KAAK,eAAe,gBAAgB;AAAA,MACnD,oCAAoC,KAAK,eAAe,QAAQ,KAAK,eAAe;AAAA,MACpF;AAAA,MACA;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;AAEA,MAAM,2BAA2B,qBAAO;AAAA,EAC9B;AAAA,EACD,YAAY,QAAkD;AACnE,UAAM,MAAM;AACZ,SAAK,UAAU,OAAO;AAAA,EACxB;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM,EAAE,YAAY,eAAe,MAAM,IAAI,KAAK;AAClD,UAAM,UAAU,KAAK,UAAU,EAAE,OAAO,YAAY,cAAc,GAAG,MAAM,CAAC;AAC5E,WAAO,kBAAkB;AAAA,EAC3B;AACF;AAEO,MAAM,wBAAwB,qBAAO;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEQ;AAAA,EAET,YAAY,QAAwB;AACzC,UAAM;AAAA,MACJ,YAAY;AAAA,MACZ,MAAM,OAAO;AAAA,IACf,CAAC;AAED,SAAK,YAAY,OAAO,SAAS,OAAO;AAExC,SAAK,iBAAiB,IAAI,0CAAoB,OAAO,UAAU;AAC/D,SAAK,eAAe,QAAQ,SAAS;AACrC,SAAK,QAAQ,KAAK,cAAc;AAEhC,SAAK,kBAAkB,IAAI,eAAe,MAAM;AAChD,SAAK,QAAQ,KAAK,eAAe;AAEjC,SAAK,mBAAmB,IAAI,gBAAgB,KAAK,cAAc;AAC/D,SAAK,QAAQ,KAAK,gBAAgB;AAElC,SAAK,gBAAgB,IAAI,mBAAmB;AAAA,MAC1C,MAAM;AAAA,MACN,YAAY;AAAA,MACZ;AAAA,IACF,CAAC;AACD,SAAK,QAAQ,KAAK,aAAa;AAAA,EACjC;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM,eAAe,KAAK,cAAc,OAAO,IAAI;AACnD,UAAM,gBAAgB,KAAK,eAAe,OAAO,IAAI;AACrD,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA,eAAe,KAAK,eAAe,gBAAgB;AAAA,MACnD,eAAe,KAAK,cAAc,gBAAgB;AAAA,MAClD;AAAA,MACA,2CAA2C,KAAK,eAAe,QAAQ,KAAK,eAAe;AAAA,MAC3F;AAAA,MACA,gCAAgC,KAAK,cAAc,QAAQ,KAAK,cAAc;AAAA,MAC9E,6BAA6B,KAAK,cAAc,QAAQ,KAAK,cAAc;AAAA,MAC3E;AAAA,MACA,oCAAoC,KAAK,cAAc,QAAQ,KAAK,cAAc;AAAA,MAClF;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,oBAAoC;AACpC,4BAAoC;AAIpC,MAAM,uBAAuB,qBAAO;AAAA,EAC1B;AAAA,EACD,YAAY,QAAwB;AACzC,UAAM;AAAA,MACJ,MAAM;AAAA,MACN,YAAY;AAAA,IACd,CAAC;AACD,SAAK,WAAW,OAAO,eAAe,SAAS;AAAA,EACjD;AAAA,EAEA,MAAa,aAAa;AACxB,WAAO,KAAK;AAAA,EACd;AACF;AAEA,MAAM,wBAAwB,qBAAO;AAAA,EAC5B,YAAoB,gBAAqC;AAC9D,UAAM;AAAA,MACJ,MAAM;AAAA,MACN,YAAY;AAAA,IACd,CAAC;AAJwB;AAAA,EAK3B;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM,gBAAgB,KAAK,eAAe,OAAO,IAAI;AAErD,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA,eAAe,KAAK,eAAe,IAAI,YAAY,aAAa;AAAA,MAChE,oCAAoC,KAAK,eAAe,IAAI,IAAI,KAAK,eAAe,UAAU;AAAA,MAC9F;AAAA,MACA;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;AAEA,MAAM,2BAA2B,qBAAO;AAAA,EAC9B;AAAA,EACD,YAAY,QAAkD;AACnE,UAAM,MAAM;AACZ,SAAK,UAAU,OAAO;AAAA,EACxB;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM,EAAE,YAAY,eAAe,MAAM,IAAI,KAAK;AAClD,UAAM,UAAU,KAAK,UAAU,EAAE,OAAO,YAAY,cAAc,GAAG,MAAM,CAAC;AAC5E,WAAO,kBAAkB,OAAO;AAAA,EAClC;AACF;AAEO,MAAM,wBAAwB,qBAAO;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEQ;AAAA,EAET,YAAY,QAAwB;AACzC,UAAM;AAAA,MACJ,YAAY;AAAA,MACZ,MAAM,OAAO;AAAA,IACf,CAAC;AAED,SAAK,YAAY,OAAO,SAAS,OAAO;AAExC,SAAK,iBAAiB,IAAI,0CAAoB,OAAO,UAAU;AAC/D,SAAK,eAAe,QAAQ,SAAS;AACrC,SAAK,QAAQ,KAAK,cAAc;AAEhC,SAAK,kBAAkB,IAAI,eAAe,MAAM;AAChD,SAAK,QAAQ,KAAK,eAAe;AAEjC,SAAK,mBAAmB,IAAI,gBAAgB,KAAK,cAAc;AAC/D,SAAK,QAAQ,KAAK,gBAAgB;AAElC,SAAK,gBAAgB,IAAI,mBAAmB;AAAA,MAC1C,MAAM;AAAA,MACN,YAAY;AAAA,MACZ;AAAA,IACF,CAAC;AACD,SAAK,QAAQ,KAAK,aAAa;AAAA,EACjC;AAAA,EAEA,MAAa,aAAa;AACxB,UAAM,eAAe,KAAK,cAAc,OAAO,IAAI;AACnD,UAAM,gBAAgB,KAAK,eAAe,OAAO,IAAI;AACrD,WAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA,eAAe,KAAK,eAAe,IAAI,YAAY,aAAa;AAAA,MAChE,eAAe,KAAK,cAAc,IAAI,YAAY,YAAY;AAAA,MAC9D;AAAA,MACA,2CAA2C,KAAK,eAAe,IAAI,IAAI,KAAK,eAAe,UAAU;AAAA,MACrG;AAAA,MACA,gCAAgC,KAAK,cAAc,IAAI,IAAI,KAAK,cAAc,UAAU;AAAA,MACxF,6BAA6B,KAAK,cAAc,IAAI,IAAI,KAAK,cAAc,UAAU;AAAA,MACrF;AAAA,MACA,oCAAoC,KAAK,cAAc,IAAI,IAAI,KAAK,cAAc,UAAU;AAAA,MAC5F;AAAA,IACF,EAAE,KAAK,IAAI;AAAA,EACb;AACF;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,21 @@
1
+ import * as sdk from '@botpress/sdk';
2
+ import { Module, ReExportTypeModule } from '../../module';
3
+ type ActionInput = sdk.BotActionDefinition['input'];
4
+ type ActionOutput = sdk.BotActionDefinition['output'];
5
+ export declare class ActionInputModule extends Module {
6
+ private _input;
7
+ constructor(_input: ActionInput);
8
+ getContent(): Promise<string>;
9
+ }
10
+ export declare class ActionOutputModule extends Module {
11
+ private _output;
12
+ constructor(_output: ActionOutput);
13
+ getContent(): Promise<string>;
14
+ }
15
+ export declare class ActionModule extends ReExportTypeModule {
16
+ constructor(actionName: string, action: sdk.BotActionDefinition);
17
+ }
18
+ export declare class ActionsModule extends ReExportTypeModule {
19
+ constructor(actions: Record<string, sdk.BotActionDefinition>);
20
+ }
21
+ export {};
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/bot-implementation/bot-typings/actions-module.ts"],
4
4
  "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport { zuiSchemaToTypeScriptType } from '../../generators'\nimport { Module, ReExportTypeModule } from '../../module'\nimport * as strings from '../../strings'\n\ntype ActionInput = sdk.BotActionDefinition['input']\ntype ActionOutput = sdk.BotActionDefinition['output']\n\nexport class ActionInputModule extends Module {\n public constructor(private _input: ActionInput) {\n const name = 'input'\n const exportName = strings.typeName(name)\n super({ path: `${name}.ts`, exportName })\n }\n\n public async getContent() {\n return zuiSchemaToTypeScriptType(this._input.schema, this.exportName)\n }\n}\n\nexport class ActionOutputModule extends Module {\n public constructor(private _output: ActionOutput) {\n const name = 'output'\n const exportName = strings.typeName(name)\n super({ path: `${name}.ts`, exportName })\n }\n\n public async getContent() {\n return zuiSchemaToTypeScriptType(this._output.schema, this.exportName)\n }\n}\n\nexport class ActionModule extends ReExportTypeModule {\n public constructor(actionName: string, action: sdk.BotActionDefinition) {\n super({ exportName: strings.typeName(actionName) })\n\n const inputModule = new ActionInputModule(action.input)\n const outputModule = new ActionOutputModule(action.output)\n\n this.pushDep(inputModule)\n this.pushDep(outputModule)\n }\n}\n\nexport class ActionsModule extends ReExportTypeModule {\n public constructor(actions: Record<string, sdk.BotActionDefinition>) {\n super({ exportName: strings.typeName('actions') })\n for (const [actionName, action] of Object.entries(actions)) {\n const module = new ActionModule(actionName, action)\n module.unshift(actionName)\n this.pushDep(module)\n }\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA0C;AAC1C,oBAA2C;AAC3C,cAAyB;AAKlB,MAAM,0BAA0B,qBAAO;AAAA,EACrC,YAAoB,QAAqB;AAC9C,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,SAAS,IAAI;AACxC,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,6CAA0B,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,EACtE;AACF;AAEO,MAAM,2BAA2B,qBAAO;AAAA,EACtC,YAAoB,SAAuB;AAChD,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,SAAS,IAAI;AACxC,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,6CAA0B,KAAK,QAAQ,QAAQ,KAAK,UAAU;AAAA,EACvE;AACF;AAEO,MAAM,qBAAqB,iCAAmB;AAAA,EAC5C,YAAY,YAAoB,QAAiC;AACtE,UAAM,EAAE,YAAY,QAAQ,SAAS,UAAU,EAAE,CAAC;AAElD,UAAM,cAAc,IAAI,kBAAkB,OAAO,KAAK;AACtD,UAAM,eAAe,IAAI,mBAAmB,OAAO,MAAM;AAEzD,SAAK,QAAQ,WAAW;AACxB,SAAK,QAAQ,YAAY;AAAA,EAC3B;AACF;AAEO,MAAM,sBAAsB,iCAAmB;AAAA,EAC7C,YAAY,SAAkD;AACnE,UAAM,EAAE,YAAY,QAAQ,SAAS,SAAS,EAAE,CAAC;AACjD,eAAW,CAAC,YAAY,MAAM,KAAK,OAAO,QAAQ,OAAO,GAAG;AAC1D,YAAMA,UAAS,IAAI,aAAa,YAAY,MAAM;AAClD,MAAAA,QAAO,QAAQ,UAAU;AACzB,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA0C;AAC1C,oBAA2C;AAC3C,cAAyB;AAKlB,MAAM,0BAA0B,qBAAO;AAAA,EACrC,YAAoB,QAAqB;AAC9C,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,SAAS,IAAI;AACxC,UAAM,EAAE,MAAM,GAAG,IAAI,OAAO,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,6CAA0B,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,EACtE;AACF;AAEO,MAAM,2BAA2B,qBAAO;AAAA,EACtC,YAAoB,SAAuB;AAChD,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,SAAS,IAAI;AACxC,UAAM,EAAE,MAAM,GAAG,IAAI,OAAO,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,6CAA0B,KAAK,QAAQ,QAAQ,KAAK,UAAU;AAAA,EACvE;AACF;AAEO,MAAM,qBAAqB,iCAAmB;AAAA,EAC5C,YAAY,YAAoB,QAAiC;AACtE,UAAM,EAAE,YAAY,QAAQ,SAAS,UAAU,EAAE,CAAC;AAElD,UAAM,cAAc,IAAI,kBAAkB,OAAO,KAAK;AACtD,UAAM,eAAe,IAAI,mBAAmB,OAAO,MAAM;AAEzD,SAAK,QAAQ,WAAW;AACxB,SAAK,QAAQ,YAAY;AAAA,EAC3B;AACF;AAEO,MAAM,sBAAsB,iCAAmB;AAAA,EAC7C,YAAY,SAAkD;AACnE,UAAM,EAAE,YAAY,QAAQ,SAAS,SAAS,EAAE,CAAC;AACjD,eAAW,CAAC,YAAY,MAAM,KAAK,OAAO,QAAQ,OAAO,GAAG;AAC1D,YAAMA,UAAS,IAAI,aAAa,YAAY,MAAM;AAClD,MAAAA,QAAO,QAAQ,UAAU;AACzB,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
6
6
  "names": ["module"]
7
7
  }
@@ -0,0 +1,10 @@
1
+ import * as sdk from '@botpress/sdk';
2
+ import { Module, ReExportTypeModule } from '../../module';
3
+ export declare class EventModule extends Module {
4
+ private _event;
5
+ constructor(name: string, _event: sdk.BotEventDefinition);
6
+ getContent(): Promise<string>;
7
+ }
8
+ export declare class EventsModule extends ReExportTypeModule {
9
+ constructor(events: Record<string, sdk.BotEventDefinition>);
10
+ }