@botpress/cli 2.0.3 → 2.1.0

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 (378) hide show
  1. package/e2e/tests/install-interfaces.ts +1 -0
  2. package/e2e/tests/install-package.ts +1 -0
  3. package/package.json +2 -1
  4. package/.turbo/turbo-build.log +0 -22
  5. package/dist/api/bot-body.js +0 -89
  6. package/dist/api/bot-body.js.map +0 -7
  7. package/dist/api/client.js +0 -162
  8. package/dist/api/client.js.map +0 -7
  9. package/dist/api/find-previous-version.js +0 -66
  10. package/dist/api/find-previous-version.js.map +0 -7
  11. package/dist/api/find-previous-version.test.js +0 -76
  12. package/dist/api/find-previous-version.test.js.map +0 -7
  13. package/dist/api/index.js +0 -23
  14. package/dist/api/index.js.map +0 -7
  15. package/dist/api/integration-body.js +0 -146
  16. package/dist/api/integration-body.js.map +0 -7
  17. package/dist/api/interface-body.js +0 -95
  18. package/dist/api/interface-body.js.map +0 -7
  19. package/dist/api/paging.js +0 -42
  20. package/dist/api/paging.js.map +0 -7
  21. package/dist/api/plugin-body.js +0 -84
  22. package/dist/api/plugin-body.js.map +0 -7
  23. package/dist/api/types.js +0 -17
  24. package/dist/api/types.js.map +0 -7
  25. package/dist/code-generation/bot-implementation/bot-implementation.js +0 -116
  26. package/dist/code-generation/bot-implementation/bot-implementation.js.map +0 -7
  27. package/dist/code-generation/bot-implementation/bot-plugins/index.js +0 -80
  28. package/dist/code-generation/bot-implementation/bot-plugins/index.js.map +0 -7
  29. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js +0 -129
  30. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js.map +0 -7
  31. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js +0 -88
  32. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js.map +0 -7
  33. package/dist/code-generation/bot-implementation/bot-typings/events-module.js +0 -63
  34. package/dist/code-generation/bot-implementation/bot-typings/events-module.js.map +0 -7
  35. package/dist/code-generation/bot-implementation/bot-typings/index.js +0 -109
  36. package/dist/code-generation/bot-implementation/bot-typings/index.js.map +0 -7
  37. package/dist/code-generation/bot-implementation/bot-typings/states-module.js +0 -64
  38. package/dist/code-generation/bot-implementation/bot-typings/states-module.js.map +0 -7
  39. package/dist/code-generation/bot-implementation/index.js +0 -66
  40. package/dist/code-generation/bot-implementation/index.js.map +0 -7
  41. package/dist/code-generation/consts.js +0 -45
  42. package/dist/code-generation/consts.js.map +0 -7
  43. package/dist/code-generation/generators.js +0 -81
  44. package/dist/code-generation/generators.js.map +0 -7
  45. package/dist/code-generation/index.js +0 -49
  46. package/dist/code-generation/index.js.map +0 -7
  47. package/dist/code-generation/integration-implementation/index.js +0 -70
  48. package/dist/code-generation/integration-implementation/index.js.map +0 -7
  49. package/dist/code-generation/integration-implementation/integration-implementation.js +0 -114
  50. package/dist/code-generation/integration-implementation/integration-implementation.js.map +0 -7
  51. package/dist/code-generation/integration-implementation/integration-secret.js +0 -78
  52. package/dist/code-generation/integration-implementation/integration-secret.js.map +0 -7
  53. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js +0 -88
  54. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js.map +0 -7
  55. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js +0 -107
  56. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js.map +0 -7
  57. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.js +0 -62
  58. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.js.map +0 -7
  59. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js +0 -70
  60. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js.map +0 -7
  61. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js +0 -63
  62. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js.map +0 -7
  63. package/dist/code-generation/integration-implementation/integration-typings/events-module.js +0 -63
  64. package/dist/code-generation/integration-implementation/integration-typings/events-module.js.map +0 -7
  65. package/dist/code-generation/integration-implementation/integration-typings/index.js +0 -128
  66. package/dist/code-generation/integration-implementation/integration-typings/index.js.map +0 -7
  67. package/dist/code-generation/integration-implementation/integration-typings/states-module.js +0 -64
  68. package/dist/code-generation/integration-implementation/integration-typings/states-module.js.map +0 -7
  69. package/dist/code-generation/integration-package/index.js +0 -94
  70. package/dist/code-generation/integration-package/index.js.map +0 -7
  71. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js +0 -88
  72. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js.map +0 -7
  73. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js +0 -107
  74. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js.map +0 -7
  75. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.js +0 -63
  76. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.js.map +0 -7
  77. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js +0 -70
  78. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js.map +0 -7
  79. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js +0 -63
  80. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js.map +0 -7
  81. package/dist/code-generation/integration-package/integration-package-definition/events-module.js +0 -66
  82. package/dist/code-generation/integration-package/integration-package-definition/events-module.js.map +0 -7
  83. package/dist/code-generation/integration-package/integration-package-definition/index.js +0 -140
  84. package/dist/code-generation/integration-package/integration-package-definition/index.js.map +0 -7
  85. package/dist/code-generation/integration-package/integration-package-definition/states-module.js +0 -66
  86. package/dist/code-generation/integration-package/integration-package-definition/states-module.js.map +0 -7
  87. package/dist/code-generation/integration-package/integration-package-definition/typings.js +0 -17
  88. package/dist/code-generation/integration-package/integration-package-definition/typings.js.map +0 -7
  89. package/dist/code-generation/interface-implementation/index.js +0 -29
  90. package/dist/code-generation/interface-implementation/index.js.map +0 -7
  91. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js +0 -88
  92. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js.map +0 -7
  93. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js +0 -107
  94. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js.map +0 -7
  95. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js +0 -63
  96. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js.map +0 -7
  97. package/dist/code-generation/interface-implementation/integration-typings/events-module.js +0 -63
  98. package/dist/code-generation/interface-implementation/integration-typings/events-module.js.map +0 -7
  99. package/dist/code-generation/interface-implementation/integration-typings/index.js +0 -121
  100. package/dist/code-generation/interface-implementation/integration-typings/index.js.map +0 -7
  101. package/dist/code-generation/interface-package/index.js +0 -94
  102. package/dist/code-generation/interface-package/index.js.map +0 -7
  103. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js +0 -88
  104. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js.map +0 -7
  105. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js +0 -98
  106. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js.map +0 -7
  107. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js +0 -63
  108. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js.map +0 -7
  109. package/dist/code-generation/interface-package/interface-package-definition/events-module.js +0 -66
  110. package/dist/code-generation/interface-package/interface-package-definition/events-module.js.map +0 -7
  111. package/dist/code-generation/interface-package/interface-package-definition/index.js +0 -104
  112. package/dist/code-generation/interface-package/interface-package-definition/index.js.map +0 -7
  113. package/dist/code-generation/interface-package/interface-package-definition/typings.js +0 -17
  114. package/dist/code-generation/interface-package/interface-package-definition/typings.js.map +0 -7
  115. package/dist/code-generation/module.js +0 -183
  116. package/dist/code-generation/module.js.map +0 -7
  117. package/dist/code-generation/plugin-implementation/index.js +0 -60
  118. package/dist/code-generation/plugin-implementation/index.js.map +0 -7
  119. package/dist/code-generation/plugin-implementation/plugin-implementation.js +0 -90
  120. package/dist/code-generation/plugin-implementation/plugin-implementation.js.map +0 -7
  121. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js +0 -88
  122. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js.map +0 -7
  123. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.js +0 -61
  124. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.js.map +0 -7
  125. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js +0 -63
  126. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js.map +0 -7
  127. package/dist/code-generation/plugin-implementation/plugin-typings/index.js +0 -150
  128. package/dist/code-generation/plugin-implementation/plugin-typings/index.js.map +0 -7
  129. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js +0 -64
  130. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js.map +0 -7
  131. package/dist/code-generation/plugin-package/index.js +0 -151
  132. package/dist/code-generation/plugin-package/index.js.map +0 -7
  133. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js +0 -88
  134. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js.map +0 -7
  135. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.js +0 -56
  136. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.js.map +0 -7
  137. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js +0 -66
  138. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js.map +0 -7
  139. package/dist/code-generation/plugin-package/plugin-package-definition/index.js +0 -107
  140. package/dist/code-generation/plugin-package/plugin-package-definition/index.js.map +0 -7
  141. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js +0 -66
  142. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js.map +0 -7
  143. package/dist/code-generation/plugin-package/plugin-package-definition/typings.js +0 -17
  144. package/dist/code-generation/plugin-package/plugin-package-definition/typings.js.map +0 -7
  145. package/dist/code-generation/strings.js +0 -115
  146. package/dist/code-generation/strings.js.map +0 -7
  147. package/dist/code-generation/typings.js +0 -17
  148. package/dist/code-generation/typings.js.map +0 -7
  149. package/dist/command-definitions.js +0 -84
  150. package/dist/command-definitions.js.map +0 -7
  151. package/dist/command-implementations/add-command.js +0 -249
  152. package/dist/command-implementations/add-command.js.map +0 -7
  153. package/dist/command-implementations/base-command.js +0 -69
  154. package/dist/command-implementations/base-command.js.map +0 -7
  155. package/dist/command-implementations/bot-commands.js +0 -117
  156. package/dist/command-implementations/bot-commands.js.map +0 -7
  157. package/dist/command-implementations/build-command.js +0 -53
  158. package/dist/command-implementations/build-command.js.map +0 -7
  159. package/dist/command-implementations/bundle-command.js +0 -87
  160. package/dist/command-implementations/bundle-command.js.map +0 -7
  161. package/dist/command-implementations/deploy-command.js +0 -481
  162. package/dist/command-implementations/deploy-command.js.map +0 -7
  163. package/dist/command-implementations/dev-command.js +0 -345
  164. package/dist/command-implementations/dev-command.js.map +0 -7
  165. package/dist/command-implementations/gen-command.js +0 -110
  166. package/dist/command-implementations/gen-command.js.map +0 -7
  167. package/dist/command-implementations/global-command.js +0 -137
  168. package/dist/command-implementations/global-command.js.map +0 -7
  169. package/dist/command-implementations/index.js +0 -103
  170. package/dist/command-implementations/index.js.map +0 -7
  171. package/dist/command-implementations/init-command.js +0 -162
  172. package/dist/command-implementations/init-command.js.map +0 -7
  173. package/dist/command-implementations/integration-commands.js +0 -130
  174. package/dist/command-implementations/integration-commands.js.map +0 -7
  175. package/dist/command-implementations/interface-commands.js +0 -110
  176. package/dist/command-implementations/interface-commands.js.map +0 -7
  177. package/dist/command-implementations/lint-command.js +0 -151
  178. package/dist/command-implementations/lint-command.js.map +0 -7
  179. package/dist/command-implementations/login-command.js +0 -82
  180. package/dist/command-implementations/login-command.js.map +0 -7
  181. package/dist/command-implementations/logout-command.js +0 -35
  182. package/dist/command-implementations/logout-command.js.map +0 -7
  183. package/dist/command-implementations/plugin-commands.js +0 -111
  184. package/dist/command-implementations/plugin-commands.js.map +0 -7
  185. package/dist/command-implementations/project-command.js +0 -383
  186. package/dist/command-implementations/project-command.js.map +0 -7
  187. package/dist/command-implementations/read-command.js +0 -70
  188. package/dist/command-implementations/read-command.js.map +0 -7
  189. package/dist/command-implementations/serve-command.js +0 -68
  190. package/dist/command-implementations/serve-command.js.map +0 -7
  191. package/dist/command-tree.js +0 -60
  192. package/dist/command-tree.js.map +0 -7
  193. package/dist/config.js +0 -332
  194. package/dist/config.js.map +0 -7
  195. package/dist/consts.js +0 -124
  196. package/dist/consts.js.map +0 -7
  197. package/dist/errors.js +0 -202
  198. package/dist/errors.js.map +0 -7
  199. package/dist/index.js +0 -51
  200. package/dist/index.js.map +0 -7
  201. package/dist/init.js +0 -50
  202. package/dist/init.js.map +0 -7
  203. package/dist/linter/base-linter.js +0 -75
  204. package/dist/linter/base-linter.js.map +0 -7
  205. package/dist/linter/base-linter.test.js +0 -187
  206. package/dist/linter/base-linter.test.js.map +0 -7
  207. package/dist/linter/bot-linter.js +0 -35
  208. package/dist/linter/bot-linter.js.map +0 -7
  209. package/dist/linter/integration-linter.js +0 -35
  210. package/dist/linter/integration-linter.js.map +0 -7
  211. package/dist/linter/interface-linter.js +0 -35
  212. package/dist/linter/interface-linter.js.map +0 -7
  213. package/dist/linter/ruleset-tests/bot.ruleset.test.js +0 -358
  214. package/dist/linter/ruleset-tests/bot.ruleset.test.js.map +0 -7
  215. package/dist/linter/ruleset-tests/common.js +0 -37
  216. package/dist/linter/ruleset-tests/common.js.map +0 -7
  217. package/dist/linter/ruleset-tests/integration.ruleset.test.js +0 -887
  218. package/dist/linter/ruleset-tests/integration.ruleset.test.js.map +0 -7
  219. package/dist/linter/ruleset-tests/interface.ruleset.test.js +0 -383
  220. package/dist/linter/ruleset-tests/interface.ruleset.test.js.map +0 -7
  221. package/dist/linter/rulesets/bot.ruleset.js +0 -191
  222. package/dist/linter/rulesets/bot.ruleset.js.map +0 -7
  223. package/dist/linter/rulesets/integration.ruleset.js +0 -378
  224. package/dist/linter/rulesets/integration.ruleset.js.map +0 -7
  225. package/dist/linter/rulesets/interface.ruleset.js +0 -157
  226. package/dist/linter/rulesets/interface.ruleset.js.map +0 -7
  227. package/dist/linter/spectral-functions.js +0 -36
  228. package/dist/linter/spectral-functions.js.map +0 -7
  229. package/dist/logger/base-logger.js +0 -170
  230. package/dist/logger/base-logger.js.map +0 -7
  231. package/dist/logger/index.js +0 -86
  232. package/dist/logger/index.js.map +0 -7
  233. package/dist/package-ref.js +0 -107
  234. package/dist/package-ref.js.map +0 -7
  235. package/dist/package-ref.test.js +0 -109
  236. package/dist/package-ref.test.js.map +0 -7
  237. package/dist/register-yargs.js +0 -91
  238. package/dist/register-yargs.js.map +0 -7
  239. package/dist/root.js +0 -41
  240. package/dist/root.js.map +0 -7
  241. package/dist/sdk/index.js +0 -22
  242. package/dist/sdk/index.js.map +0 -7
  243. package/dist/sdk/resolve-bot-interfaces.js +0 -43
  244. package/dist/sdk/resolve-bot-interfaces.js.map +0 -7
  245. package/dist/sdk/resolve-integration-interfaces.js +0 -161
  246. package/dist/sdk/resolve-integration-interfaces.js.map +0 -7
  247. package/dist/sdk/validate-bot.js +0 -88
  248. package/dist/sdk/validate-bot.js.map +0 -7
  249. package/dist/sdk/validate-integration.js +0 -72
  250. package/dist/sdk/validate-integration.js.map +0 -7
  251. package/dist/typings.js +0 -17
  252. package/dist/typings.js.map +0 -7
  253. package/dist/utils/cache-utils.js +0 -104
  254. package/dist/utils/cache-utils.js.map +0 -7
  255. package/dist/utils/case-utils.js +0 -84
  256. package/dist/utils/case-utils.js.map +0 -7
  257. package/dist/utils/case-utils.test.js +0 -75
  258. package/dist/utils/case-utils.test.js.map +0 -7
  259. package/dist/utils/esbuild-utils.js +0 -92
  260. package/dist/utils/esbuild-utils.js.map +0 -7
  261. package/dist/utils/event-emitter.js +0 -63
  262. package/dist/utils/event-emitter.js.map +0 -7
  263. package/dist/utils/file-watcher.js +0 -73
  264. package/dist/utils/file-watcher.js.map +0 -7
  265. package/dist/utils/guard-utils.js +0 -32
  266. package/dist/utils/guard-utils.js.map +0 -7
  267. package/dist/utils/id-utils.js +0 -59
  268. package/dist/utils/id-utils.js.map +0 -7
  269. package/dist/utils/index.js +0 -99
  270. package/dist/utils/index.js.map +0 -7
  271. package/dist/utils/object-utils.js +0 -32
  272. package/dist/utils/object-utils.js.map +0 -7
  273. package/dist/utils/path-utils.js +0 -106
  274. package/dist/utils/path-utils.js.map +0 -7
  275. package/dist/utils/path-utils.test.js +0 -72
  276. package/dist/utils/path-utils.test.js.map +0 -7
  277. package/dist/utils/pkgjson-utils.js +0 -57
  278. package/dist/utils/pkgjson-utils.js.map +0 -7
  279. package/dist/utils/promise-utils.js +0 -33
  280. package/dist/utils/promise-utils.js.map +0 -7
  281. package/dist/utils/promise-utils.test.js +0 -14
  282. package/dist/utils/promise-utils.test.js.map +0 -7
  283. package/dist/utils/prompt-utils.js +0 -105
  284. package/dist/utils/prompt-utils.js.map +0 -7
  285. package/dist/utils/record-utils.js +0 -118
  286. package/dist/utils/record-utils.js.map +0 -7
  287. package/dist/utils/record-utils.test.js +0 -38
  288. package/dist/utils/record-utils.test.js.map +0 -7
  289. package/dist/utils/require-utils.js +0 -90
  290. package/dist/utils/require-utils.js.map +0 -7
  291. package/dist/utils/require-utils.test.js +0 -54
  292. package/dist/utils/require-utils.test.js.map +0 -7
  293. package/dist/utils/schema-utils.js +0 -64
  294. package/dist/utils/schema-utils.js.map +0 -7
  295. package/dist/utils/schema-utils.test.js +0 -50
  296. package/dist/utils/schema-utils.test.js.map +0 -7
  297. package/dist/utils/semver-utils.js +0 -45
  298. package/dist/utils/semver-utils.js.map +0 -7
  299. package/dist/utils/string-utils.js +0 -42
  300. package/dist/utils/string-utils.js.map +0 -7
  301. package/dist/utils/template-utils.js +0 -51
  302. package/dist/utils/template-utils.js.map +0 -7
  303. package/dist/utils/tunnel-utils.js +0 -129
  304. package/dist/utils/tunnel-utils.js.map +0 -7
  305. package/dist/utils/type-utils.js +0 -17
  306. package/dist/utils/type-utils.js.map +0 -7
  307. package/dist/utils/url-utils.js +0 -67
  308. package/dist/utils/url-utils.js.map +0 -7
  309. package/dist/worker/child-entrypoint.js +0 -58
  310. package/dist/worker/child-entrypoint.js.map +0 -7
  311. package/dist/worker/child-wrapper.js +0 -119
  312. package/dist/worker/child-wrapper.js.map +0 -7
  313. package/dist/worker/config.js +0 -44
  314. package/dist/worker/config.js.map +0 -7
  315. package/dist/worker/index.js +0 -32
  316. package/dist/worker/index.js.map +0 -7
  317. package/dist/worker/is-child.js +0 -55
  318. package/dist/worker/is-child.js.map +0 -7
  319. package/dist/worker/worker-state.js +0 -71
  320. package/dist/worker/worker-state.js.map +0 -7
  321. package/dist/worker/worker.js +0 -91
  322. package/dist/worker/worker.js.map +0 -7
  323. package/templates/empty-bot/.botpress/implementation/index.ts +0 -50
  324. package/templates/empty-bot/.botpress/implementation/plugins/index.ts +0 -11
  325. package/templates/empty-bot/.botpress/implementation/typings/actions/index.ts +0 -6
  326. package/templates/empty-bot/.botpress/implementation/typings/events/index.ts +0 -6
  327. package/templates/empty-bot/.botpress/implementation/typings/index.ts +0 -20
  328. package/templates/empty-bot/.botpress/implementation/typings/integrations/index.ts +0 -6
  329. package/templates/empty-bot/.botpress/implementation/typings/states/index.ts +0 -6
  330. package/templates/empty-bot/.botpress/index.ts +0 -5
  331. package/templates/empty-integration/.botpress/implementation/index.ts +0 -57
  332. package/templates/empty-integration/.botpress/implementation/typings/actions/index.ts +0 -6
  333. package/templates/empty-integration/.botpress/implementation/typings/channels/index.ts +0 -6
  334. package/templates/empty-integration/.botpress/implementation/typings/configuration/index.ts +0 -2
  335. package/templates/empty-integration/.botpress/implementation/typings/configurations/index.ts +0 -6
  336. package/templates/empty-integration/.botpress/implementation/typings/entities/index.ts +0 -6
  337. package/templates/empty-integration/.botpress/implementation/typings/events/index.ts +0 -6
  338. package/templates/empty-integration/.botpress/implementation/typings/index.ts +0 -31
  339. package/templates/empty-integration/.botpress/implementation/typings/states/index.ts +0 -6
  340. package/templates/empty-integration/.botpress/index.ts +0 -2
  341. package/templates/empty-integration/.botpress/secrets/index.ts +0 -6
  342. package/templates/empty-plugin/.botpress/implementation/index.ts +0 -35
  343. package/templates/empty-plugin/.botpress/implementation/typings/actions/index.ts +0 -6
  344. package/templates/empty-plugin/.botpress/implementation/typings/configuration/index.ts +0 -2
  345. package/templates/empty-plugin/.botpress/implementation/typings/events/index.ts +0 -6
  346. package/templates/empty-plugin/.botpress/implementation/typings/index.ts +0 -26
  347. package/templates/empty-plugin/.botpress/implementation/typings/integrations/index.ts +0 -6
  348. package/templates/empty-plugin/.botpress/implementation/typings/interfaces/index.ts +0 -6
  349. package/templates/empty-plugin/.botpress/implementation/typings/states/index.ts +0 -6
  350. package/templates/empty-plugin/.botpress/index.ts +0 -1
  351. package/templates/hello-world/.botpress/implementation/index.ts +0 -57
  352. package/templates/hello-world/.botpress/implementation/typings/actions/helloWorld/index.ts +0 -12
  353. package/templates/hello-world/.botpress/implementation/typings/actions/helloWorld/input.ts +0 -5
  354. package/templates/hello-world/.botpress/implementation/typings/actions/helloWorld/output.ts +0 -5
  355. package/templates/hello-world/.botpress/implementation/typings/actions/index.ts +0 -9
  356. package/templates/hello-world/.botpress/implementation/typings/channels/index.ts +0 -6
  357. package/templates/hello-world/.botpress/implementation/typings/configuration/index.ts +0 -2
  358. package/templates/hello-world/.botpress/implementation/typings/configurations/index.ts +0 -6
  359. package/templates/hello-world/.botpress/implementation/typings/entities/index.ts +0 -6
  360. package/templates/hello-world/.botpress/implementation/typings/events/index.ts +0 -6
  361. package/templates/hello-world/.botpress/implementation/typings/index.ts +0 -31
  362. package/templates/hello-world/.botpress/implementation/typings/states/index.ts +0 -6
  363. package/templates/hello-world/.botpress/index.ts +0 -2
  364. package/templates/hello-world/.botpress/secrets/index.ts +0 -6
  365. package/templates/webhook-message/.botpress/implementation/index.ts +0 -57
  366. package/templates/webhook-message/.botpress/implementation/typings/actions/index.ts +0 -6
  367. package/templates/webhook-message/.botpress/implementation/typings/channels/index.ts +0 -9
  368. package/templates/webhook-message/.botpress/implementation/typings/channels/webhook/index.ts +0 -12
  369. package/templates/webhook-message/.botpress/implementation/typings/channels/webhook/messages/index.ts +0 -9
  370. package/templates/webhook-message/.botpress/implementation/typings/channels/webhook/messages/text.ts +0 -5
  371. package/templates/webhook-message/.botpress/implementation/typings/configuration/index.ts +0 -8
  372. package/templates/webhook-message/.botpress/implementation/typings/configurations/index.ts +0 -6
  373. package/templates/webhook-message/.botpress/implementation/typings/entities/index.ts +0 -6
  374. package/templates/webhook-message/.botpress/implementation/typings/events/index.ts +0 -6
  375. package/templates/webhook-message/.botpress/implementation/typings/index.ts +0 -31
  376. package/templates/webhook-message/.botpress/implementation/typings/states/index.ts +0 -6
  377. package/templates/webhook-message/.botpress/index.ts +0 -2
  378. package/templates/webhook-message/.botpress/secrets/index.ts +0 -6
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/register-yargs.ts"],
4
- "sourcesContent": ["import yargs, { YargsArgv, YargsConfig, cleanupConfig, parseEnv } from '@bpinternal/yargs-extra'\nimport _ from 'lodash'\nimport * as tree from './command-tree'\nimport type * as typings from './typings'\n\nexport type YargsInstance = typeof yargs\n\nconst parseArguments = <S extends typings.CommandSchema>(schema: S, argv: YargsArgv<S>): YargsConfig<S> => {\n const yargsEnv = parseEnv(schema, 'BP')\n return cleanupConfig(schema, { ...argv, ...yargsEnv })\n}\n\nexport const registerYargs = (yargz: YargsInstance, commands: tree.CommandTree) => {\n for (const cmdName in commands) {\n const command = commands[cmdName] as tree.CommandTreeNode\n\n if (tree.guards.command.isSubTree(command)) {\n yargz.command(cmdName, command.description ?? cmdName, (y) => {\n registerYargs(y, command.subcommands)\n return y\n })\n continue\n }\n\n const { schema, description, alias } = command\n const aliases = alias ? [cmdName, alias] : [cmdName]\n\n const options = Object.entries(schema)\n let positionals = options.filter(\n (value): value is [string, typings.CommandPositionalOption] => !!value[1].positional\n )\n\n let usage = aliases\n if (positionals.length) {\n positionals = _.sortBy(positionals, ([, option]) => option.idx)\n const positionalArgs = positionals.map(([optName, option]) =>\n option.demandOption ? `<${optName}>` : `[${optName}]`\n )\n const positionalStr = positionalArgs.join(' ')\n usage = aliases.map((optAlias) => `${optAlias} ${positionalStr}`)\n }\n\n yargz.command(\n usage,\n description ?? cmdName,\n (y) => {\n for (const [key, option] of Object.entries(schema)) {\n if (option.positional) {\n y = y.positional(key, option)\n } else {\n y = y.option(key, option)\n }\n }\n return y\n },\n async (argv) => {\n const parsed = parseArguments(schema, argv)\n const { exitCode } = await command.handler({ ...parsed })\n process.exit(exitCode)\n }\n )\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAAuE;AACvE,oBAAc;AACd,WAAsB;AAKtB,MAAM,iBAAiB,CAAkC,QAAW,SAAuC;AACzG,QAAM,eAAW,6BAAS,QAAQ,IAAI;AACtC,aAAO,kCAAc,QAAQ,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC;AACvD;AAEO,MAAM,gBAAgB,CAAC,OAAsB,aAA+B;AACjF,aAAW,WAAW,UAAU;AAC9B,UAAM,UAAU,SAAS,OAAO;AAEhC,QAAI,KAAK,OAAO,QAAQ,UAAU,OAAO,GAAG;AAC1C,YAAM,QAAQ,SAAS,QAAQ,eAAe,SAAS,CAAC,MAAM;AAC5D,sBAAc,GAAG,QAAQ,WAAW;AACpC,eAAO;AAAA,MACT,CAAC;AACD;AAAA,IACF;AAEA,UAAM,EAAE,QAAQ,aAAa,MAAM,IAAI;AACvC,UAAM,UAAU,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO;AAEnD,UAAM,UAAU,OAAO,QAAQ,MAAM;AACrC,QAAI,cAAc,QAAQ;AAAA,MACxB,CAAC,UAA8D,CAAC,CAAC,MAAM,CAAC,EAAE;AAAA,IAC5E;AAEA,QAAI,QAAQ;AACZ,QAAI,YAAY,QAAQ;AACtB,oBAAc,cAAAA,QAAE,OAAO,aAAa,CAAC,CAAC,EAAE,MAAM,MAAM,OAAO,GAAG;AAC9D,YAAM,iBAAiB,YAAY;AAAA,QAAI,CAAC,CAAC,SAAS,MAAM,MACtD,OAAO,eAAe,IAAI,aAAa,IAAI;AAAA,MAC7C;AACA,YAAM,gBAAgB,eAAe,KAAK,GAAG;AAC7C,cAAQ,QAAQ,IAAI,CAAC,aAAa,GAAG,YAAY,eAAe;AAAA,IAClE;AAEA,UAAM;AAAA,MACJ;AAAA,MACA,eAAe;AAAA,MACf,CAAC,MAAM;AACL,mBAAW,CAAC,KAAK,MAAM,KAAK,OAAO,QAAQ,MAAM,GAAG;AAClD,cAAI,OAAO,YAAY;AACrB,gBAAI,EAAE,WAAW,KAAK,MAAM;AAAA,UAC9B,OAAO;AACL,gBAAI,EAAE,OAAO,KAAK,MAAM;AAAA,UAC1B;AAAA,QACF;AACA,eAAO;AAAA,MACT;AAAA,MACA,OAAO,SAAS;AACd,cAAM,SAAS,eAAe,QAAQ,IAAI;AAC1C,cAAM,EAAE,SAAS,IAAI,MAAM,QAAQ,QAAQ,EAAE,GAAG,OAAO,CAAC;AACxD,gBAAQ,KAAK,QAAQ;AAAA,MACvB;AAAA,IACF;AAAA,EACF;AACF;",
6
- "names": ["_"]
7
- }
package/dist/root.js DELETED
@@ -1,41 +0,0 @@
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 __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var root_exports = {};
30
- __export(root_exports, {
31
- CLI_ROOT_DIR: () => CLI_ROOT_DIR
32
- });
33
- module.exports = __toCommonJS(root_exports);
34
- var utils = __toESM(require("./utils"));
35
- const SRC_DIR = __dirname;
36
- const CLI_ROOT_DIR = utils.path.join(SRC_DIR, "..");
37
- // Annotate the CommonJS export names for ESM import in node:
38
- 0 && (module.exports = {
39
- CLI_ROOT_DIR
40
- });
41
- //# sourceMappingURL=root.js.map
package/dist/root.js.map DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/root.ts"],
4
- "sourcesContent": ["/**\n * Important:\n *\n * This file must be kept at the root of the src directory (and dist directory when built)\n */\nimport * as utils from './utils'\n\nconst SRC_DIR = __dirname as utils.path.AbsolutePath\nexport const CLI_ROOT_DIR = utils.path.join(SRC_DIR, '..')\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,YAAuB;AAEvB,MAAM,UAAU;AACT,MAAM,eAAe,MAAM,KAAK,KAAK,SAAS,IAAI;",
6
- "names": []
7
- }
package/dist/sdk/index.js DELETED
@@ -1,22 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __copyProps = (to, from, except, desc) => {
7
- if (from && typeof from === "object" || typeof from === "function") {
8
- for (let key of __getOwnPropNames(from))
9
- if (!__hasOwnProp.call(to, key) && key !== except)
10
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
- }
12
- return to;
13
- };
14
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
- var sdk_exports = {};
17
- module.exports = __toCommonJS(sdk_exports);
18
- __reExport(sdk_exports, require("./validate-integration"), module.exports);
19
- __reExport(sdk_exports, require("./validate-bot"), module.exports);
20
- __reExport(sdk_exports, require("./resolve-integration-interfaces"), module.exports);
21
- __reExport(sdk_exports, require("./resolve-bot-interfaces"), module.exports);
22
- //# sourceMappingURL=index.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/sdk/index.ts"],
4
- "sourcesContent": ["export * from './validate-integration'\nexport * from './validate-bot'\nexport * from './resolve-integration-interfaces'\nexport * from './resolve-bot-interfaces'\n"],
5
- "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,mCAAd;AACA,wBAAc,2BADd;AAEA,wBAAc,6CAFd;AAGA,wBAAc,qCAHd;",
6
- "names": []
7
- }
@@ -1,43 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var resolve_bot_interfaces_exports = {};
20
- __export(resolve_bot_interfaces_exports, {
21
- resolveBotInterfaces: () => resolveBotInterfaces
22
- });
23
- module.exports = __toCommonJS(resolve_bot_interfaces_exports);
24
- var import_resolve_integration_interfaces = require("./resolve-integration-interfaces");
25
- const _isLocalIntegrationDef = (integration) => {
26
- return "props" in integration;
27
- };
28
- const resolveBotInterfaces = (bot) => {
29
- for (const integration of Object.values(bot.integrations ?? {})) {
30
- if (!integration.definition.interfaces) {
31
- continue;
32
- }
33
- if (_isLocalIntegrationDef(integration.definition)) {
34
- integration.definition = (0, import_resolve_integration_interfaces.resolveInterfaces)(integration.definition);
35
- }
36
- }
37
- return bot;
38
- };
39
- // Annotate the CommonJS export names for ESM import in node:
40
- 0 && (module.exports = {
41
- resolveBotInterfaces
42
- });
43
- //# sourceMappingURL=resolve-bot-interfaces.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/sdk/resolve-bot-interfaces.ts"],
4
- "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport * as utils from '../utils'\nimport { resolveInterfaces } from './resolve-integration-interfaces'\n\ntype IntegrationPackageDefinition = sdk.IntegrationPackage['definition']\n\ntype _assertPropsInIntegrationDefinition = utils.types.AssertKeyOf<'props', sdk.IntegrationDefinition>\nconst _isLocalIntegrationDef = (\n integration: sdk.IntegrationDefinition | IntegrationPackageDefinition\n): integration is sdk.IntegrationDefinition => {\n return 'props' in integration\n}\n\nexport const resolveBotInterfaces = (bot: sdk.BotDefinition): sdk.BotDefinition => {\n for (const integration of Object.values(bot.integrations ?? {})) {\n if (!integration.definition.interfaces) {\n continue\n }\n\n if (_isLocalIntegrationDef(integration.definition)) {\n integration.definition = resolveInterfaces(integration.definition)\n }\n }\n return bot\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,4CAAkC;AAKlC,MAAM,yBAAyB,CAC7B,gBAC6C;AAC7C,SAAO,WAAW;AACpB;AAEO,MAAM,uBAAuB,CAAC,QAA8C;AACjF,aAAW,eAAe,OAAO,OAAO,IAAI,gBAAgB,CAAC,CAAC,GAAG;AAC/D,QAAI,CAAC,YAAY,WAAW,YAAY;AACtC;AAAA,IACF;AAEA,QAAI,uBAAuB,YAAY,UAAU,GAAG;AAClD,kBAAY,iBAAa,yDAAkB,YAAY,UAAU;AAAA,IACnE;AAAA,EACF;AACA,SAAO;AACT;",
6
- "names": []
7
- }
@@ -1,161 +0,0 @@
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 __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var resolve_integration_interfaces_exports = {};
30
- __export(resolve_integration_interfaces_exports, {
31
- getImplementationStatements: () => getImplementationStatements,
32
- resolveInterfaces: () => resolveInterfaces
33
- });
34
- module.exports = __toCommonJS(resolve_integration_interfaces_exports);
35
- var sdk = __toESM(require("@botpress/sdk"));
36
- var import_lodash = __toESM(require("lodash"));
37
- var utils = __toESM(require("../utils"));
38
- const resolveInterfaces = (integration) => {
39
- const self = integration;
40
- if (!self.interfaces) {
41
- return integration;
42
- }
43
- for (const intrface of Object.values(self.interfaces)) {
44
- const { resolved } = _resolveInterface(intrface);
45
- self.actions = utils.records.mergeRecords(self.actions ?? {}, resolved.actions, _mergeActions);
46
- self.channels = utils.records.mergeRecords(self.channels ?? {}, resolved.channels, _mergeChannels);
47
- self.events = utils.records.mergeRecords(self.events ?? {}, resolved.events, _mergeEvents);
48
- }
49
- return self;
50
- };
51
- const getImplementationStatements = (integration) => {
52
- const self = integration;
53
- if (!self.interfaces) {
54
- return {};
55
- }
56
- const statements = {};
57
- for (const [interfaceKey, intrface] of Object.entries(self.interfaces)) {
58
- const { statement } = _resolveInterface(intrface);
59
- statements[interfaceKey] = statement;
60
- }
61
- return statements;
62
- };
63
- const _mergeActions = (a, b) => {
64
- return {
65
- ...a,
66
- ...b,
67
- input: {
68
- schema: _mergeObjectSchemas(a.input.schema, b.input.schema)
69
- },
70
- output: {
71
- schema: _mergeObjectSchemas(a.input.schema, b.output.schema)
72
- }
73
- };
74
- };
75
- const _mergeEvents = (a, b) => {
76
- return {
77
- ...a,
78
- ...b,
79
- schema: _mergeObjectSchemas(a.schema, b.schema)
80
- };
81
- };
82
- const _mergeChannels = (a, b) => {
83
- const messages = utils.records.mergeRecords(a.messages, b.messages, _mergeMessage);
84
- return {
85
- ...a,
86
- ...b,
87
- messages
88
- };
89
- };
90
- const _mergeMessage = (a, b) => {
91
- return {
92
- schema: _mergeObjectSchemas(a.schema, b.schema)
93
- };
94
- };
95
- const _resolveInterface = (intrface) => {
96
- const { id } = intrface;
97
- const { name, version } = intrface;
98
- const resolved = { actions: {}, events: {}, channels: {} };
99
- const statement = {
100
- id,
101
- name,
102
- version,
103
- entities: import_lodash.default.mapValues(intrface.entities, (entity) => ({ name: entity.name })),
104
- // { item: { name: 'issue' } },
105
- actions: {},
106
- events: {},
107
- channels: {}
108
- };
109
- const entitySchemas = import_lodash.default.mapValues(intrface.entities, (entity) => entity.schema);
110
- for (const [actionName, action] of Object.entries(intrface.definition.actions ?? {})) {
111
- const resolvedInputSchema = action.input.schema.dereference(entitySchemas);
112
- const resolvedOutputSchema = action.output.schema.dereference(entitySchemas);
113
- const newActionName = _rename(intrface, actionName);
114
- resolved.actions[newActionName] = {
115
- ...action,
116
- input: { schema: resolvedInputSchema },
117
- output: { schema: resolvedOutputSchema }
118
- };
119
- statement.actions[actionName] = { name: newActionName };
120
- }
121
- for (const [eventName, event] of Object.entries(intrface.definition.events ?? {})) {
122
- const resolvedEventSchema = event.schema.dereference(entitySchemas);
123
- const newEventName = _rename(intrface, eventName);
124
- resolved.events[newEventName] = { ...event, schema: resolvedEventSchema };
125
- statement.events[eventName] = { name: newEventName };
126
- }
127
- for (const [channelName, channel] of Object.entries(intrface.definition.channels ?? {})) {
128
- const messages = {};
129
- for (const [messageName, message] of Object.entries(channel.messages)) {
130
- const resolvedMessageSchema = message.schema.dereference(entitySchemas);
131
- messages[messageName] = { ...message, schema: resolvedMessageSchema };
132
- }
133
- const newChannelName = _rename(intrface, channelName);
134
- resolved.channels[newChannelName] = { ...channel, messages };
135
- statement.channels[channelName] = { name: newChannelName };
136
- }
137
- return { resolved, statement };
138
- };
139
- const _rename = (intrface, name) => {
140
- if (!intrface.definition.templateName) {
141
- return name;
142
- }
143
- const { entities } = intrface;
144
- const templateProps = import_lodash.default.mapValues(entities, (entity) => entity.name);
145
- return utils.template.formatHandleBars(intrface.definition.templateName, { ...templateProps, name });
146
- };
147
- const _mergeObjectSchemas = (a, b) => {
148
- if (a instanceof sdk.z.ZodObject && b instanceof sdk.z.ZodObject) {
149
- return a.merge(b);
150
- }
151
- if (a instanceof sdk.z.ZodRecord && b instanceof sdk.z.ZodRecord) {
152
- return sdk.z.record(sdk.z.intersection(a.valueSchema, b.valueSchema));
153
- }
154
- throw new Error("Cannot merge object schemas with record schemas");
155
- };
156
- // Annotate the CommonJS export names for ESM import in node:
157
- 0 && (module.exports = {
158
- getImplementationStatements,
159
- resolveInterfaces
160
- });
161
- //# sourceMappingURL=resolve-integration-interfaces.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/sdk/resolve-integration-interfaces.ts"],
4
- "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport _ from 'lodash'\nimport * as utils from '../utils'\n\ntype InterfaceExtension = NonNullable<sdk.IntegrationDefinition['interfaces']>[string]\ntype ResolvedInterface = {\n actions: Record<string, sdk.ActionDefinition>\n events: Record<string, sdk.EventDefinition>\n channels: Record<string, sdk.ChannelDefinition>\n}\ntype InterfaceImplStatement = {\n id?: string\n name: string\n version: string\n entities: Record<string, { name: string }>\n actions: Record<string, { name: string }>\n events: Record<string, { name: string }>\n channels: Record<string, { name: string }>\n}\n\ntype ZodObjectSchema = sdk.z.ZodObject | sdk.z.ZodRecord\n\nexport const resolveInterfaces = (integration: sdk.IntegrationDefinition): sdk.IntegrationDefinition => {\n const self = integration as utils.types.Writable<sdk.IntegrationDefinition>\n if (!self.interfaces) {\n return integration\n }\n\n for (const intrface of Object.values(self.interfaces)) {\n const { resolved } = _resolveInterface(intrface)\n\n /**\n * If an action is defined both in the integration and the interface; we merge both.\n * This allows setting more specific properties in the integration, while staying compatible with the interface.\n * Same goes for channels and events.\n */\n\n self.actions = utils.records.mergeRecords(self.actions ?? {}, resolved.actions, _mergeActions)\n self.channels = utils.records.mergeRecords(self.channels ?? {}, resolved.channels, _mergeChannels)\n self.events = utils.records.mergeRecords(self.events ?? {}, resolved.events, _mergeEvents)\n }\n\n return self\n}\n\nexport const getImplementationStatements = (\n integration: sdk.IntegrationDefinition\n): Record<string, InterfaceImplStatement> => {\n const self = integration as utils.types.Writable<sdk.IntegrationDefinition>\n if (!self.interfaces) {\n return {}\n }\n\n const statements: Record<string, InterfaceImplStatement> = {}\n for (const [interfaceKey, intrface] of Object.entries(self.interfaces)) {\n const { statement } = _resolveInterface(intrface)\n statements[interfaceKey] = statement\n }\n\n return statements\n}\n\nconst _mergeActions = (a: sdk.ActionDefinition, b: sdk.ActionDefinition): sdk.ActionDefinition => {\n return {\n ...a,\n ...b,\n input: {\n schema: _mergeObjectSchemas(a.input.schema, b.input.schema),\n },\n output: {\n schema: _mergeObjectSchemas(a.input.schema, b.output.schema),\n },\n }\n}\n\nconst _mergeEvents = (a: sdk.EventDefinition, b: sdk.EventDefinition): sdk.EventDefinition => {\n return {\n ...a,\n ...b,\n schema: _mergeObjectSchemas(a.schema, b.schema),\n }\n}\n\nconst _mergeChannels = (a: sdk.ChannelDefinition, b: sdk.ChannelDefinition): sdk.ChannelDefinition => {\n const messages = utils.records.mergeRecords(a.messages, b.messages, _mergeMessage)\n return {\n ...a,\n ...b,\n messages,\n }\n}\n\nconst _mergeMessage = (a: sdk.MessageDefinition, b: sdk.MessageDefinition): sdk.MessageDefinition => {\n return {\n schema: _mergeObjectSchemas(a.schema, b.schema),\n }\n}\n\nconst _resolveInterface = (\n intrface: InterfaceExtension\n): { resolved: ResolvedInterface; statement: InterfaceImplStatement } => {\n const { id } = intrface\n const { name, version } = intrface\n\n const resolved: ResolvedInterface = { actions: {}, events: {}, channels: {} }\n const statement: InterfaceImplStatement = {\n id,\n name,\n version,\n entities: _.mapValues(intrface.entities, (entity) => ({ name: entity.name })), // { item: { name: 'issue' } },\n actions: {},\n events: {},\n channels: {},\n }\n\n const entitySchemas = _.mapValues(intrface.entities, (entity) => entity.schema)\n\n // dereference actions\n for (const [actionName, action] of Object.entries(intrface.definition.actions ?? {})) {\n const resolvedInputSchema = action.input.schema.dereference(entitySchemas) as sdk.z.AnyZodObject\n const resolvedOutputSchema = action.output.schema.dereference(entitySchemas) as sdk.z.AnyZodObject\n\n const newActionName = _rename(intrface, actionName)\n resolved.actions[newActionName] = {\n ...action,\n input: { schema: resolvedInputSchema },\n output: { schema: resolvedOutputSchema },\n }\n statement.actions[actionName] = { name: newActionName }\n }\n\n // dereference events\n for (const [eventName, event] of Object.entries(intrface.definition.events ?? {})) {\n const resolvedEventSchema = event.schema.dereference(entitySchemas) as sdk.z.AnyZodObject\n const newEventName = _rename(intrface, eventName)\n resolved.events[newEventName] = { ...event, schema: resolvedEventSchema }\n statement.events[eventName] = { name: newEventName }\n }\n\n // dereference channels\n for (const [channelName, channel] of Object.entries(intrface.definition.channels ?? {})) {\n const messages: Record<string, { schema: sdk.z.AnyZodObject }> = {}\n for (const [messageName, message] of Object.entries(channel.messages)) {\n const resolvedMessageSchema = message.schema.dereference(entitySchemas) as sdk.z.AnyZodObject\n // no renaming for messages as they are already contained within a channel that acts as a namespace\n messages[messageName] = { ...message, schema: resolvedMessageSchema }\n }\n const newChannelName = _rename(intrface, channelName)\n resolved.channels[newChannelName] = { ...channel, messages }\n statement.channels[channelName] = { name: newChannelName }\n }\n\n return { resolved, statement }\n}\n\nconst _rename = (intrface: InterfaceExtension, name: string) => {\n if (!intrface.definition.templateName) {\n return name\n }\n const { entities } = intrface\n const templateProps = _.mapValues(entities, (entity) => entity.name)\n return utils.template.formatHandleBars(intrface.definition.templateName, { ...templateProps, name })\n}\n\nconst _mergeObjectSchemas = (a: ZodObjectSchema, b: ZodObjectSchema): ZodObjectSchema => {\n if (a instanceof sdk.z.ZodObject && b instanceof sdk.z.ZodObject) {\n return a.merge(b)\n }\n if (a instanceof sdk.z.ZodRecord && b instanceof sdk.z.ZodRecord) {\n return sdk.z.record(sdk.z.intersection(a.valueSchema, b.valueSchema))\n }\n // TODO: adress this case\n throw new Error('Cannot merge object schemas with record schemas')\n}\n"],
5
- "mappings": "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",
6
- "names": ["_"]
7
- }
@@ -1,88 +0,0 @@
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 __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var validate_bot_exports = {};
30
- __export(validate_bot_exports, {
31
- validateBotDefinition: () => validateBotDefinition
32
- });
33
- module.exports = __toCommonJS(validate_bot_exports);
34
- var errors = __toESM(require("../errors"));
35
- var utils = __toESM(require("../utils"));
36
- const validateBotDefinition = (b) => {
37
- const { actions, events, states } = b;
38
- const invalidActionNames = _nonCamelCaseKeys(actions ?? {});
39
- if (invalidActionNames.length) {
40
- throw new errors.BotpressCLIError(
41
- `The following action names are not in camelCase: ${invalidActionNames.join(", ")}`
42
- );
43
- }
44
- const invalidEventNames = _nonCamelCaseKeys(events ?? {});
45
- if (invalidEventNames.length) {
46
- throw new errors.BotpressCLIError(`The following event names are not in camelCase: ${invalidEventNames.join(", ")}`);
47
- }
48
- const invalidStateNames = _nonCamelCaseKeys(states ?? {});
49
- if (invalidStateNames.length) {
50
- throw new errors.BotpressCLIError(`The following state names are not in camelCase: ${invalidStateNames.join(", ")}`);
51
- }
52
- for (const [pluginName, plugin] of Object.entries(b.plugins ?? {})) {
53
- const integrationDependencies = plugin.definition.integrations ?? {};
54
- for (const dep of Object.values(integrationDependencies)) {
55
- if (!_hasIntegrationDependency(b, dep)) {
56
- throw new errors.BotpressCLIError(
57
- `Plugin "${pluginName}" has a dependency on integration "${dep.name}@${dep.version}", but it is not present in the bot definition. Please install it.`
58
- );
59
- }
60
- }
61
- const interfaceDepdencies = plugin.definition.interfaces ?? {};
62
- for (const dep of Object.values(interfaceDepdencies)) {
63
- const interfaceImpl = plugin.interfaces[dep.name];
64
- if (!interfaceImpl) {
65
- throw new errors.BotpressCLIError(
66
- `Plugin "${pluginName}" has a dependency on interface "${dep.name}@${dep.version}", but the bot does not specify an implementation for it.`
67
- );
68
- }
69
- if (!_hasIntegrationDependency(b, interfaceImpl)) {
70
- throw new errors.BotpressCLIError(
71
- `Integration "${interfaceImpl.name}@${interfaceImpl.version}" is not installed in the bot, but specified as an implementation for interface "${dep.name}@${dep.version}"`
72
- );
73
- }
74
- }
75
- }
76
- };
77
- const _nonCamelCaseKeys = (obj) => Object.keys(obj).filter((k) => !utils.casing.is.camelCase(k));
78
- const _hasIntegrationDependency = (b, dep) => {
79
- const integrationInstances = Object.entries(b.integrations ?? {}).map(([_k, v]) => v);
80
- return integrationInstances.some(
81
- (integration) => integration.name === dep.name && integration.version === dep.version
82
- );
83
- };
84
- // Annotate the CommonJS export names for ESM import in node:
85
- 0 && (module.exports = {
86
- validateBotDefinition
87
- });
88
- //# sourceMappingURL=validate-bot.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/sdk/validate-bot.ts"],
4
- "sourcesContent": ["import type * as sdk from '@botpress/sdk'\nimport * as errors from '../errors'\nimport * as utils from '../utils'\n\ntype PackageRef = { name: string; version: string }\n\nexport const validateBotDefinition = (b: sdk.BotDefinition): void => {\n const { actions, events, states } = b\n\n const invalidActionNames = _nonCamelCaseKeys(actions ?? {})\n if (invalidActionNames.length) {\n throw new errors.BotpressCLIError(\n `The following action names are not in camelCase: ${invalidActionNames.join(', ')}`\n )\n }\n\n const invalidEventNames = _nonCamelCaseKeys(events ?? {})\n if (invalidEventNames.length) {\n throw new errors.BotpressCLIError(`The following event names are not in camelCase: ${invalidEventNames.join(', ')}`)\n }\n\n const invalidStateNames = _nonCamelCaseKeys(states ?? {})\n if (invalidStateNames.length) {\n throw new errors.BotpressCLIError(`The following state names are not in camelCase: ${invalidStateNames.join(', ')}`)\n }\n\n for (const [pluginName, plugin] of Object.entries(b.plugins ?? {})) {\n const integrationDependencies = plugin.definition.integrations ?? {}\n for (const dep of Object.values(integrationDependencies)) {\n if (!_hasIntegrationDependency(b, dep)) {\n throw new errors.BotpressCLIError(\n `Plugin \"${pluginName}\" has a dependency on integration \"${dep.name}@${dep.version}\", but it is not present in the bot definition. Please install it.`\n )\n }\n }\n\n const interfaceDepdencies = plugin.definition.interfaces ?? {}\n for (const dep of Object.values(interfaceDepdencies)) {\n const interfaceImpl = plugin.interfaces[dep.name]\n if (!interfaceImpl) {\n throw new errors.BotpressCLIError(\n `Plugin \"${pluginName}\" has a dependency on interface \"${dep.name}@${dep.version}\", but the bot does not specify an implementation for it.`\n )\n }\n\n if (!_hasIntegrationDependency(b, interfaceImpl)) {\n throw new errors.BotpressCLIError(\n `Integration \"${interfaceImpl.name}@${interfaceImpl.version}\" is not installed in the bot, but specified as an implementation for interface \"${dep.name}@${dep.version}\"`\n )\n }\n }\n }\n}\n\nconst _nonCamelCaseKeys = (obj: Record<string, any>): string[] =>\n Object.keys(obj).filter((k) => !utils.casing.is.camelCase(k))\n\nconst _hasIntegrationDependency = (b: sdk.BotDefinition, dep: PackageRef): boolean => {\n const integrationInstances = Object.entries(b.integrations ?? {}).map(([_k, v]) => v)\n return integrationInstances.some(\n (integration) => integration.name === dep.name && integration.version === dep.version\n )\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,YAAuB;AAIhB,MAAM,wBAAwB,CAAC,MAA+B;AACnE,QAAM,EAAE,SAAS,QAAQ,OAAO,IAAI;AAEpC,QAAM,qBAAqB,kBAAkB,WAAW,CAAC,CAAC;AAC1D,MAAI,mBAAmB,QAAQ;AAC7B,UAAM,IAAI,OAAO;AAAA,MACf,oDAAoD,mBAAmB,KAAK,IAAI;AAAA,IAClF;AAAA,EACF;AAEA,QAAM,oBAAoB,kBAAkB,UAAU,CAAC,CAAC;AACxD,MAAI,kBAAkB,QAAQ;AAC5B,UAAM,IAAI,OAAO,iBAAiB,mDAAmD,kBAAkB,KAAK,IAAI,GAAG;AAAA,EACrH;AAEA,QAAM,oBAAoB,kBAAkB,UAAU,CAAC,CAAC;AACxD,MAAI,kBAAkB,QAAQ;AAC5B,UAAM,IAAI,OAAO,iBAAiB,mDAAmD,kBAAkB,KAAK,IAAI,GAAG;AAAA,EACrH;AAEA,aAAW,CAAC,YAAY,MAAM,KAAK,OAAO,QAAQ,EAAE,WAAW,CAAC,CAAC,GAAG;AAClE,UAAM,0BAA0B,OAAO,WAAW,gBAAgB,CAAC;AACnE,eAAW,OAAO,OAAO,OAAO,uBAAuB,GAAG;AACxD,UAAI,CAAC,0BAA0B,GAAG,GAAG,GAAG;AACtC,cAAM,IAAI,OAAO;AAAA,UACf,WAAW,gDAAgD,IAAI,QAAQ,IAAI;AAAA,QAC7E;AAAA,MACF;AAAA,IACF;AAEA,UAAM,sBAAsB,OAAO,WAAW,cAAc,CAAC;AAC7D,eAAW,OAAO,OAAO,OAAO,mBAAmB,GAAG;AACpD,YAAM,gBAAgB,OAAO,WAAW,IAAI,IAAI;AAChD,UAAI,CAAC,eAAe;AAClB,cAAM,IAAI,OAAO;AAAA,UACf,WAAW,8CAA8C,IAAI,QAAQ,IAAI;AAAA,QAC3E;AAAA,MACF;AAEA,UAAI,CAAC,0BAA0B,GAAG,aAAa,GAAG;AAChD,cAAM,IAAI,OAAO;AAAA,UACf,gBAAgB,cAAc,QAAQ,cAAc,2FAA2F,IAAI,QAAQ,IAAI;AAAA,QACjK;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,MAAM,oBAAoB,CAAC,QACzB,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC;AAE9D,MAAM,4BAA4B,CAAC,GAAsB,QAA6B;AACpF,QAAM,uBAAuB,OAAO,QAAQ,EAAE,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;AACpF,SAAO,qBAAqB;AAAA,IAC1B,CAAC,gBAAgB,YAAY,SAAS,IAAI,QAAQ,YAAY,YAAY,IAAI;AAAA,EAChF;AACF;",
6
- "names": []
7
- }
@@ -1,72 +0,0 @@
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 __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var validate_integration_exports = {};
30
- __export(validate_integration_exports, {
31
- validateIntegrationDefinition: () => validateIntegrationDefinition
32
- });
33
- module.exports = __toCommonJS(validate_integration_exports);
34
- var errors = __toESM(require("../errors"));
35
- var utils = __toESM(require("../utils"));
36
- const validateIntegrationDefinition = (i) => {
37
- const { actions, channels, events, states } = i;
38
- const invalidActionNames = _nonCamelCaseKeys(actions ?? {});
39
- if (invalidActionNames.length) {
40
- throw new errors.BotpressCLIError(
41
- `The following action names are not in camelCase: ${invalidActionNames.join(", ")}`
42
- );
43
- }
44
- const invalidChannelNames = _nonCamelCaseKeys(channels ?? {});
45
- if (invalidChannelNames.length) {
46
- throw new errors.BotpressCLIError(
47
- `The following channel names are not in camelCase: ${invalidChannelNames.join(", ")}`
48
- );
49
- }
50
- const invalidMessageNames = Object.entries(channels ?? {}).flatMap(
51
- ([channelName, channel]) => _nonCamelCaseKeys(channel.messages ?? {}).map((message) => `${channelName}.${message}`)
52
- );
53
- if (invalidMessageNames.length) {
54
- throw new errors.BotpressCLIError(
55
- `The following message names are not in camelCase: ${invalidMessageNames.join(", ")}`
56
- );
57
- }
58
- const invalidEventNames = _nonCamelCaseKeys(events ?? {});
59
- if (invalidEventNames.length) {
60
- throw new errors.BotpressCLIError(`The following event names are not in camelCase: ${invalidEventNames.join(", ")}`);
61
- }
62
- const invalidStateNames = _nonCamelCaseKeys(states ?? {});
63
- if (invalidStateNames.length) {
64
- throw new errors.BotpressCLIError(`The following state names are not in camelCase: ${invalidStateNames.join(", ")}`);
65
- }
66
- };
67
- const _nonCamelCaseKeys = (obj) => Object.keys(obj).filter((k) => !utils.casing.is.camelCase(k));
68
- // Annotate the CommonJS export names for ESM import in node:
69
- 0 && (module.exports = {
70
- validateIntegrationDefinition
71
- });
72
- //# sourceMappingURL=validate-integration.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/sdk/validate-integration.ts"],
4
- "sourcesContent": ["import type * as sdk from '@botpress/sdk'\nimport * as errors from '../errors'\nimport * as utils from '../utils'\n\nexport const validateIntegrationDefinition = (i: sdk.IntegrationDefinition): void => {\n const { actions, channels, events, states } = i\n\n const invalidActionNames = _nonCamelCaseKeys(actions ?? {})\n if (invalidActionNames.length) {\n throw new errors.BotpressCLIError(\n `The following action names are not in camelCase: ${invalidActionNames.join(', ')}`\n )\n }\n\n const invalidChannelNames = _nonCamelCaseKeys(channels ?? {})\n if (invalidChannelNames.length) {\n throw new errors.BotpressCLIError(\n `The following channel names are not in camelCase: ${invalidChannelNames.join(', ')}`\n )\n }\n\n const invalidMessageNames = Object.entries(channels ?? {}).flatMap(([channelName, channel]) =>\n _nonCamelCaseKeys(channel.messages ?? {}).map((message) => `${channelName}.${message}`)\n )\n if (invalidMessageNames.length) {\n throw new errors.BotpressCLIError(\n `The following message names are not in camelCase: ${invalidMessageNames.join(', ')}`\n )\n }\n\n const invalidEventNames = _nonCamelCaseKeys(events ?? {})\n if (invalidEventNames.length) {\n throw new errors.BotpressCLIError(`The following event names are not in camelCase: ${invalidEventNames.join(', ')}`)\n }\n\n const invalidStateNames = _nonCamelCaseKeys(states ?? {})\n if (invalidStateNames.length) {\n throw new errors.BotpressCLIError(`The following state names are not in camelCase: ${invalidStateNames.join(', ')}`)\n }\n}\n\nconst _nonCamelCaseKeys = (obj: Record<string, any>): string[] =>\n Object.keys(obj).filter((k) => !utils.casing.is.camelCase(k))\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AACxB,YAAuB;AAEhB,MAAM,gCAAgC,CAAC,MAAuC;AACnF,QAAM,EAAE,SAAS,UAAU,QAAQ,OAAO,IAAI;AAE9C,QAAM,qBAAqB,kBAAkB,WAAW,CAAC,CAAC;AAC1D,MAAI,mBAAmB,QAAQ;AAC7B,UAAM,IAAI,OAAO;AAAA,MACf,oDAAoD,mBAAmB,KAAK,IAAI;AAAA,IAClF;AAAA,EACF;AAEA,QAAM,sBAAsB,kBAAkB,YAAY,CAAC,CAAC;AAC5D,MAAI,oBAAoB,QAAQ;AAC9B,UAAM,IAAI,OAAO;AAAA,MACf,qDAAqD,oBAAoB,KAAK,IAAI;AAAA,IACpF;AAAA,EACF;AAEA,QAAM,sBAAsB,OAAO,QAAQ,YAAY,CAAC,CAAC,EAAE;AAAA,IAAQ,CAAC,CAAC,aAAa,OAAO,MACvF,kBAAkB,QAAQ,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,GAAG,eAAe,SAAS;AAAA,EACxF;AACA,MAAI,oBAAoB,QAAQ;AAC9B,UAAM,IAAI,OAAO;AAAA,MACf,qDAAqD,oBAAoB,KAAK,IAAI;AAAA,IACpF;AAAA,EACF;AAEA,QAAM,oBAAoB,kBAAkB,UAAU,CAAC,CAAC;AACxD,MAAI,kBAAkB,QAAQ;AAC5B,UAAM,IAAI,OAAO,iBAAiB,mDAAmD,kBAAkB,KAAK,IAAI,GAAG;AAAA,EACrH;AAEA,QAAM,oBAAoB,kBAAkB,UAAU,CAAC,CAAC;AACxD,MAAI,kBAAkB,QAAQ;AAC5B,UAAM,IAAI,OAAO,iBAAiB,mDAAmD,kBAAkB,KAAK,IAAI,GAAG;AAAA,EACrH;AACF;AAEA,MAAM,oBAAoB,CAAC,QACzB,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC;",
6
- "names": []
7
- }
package/dist/typings.js DELETED
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __copyProps = (to, from, except, desc) => {
7
- if (from && typeof from === "object" || typeof from === "function") {
8
- for (let key of __getOwnPropNames(from))
9
- if (!__hasOwnProp.call(to, key) && key !== except)
10
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
- }
12
- return to;
13
- };
14
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
- var typings_exports = {};
16
- module.exports = __toCommonJS(typings_exports);
17
- //# sourceMappingURL=typings.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/typings.ts"],
4
- "sourcesContent": ["import type yargs from '@bpinternal/yargs-extra'\n// eslint-disable-next-line no-duplicate-imports\nimport type { YargsConfig, YargsSchema } from '@bpinternal/yargs-extra'\n\nexport type CommandPositionalOption = yargs.PositionalOptions & { positional: true; idx: number }\nexport type CommandNamedOption = YargsSchema[string] & { positional?: false }\nexport type CommandOption = CommandPositionalOption | CommandNamedOption\nexport type CommandSchema = Record<string, CommandOption>\n\nexport type CommandArgv<C extends CommandDefinition = CommandDefinition> = YargsConfig<C['schema']> & {\n /**\n * Ignored: fixes weird typing issue\n */\n _?: string\n}\n\nexport type CommandDefinition<S extends CommandSchema = CommandSchema> = {\n schema: S\n description?: string\n alias?: string\n}\n\nexport type CommandImplementation<C extends CommandDefinition = CommandDefinition> = (\n argv: CommandArgv<C>\n) => Promise<{ exitCode: number }>\n\nexport type CommandLeaf<C extends CommandDefinition = CommandDefinition> = C & {\n handler: CommandImplementation<C>\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
6
- "names": []
7
- }