@botpress/cli 2.1.1 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) hide show
  1. package/.turbo/turbo-build.log +22 -0
  2. package/dist/api/bot-body.js +89 -0
  3. package/dist/api/bot-body.js.map +7 -0
  4. package/dist/api/client.js +169 -0
  5. package/dist/api/client.js.map +7 -0
  6. package/dist/api/find-previous-version.js +66 -0
  7. package/dist/api/find-previous-version.js.map +7 -0
  8. package/dist/api/find-previous-version.test.js +76 -0
  9. package/dist/api/find-previous-version.test.js.map +7 -0
  10. package/dist/api/index.js +23 -0
  11. package/dist/api/index.js.map +7 -0
  12. package/dist/api/integration-body.js +146 -0
  13. package/dist/api/integration-body.js.map +7 -0
  14. package/dist/api/interface-body.js +95 -0
  15. package/dist/api/interface-body.js.map +7 -0
  16. package/dist/api/paging.js +42 -0
  17. package/dist/api/paging.js.map +7 -0
  18. package/dist/api/plugin-body.js +84 -0
  19. package/dist/api/plugin-body.js.map +7 -0
  20. package/dist/api/types.js +17 -0
  21. package/dist/api/types.js.map +7 -0
  22. package/dist/chat/index.js +211 -0
  23. package/dist/chat/index.js.map +7 -0
  24. package/dist/code-generation/bot-implementation/bot-implementation.js +116 -0
  25. package/dist/code-generation/bot-implementation/bot-implementation.js.map +7 -0
  26. package/dist/code-generation/bot-implementation/bot-plugins/index.js +80 -0
  27. package/dist/code-generation/bot-implementation/bot-plugins/index.js.map +7 -0
  28. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js +129 -0
  29. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js.map +7 -0
  30. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js +88 -0
  31. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js.map +7 -0
  32. package/dist/code-generation/bot-implementation/bot-typings/events-module.js +63 -0
  33. package/dist/code-generation/bot-implementation/bot-typings/events-module.js.map +7 -0
  34. package/dist/code-generation/bot-implementation/bot-typings/index.js +109 -0
  35. package/dist/code-generation/bot-implementation/bot-typings/index.js.map +7 -0
  36. package/dist/code-generation/bot-implementation/bot-typings/states-module.js +64 -0
  37. package/dist/code-generation/bot-implementation/bot-typings/states-module.js.map +7 -0
  38. package/dist/code-generation/bot-implementation/index.js +66 -0
  39. package/dist/code-generation/bot-implementation/index.js.map +7 -0
  40. package/dist/code-generation/consts.js +45 -0
  41. package/dist/code-generation/consts.js.map +7 -0
  42. package/dist/code-generation/generators.js +81 -0
  43. package/dist/code-generation/generators.js.map +7 -0
  44. package/dist/code-generation/index.js +49 -0
  45. package/dist/code-generation/index.js.map +7 -0
  46. package/dist/code-generation/integration-implementation/index.js +70 -0
  47. package/dist/code-generation/integration-implementation/index.js.map +7 -0
  48. package/dist/code-generation/integration-implementation/integration-implementation.js +114 -0
  49. package/dist/code-generation/integration-implementation/integration-implementation.js.map +7 -0
  50. package/dist/code-generation/integration-implementation/integration-secret.js +78 -0
  51. package/dist/code-generation/integration-implementation/integration-secret.js.map +7 -0
  52. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js +88 -0
  53. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js.map +7 -0
  54. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js +107 -0
  55. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js.map +7 -0
  56. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.js +62 -0
  57. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.js.map +7 -0
  58. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js +70 -0
  59. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js.map +7 -0
  60. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js +63 -0
  61. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js.map +7 -0
  62. package/dist/code-generation/integration-implementation/integration-typings/events-module.js +63 -0
  63. package/dist/code-generation/integration-implementation/integration-typings/events-module.js.map +7 -0
  64. package/dist/code-generation/integration-implementation/integration-typings/index.js +128 -0
  65. package/dist/code-generation/integration-implementation/integration-typings/index.js.map +7 -0
  66. package/dist/code-generation/integration-implementation/integration-typings/states-module.js +64 -0
  67. package/dist/code-generation/integration-implementation/integration-typings/states-module.js.map +7 -0
  68. package/dist/code-generation/integration-package/index.js +94 -0
  69. package/dist/code-generation/integration-package/index.js.map +7 -0
  70. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js +88 -0
  71. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js.map +7 -0
  72. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js +107 -0
  73. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js.map +7 -0
  74. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.js +63 -0
  75. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.js.map +7 -0
  76. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js +70 -0
  77. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js.map +7 -0
  78. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js +63 -0
  79. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js.map +7 -0
  80. package/dist/code-generation/integration-package/integration-package-definition/events-module.js +66 -0
  81. package/dist/code-generation/integration-package/integration-package-definition/events-module.js.map +7 -0
  82. package/dist/code-generation/integration-package/integration-package-definition/index.js +140 -0
  83. package/dist/code-generation/integration-package/integration-package-definition/index.js.map +7 -0
  84. package/dist/code-generation/integration-package/integration-package-definition/states-module.js +66 -0
  85. package/dist/code-generation/integration-package/integration-package-definition/states-module.js.map +7 -0
  86. package/dist/code-generation/integration-package/integration-package-definition/typings.js +17 -0
  87. package/dist/code-generation/integration-package/integration-package-definition/typings.js.map +7 -0
  88. package/dist/code-generation/interface-implementation/index.js +29 -0
  89. package/dist/code-generation/interface-implementation/index.js.map +7 -0
  90. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js +88 -0
  91. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js.map +7 -0
  92. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js +107 -0
  93. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js.map +7 -0
  94. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js +63 -0
  95. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js.map +7 -0
  96. package/dist/code-generation/interface-implementation/integration-typings/events-module.js +63 -0
  97. package/dist/code-generation/interface-implementation/integration-typings/events-module.js.map +7 -0
  98. package/dist/code-generation/interface-implementation/integration-typings/index.js +121 -0
  99. package/dist/code-generation/interface-implementation/integration-typings/index.js.map +7 -0
  100. package/dist/code-generation/interface-package/index.js +94 -0
  101. package/dist/code-generation/interface-package/index.js.map +7 -0
  102. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js +88 -0
  103. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js.map +7 -0
  104. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js +98 -0
  105. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js.map +7 -0
  106. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js +63 -0
  107. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js.map +7 -0
  108. package/dist/code-generation/interface-package/interface-package-definition/events-module.js +66 -0
  109. package/dist/code-generation/interface-package/interface-package-definition/events-module.js.map +7 -0
  110. package/dist/code-generation/interface-package/interface-package-definition/index.js +104 -0
  111. package/dist/code-generation/interface-package/interface-package-definition/index.js.map +7 -0
  112. package/dist/code-generation/interface-package/interface-package-definition/typings.js +17 -0
  113. package/dist/code-generation/interface-package/interface-package-definition/typings.js.map +7 -0
  114. package/dist/code-generation/module.js +183 -0
  115. package/dist/code-generation/module.js.map +7 -0
  116. package/dist/code-generation/plugin-implementation/index.js +60 -0
  117. package/dist/code-generation/plugin-implementation/index.js.map +7 -0
  118. package/dist/code-generation/plugin-implementation/plugin-implementation.js +90 -0
  119. package/dist/code-generation/plugin-implementation/plugin-implementation.js.map +7 -0
  120. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js +88 -0
  121. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js.map +7 -0
  122. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.js +61 -0
  123. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.js.map +7 -0
  124. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js +63 -0
  125. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js.map +7 -0
  126. package/dist/code-generation/plugin-implementation/plugin-typings/index.js +150 -0
  127. package/dist/code-generation/plugin-implementation/plugin-typings/index.js.map +7 -0
  128. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js +64 -0
  129. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js.map +7 -0
  130. package/dist/code-generation/plugin-package/index.js +151 -0
  131. package/dist/code-generation/plugin-package/index.js.map +7 -0
  132. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js +88 -0
  133. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js.map +7 -0
  134. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.js +56 -0
  135. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.js.map +7 -0
  136. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js +66 -0
  137. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js.map +7 -0
  138. package/dist/code-generation/plugin-package/plugin-package-definition/index.js +107 -0
  139. package/dist/code-generation/plugin-package/plugin-package-definition/index.js.map +7 -0
  140. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js +66 -0
  141. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js.map +7 -0
  142. package/dist/code-generation/plugin-package/plugin-package-definition/typings.js +17 -0
  143. package/dist/code-generation/plugin-package/plugin-package-definition/typings.js.map +7 -0
  144. package/dist/code-generation/strings.js +115 -0
  145. package/dist/code-generation/strings.js.map +7 -0
  146. package/dist/code-generation/typings.js +17 -0
  147. package/dist/code-generation/typings.js.map +7 -0
  148. package/dist/command-definitions.js +85 -0
  149. package/dist/command-definitions.js.map +7 -0
  150. package/dist/command-implementations/add-command.js +262 -0
  151. package/dist/command-implementations/add-command.js.map +7 -0
  152. package/dist/command-implementations/base-command.js +69 -0
  153. package/dist/command-implementations/base-command.js.map +7 -0
  154. package/dist/command-implementations/bot-commands.js +117 -0
  155. package/dist/command-implementations/bot-commands.js.map +7 -0
  156. package/dist/command-implementations/build-command.js +53 -0
  157. package/dist/command-implementations/build-command.js.map +7 -0
  158. package/dist/command-implementations/bundle-command.js +87 -0
  159. package/dist/command-implementations/bundle-command.js.map +7 -0
  160. package/dist/command-implementations/chat-command.js +152 -0
  161. package/dist/command-implementations/chat-command.js.map +7 -0
  162. package/dist/command-implementations/deploy-command.js +503 -0
  163. package/dist/command-implementations/deploy-command.js.map +7 -0
  164. package/dist/command-implementations/dev-command.js +345 -0
  165. package/dist/command-implementations/dev-command.js.map +7 -0
  166. package/dist/command-implementations/gen-command.js +110 -0
  167. package/dist/command-implementations/gen-command.js.map +7 -0
  168. package/dist/command-implementations/global-command.js +137 -0
  169. package/dist/command-implementations/global-command.js.map +7 -0
  170. package/dist/command-implementations/index.js +105 -0
  171. package/dist/command-implementations/index.js.map +7 -0
  172. package/dist/command-implementations/init-command.js +162 -0
  173. package/dist/command-implementations/init-command.js.map +7 -0
  174. package/dist/command-implementations/integration-commands.js +130 -0
  175. package/dist/command-implementations/integration-commands.js.map +7 -0
  176. package/dist/command-implementations/interface-commands.js +110 -0
  177. package/dist/command-implementations/interface-commands.js.map +7 -0
  178. package/dist/command-implementations/lint-command.js +151 -0
  179. package/dist/command-implementations/lint-command.js.map +7 -0
  180. package/dist/command-implementations/login-command.js +82 -0
  181. package/dist/command-implementations/login-command.js.map +7 -0
  182. package/dist/command-implementations/logout-command.js +35 -0
  183. package/dist/command-implementations/logout-command.js.map +7 -0
  184. package/dist/command-implementations/plugin-commands.js +111 -0
  185. package/dist/command-implementations/plugin-commands.js.map +7 -0
  186. package/dist/command-implementations/project-command.js +383 -0
  187. package/dist/command-implementations/project-command.js.map +7 -0
  188. package/dist/command-implementations/read-command.js +70 -0
  189. package/dist/command-implementations/read-command.js.map +7 -0
  190. package/dist/command-implementations/serve-command.js +68 -0
  191. package/dist/command-implementations/serve-command.js.map +7 -0
  192. package/dist/command-tree.js +60 -0
  193. package/dist/command-tree.js.map +7 -0
  194. package/dist/config.js +352 -0
  195. package/dist/config.js.map +7 -0
  196. package/dist/consts.js +127 -0
  197. package/dist/consts.js.map +7 -0
  198. package/dist/errors.js +202 -0
  199. package/dist/errors.js.map +7 -0
  200. package/dist/index.js +51 -0
  201. package/dist/index.js.map +7 -0
  202. package/dist/init.js +50 -0
  203. package/dist/init.js.map +7 -0
  204. package/dist/linter/base-linter.js +75 -0
  205. package/dist/linter/base-linter.js.map +7 -0
  206. package/dist/linter/base-linter.test.js +187 -0
  207. package/dist/linter/base-linter.test.js.map +7 -0
  208. package/dist/linter/bot-linter.js +35 -0
  209. package/dist/linter/bot-linter.js.map +7 -0
  210. package/dist/linter/integration-linter.js +35 -0
  211. package/dist/linter/integration-linter.js.map +7 -0
  212. package/dist/linter/interface-linter.js +35 -0
  213. package/dist/linter/interface-linter.js.map +7 -0
  214. package/dist/linter/ruleset-tests/bot.ruleset.test.js +358 -0
  215. package/dist/linter/ruleset-tests/bot.ruleset.test.js.map +7 -0
  216. package/dist/linter/ruleset-tests/common.js +37 -0
  217. package/dist/linter/ruleset-tests/common.js.map +7 -0
  218. package/dist/linter/ruleset-tests/integration.ruleset.test.js +887 -0
  219. package/dist/linter/ruleset-tests/integration.ruleset.test.js.map +7 -0
  220. package/dist/linter/ruleset-tests/interface.ruleset.test.js +383 -0
  221. package/dist/linter/ruleset-tests/interface.ruleset.test.js.map +7 -0
  222. package/dist/linter/rulesets/bot.ruleset.js +191 -0
  223. package/dist/linter/rulesets/bot.ruleset.js.map +7 -0
  224. package/dist/linter/rulesets/integration.ruleset.js +378 -0
  225. package/dist/linter/rulesets/integration.ruleset.js.map +7 -0
  226. package/dist/linter/rulesets/interface.ruleset.js +157 -0
  227. package/dist/linter/rulesets/interface.ruleset.js.map +7 -0
  228. package/dist/linter/spectral-functions.js +36 -0
  229. package/dist/linter/spectral-functions.js.map +7 -0
  230. package/dist/logger/base-logger.js +170 -0
  231. package/dist/logger/base-logger.js.map +7 -0
  232. package/dist/logger/index.js +86 -0
  233. package/dist/logger/index.js.map +7 -0
  234. package/dist/package-ref.js +107 -0
  235. package/dist/package-ref.js.map +7 -0
  236. package/dist/package-ref.test.js +109 -0
  237. package/dist/package-ref.test.js.map +7 -0
  238. package/dist/register-yargs.js +91 -0
  239. package/dist/register-yargs.js.map +7 -0
  240. package/dist/root.js +41 -0
  241. package/dist/root.js.map +7 -0
  242. package/dist/sdk/index.js +22 -0
  243. package/dist/sdk/index.js.map +7 -0
  244. package/dist/sdk/resolve-bot-interfaces.js +43 -0
  245. package/dist/sdk/resolve-bot-interfaces.js.map +7 -0
  246. package/dist/sdk/resolve-integration-interfaces.js +161 -0
  247. package/dist/sdk/resolve-integration-interfaces.js.map +7 -0
  248. package/dist/sdk/validate-bot.js +88 -0
  249. package/dist/sdk/validate-bot.js.map +7 -0
  250. package/dist/sdk/validate-integration.js +72 -0
  251. package/dist/sdk/validate-integration.js.map +7 -0
  252. package/dist/typings.js +17 -0
  253. package/dist/typings.js.map +7 -0
  254. package/dist/utils/cache-utils.js +104 -0
  255. package/dist/utils/cache-utils.js.map +7 -0
  256. package/dist/utils/case-utils.js +84 -0
  257. package/dist/utils/case-utils.js.map +7 -0
  258. package/dist/utils/case-utils.test.js +75 -0
  259. package/dist/utils/case-utils.test.js.map +7 -0
  260. package/dist/utils/esbuild-utils.js +92 -0
  261. package/dist/utils/esbuild-utils.js.map +7 -0
  262. package/dist/utils/event-emitter.js +63 -0
  263. package/dist/utils/event-emitter.js.map +7 -0
  264. package/dist/utils/file-watcher.js +73 -0
  265. package/dist/utils/file-watcher.js.map +7 -0
  266. package/dist/utils/guard-utils.js +32 -0
  267. package/dist/utils/guard-utils.js.map +7 -0
  268. package/dist/utils/id-utils.js +59 -0
  269. package/dist/utils/id-utils.js.map +7 -0
  270. package/dist/utils/index.js +99 -0
  271. package/dist/utils/index.js.map +7 -0
  272. package/dist/utils/object-utils.js +32 -0
  273. package/dist/utils/object-utils.js.map +7 -0
  274. package/dist/utils/path-utils.js +106 -0
  275. package/dist/utils/path-utils.js.map +7 -0
  276. package/dist/utils/path-utils.test.js +72 -0
  277. package/dist/utils/path-utils.test.js.map +7 -0
  278. package/dist/utils/pkgjson-utils.js +57 -0
  279. package/dist/utils/pkgjson-utils.js.map +7 -0
  280. package/dist/utils/promise-utils.js +36 -0
  281. package/dist/utils/promise-utils.js.map +7 -0
  282. package/dist/utils/promise-utils.test.js +14 -0
  283. package/dist/utils/promise-utils.test.js.map +7 -0
  284. package/dist/utils/prompt-utils.js +105 -0
  285. package/dist/utils/prompt-utils.js.map +7 -0
  286. package/dist/utils/record-utils.js +118 -0
  287. package/dist/utils/record-utils.js.map +7 -0
  288. package/dist/utils/record-utils.test.js +38 -0
  289. package/dist/utils/record-utils.test.js.map +7 -0
  290. package/dist/utils/require-utils.js +90 -0
  291. package/dist/utils/require-utils.js.map +7 -0
  292. package/dist/utils/require-utils.test.js +54 -0
  293. package/dist/utils/require-utils.test.js.map +7 -0
  294. package/dist/utils/schema-utils.js +64 -0
  295. package/dist/utils/schema-utils.js.map +7 -0
  296. package/dist/utils/schema-utils.test.js +50 -0
  297. package/dist/utils/schema-utils.test.js.map +7 -0
  298. package/dist/utils/semver-utils.js +45 -0
  299. package/dist/utils/semver-utils.js.map +7 -0
  300. package/dist/utils/string-utils.js +42 -0
  301. package/dist/utils/string-utils.js.map +7 -0
  302. package/dist/utils/template-utils.js +51 -0
  303. package/dist/utils/template-utils.js.map +7 -0
  304. package/dist/utils/tunnel-utils.js +129 -0
  305. package/dist/utils/tunnel-utils.js.map +7 -0
  306. package/dist/utils/type-utils.js +17 -0
  307. package/dist/utils/type-utils.js.map +7 -0
  308. package/dist/utils/url-utils.js +67 -0
  309. package/dist/utils/url-utils.js.map +7 -0
  310. package/dist/worker/child-entrypoint.js +58 -0
  311. package/dist/worker/child-entrypoint.js.map +7 -0
  312. package/dist/worker/child-wrapper.js +119 -0
  313. package/dist/worker/child-wrapper.js.map +7 -0
  314. package/dist/worker/config.js +44 -0
  315. package/dist/worker/config.js.map +7 -0
  316. package/dist/worker/index.js +32 -0
  317. package/dist/worker/index.js.map +7 -0
  318. package/dist/worker/is-child.js +55 -0
  319. package/dist/worker/is-child.js.map +7 -0
  320. package/dist/worker/worker-state.js +71 -0
  321. package/dist/worker/worker-state.js.map +7 -0
  322. package/dist/worker/worker.js +91 -0
  323. package/dist/worker/worker.js.map +7 -0
  324. package/package.json +1 -1
  325. package/templates/empty-bot/.botpress/implementation/index.ts +50 -0
  326. package/templates/empty-bot/.botpress/implementation/plugins/index.ts +11 -0
  327. package/templates/empty-bot/.botpress/implementation/typings/actions/index.ts +6 -0
  328. package/templates/empty-bot/.botpress/implementation/typings/events/index.ts +6 -0
  329. package/templates/empty-bot/.botpress/implementation/typings/index.ts +20 -0
  330. package/templates/empty-bot/.botpress/implementation/typings/integrations/index.ts +6 -0
  331. package/templates/empty-bot/.botpress/implementation/typings/states/index.ts +6 -0
  332. package/templates/empty-bot/.botpress/index.ts +5 -0
  333. package/templates/empty-integration/.botpress/implementation/index.ts +57 -0
  334. package/templates/empty-integration/.botpress/implementation/typings/actions/index.ts +6 -0
  335. package/templates/empty-integration/.botpress/implementation/typings/channels/index.ts +6 -0
  336. package/templates/empty-integration/.botpress/implementation/typings/configuration/index.ts +2 -0
  337. package/templates/empty-integration/.botpress/implementation/typings/configurations/index.ts +6 -0
  338. package/templates/empty-integration/.botpress/implementation/typings/entities/index.ts +6 -0
  339. package/templates/empty-integration/.botpress/implementation/typings/events/index.ts +6 -0
  340. package/templates/empty-integration/.botpress/implementation/typings/index.ts +31 -0
  341. package/templates/empty-integration/.botpress/implementation/typings/states/index.ts +6 -0
  342. package/templates/empty-integration/.botpress/index.ts +2 -0
  343. package/templates/empty-integration/.botpress/secrets/index.ts +6 -0
  344. package/templates/empty-plugin/.botpress/implementation/index.ts +35 -0
  345. package/templates/empty-plugin/.botpress/implementation/typings/actions/index.ts +6 -0
  346. package/templates/empty-plugin/.botpress/implementation/typings/configuration/index.ts +2 -0
  347. package/templates/empty-plugin/.botpress/implementation/typings/events/index.ts +6 -0
  348. package/templates/empty-plugin/.botpress/implementation/typings/index.ts +26 -0
  349. package/templates/empty-plugin/.botpress/implementation/typings/integrations/index.ts +6 -0
  350. package/templates/empty-plugin/.botpress/implementation/typings/interfaces/index.ts +6 -0
  351. package/templates/empty-plugin/.botpress/implementation/typings/states/index.ts +6 -0
  352. package/templates/empty-plugin/.botpress/index.ts +1 -0
  353. package/templates/hello-world/.botpress/implementation/index.ts +57 -0
  354. package/templates/hello-world/.botpress/implementation/typings/actions/helloWorld/index.ts +12 -0
  355. package/templates/hello-world/.botpress/implementation/typings/actions/helloWorld/input.ts +5 -0
  356. package/templates/hello-world/.botpress/implementation/typings/actions/helloWorld/output.ts +5 -0
  357. package/templates/hello-world/.botpress/implementation/typings/actions/index.ts +9 -0
  358. package/templates/hello-world/.botpress/implementation/typings/channels/index.ts +6 -0
  359. package/templates/hello-world/.botpress/implementation/typings/configuration/index.ts +2 -0
  360. package/templates/hello-world/.botpress/implementation/typings/configurations/index.ts +6 -0
  361. package/templates/hello-world/.botpress/implementation/typings/entities/index.ts +6 -0
  362. package/templates/hello-world/.botpress/implementation/typings/events/index.ts +6 -0
  363. package/templates/hello-world/.botpress/implementation/typings/index.ts +31 -0
  364. package/templates/hello-world/.botpress/implementation/typings/states/index.ts +6 -0
  365. package/templates/hello-world/.botpress/index.ts +2 -0
  366. package/templates/hello-world/.botpress/secrets/index.ts +6 -0
  367. package/templates/webhook-message/.botpress/implementation/index.ts +57 -0
  368. package/templates/webhook-message/.botpress/implementation/typings/actions/index.ts +6 -0
  369. package/templates/webhook-message/.botpress/implementation/typings/channels/index.ts +9 -0
  370. package/templates/webhook-message/.botpress/implementation/typings/channels/webhook/index.ts +12 -0
  371. package/templates/webhook-message/.botpress/implementation/typings/channels/webhook/messages/index.ts +9 -0
  372. package/templates/webhook-message/.botpress/implementation/typings/channels/webhook/messages/text.ts +5 -0
  373. package/templates/webhook-message/.botpress/implementation/typings/configuration/index.ts +8 -0
  374. package/templates/webhook-message/.botpress/implementation/typings/configurations/index.ts +6 -0
  375. package/templates/webhook-message/.botpress/implementation/typings/entities/index.ts +6 -0
  376. package/templates/webhook-message/.botpress/implementation/typings/events/index.ts +6 -0
  377. package/templates/webhook-message/.botpress/implementation/typings/index.ts +31 -0
  378. package/templates/webhook-message/.botpress/implementation/typings/states/index.ts +6 -0
  379. package/templates/webhook-message/.botpress/index.ts +2 -0
  380. package/templates/webhook-message/.botpress/secrets/index.ts +6 -0
@@ -0,0 +1,105 @@
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 prompt_utils_exports = {};
30
+ __export(prompt_utils_exports, {
31
+ CLIPrompt: () => CLIPrompt
32
+ });
33
+ module.exports = __toCommonJS(prompt_utils_exports);
34
+ var import_prompts = __toESM(require("prompts"));
35
+ class CLIPrompt {
36
+ constructor(_props, _logger) {
37
+ this._props = _props;
38
+ this._logger = _logger;
39
+ }
40
+ async confirm(message) {
41
+ if (this._props.confirm) {
42
+ this._logger.debug(`Confirming automatically (non-interactive mode): ${message}`);
43
+ return true;
44
+ }
45
+ const { confirm } = await this._prompts({
46
+ type: "confirm",
47
+ name: "confirm",
48
+ message,
49
+ initial: false
50
+ });
51
+ if (!confirm) {
52
+ return false;
53
+ }
54
+ return true;
55
+ }
56
+ async password(message, opts = {}) {
57
+ if (this._props.confirm) {
58
+ this._logger.debug(`Return default (non-interactive mode): ${message}`);
59
+ return opts?.default;
60
+ }
61
+ const { prompted } = await this._prompts({
62
+ type: "password",
63
+ name: "prompted",
64
+ message,
65
+ initial: opts?.initial
66
+ });
67
+ return prompted ? prompted : void 0;
68
+ }
69
+ async select(message, opts = {}) {
70
+ if (this._props.confirm) {
71
+ this._logger.debug(`Return default (non-interactive mode): ${message}`);
72
+ return opts?.default;
73
+ }
74
+ const { prompted } = await this._prompts({
75
+ type: "autocomplete",
76
+ name: "prompted",
77
+ message,
78
+ initial: opts?.initial?.value,
79
+ choices: opts?.choices
80
+ });
81
+ return prompted ? prompted : void 0;
82
+ }
83
+ async text(message, opts = {}) {
84
+ if (this._props.confirm) {
85
+ this._logger.debug(`Return default (non-interactive mode): ${message}`);
86
+ return opts?.default;
87
+ }
88
+ const { prompted } = await this._prompts({
89
+ type: "text",
90
+ name: "prompted",
91
+ message,
92
+ initial: opts?.initial
93
+ });
94
+ return prompted ? prompted : void 0;
95
+ }
96
+ _prompts = (...args) => {
97
+ this._logger.cleanup();
98
+ return (0, import_prompts.default)(...args);
99
+ };
100
+ }
101
+ // Annotate the CommonJS export names for ESM import in node:
102
+ 0 && (module.exports = {
103
+ CLIPrompt
104
+ });
105
+ //# sourceMappingURL=prompt-utils.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/prompt-utils.ts"],
4
+ "sourcesContent": ["import prompts from 'prompts'\nimport type { Logger } from '../logger'\n\nexport type CLIPromptsProps = {\n confirm: boolean\n}\n\nexport type CLIPromptsChoice<V extends string> = {\n title: string\n value: V\n}\n\ntype PasswordOptions = Partial<{\n default: string | undefined\n initial: string\n}>\ntype SelectOptions<V extends string> = Partial<{\n default: V | undefined\n initial: CLIPromptsChoice<V>\n choices: CLIPromptsChoice<V>[]\n}>\ntype TextOptions = Partial<{\n default: string | undefined\n initial: string\n}>\n\nexport class CLIPrompt {\n public constructor(private _props: CLIPromptsProps, private _logger: Logger) {}\n\n public async confirm(message: string): Promise<boolean> {\n if (this._props.confirm) {\n this._logger.debug(`Confirming automatically (non-interactive mode): ${message}`)\n return true\n }\n\n const { confirm } = await this._prompts({\n type: 'confirm',\n name: 'confirm',\n message,\n initial: false,\n })\n\n if (!confirm) {\n return false\n }\n return true\n }\n\n public async password(message: string, opts: PasswordOptions = {}): Promise<string | undefined> {\n if (this._props.confirm) {\n this._logger.debug(`Return default (non-interactive mode): ${message}`)\n return opts?.default\n }\n\n const { prompted } = await this._prompts({\n type: 'password',\n name: 'prompted',\n message,\n initial: opts?.initial,\n })\n\n return prompted ? prompted : undefined\n }\n\n public async select<V extends string>(message: string, opts: SelectOptions<V> = {}): Promise<V | undefined> {\n if (this._props.confirm) {\n this._logger.debug(`Return default (non-interactive mode): ${message}`)\n return opts?.default\n }\n\n const { prompted } = await this._prompts({\n type: 'autocomplete',\n name: 'prompted',\n message,\n initial: opts?.initial?.value,\n choices: opts?.choices,\n })\n return prompted ? prompted : undefined\n }\n\n public async text(message: string, opts: TextOptions = {}): Promise<string | undefined> {\n if (this._props.confirm) {\n this._logger.debug(`Return default (non-interactive mode): ${message}`)\n return opts?.default\n }\n\n const { prompted } = await this._prompts({\n type: 'text',\n name: 'prompted',\n message,\n initial: opts?.initial,\n })\n\n return prompted ? prompted : undefined\n }\n\n private _prompts = (...args: Parameters<typeof prompts>): ReturnType<typeof prompts> => {\n this._logger.cleanup()\n return prompts(...args)\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoB;AA0Bb,MAAM,UAAU;AAAA,EACd,YAAoB,QAAiC,SAAiB;AAAlD;AAAiC;AAAA,EAAkB;AAAA,EAE9E,MAAa,QAAQ,SAAmC;AACtD,QAAI,KAAK,OAAO,SAAS;AACvB,WAAK,QAAQ,MAAM,oDAAoD,SAAS;AAChF,aAAO;AAAA,IACT;AAEA,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,SAAS;AAAA,MACtC,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA,SAAS;AAAA,IACX,CAAC;AAED,QAAI,CAAC,SAAS;AACZ,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAAA,EAEA,MAAa,SAAS,SAAiB,OAAwB,CAAC,GAAgC;AAC9F,QAAI,KAAK,OAAO,SAAS;AACvB,WAAK,QAAQ,MAAM,0CAA0C,SAAS;AACtE,aAAO,MAAM;AAAA,IACf;AAEA,UAAM,EAAE,SAAS,IAAI,MAAM,KAAK,SAAS;AAAA,MACvC,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA,SAAS,MAAM;AAAA,IACjB,CAAC;AAED,WAAO,WAAW,WAAW;AAAA,EAC/B;AAAA,EAEA,MAAa,OAAyB,SAAiB,OAAyB,CAAC,GAA2B;AAC1G,QAAI,KAAK,OAAO,SAAS;AACvB,WAAK,QAAQ,MAAM,0CAA0C,SAAS;AACtE,aAAO,MAAM;AAAA,IACf;AAEA,UAAM,EAAE,SAAS,IAAI,MAAM,KAAK,SAAS;AAAA,MACvC,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA,SAAS,MAAM,SAAS;AAAA,MACxB,SAAS,MAAM;AAAA,IACjB,CAAC;AACD,WAAO,WAAW,WAAW;AAAA,EAC/B;AAAA,EAEA,MAAa,KAAK,SAAiB,OAAoB,CAAC,GAAgC;AACtF,QAAI,KAAK,OAAO,SAAS;AACvB,WAAK,QAAQ,MAAM,0CAA0C,SAAS;AACtE,aAAO,MAAM;AAAA,IACf;AAEA,UAAM,EAAE,SAAS,IAAI,MAAM,KAAK,SAAS;AAAA,MACvC,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA,SAAS,MAAM;AAAA,IACjB,CAAC;AAED,WAAO,WAAW,WAAW;AAAA,EAC/B;AAAA,EAEQ,WAAW,IAAI,SAAiE;AACtF,SAAK,QAAQ,QAAQ;AACrB,eAAO,eAAAA,SAAQ,GAAG,IAAI;AAAA,EACxB;AACF;",
6
+ "names": ["prompts"]
7
+ }
@@ -0,0 +1,118 @@
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 record_utils_exports = {};
30
+ __export(record_utils_exports, {
31
+ filterValues: () => filterValues,
32
+ mapKeys: () => mapKeys,
33
+ mapValues: () => mapValues,
34
+ mapValuesAsync: () => mapValuesAsync,
35
+ mergeRecords: () => mergeRecords,
36
+ setNullOnMissingValues: () => setNullOnMissingValues,
37
+ zipObjects: () => zipObjects
38
+ });
39
+ module.exports = __toCommonJS(record_utils_exports);
40
+ var import_lodash = __toESM(require("lodash"));
41
+ const setNullOnMissingValues = (record = {}, oldRecord = {}) => {
42
+ const newRecord = {};
43
+ for (const [key, value] of Object.entries(record)) {
44
+ newRecord[key] = value;
45
+ }
46
+ for (const value of Object.keys(oldRecord)) {
47
+ if (!record[value]) {
48
+ newRecord[value] = null;
49
+ }
50
+ }
51
+ return newRecord;
52
+ };
53
+ const zipObjects = (recordA, recordB) => {
54
+ const allKeys = /* @__PURE__ */ new Set([...Object.keys(recordA), ...Object.keys(recordB)]);
55
+ const newRecord = {};
56
+ for (const key of allKeys) {
57
+ newRecord[key] = [recordA[key] ?? null, recordB[key] ?? null];
58
+ }
59
+ return newRecord;
60
+ };
61
+ const mapValues = (record, fn) => {
62
+ const newRecord = {};
63
+ for (const [key, value] of Object.entries(record)) {
64
+ newRecord[key] = fn(value, key);
65
+ }
66
+ return newRecord;
67
+ };
68
+ const mapValuesAsync = async (record, fn) => {
69
+ const newRecord = {};
70
+ for (const [key, value] of Object.entries(record)) {
71
+ newRecord[key] = await fn(value, key);
72
+ }
73
+ return newRecord;
74
+ };
75
+ const mapKeys = (record, fn) => {
76
+ const newRecord = {};
77
+ for (const [key, value] of Object.entries(record)) {
78
+ const newKey = fn(value, key);
79
+ newRecord[newKey] = value;
80
+ }
81
+ return newRecord;
82
+ };
83
+ function filterValues(record, fn) {
84
+ const newRecord = {};
85
+ for (const [key, value] of Object.entries(record)) {
86
+ if (fn(value, key)) {
87
+ newRecord[key] = value;
88
+ }
89
+ }
90
+ return newRecord;
91
+ }
92
+ const mergeRecords = (a, b, merge) => {
93
+ const keys = import_lodash.default.uniq([...Object.keys(a), ...Object.keys(b)]);
94
+ const result = {};
95
+ for (const key of keys) {
96
+ const aValue = a[key];
97
+ const bValue = b[key];
98
+ if (aValue && bValue) {
99
+ result[key] = merge(aValue, bValue);
100
+ } else if (aValue) {
101
+ result[key] = aValue;
102
+ } else if (bValue) {
103
+ result[key] = bValue;
104
+ }
105
+ }
106
+ return result;
107
+ };
108
+ // Annotate the CommonJS export names for ESM import in node:
109
+ 0 && (module.exports = {
110
+ filterValues,
111
+ mapKeys,
112
+ mapValues,
113
+ mapValuesAsync,
114
+ mergeRecords,
115
+ setNullOnMissingValues,
116
+ zipObjects
117
+ });
118
+ //# sourceMappingURL=record-utils.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/record-utils.ts"],
4
+ "sourcesContent": ["import _ from 'lodash'\n\nexport const setNullOnMissingValues = <A, B>(\n record: Record<string, A> = {},\n oldRecord: Record<string, B> = {}\n): Record<string, A | null> => {\n const newRecord: Record<string, A | null> = {}\n\n for (const [key, value] of Object.entries(record)) {\n newRecord[key] = value\n }\n\n for (const value of Object.keys(oldRecord)) {\n if (!record[value]) {\n newRecord[value] = null\n }\n }\n\n return newRecord\n}\n\nexport const zipObjects = <A, B>(\n recordA: Record<string, A>,\n recordB: Record<string, B>\n): Record<string, [A | null, B | null]> => {\n const allKeys = new Set([...Object.keys(recordA), ...Object.keys(recordB)])\n const newRecord: Record<string, [A | null, B | null]> = {}\n\n for (const key of allKeys) {\n newRecord[key] = [recordA[key] ?? null, recordB[key] ?? null]\n }\n\n return newRecord\n}\n\nexport const mapValues = <A, B>(record: Record<string, A>, fn: (value: A, key: string) => B): Record<string, B> => {\n const newRecord: Record<string, B> = {}\n\n for (const [key, value] of Object.entries(record)) {\n newRecord[key] = fn(value, key)\n }\n\n return newRecord\n}\n\nexport const mapValuesAsync = async <A, B>(\n record: Record<string, A>,\n fn: (value: A, key: string) => Promise<B>\n): Promise<Record<string, B>> => {\n const newRecord: Record<string, B> = {}\n\n for (const [key, value] of Object.entries(record)) {\n newRecord[key] = await fn(value, key)\n }\n\n return newRecord\n}\n\nexport const mapKeys = <A>(record: Record<string, A>, fn: (value: A, key: string) => string): Record<string, A> => {\n const newRecord: Record<string, A> = {}\n\n for (const [key, value] of Object.entries(record)) {\n const newKey = fn(value, key) as string\n newRecord[newKey] = value\n }\n\n return newRecord\n}\n\nexport function filterValues<A, B extends A>(\n record: Record<string, A>,\n fn: (value: A, key: string) => value is B\n): Record<string, B>\nexport function filterValues<A, _B extends A>(\n record: Record<string, A>,\n fn: (value: A, key: string) => boolean\n): Record<string, A>\nexport function filterValues<A>(record: Record<string, A>, fn: (value: A, key: string) => boolean) {\n const newRecord: Record<string, A> = {}\n\n for (const [key, value] of Object.entries(record)) {\n if (fn(value, key)) {\n newRecord[key] = value\n }\n }\n\n return newRecord\n}\n\nexport const mergeRecords = <K extends string, V>(\n a: Record<K, V>,\n b: Record<K, V>,\n merge: (v1: V, v2: V) => V\n): Record<K, V> => {\n const keys = _.uniq([...Object.keys(a), ...Object.keys(b)]) as K[]\n const result: Record<K, V> = {} as Record<K, V>\n for (const key of keys) {\n const aValue = a[key]\n const bValue = b[key]\n if (aValue && bValue) {\n result[key] = merge(aValue, bValue)\n } else if (aValue) {\n result[key] = aValue\n } else if (bValue) {\n result[key] = bValue\n }\n }\n return result\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAc;AAEP,MAAM,yBAAyB,CACpC,SAA4B,CAAC,GAC7B,YAA+B,CAAC,MACH;AAC7B,QAAM,YAAsC,CAAC;AAE7C,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,cAAU,GAAG,IAAI;AAAA,EACnB;AAEA,aAAW,SAAS,OAAO,KAAK,SAAS,GAAG;AAC1C,QAAI,CAAC,OAAO,KAAK,GAAG;AAClB,gBAAU,KAAK,IAAI;AAAA,IACrB;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,aAAa,CACxB,SACA,YACyC;AACzC,QAAM,UAAU,oBAAI,IAAI,CAAC,GAAG,OAAO,KAAK,OAAO,GAAG,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC;AAC1E,QAAM,YAAkD,CAAC;AAEzD,aAAW,OAAO,SAAS;AACzB,cAAU,GAAG,IAAI,CAAC,QAAQ,GAAG,KAAK,MAAM,QAAQ,GAAG,KAAK,IAAI;AAAA,EAC9D;AAEA,SAAO;AACT;AAEO,MAAM,YAAY,CAAO,QAA2B,OAAwD;AACjH,QAAM,YAA+B,CAAC;AAEtC,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,cAAU,GAAG,IAAI,GAAG,OAAO,GAAG;AAAA,EAChC;AAEA,SAAO;AACT;AAEO,MAAM,iBAAiB,OAC5B,QACA,OAC+B;AAC/B,QAAM,YAA+B,CAAC;AAEtC,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,cAAU,GAAG,IAAI,MAAM,GAAG,OAAO,GAAG;AAAA,EACtC;AAEA,SAAO;AACT;AAEO,MAAM,UAAU,CAAI,QAA2B,OAA6D;AACjH,QAAM,YAA+B,CAAC;AAEtC,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,UAAM,SAAS,GAAG,OAAO,GAAG;AAC5B,cAAU,MAAM,IAAI;AAAA,EACtB;AAEA,SAAO;AACT;AAUO,SAAS,aAAgB,QAA2B,IAAwC;AACjG,QAAM,YAA+B,CAAC;AAEtC,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,QAAI,GAAG,OAAO,GAAG,GAAG;AAClB,gBAAU,GAAG,IAAI;AAAA,IACnB;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,eAAe,CAC1B,GACA,GACA,UACiB;AACjB,QAAM,OAAO,cAAAA,QAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,GAAG,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC;AAC1D,QAAM,SAAuB,CAAC;AAC9B,aAAW,OAAO,MAAM;AACtB,UAAM,SAAS,EAAE,GAAG;AACpB,UAAM,SAAS,EAAE,GAAG;AACpB,QAAI,UAAU,QAAQ;AACpB,aAAO,GAAG,IAAI,MAAM,QAAQ,MAAM;AAAA,IACpC,WAAW,QAAQ;AACjB,aAAO,GAAG,IAAI;AAAA,IAChB,WAAW,QAAQ;AACjB,aAAO,GAAG,IAAI;AAAA,IAChB;AAAA,EACF;AACA,SAAO;AACT;",
6
+ "names": ["_"]
7
+ }
@@ -0,0 +1,38 @@
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_vitest = require("vitest");
25
+ var recordUtils = __toESM(require("./record-utils"));
26
+ (0, import_vitest.test)("zip objects should return both values only when key is defined in both objects", () => {
27
+ const objA = { a: 1, b: 2, c: 3 };
28
+ const objB = { c: 4, d: 5 };
29
+ const zipped = recordUtils.zipObjects(objA, objB);
30
+ const expected = {
31
+ a: [1, null],
32
+ b: [2, null],
33
+ c: [3, 4],
34
+ d: [null, 5]
35
+ };
36
+ (0, import_vitest.expect)(zipped).toEqual(expected);
37
+ });
38
+ //# sourceMappingURL=record-utils.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/record-utils.test.ts"],
4
+ "sourcesContent": ["import { test, expect } from 'vitest'\nimport * as recordUtils from './record-utils'\n\ntest('zip objects should return both values only when key is defined in both objects', () => {\n const objA = { a: 1, b: 2, c: 3 }\n const objB = { c: 4, d: 5 }\n\n const zipped = recordUtils.zipObjects(objA, objB)\n\n const expected = {\n a: [1, null],\n b: [2, null],\n c: [3, 4],\n d: [null, 5],\n }\n\n expect(zipped).toEqual(expected)\n})\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,oBAA6B;AAC7B,kBAA6B;AAAA,IAE7B,oBAAK,kFAAkF,MAAM;AAC3F,QAAM,OAAO,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE;AAChC,QAAM,OAAO,EAAE,GAAG,GAAG,GAAG,EAAE;AAE1B,QAAM,SAAS,YAAY,WAAW,MAAM,IAAI;AAEhD,QAAM,WAAW;AAAA,IACf,GAAG,CAAC,GAAG,IAAI;AAAA,IACX,GAAG,CAAC,GAAG,IAAI;AAAA,IACX,GAAG,CAAC,GAAG,CAAC;AAAA,IACR,GAAG,CAAC,MAAM,CAAC;AAAA,EACb;AAEA,4BAAO,MAAM,EAAE,QAAQ,QAAQ;AACjC,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,90 @@
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 require_utils_exports = {};
30
+ __export(require_utils_exports, {
31
+ requireJsCode: () => requireJsCode,
32
+ requireJsFile: () => requireJsFile
33
+ });
34
+ module.exports = __toCommonJS(require_utils_exports);
35
+ var import_module = __toESM(require("module"));
36
+ var import_path = __toESM(require("path"));
37
+ const requireJsFile = (path) => {
38
+ return require(path);
39
+ };
40
+ const requireJsCode = (code) => {
41
+ const filedir = "tmp";
42
+ const filename = `${Date.now()}.js`;
43
+ const fileid = import_path.default.join(filedir, filename);
44
+ const m = new import_module.default(fileid);
45
+ m.filename = filename;
46
+ try {
47
+ m._compile(code, filename);
48
+ return m.exports;
49
+ } catch (thrown) {
50
+ const error = thrown instanceof Error ? thrown : new Error(`${thrown}`);
51
+ throw _injectStackTrace(error, code, filename);
52
+ }
53
+ };
54
+ const STACK_TRACE_SURROUNDING_LINES = 3;
55
+ const _injectStackTrace = (compileError, code, filename) => {
56
+ if (!compileError.stack || !compileError.stack.includes(`${filename}:`)) {
57
+ return compileError;
58
+ }
59
+ const [, locationInfo] = compileError.stack.split(`${filename}:`, 2);
60
+ if (!locationInfo) {
61
+ return compileError;
62
+ }
63
+ const [lineNoStr, _rest] = locationInfo.split(":", 2);
64
+ if (!lineNoStr || !_rest) {
65
+ return compileError;
66
+ }
67
+ const [columnStr] = _rest.split(")", 1);
68
+ if (!columnStr) {
69
+ return compileError;
70
+ }
71
+ const lineNo = parseInt(lineNoStr);
72
+ const column = parseInt(columnStr);
73
+ const allLines = code.split("\n");
74
+ const linesBefore = allLines.slice(Math.max(0, lineNo - 1 - STACK_TRACE_SURROUNDING_LINES), lineNo - 1);
75
+ const offendingLine = allLines[lineNo - 1];
76
+ const caretLine = " ".repeat(column - 1) + "^";
77
+ const linesAfter = allLines.slice(lineNo, Math.min(allLines.length, lineNo + STACK_TRACE_SURROUNDING_LINES));
78
+ const stackTrace = [...linesBefore, offendingLine, caretLine, ...linesAfter].join("\n");
79
+ return new Error(`${compileError.message}
80
+
81
+ Offending code:
82
+
83
+ ${stackTrace}`, { cause: compileError });
84
+ };
85
+ // Annotate the CommonJS export names for ESM import in node:
86
+ 0 && (module.exports = {
87
+ requireJsCode,
88
+ requireJsFile
89
+ });
90
+ //# sourceMappingURL=require-utils.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/require-utils.ts"],
4
+ "sourcesContent": ["import Module from 'module'\nimport pathlib from 'path'\n\nexport const requireJsFile = <T>(path: string): T => {\n return require(path)\n}\n\nexport const requireJsCode = <T>(code: string): T => {\n const filedir = 'tmp'\n const filename = `${Date.now()}.js`\n\n const fileid = pathlib.join(filedir, filename)\n\n const m = new Module(fileid)\n m.filename = filename\n\n try {\n // @ts-ignore\n m._compile(code, filename)\n return m.exports\n } catch (thrown: unknown) {\n const error = thrown instanceof Error ? thrown : new Error(`${thrown}`)\n throw _injectStackTrace(error, code, filename)\n }\n}\n\nconst STACK_TRACE_SURROUNDING_LINES = 3\n\nconst _injectStackTrace = (compileError: Error, code: string, filename: string): Error => {\n if (!compileError.stack || !compileError.stack.includes(`${filename}:`)) {\n return compileError\n }\n\n // Extract line and column from the stack trace:\n const [, locationInfo] = compileError.stack.split(`${filename}:`, 2)\n if (!locationInfo) {\n return compileError\n }\n\n const [lineNoStr, _rest] = locationInfo.split(':', 2)\n if (!lineNoStr || !_rest) {\n return compileError\n }\n\n const [columnStr] = _rest.split(')', 1)\n if (!columnStr) {\n return compileError\n }\n\n const lineNo = parseInt(lineNoStr)\n const column = parseInt(columnStr)\n\n // Build the stack trace:\n const allLines = code.split('\\n')\n const linesBefore = allLines.slice(Math.max(0, lineNo - 1 - STACK_TRACE_SURROUNDING_LINES), lineNo - 1)\n const offendingLine = allLines[lineNo - 1]\n const caretLine = ' '.repeat(column - 1) + '^'\n const linesAfter = allLines.slice(lineNo, Math.min(allLines.length, lineNo + STACK_TRACE_SURROUNDING_LINES))\n const stackTrace = [...linesBefore, offendingLine, caretLine, ...linesAfter].join('\\n')\n\n return new Error(`${compileError.message}\\n\\nOffending code:\\n\\n${stackTrace}`, { cause: compileError })\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;AACnB,kBAAoB;AAEb,MAAM,gBAAgB,CAAI,SAAoB;AACnD,SAAO,QAAQ,IAAI;AACrB;AAEO,MAAM,gBAAgB,CAAI,SAAoB;AACnD,QAAM,UAAU;AAChB,QAAM,WAAW,GAAG,KAAK,IAAI;AAE7B,QAAM,SAAS,YAAAA,QAAQ,KAAK,SAAS,QAAQ;AAE7C,QAAM,IAAI,IAAI,cAAAC,QAAO,MAAM;AAC3B,IAAE,WAAW;AAEb,MAAI;AAEF,MAAE,SAAS,MAAM,QAAQ;AACzB,WAAO,EAAE;AAAA,EACX,SAAS,QAAP;AACA,UAAM,QAAQ,kBAAkB,QAAQ,SAAS,IAAI,MAAM,GAAG,QAAQ;AACtE,UAAM,kBAAkB,OAAO,MAAM,QAAQ;AAAA,EAC/C;AACF;AAEA,MAAM,gCAAgC;AAEtC,MAAM,oBAAoB,CAAC,cAAqB,MAAc,aAA4B;AACxF,MAAI,CAAC,aAAa,SAAS,CAAC,aAAa,MAAM,SAAS,GAAG,WAAW,GAAG;AACvE,WAAO;AAAA,EACT;AAGA,QAAM,CAAC,EAAE,YAAY,IAAI,aAAa,MAAM,MAAM,GAAG,aAAa,CAAC;AACnE,MAAI,CAAC,cAAc;AACjB,WAAO;AAAA,EACT;AAEA,QAAM,CAAC,WAAW,KAAK,IAAI,aAAa,MAAM,KAAK,CAAC;AACpD,MAAI,CAAC,aAAa,CAAC,OAAO;AACxB,WAAO;AAAA,EACT;AAEA,QAAM,CAAC,SAAS,IAAI,MAAM,MAAM,KAAK,CAAC;AACtC,MAAI,CAAC,WAAW;AACd,WAAO;AAAA,EACT;AAEA,QAAM,SAAS,SAAS,SAAS;AACjC,QAAM,SAAS,SAAS,SAAS;AAGjC,QAAM,WAAW,KAAK,MAAM,IAAI;AAChC,QAAM,cAAc,SAAS,MAAM,KAAK,IAAI,GAAG,SAAS,IAAI,6BAA6B,GAAG,SAAS,CAAC;AACtG,QAAM,gBAAgB,SAAS,SAAS,CAAC;AACzC,QAAM,YAAY,IAAI,OAAO,SAAS,CAAC,IAAI;AAC3C,QAAM,aAAa,SAAS,MAAM,QAAQ,KAAK,IAAI,SAAS,QAAQ,SAAS,6BAA6B,CAAC;AAC3G,QAAM,aAAa,CAAC,GAAG,aAAa,eAAe,WAAW,GAAG,UAAU,EAAE,KAAK,IAAI;AAEtF,SAAO,IAAI,MAAM,GAAG,aAAa;AAAA;AAAA;AAAA;AAAA,EAAiC,cAAc,EAAE,OAAO,aAAa,CAAC;AACzG;",
6
+ "names": ["pathlib", "Module"]
7
+ }
@@ -0,0 +1,54 @@
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_vitest = require("vitest");
25
+ var requireUtils = __toESM(require("./require-utils"));
26
+ (0, import_vitest.test)("require js code should do as its name suggests", () => {
27
+ const code = `
28
+ module.exports = {
29
+ foo: 'bar'
30
+ }
31
+ `;
32
+ const result = requireUtils.requireJsCode(code);
33
+ (0, import_vitest.expect)(result.foo).toBe("bar");
34
+ });
35
+ const getError = (fn) => {
36
+ try {
37
+ fn();
38
+ return;
39
+ } catch (thrown) {
40
+ return thrown instanceof Error ? thrown : new Error(`${thrown}`);
41
+ }
42
+ };
43
+ (0, import_vitest.test)("require js code should indicate issue in stack trace", () => {
44
+ const code = `
45
+ var foo = undefined
46
+ module.exports = {
47
+ bar: foo.bar
48
+ }
49
+ `;
50
+ const error = getError(() => requireUtils.requireJsCode(code));
51
+ (0, import_vitest.expect)(error).toBeDefined();
52
+ (0, import_vitest.expect)(error?.message).toContain("bar: foo.bar");
53
+ });
54
+ //# sourceMappingURL=require-utils.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/require-utils.test.ts"],
4
+ "sourcesContent": ["import { test, expect } from 'vitest'\nimport * as requireUtils from './require-utils'\n\ntest('require js code should do as its name suggests', () => {\n const code = `\n module.exports = {\n foo: 'bar'\n }\n `\n\n const result = requireUtils.requireJsCode<{ foo: string }>(code)\n\n expect(result.foo).toBe('bar')\n})\n\nconst getError = (fn: () => void): Error | undefined => {\n try {\n fn()\n return\n } catch (thrown: unknown) {\n return thrown instanceof Error ? thrown : new Error(`${thrown}`)\n }\n}\n\ntest('require js code should indicate issue in stack trace', () => {\n const code = `\n var foo = undefined\n module.exports = {\n bar: foo.bar\n }\n `\n\n const error = getError(() => requireUtils.requireJsCode(code))\n\n expect(error).toBeDefined()\n expect(error?.message).toContain('bar: foo.bar')\n})\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,oBAA6B;AAC7B,mBAA8B;AAAA,IAE9B,oBAAK,kDAAkD,MAAM;AAC3D,QAAM,OAAO;AAAA;AAAA;AAAA;AAAA;AAMb,QAAM,SAAS,aAAa,cAA+B,IAAI;AAE/D,4BAAO,OAAO,GAAG,EAAE,KAAK,KAAK;AAC/B,CAAC;AAED,MAAM,WAAW,CAAC,OAAsC;AACtD,MAAI;AACF,OAAG;AACH;AAAA,EACF,SAAS,QAAP;AACA,WAAO,kBAAkB,QAAQ,SAAS,IAAI,MAAM,GAAG,QAAQ;AAAA,EACjE;AACF;AAAA,IAEA,oBAAK,wDAAwD,MAAM;AACjE,QAAM,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAOb,QAAM,QAAQ,SAAS,MAAM,aAAa,cAAc,IAAI,CAAC;AAE7D,4BAAO,KAAK,EAAE,YAAY;AAC1B,4BAAO,OAAO,OAAO,EAAE,UAAU,cAAc;AACjD,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,64 @@
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 schema_utils_exports = {};
20
+ __export(schema_utils_exports, {
21
+ dereferenceSchema: () => dereferenceSchema,
22
+ mapZodToJsonSchema: () => mapZodToJsonSchema
23
+ });
24
+ module.exports = __toCommonJS(schema_utils_exports);
25
+ var import_json_schema_ref_parser = require("@apidevtools/json-schema-ref-parser");
26
+ var import_sdk = require("@botpress/sdk");
27
+ const isObjectSchema = (schema) => schema.type === "object";
28
+ async function mapZodToJsonSchema(definition) {
29
+ let schema = import_sdk.transforms.zuiToJsonSchema(definition.schema, { target: "jsonSchema7" });
30
+ schema = await dereferenceSchema(schema);
31
+ if (!isObjectSchema(schema) || !definition.ui) {
32
+ return schema;
33
+ }
34
+ for (const [key, value] of Object.entries(definition.ui ?? {})) {
35
+ const property = schema.properties?.[key];
36
+ if (!property) {
37
+ continue;
38
+ }
39
+ if (!!value?.title) {
40
+ ;
41
+ property.title = value.title;
42
+ }
43
+ if (!!value?.examples) {
44
+ ;
45
+ property.examples = value.examples;
46
+ }
47
+ }
48
+ return schema;
49
+ }
50
+ const dereferenceSchema = async (schema) => {
51
+ return (0, import_json_schema_ref_parser.dereference)(schema, {
52
+ resolve: {
53
+ external: false,
54
+ file: false,
55
+ http: false
56
+ }
57
+ });
58
+ };
59
+ // Annotate the CommonJS export names for ESM import in node:
60
+ 0 && (module.exports = {
61
+ dereferenceSchema,
62
+ mapZodToJsonSchema
63
+ });
64
+ //# sourceMappingURL=schema-utils.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/schema-utils.ts"],
4
+ "sourcesContent": ["import { dereference } from '@apidevtools/json-schema-ref-parser'\nimport { z, transforms } from '@botpress/sdk'\nimport { JSONSchema7 } from 'json-schema'\n\ntype ZuiToJsonSchema = typeof transforms.zuiToJsonSchema\ntype JsonSchema = ReturnType<ZuiToJsonSchema>\ntype ObjectJsonSchema = Extract<JsonSchema, { type: 'object' }>\n\ntype SchemaOptions = {\n title?: string\n examples?: any[]\n}\n\ntype ZodObjectSchema = z.ZodObject | z.ZodRecord\ntype SchemaDefinition = {\n schema: ZodObjectSchema\n ui?: Record<string, SchemaOptions | undefined>\n}\n\nconst isObjectSchema = (schema: JsonSchema): schema is ObjectJsonSchema => schema.type === 'object'\n\nexport async function mapZodToJsonSchema(\n definition: SchemaDefinition\n): Promise<ReturnType<typeof transforms.zuiToJsonSchema>> {\n let schema = transforms.zuiToJsonSchema(definition.schema, { target: 'jsonSchema7' })\n schema = (await dereferenceSchema(schema)) as typeof schema\n\n if (!isObjectSchema(schema) || !definition.ui) {\n return schema\n }\n\n for (const [key, value] of Object.entries(definition.ui ?? {})) {\n const property = schema.properties?.[key]\n\n if (!property) {\n continue\n }\n\n if (!!value?.title) {\n ;(property as any).title = value.title\n }\n\n if (!!value?.examples) {\n ;(property as any).examples = value.examples\n }\n }\n\n return schema\n}\n\nexport const dereferenceSchema = async (schema: JSONSchema7): Promise<JSONSchema7> => {\n return dereference(schema, {\n resolve: {\n external: false,\n file: false,\n http: false,\n },\n })\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oCAA4B;AAC5B,iBAA8B;AAkB9B,MAAM,iBAAiB,CAAC,WAAmD,OAAO,SAAS;AAE3F,eAAsB,mBACpB,YACwD;AACxD,MAAI,SAAS,sBAAW,gBAAgB,WAAW,QAAQ,EAAE,QAAQ,cAAc,CAAC;AACpF,WAAU,MAAM,kBAAkB,MAAM;AAExC,MAAI,CAAC,eAAe,MAAM,KAAK,CAAC,WAAW,IAAI;AAC7C,WAAO;AAAA,EACT;AAEA,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,WAAW,MAAM,CAAC,CAAC,GAAG;AAC9D,UAAM,WAAW,OAAO,aAAa,GAAG;AAExC,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AAEA,QAAI,CAAC,CAAC,OAAO,OAAO;AAClB;AAAC,MAAC,SAAiB,QAAQ,MAAM;AAAA,IACnC;AAEA,QAAI,CAAC,CAAC,OAAO,UAAU;AACrB;AAAC,MAAC,SAAiB,WAAW,MAAM;AAAA,IACtC;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,oBAAoB,OAAO,WAA8C;AACpF,aAAO,2CAAY,QAAQ;AAAA,IACzB,SAAS;AAAA,MACP,UAAU;AAAA,MACV,MAAM;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF,CAAC;AACH;",
6
+ "names": []
7
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var import_vitest = require("vitest");
3
+ var import_schema_utils = require("./schema-utils");
4
+ (0, import_vitest.describe)("dereferenceSchema", () => {
5
+ (0, import_vitest.it)("should do nothing if no $ref", async () => {
6
+ const schema = { type: "object" };
7
+ const result = await (0, import_schema_utils.dereferenceSchema)(schema);
8
+ (0, import_vitest.expect)(result).toEqual(schema);
9
+ });
10
+ (0, import_vitest.it)("should dereference local $ref", async () => {
11
+ const schema = {
12
+ type: "object",
13
+ properties: {
14
+ foo: { $ref: "#/$defs/foo" },
15
+ bar: { $ref: "#/definitions/bar" }
16
+ },
17
+ $defs: {
18
+ foo: { type: "string" }
19
+ },
20
+ definitions: {
21
+ bar: { type: "number" }
22
+ }
23
+ };
24
+ const result = await (0, import_schema_utils.dereferenceSchema)(schema);
25
+ (0, import_vitest.expect)(result).toEqual({
26
+ type: "object",
27
+ properties: {
28
+ foo: { type: "string" },
29
+ bar: { type: "number" }
30
+ },
31
+ $defs: {
32
+ foo: { type: "string" }
33
+ },
34
+ definitions: {
35
+ bar: { type: "number" }
36
+ }
37
+ });
38
+ });
39
+ (0, import_vitest.it)("should ignore non-local $ref", async () => {
40
+ const schema = {
41
+ type: "object",
42
+ properties: {
43
+ foo: { $ref: "TItem" }
44
+ }
45
+ };
46
+ const result = await (0, import_schema_utils.dereferenceSchema)(schema);
47
+ (0, import_vitest.expect)(result).toEqual(schema);
48
+ });
49
+ });
50
+ //# sourceMappingURL=schema-utils.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/schema-utils.test.ts"],
4
+ "sourcesContent": ["import { it, expect, describe } from 'vitest'\nimport { dereferenceSchema } from './schema-utils'\nimport { JSONSchema7 } from 'json-schema'\n\ndescribe('dereferenceSchema', () => {\n it('should do nothing if no $ref', async () => {\n const schema: JSONSchema7 = { type: 'object' }\n const result = await dereferenceSchema(schema)\n expect(result).toEqual(schema)\n })\n\n it('should dereference local $ref', async () => {\n const schema: JSONSchema7 = {\n type: 'object',\n properties: {\n foo: { $ref: '#/$defs/foo' },\n bar: { $ref: '#/definitions/bar' },\n },\n $defs: {\n foo: { type: 'string' },\n },\n definitions: {\n bar: { type: 'number' },\n },\n }\n const result = await dereferenceSchema(schema)\n expect(result).toEqual({\n type: 'object',\n properties: {\n foo: { type: 'string' },\n bar: { type: 'number' },\n },\n $defs: {\n foo: { type: 'string' },\n },\n definitions: {\n bar: { type: 'number' },\n },\n })\n })\n\n it('should ignore non-local $ref', async () => {\n const schema: JSONSchema7 = {\n type: 'object',\n properties: {\n foo: { $ref: 'TItem' },\n },\n }\n const result = await dereferenceSchema(schema)\n expect(result).toEqual(schema)\n })\n})\n"],
5
+ "mappings": ";AAAA,oBAAqC;AACrC,0BAAkC;AAAA,IAGlC,wBAAS,qBAAqB,MAAM;AAClC,wBAAG,gCAAgC,YAAY;AAC7C,UAAM,SAAsB,EAAE,MAAM,SAAS;AAC7C,UAAM,SAAS,UAAM,uCAAkB,MAAM;AAC7C,8BAAO,MAAM,EAAE,QAAQ,MAAM;AAAA,EAC/B,CAAC;AAED,wBAAG,iCAAiC,YAAY;AAC9C,UAAM,SAAsB;AAAA,MAC1B,MAAM;AAAA,MACN,YAAY;AAAA,QACV,KAAK,EAAE,MAAM,cAAc;AAAA,QAC3B,KAAK,EAAE,MAAM,oBAAoB;AAAA,MACnC;AAAA,MACA,OAAO;AAAA,QACL,KAAK,EAAE,MAAM,SAAS;AAAA,MACxB;AAAA,MACA,aAAa;AAAA,QACX,KAAK,EAAE,MAAM,SAAS;AAAA,MACxB;AAAA,IACF;AACA,UAAM,SAAS,UAAM,uCAAkB,MAAM;AAC7C,8BAAO,MAAM,EAAE,QAAQ;AAAA,MACrB,MAAM;AAAA,MACN,YAAY;AAAA,QACV,KAAK,EAAE,MAAM,SAAS;AAAA,QACtB,KAAK,EAAE,MAAM,SAAS;AAAA,MACxB;AAAA,MACA,OAAO;AAAA,QACL,KAAK,EAAE,MAAM,SAAS;AAAA,MACxB;AAAA,MACA,aAAa;AAAA,QACX,KAAK,EAAE,MAAM,SAAS;AAAA,MACxB;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,wBAAG,gCAAgC,YAAY;AAC7C,UAAM,SAAsB;AAAA,MAC1B,MAAM;AAAA,MACN,YAAY;AAAA,QACV,KAAK,EAAE,MAAM,QAAQ;AAAA,MACvB;AAAA,IACF;AACA,UAAM,SAAS,UAAM,uCAAkB,MAAM;AAC7C,8BAAO,MAAM,EAAE,QAAQ,MAAM;AAAA,EAC/B,CAAC;AACH,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,45 @@
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 semver_utils_exports = {};
20
+ __export(semver_utils_exports, {
21
+ releases: () => releases
22
+ });
23
+ module.exports = __toCommonJS(semver_utils_exports);
24
+ const semverReleases = {
25
+ prerelease: 0,
26
+ prepatch: 1,
27
+ patch: 2,
28
+ preminor: 3,
29
+ minor: 4,
30
+ premajor: 5,
31
+ major: 6
32
+ };
33
+ var releases;
34
+ ((releases2) => {
35
+ releases2.eq = (a, b) => semverReleases[a] === semverReleases[b];
36
+ releases2.gt = (a, b) => semverReleases[a] > semverReleases[b];
37
+ releases2.gte = (a, b) => semverReleases[a] >= semverReleases[b];
38
+ releases2.lt = (a, b) => semverReleases[a] < semverReleases[b];
39
+ releases2.lte = (a, b) => semverReleases[a] <= semverReleases[b];
40
+ })(releases || (releases = {}));
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {
43
+ releases
44
+ });
45
+ //# sourceMappingURL=semver-utils.js.map