@botpress/cli 2.0.0 → 2.0.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 (251) hide show
  1. package/.turbo/turbo-build.log +10 -10
  2. package/dist/api/bot-body.js +4 -0
  3. package/dist/api/bot-body.js.map +1 -1
  4. package/dist/api/client.js +4 -0
  5. package/dist/api/client.js.map +1 -1
  6. package/dist/api/find-previous-version.js +4 -0
  7. package/dist/api/find-previous-version.js.map +1 -1
  8. package/dist/api/find-previous-version.test.js +4 -0
  9. package/dist/api/find-previous-version.test.js.map +1 -1
  10. package/dist/api/integration-body.js +4 -0
  11. package/dist/api/integration-body.js.map +1 -1
  12. package/dist/api/interface-body.js +4 -0
  13. package/dist/api/interface-body.js.map +1 -1
  14. package/dist/api/paging.js.map +1 -1
  15. package/dist/api/plugin-body.js +5 -0
  16. package/dist/api/plugin-body.js.map +1 -1
  17. package/dist/code-generation/bot-implementation/bot-implementation.js +5 -0
  18. package/dist/code-generation/bot-implementation/bot-implementation.js.map +1 -1
  19. package/dist/code-generation/bot-implementation/bot-plugins/index.js +4 -0
  20. package/dist/code-generation/bot-implementation/bot-plugins/index.js.map +1 -1
  21. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js +4 -0
  22. package/dist/code-generation/bot-implementation/bot-plugins/plugin-module.js.map +1 -1
  23. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js +4 -0
  24. package/dist/code-generation/bot-implementation/bot-typings/actions-module.js.map +1 -1
  25. package/dist/code-generation/bot-implementation/bot-typings/events-module.js +4 -0
  26. package/dist/code-generation/bot-implementation/bot-typings/events-module.js.map +1 -1
  27. package/dist/code-generation/bot-implementation/bot-typings/index.js +4 -0
  28. package/dist/code-generation/bot-implementation/bot-typings/index.js.map +1 -1
  29. package/dist/code-generation/bot-implementation/bot-typings/states-module.js +4 -0
  30. package/dist/code-generation/bot-implementation/bot-typings/states-module.js.map +1 -1
  31. package/dist/code-generation/bot-implementation/index.js +5 -0
  32. package/dist/code-generation/bot-implementation/index.js.map +1 -1
  33. package/dist/code-generation/generators.js +5 -0
  34. package/dist/code-generation/generators.js.map +1 -1
  35. package/dist/code-generation/integration-implementation/index.js +4 -0
  36. package/dist/code-generation/integration-implementation/index.js.map +1 -1
  37. package/dist/code-generation/integration-implementation/integration-implementation.js +4 -0
  38. package/dist/code-generation/integration-implementation/integration-implementation.js.map +1 -1
  39. package/dist/code-generation/integration-implementation/integration-secret.js +4 -0
  40. package/dist/code-generation/integration-implementation/integration-secret.js.map +1 -1
  41. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js +4 -0
  42. package/dist/code-generation/integration-implementation/integration-typings/actions-module.js.map +1 -1
  43. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js +4 -0
  44. package/dist/code-generation/integration-implementation/integration-typings/channels-module.js.map +1 -1
  45. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.js +4 -0
  46. package/dist/code-generation/integration-implementation/integration-typings/configuration-module.js.map +1 -1
  47. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js +4 -0
  48. package/dist/code-generation/integration-implementation/integration-typings/configurations-module.js.map +1 -1
  49. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js +4 -0
  50. package/dist/code-generation/integration-implementation/integration-typings/entities-module.js.map +1 -1
  51. package/dist/code-generation/integration-implementation/integration-typings/events-module.js +4 -0
  52. package/dist/code-generation/integration-implementation/integration-typings/events-module.js.map +1 -1
  53. package/dist/code-generation/integration-implementation/integration-typings/states-module.js +4 -0
  54. package/dist/code-generation/integration-implementation/integration-typings/states-module.js.map +1 -1
  55. package/dist/code-generation/integration-package/index.js +4 -0
  56. package/dist/code-generation/integration-package/index.js.map +1 -1
  57. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js +4 -0
  58. package/dist/code-generation/integration-package/integration-package-definition/actions-module.js.map +1 -1
  59. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js +4 -0
  60. package/dist/code-generation/integration-package/integration-package-definition/channels-module.js.map +1 -1
  61. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.js +5 -0
  62. package/dist/code-generation/integration-package/integration-package-definition/configuration-module.js.map +1 -1
  63. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js +4 -0
  64. package/dist/code-generation/integration-package/integration-package-definition/configurations-module.js.map +1 -1
  65. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js +4 -0
  66. package/dist/code-generation/integration-package/integration-package-definition/entities-module.js.map +1 -1
  67. package/dist/code-generation/integration-package/integration-package-definition/events-module.js +4 -0
  68. package/dist/code-generation/integration-package/integration-package-definition/events-module.js.map +1 -1
  69. package/dist/code-generation/integration-package/integration-package-definition/index.js +4 -0
  70. package/dist/code-generation/integration-package/integration-package-definition/index.js.map +1 -1
  71. package/dist/code-generation/integration-package/integration-package-definition/states-module.js +4 -0
  72. package/dist/code-generation/integration-package/integration-package-definition/states-module.js.map +1 -1
  73. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js +4 -0
  74. package/dist/code-generation/interface-implementation/integration-typings/actions-module.js.map +1 -1
  75. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js +4 -0
  76. package/dist/code-generation/interface-implementation/integration-typings/channels-module.js.map +1 -1
  77. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js +4 -0
  78. package/dist/code-generation/interface-implementation/integration-typings/entities-module.js.map +1 -1
  79. package/dist/code-generation/interface-implementation/integration-typings/events-module.js +4 -0
  80. package/dist/code-generation/interface-implementation/integration-typings/events-module.js.map +1 -1
  81. package/dist/code-generation/interface-implementation/integration-typings/index.js +4 -0
  82. package/dist/code-generation/interface-implementation/integration-typings/index.js.map +1 -1
  83. package/dist/code-generation/interface-package/index.js +4 -0
  84. package/dist/code-generation/interface-package/index.js.map +1 -1
  85. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js +4 -0
  86. package/dist/code-generation/interface-package/interface-package-definition/actions-module.js.map +1 -1
  87. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js +4 -0
  88. package/dist/code-generation/interface-package/interface-package-definition/channels-module.js.map +1 -1
  89. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js +4 -0
  90. package/dist/code-generation/interface-package/interface-package-definition/entities-module.js.map +1 -1
  91. package/dist/code-generation/interface-package/interface-package-definition/events-module.js +4 -0
  92. package/dist/code-generation/interface-package/interface-package-definition/events-module.js.map +1 -1
  93. package/dist/code-generation/interface-package/interface-package-definition/index.js +4 -0
  94. package/dist/code-generation/interface-package/interface-package-definition/index.js.map +1 -1
  95. package/dist/code-generation/module.js +7 -0
  96. package/dist/code-generation/module.js.map +1 -1
  97. package/dist/code-generation/plugin-implementation/index.js +4 -0
  98. package/dist/code-generation/plugin-implementation/index.js.map +1 -1
  99. package/dist/code-generation/plugin-implementation/plugin-implementation.js +4 -0
  100. package/dist/code-generation/plugin-implementation/plugin-implementation.js.map +1 -1
  101. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js +4 -0
  102. package/dist/code-generation/plugin-implementation/plugin-typings/actions-module.js.map +1 -1
  103. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.js +4 -0
  104. package/dist/code-generation/plugin-implementation/plugin-typings/configuration-module.js.map +1 -1
  105. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js +4 -0
  106. package/dist/code-generation/plugin-implementation/plugin-typings/events-module.js.map +1 -1
  107. package/dist/code-generation/plugin-implementation/plugin-typings/index.js +4 -0
  108. package/dist/code-generation/plugin-implementation/plugin-typings/index.js.map +1 -1
  109. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js +4 -0
  110. package/dist/code-generation/plugin-implementation/plugin-typings/states-module.js.map +1 -1
  111. package/dist/code-generation/plugin-package/index.js +5 -0
  112. package/dist/code-generation/plugin-package/index.js.map +1 -1
  113. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js +4 -0
  114. package/dist/code-generation/plugin-package/plugin-package-definition/actions-module.js.map +1 -1
  115. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.js +4 -0
  116. package/dist/code-generation/plugin-package/plugin-package-definition/configuration-module.js.map +1 -1
  117. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js +4 -0
  118. package/dist/code-generation/plugin-package/plugin-package-definition/events-module.js.map +1 -1
  119. package/dist/code-generation/plugin-package/plugin-package-definition/index.js +4 -0
  120. package/dist/code-generation/plugin-package/plugin-package-definition/index.js.map +1 -1
  121. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js +4 -0
  122. package/dist/code-generation/plugin-package/plugin-package-definition/states-module.js.map +1 -1
  123. package/dist/code-generation/strings.js +4 -0
  124. package/dist/code-generation/strings.js.map +1 -1
  125. package/dist/command-definitions.js +4 -0
  126. package/dist/command-definitions.js.map +1 -1
  127. package/dist/command-implementations/add-command.js +67 -15
  128. package/dist/command-implementations/add-command.js.map +2 -2
  129. package/dist/command-implementations/base-command.js +4 -0
  130. package/dist/command-implementations/base-command.js.map +1 -1
  131. package/dist/command-implementations/bot-commands.js +4 -0
  132. package/dist/command-implementations/bot-commands.js.map +1 -1
  133. package/dist/command-implementations/bundle-command.js +4 -0
  134. package/dist/command-implementations/bundle-command.js.map +1 -1
  135. package/dist/command-implementations/deploy-command.js +4 -0
  136. package/dist/command-implementations/deploy-command.js.map +1 -1
  137. package/dist/command-implementations/dev-command.js +4 -0
  138. package/dist/command-implementations/dev-command.js.map +1 -1
  139. package/dist/command-implementations/gen-command.js +6 -1
  140. package/dist/command-implementations/gen-command.js.map +2 -2
  141. package/dist/command-implementations/global-command.js +4 -0
  142. package/dist/command-implementations/global-command.js.map +1 -1
  143. package/dist/command-implementations/index.js +4 -0
  144. package/dist/command-implementations/index.js.map +1 -1
  145. package/dist/command-implementations/init-command.js +4 -0
  146. package/dist/command-implementations/init-command.js.map +1 -1
  147. package/dist/command-implementations/integration-commands.js +4 -0
  148. package/dist/command-implementations/integration-commands.js.map +1 -1
  149. package/dist/command-implementations/interface-commands.js +4 -0
  150. package/dist/command-implementations/interface-commands.js.map +1 -1
  151. package/dist/command-implementations/lint-command.js +27 -0
  152. package/dist/command-implementations/lint-command.js.map +2 -2
  153. package/dist/command-implementations/login-command.js +4 -0
  154. package/dist/command-implementations/login-command.js.map +1 -1
  155. package/dist/command-implementations/plugin-commands.js +4 -0
  156. package/dist/command-implementations/plugin-commands.js.map +1 -1
  157. package/dist/command-implementations/project-command.js +4 -0
  158. package/dist/command-implementations/project-command.js.map +1 -1
  159. package/dist/command-implementations/read-command.js +4 -0
  160. package/dist/command-implementations/read-command.js.map +1 -1
  161. package/dist/command-implementations/serve-command.js +4 -0
  162. package/dist/command-implementations/serve-command.js.map +1 -1
  163. package/dist/command-tree.js.map +1 -1
  164. package/dist/config.js +7 -1
  165. package/dist/config.js.map +2 -2
  166. package/dist/consts.js +4 -0
  167. package/dist/consts.js.map +1 -1
  168. package/dist/errors.js +4 -0
  169. package/dist/errors.js.map +1 -1
  170. package/dist/index.js +4 -0
  171. package/dist/index.js.map +1 -1
  172. package/dist/init.js +4 -0
  173. package/dist/init.js.map +1 -1
  174. package/dist/linter/base-linter.js.map +1 -1
  175. package/dist/linter/base-linter.test.js.map +1 -1
  176. package/dist/linter/ruleset-tests/bot.ruleset.test.js.map +1 -1
  177. package/dist/linter/ruleset-tests/common.js.map +1 -1
  178. package/dist/linter/ruleset-tests/integration.ruleset.test.js.map +1 -1
  179. package/dist/linter/ruleset-tests/interface.ruleset.test.js.map +1 -1
  180. package/dist/linter/rulesets/bot.ruleset.js.map +1 -1
  181. package/dist/linter/rulesets/integration.ruleset.js.map +1 -1
  182. package/dist/linter/rulesets/interface.ruleset.js.map +1 -1
  183. package/dist/logger/base-logger.js +4 -0
  184. package/dist/logger/base-logger.js.map +1 -1
  185. package/dist/logger/index.js +1 -0
  186. package/dist/logger/index.js.map +1 -1
  187. package/dist/package-ref.js +33 -0
  188. package/dist/package-ref.js.map +2 -2
  189. package/dist/package-ref.test.js +22 -0
  190. package/dist/package-ref.test.js.map +2 -2
  191. package/dist/register-yargs.js +4 -0
  192. package/dist/register-yargs.js.map +1 -1
  193. package/dist/root.js +4 -0
  194. package/dist/root.js.map +1 -1
  195. package/dist/sdk/resolve-integration-interfaces.js +5 -0
  196. package/dist/sdk/resolve-integration-interfaces.js.map +1 -1
  197. package/dist/sdk/validate-bot.js +4 -0
  198. package/dist/sdk/validate-bot.js.map +1 -1
  199. package/dist/sdk/validate-integration.js +4 -0
  200. package/dist/sdk/validate-integration.js.map +1 -1
  201. package/dist/utils/cache-utils.js +4 -0
  202. package/dist/utils/cache-utils.js.map +1 -1
  203. package/dist/utils/case-utils.js +4 -0
  204. package/dist/utils/case-utils.js.map +1 -1
  205. package/dist/utils/case-utils.test.js +4 -0
  206. package/dist/utils/case-utils.test.js.map +1 -1
  207. package/dist/utils/event-emitter.js.map +1 -1
  208. package/dist/utils/file-watcher.js +4 -0
  209. package/dist/utils/file-watcher.js.map +1 -1
  210. package/dist/utils/id-utils.js +4 -0
  211. package/dist/utils/id-utils.js.map +1 -1
  212. package/dist/utils/index.js +4 -0
  213. package/dist/utils/index.js.map +1 -1
  214. package/dist/utils/object-utils.js.map +1 -1
  215. package/dist/utils/path-utils.js +6 -2
  216. package/dist/utils/path-utils.js.map +1 -1
  217. package/dist/utils/path-utils.test.js +4 -0
  218. package/dist/utils/path-utils.test.js.map +1 -1
  219. package/dist/utils/pkgjson-utils.js +4 -0
  220. package/dist/utils/pkgjson-utils.js.map +2 -2
  221. package/dist/utils/promise-utils.js.map +1 -1
  222. package/dist/utils/prompt-utils.js +4 -0
  223. package/dist/utils/prompt-utils.js.map +1 -1
  224. package/dist/utils/record-utils.js +4 -0
  225. package/dist/utils/record-utils.js.map +1 -1
  226. package/dist/utils/record-utils.test.js +4 -0
  227. package/dist/utils/record-utils.test.js.map +1 -1
  228. package/dist/utils/require-utils.js +4 -0
  229. package/dist/utils/require-utils.js.map +1 -1
  230. package/dist/utils/require-utils.test.js +4 -0
  231. package/dist/utils/require-utils.test.js.map +1 -1
  232. package/dist/utils/schema-utils.js.map +1 -1
  233. package/dist/utils/semver-utils.js.map +1 -1
  234. package/dist/utils/template-utils.js +4 -0
  235. package/dist/utils/template-utils.js.map +1 -1
  236. package/dist/utils/tunnel-utils.js +3 -0
  237. package/dist/utils/tunnel-utils.js.map +1 -1
  238. package/dist/worker/child-entrypoint.js +4 -0
  239. package/dist/worker/child-entrypoint.js.map +1 -1
  240. package/dist/worker/child-wrapper.js +5 -0
  241. package/dist/worker/child-wrapper.js.map +1 -1
  242. package/dist/worker/is-child.js.map +1 -1
  243. package/dist/worker/worker-state.js.map +1 -1
  244. package/dist/worker/worker.js +3 -0
  245. package/dist/worker/worker.js.map +1 -1
  246. package/package.json +6 -8
  247. package/templates/empty-bot/package.json +4 -5
  248. package/templates/empty-integration/package.json +4 -5
  249. package/templates/empty-plugin/package.json +3 -4
  250. package/templates/hello-world/package.json +4 -5
  251. package/templates/webhook-message/package.json +4 -5
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod2, isNodeMode, target) => (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}, __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.
21
25
  isNodeMode || !mod2 || !mod2.__esModule ? __defProp(target, "default", { value: mod2, enumerable: true }) : target,
22
26
  mod2
23
27
  ));
@@ -45,6 +49,7 @@ class ImplementationModule extends mod.Module {
45
49
  const base64Str = Buffer.from(this._implementationCode).toString("base64");
46
50
  const chunks = import_lodash.default.chunk(base64Str, 80).map((chunk) => chunk.join(""));
47
51
  return [
52
+ //
48
53
  "export default Buffer.from([",
49
54
  ...chunks.map((chunk) => ` "${chunk}",`),
50
55
  '].join(""), "base64")'
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/code-generation/plugin-package/index.ts"],
4
4
  "sourcesContent": ["import _ from 'lodash'\nimport * as utils from '../../utils'\nimport * as consts from '../consts'\nimport * as gen from '../generators'\nimport * as mod from '../module'\nimport * as types from '../typings'\nimport { PluginPackageDefinitionModule } from './plugin-package-definition'\n\nclass ImplementationModule extends mod.Module {\n public constructor(private _implementationCode: string) {\n super({\n path: 'implementation.ts',\n exportName: 'default',\n })\n }\n\n public async getContent(): Promise<string> {\n const base64Str = Buffer.from(this._implementationCode).toString('base64')\n const chunks: string[] = _.chunk(base64Str, 80).map((chunk) => chunk.join(''))\n\n return [\n //\n 'export default Buffer.from([',\n ...chunks.map((chunk) => ` \"${chunk}\",`),\n '].join(\"\"), \"base64\")',\n ].join('\\n')\n }\n}\n\nclass LocalPluginModule extends mod.Module {\n private _implModule: ImplementationModule\n\n public constructor(private _pkg: Extract<types.PluginInstallablePackage, { source: 'local' }>) {\n super({\n path: consts.INDEX_FILE,\n exportName: consts.DEFAULT_EXPORT_NAME,\n })\n\n this._implModule = new ImplementationModule(this._pkg.implementationCode)\n this.pushDep(this._implModule)\n }\n\n public async getContent(): Promise<string> {\n const implImport = this._implModule.import(this)\n\n const id = undefined\n const uri = utils.path.win32.escapeBackslashes(this._pkg.path)\n\n const definitionImport = utils.path.rmExtension(\n utils.path.join(this._pkg.path, consts.fromWorkDir.pluginDefinition)\n )\n\n const tsId = gen.primitiveToTypescriptValue(id)\n const tsUri = gen.primitiveToTypescriptValue(uri)\n const tsName = gen.primitiveToTypescriptValue(this._pkg.name)\n const tsVersion = gen.primitiveToTypescriptValue(this._pkg.version)\n\n return [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n '',\n `import definition from \"${definitionImport}\"`,\n `import implementation from \"./${implImport}\"`,\n '',\n 'export default {',\n ' type: \"plugin\",',\n ` id: ${tsId},`,\n ` uri: ${tsUri},`,\n ` name: ${tsName},`,\n ` version: ${tsVersion},`,\n ' definition,',\n ' implementation,',\n '} satisfies sdk.PluginPackage',\n ].join('\\n')\n }\n}\n\nclass RemotePluginModule extends mod.Module {\n private _implModule: ImplementationModule\n private _defModule: PluginPackageDefinitionModule\n\n public constructor(private _pkg: Extract<types.PluginInstallablePackage, { source: 'remote' }>) {\n super({\n path: consts.INDEX_FILE,\n exportName: consts.DEFAULT_EXPORT_NAME,\n })\n\n this._implModule = new ImplementationModule(this._pkg.plugin.code)\n this.pushDep(this._implModule)\n\n this._defModule = new PluginPackageDefinitionModule(this._pkg.plugin)\n this._defModule.unshift('definition')\n this.pushDep(this._defModule)\n }\n\n public async getContent(): Promise<string> {\n const implImport = this._implModule.import(this)\n const defImport = this._defModule.import(this)\n\n const id = this._pkg.plugin.id\n const uri = undefined\n\n const tsId = gen.primitiveToTypescriptValue(id)\n const tsUri = gen.primitiveToTypescriptValue(uri)\n const tsName = gen.primitiveToTypescriptValue(this._pkg.name)\n const tsVersion = gen.primitiveToTypescriptValue(this._pkg.version)\n\n return [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n '',\n `import definition from \"./${defImport}\"`,\n `import implementation from \"./${implImport}\"`,\n '',\n 'export default {',\n ' type: \"plugin\",',\n ` id: ${tsId},`,\n ` uri: ${tsUri},`,\n ` name: ${tsName},`,\n ` version: ${tsVersion},`,\n ' definition,',\n ' implementation,',\n '} satisfies sdk.PluginPackage',\n ].join('\\n')\n }\n}\n\nexport const generatePluginPackage = async (pkg: types.PluginInstallablePackage): Promise<types.File[]> => {\n const module = pkg.source === 'local' ? new LocalPluginModule(pkg) : new RemotePluginModule(pkg)\n return module.flatten()\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["_", "module"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/plugin-package/plugin-package-definition/actions-module.ts"],
4
4
  "sourcesContent": ["import { jsonSchemaToTypescriptZuiSchema } from '../../generators'\nimport { Module, ReExportVariableModule } from '../../module'\nimport * as strings from '../../strings'\nimport * as types from './typings'\n\ntype ActionInput = types.ApiActionDefinition['input']\ntype ActionOutput = types.ApiActionDefinition['output']\n\nexport class ActionInputModule extends Module {\n public constructor(private _input: ActionInput) {\n const name = 'input'\n const exportName = strings.varName(name)\n super({ path: `${name}.ts`, exportName })\n }\n\n public async getContent() {\n return jsonSchemaToTypescriptZuiSchema(this._input.schema, this.exportName)\n }\n}\n\nexport class ActionOutputModule extends Module {\n public constructor(private _output: ActionOutput) {\n const name = 'output'\n const exportName = strings.varName(name)\n super({ path: `${name}.ts`, exportName })\n }\n\n public async getContent() {\n return jsonSchemaToTypescriptZuiSchema(this._output.schema, this.exportName)\n }\n}\n\nexport class ActionModule extends ReExportVariableModule {\n public constructor(actionName: string, action: types.ApiActionDefinition) {\n super({ exportName: strings.varName(actionName) })\n\n const inputModule = new ActionInputModule(action.input)\n const outputModule = new ActionOutputModule(action.output)\n\n this.pushDep(inputModule)\n this.pushDep(outputModule)\n }\n}\n\nexport class ActionsModule extends ReExportVariableModule {\n public constructor(actions: Record<string, types.ApiActionDefinition>) {\n super({ exportName: strings.varName('actions') })\n for (const [actionName, action] of Object.entries(actions)) {\n const module = new ActionModule(actionName, action)\n module.unshift(actionName)\n this.pushDep(module)\n }\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAgD;AAChD,oBAA+C;AAC/C,cAAyB;AAMlB,MAAM,0BAA0B,qBAAO;AAAA,EACrC,YAAoB,QAAqB;AAC9C,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,QAAQ,IAAI;AACvC,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,EAC5E;AACF;AAEO,MAAM,2BAA2B,qBAAO;AAAA,EACtC,YAAoB,SAAuB;AAChD,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,QAAQ,IAAI;AACvC,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,QAAQ,QAAQ,KAAK,UAAU;AAAA,EAC7E;AACF;AAEO,MAAM,qBAAqB,qCAAuB;AAAA,EAChD,YAAY,YAAoB,QAAmC;AACxE,UAAM,EAAE,YAAY,QAAQ,QAAQ,UAAU,EAAE,CAAC;AAEjD,UAAM,cAAc,IAAI,kBAAkB,OAAO,KAAK;AACtD,UAAM,eAAe,IAAI,mBAAmB,OAAO,MAAM;AAEzD,SAAK,QAAQ,WAAW;AACxB,SAAK,QAAQ,YAAY;AAAA,EAC3B;AACF;AAEO,MAAM,sBAAsB,qCAAuB;AAAA,EACjD,YAAY,SAAoD;AACrE,UAAM,EAAE,YAAY,QAAQ,QAAQ,SAAS,EAAE,CAAC;AAChD,eAAW,CAAC,YAAY,MAAM,KAAK,OAAO,QAAQ,OAAO,GAAG;AAC1D,YAAMA,UAAS,IAAI,aAAa,YAAY,MAAM;AAClD,MAAAA,QAAO,QAAQ,UAAU;AACzB,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAgD;AAChD,oBAA+C;AAC/C,cAAyB;AAMlB,MAAM,0BAA0B,qBAAO;AAAA,EACrC,YAAoB,QAAqB;AAC9C,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,QAAQ,IAAI;AACvC,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,EAC5E;AACF;AAEO,MAAM,2BAA2B,qBAAO;AAAA,EACtC,YAAoB,SAAuB;AAChD,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,QAAQ,IAAI;AACvC,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHf;AAAA,EAI3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,QAAQ,QAAQ,KAAK,UAAU;AAAA,EAC7E;AACF;AAEO,MAAM,qBAAqB,qCAAuB;AAAA,EAChD,YAAY,YAAoB,QAAmC;AACxE,UAAM,EAAE,YAAY,QAAQ,QAAQ,UAAU,EAAE,CAAC;AAEjD,UAAM,cAAc,IAAI,kBAAkB,OAAO,KAAK;AACtD,UAAM,eAAe,IAAI,mBAAmB,OAAO,MAAM;AAEzD,SAAK,QAAQ,WAAW;AACxB,SAAK,QAAQ,YAAY;AAAA,EAC3B;AACF;AAEO,MAAM,sBAAsB,qCAAuB;AAAA,EACjD,YAAY,SAAoD;AACrE,UAAM,EAAE,YAAY,QAAQ,QAAQ,SAAS,EAAE,CAAC;AAChD,eAAW,CAAC,YAAY,MAAM,KAAK,OAAO,QAAQ,OAAO,GAAG;AAC1D,YAAMA,UAAS,IAAI,aAAa,YAAY,MAAM;AAClD,MAAAA,QAAO,QAAQ,UAAU;AACzB,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
6
6
  "names": ["module"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/plugin-package/plugin-package-definition/configuration-module.ts"],
4
4
  "sourcesContent": ["import { INDEX_FILE } from '../../consts'\nimport { jsonSchemaToTypescriptZuiSchema } from '../../generators'\nimport { Module } from '../../module'\nimport * as strings from '../../strings'\nimport * as types from './typings'\n\nexport class DefaultConfigurationModule extends Module {\n public constructor(private _configuration: types.ApiConfigurationDefinition) {\n const name = 'configuration'\n const exportName = strings.varName(name)\n super({\n path: INDEX_FILE,\n exportName,\n })\n }\n\n public async getContent() {\n return jsonSchemaToTypescriptZuiSchema(this._configuration.schema, this.exportName)\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAC3B,wBAAgD;AAChD,oBAAuB;AACvB,cAAyB;AAGlB,MAAM,mCAAmC,qBAAO;AAAA,EAC9C,YAAoB,gBAAkD;AAC3E,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,QAAQ,IAAI;AACvC,UAAM;AAAA,MACJ,MAAM;AAAA,MACN;AAAA,IACF,CAAC;AANwB;AAAA,EAO3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,eAAe,QAAQ,KAAK,UAAU;AAAA,EACpF;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAC3B,wBAAgD;AAChD,oBAAuB;AACvB,cAAyB;AAGlB,MAAM,mCAAmC,qBAAO;AAAA,EAC9C,YAAoB,gBAAkD;AAC3E,UAAM,OAAO;AACb,UAAM,aAAa,QAAQ,QAAQ,IAAI;AACvC,UAAM;AAAA,MACJ,MAAM;AAAA,MACN;AAAA,IACF,CAAC;AANwB;AAAA,EAO3B;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,eAAe,QAAQ,KAAK,UAAU;AAAA,EACpF;AACF;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/plugin-package/plugin-package-definition/events-module.ts"],
4
4
  "sourcesContent": ["import { jsonSchemaToTypescriptZuiSchema } from '../../generators'\nimport { Module, ReExportVariableModule } from '../../module'\nimport * as strings from '../../strings'\nimport * as types from './typings'\n\nexport class EventModule extends Module {\n public constructor(name: string, private _event: types.ApiEventDefinition) {\n const eventName = name\n const exportName = strings.varName(eventName)\n super({ path: `${name}.ts`, exportName })\n }\n\n public async getContent() {\n if (!this._event.schema) {\n return `export const ${this.exportName} = z.object({});`\n }\n return jsonSchemaToTypescriptZuiSchema(this._event.schema, this.exportName)\n }\n}\n\nexport class EventsModule extends ReExportVariableModule {\n public constructor(events: Record<string, types.ApiEventDefinition>) {\n super({ exportName: strings.varName('events') })\n for (const [eventName, event] of Object.entries(events)) {\n const module = new EventModule(eventName, event)\n this.pushDep(module)\n }\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAgD;AAChD,oBAA+C;AAC/C,cAAyB;AAGlB,MAAM,oBAAoB,qBAAO;AAAA,EAC/B,YAAY,MAAsB,QAAkC;AACzE,UAAM,YAAY;AAClB,UAAM,aAAa,QAAQ,QAAQ,SAAS;AAC5C,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHD;AAAA,EAIzC;AAAA,EAEA,MAAa,aAAa;AACxB,QAAI,CAAC,KAAK,OAAO,QAAQ;AACvB,aAAO,gBAAgB,KAAK;AAAA,IAC9B;AACA,eAAO,mDAAgC,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,EAC5E;AACF;AAEO,MAAM,qBAAqB,qCAAuB;AAAA,EAChD,YAAY,QAAkD;AACnE,UAAM,EAAE,YAAY,QAAQ,QAAQ,QAAQ,EAAE,CAAC;AAC/C,eAAW,CAAC,WAAW,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACvD,YAAMA,UAAS,IAAI,YAAY,WAAW,KAAK;AAC/C,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAgD;AAChD,oBAA+C;AAC/C,cAAyB;AAGlB,MAAM,oBAAoB,qBAAO;AAAA,EAC/B,YAAY,MAAsB,QAAkC;AACzE,UAAM,YAAY;AAClB,UAAM,aAAa,QAAQ,QAAQ,SAAS;AAC5C,UAAM,EAAE,MAAM,GAAG,WAAW,WAAW,CAAC;AAHD;AAAA,EAIzC;AAAA,EAEA,MAAa,aAAa;AACxB,QAAI,CAAC,KAAK,OAAO,QAAQ;AACvB,aAAO,gBAAgB,KAAK;AAAA,IAC9B;AACA,eAAO,mDAAgC,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,EAC5E;AACF;AAEO,MAAM,qBAAqB,qCAAuB;AAAA,EAChD,YAAY,QAAkD;AACnE,UAAM,EAAE,YAAY,QAAQ,QAAQ,QAAQ,EAAE,CAAC;AAC/C,eAAW,CAAC,WAAW,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACvD,YAAMA,UAAS,IAAI,YAAY,WAAW,KAAK;AAC/C,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
6
6
  "names": ["module"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/plugin-package/plugin-package-definition/index.ts"],
4
4
  "sourcesContent": ["import * as consts from '../../consts'\nimport { stringifySingleLine } from '../../generators'\nimport { Module } from '../../module'\nimport { ActionsModule } from './actions-module'\nimport { DefaultConfigurationModule } from './configuration-module'\nimport { EventsModule } from './events-module'\nimport { StatesModule } from './states-module'\nimport * as types from './typings'\n\ntype PluginPackageModuleDependencies = {\n defaultConfigModule: DefaultConfigurationModule\n actionsModule: ActionsModule\n eventsModule: EventsModule\n statesModule: StatesModule\n}\n\nexport class PluginPackageDefinitionModule extends Module {\n private _dependencies: PluginPackageModuleDependencies\n\n public constructor(private _plugin: types.ApiPluginDefinition) {\n super({\n path: consts.INDEX_FILE,\n exportName: consts.DEFAULT_EXPORT_NAME,\n })\n\n const defaultConfigModule = new DefaultConfigurationModule(_plugin.configuration)\n defaultConfigModule.unshift('configuration')\n\n const actionsModule = new ActionsModule(_plugin.actions ?? {})\n actionsModule.unshift('actions')\n\n const eventsModule = new EventsModule(_plugin.events ?? {})\n eventsModule.unshift('events')\n\n const statesModule = new StatesModule(_plugin.states ?? {})\n statesModule.unshift('states')\n\n this._dependencies = {\n defaultConfigModule,\n actionsModule,\n eventsModule,\n statesModule,\n }\n\n for (const dep of Object.values(this._dependencies)) {\n this.pushDep(dep)\n }\n }\n\n public async getContent() {\n let content = ''\n\n const { defaultConfigModule, actionsModule, eventsModule, statesModule } = this._dependencies\n\n const defaultConfigImport = defaultConfigModule.import(this)\n const actionsImport = actionsModule.import(this)\n const eventsImport = eventsModule.import(this)\n const statesImport = statesModule.import(this)\n\n const user = {\n tags: this._plugin.user?.tags ?? {},\n }\n\n content += [\n consts.GENERATED_HEADER,\n 'import * as sdk from \"@botpress/sdk\"',\n '',\n `import * as ${defaultConfigModule.name} from \"./${defaultConfigImport}\"`,\n `import * as ${actionsModule.name} from \"./${actionsImport}\"`,\n `import * as ${eventsModule.name} from \"./${eventsImport}\"`,\n `import * as ${statesModule.name} from \"./${statesImport}\"`,\n `export * as ${defaultConfigModule.name} from \"./${defaultConfigImport}\"`,\n `export * as ${actionsModule.name} from \"./${actionsImport}\"`,\n `export * as ${eventsModule.name} from \"./${eventsImport}\"`,\n `export * as ${statesModule.name} from \"./${statesImport}\"`,\n '',\n 'export default {',\n ` name: \"${this._plugin.name}\",`,\n ` version: \"${this._plugin.version}\",`,\n ` user: ${stringifySingleLine(user)},`,\n ` configuration: ${defaultConfigModule.name}.${defaultConfigModule.exportName},`,\n ` actions: ${actionsModule.name}.${actionsModule.exportName},`,\n ` events: ${eventsModule.name}.${eventsModule.exportName},`,\n ` states: ${statesModule.name}.${statesModule.exportName},`,\n '} satisfies sdk.PluginPackage[\"definition\"]',\n ].join('\\n')\n\n return content\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAwB;AACxB,wBAAoC;AACpC,oBAAuB;AACvB,4BAA8B;AAC9B,kCAA2C;AAC3C,2BAA6B;AAC7B,2BAA6B;AAUtB,MAAM,sCAAsC,qBAAO;AAAA,EAGjD,YAAoB,SAAoC;AAC7D,UAAM;AAAA,MACJ,MAAM,OAAO;AAAA,MACb,YAAY,OAAO;AAAA,IACrB,CAAC;AAJwB;AAMzB,UAAM,sBAAsB,IAAI,uDAA2B,QAAQ,aAAa;AAChF,wBAAoB,QAAQ,eAAe;AAE3C,UAAM,gBAAgB,IAAI,oCAAc,QAAQ,WAAW,CAAC,CAAC;AAC7D,kBAAc,QAAQ,SAAS;AAE/B,UAAM,eAAe,IAAI,kCAAa,QAAQ,UAAU,CAAC,CAAC;AAC1D,iBAAa,QAAQ,QAAQ;AAE7B,UAAM,eAAe,IAAI,kCAAa,QAAQ,UAAU,CAAC,CAAC;AAC1D,iBAAa,QAAQ,QAAQ;AAE7B,SAAK,gBAAgB;AAAA,MACnB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,eAAW,OAAO,OAAO,OAAO,KAAK,aAAa,GAAG;AACnD,WAAK,QAAQ,GAAG;AAAA,IAClB;AAAA,EACF;AAAA,EA9BQ;AAAA,EAgCR,MAAa,aAAa;AACxB,QAAI,UAAU;AAEd,UAAM,EAAE,qBAAqB,eAAe,cAAc,aAAa,IAAI,KAAK;AAEhF,UAAM,sBAAsB,oBAAoB,OAAO,IAAI;AAC3D,UAAM,gBAAgB,cAAc,OAAO,IAAI;AAC/C,UAAM,eAAe,aAAa,OAAO,IAAI;AAC7C,UAAM,eAAe,aAAa,OAAO,IAAI;AAE7C,UAAM,OAAO;AAAA,MACX,MAAM,KAAK,QAAQ,MAAM,QAAQ,CAAC;AAAA,IACpC;AAEA,eAAW;AAAA,MACT,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA,eAAe,oBAAoB,gBAAgB;AAAA,MACnD,eAAe,cAAc,gBAAgB;AAAA,MAC7C,eAAe,aAAa,gBAAgB;AAAA,MAC5C,eAAe,aAAa,gBAAgB;AAAA,MAC5C,eAAe,oBAAoB,gBAAgB;AAAA,MACnD,eAAe,cAAc,gBAAgB;AAAA,MAC7C,eAAe,aAAa,gBAAgB;AAAA,MAC5C,eAAe,aAAa,gBAAgB;AAAA,MAC5C;AAAA,MACA;AAAA,MACA,YAAY,KAAK,QAAQ;AAAA,MACzB,eAAe,KAAK,QAAQ;AAAA,MAC5B,eAAW,uCAAoB,IAAI;AAAA,MACnC,oBAAoB,oBAAoB,QAAQ,oBAAoB;AAAA,MACpE,cAAc,cAAc,QAAQ,cAAc;AAAA,MAClD,aAAa,aAAa,QAAQ,aAAa;AAAA,MAC/C,aAAa,aAAa,QAAQ,aAAa;AAAA,MAC/C;AAAA,IACF,EAAE,KAAK,IAAI;AAEX,WAAO;AAAA,EACT;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAwB;AACxB,wBAAoC;AACpC,oBAAuB;AACvB,4BAA8B;AAC9B,kCAA2C;AAC3C,2BAA6B;AAC7B,2BAA6B;AAUtB,MAAM,sCAAsC,qBAAO;AAAA,EAGjD,YAAoB,SAAoC;AAC7D,UAAM;AAAA,MACJ,MAAM,OAAO;AAAA,MACb,YAAY,OAAO;AAAA,IACrB,CAAC;AAJwB;AAMzB,UAAM,sBAAsB,IAAI,uDAA2B,QAAQ,aAAa;AAChF,wBAAoB,QAAQ,eAAe;AAE3C,UAAM,gBAAgB,IAAI,oCAAc,QAAQ,WAAW,CAAC,CAAC;AAC7D,kBAAc,QAAQ,SAAS;AAE/B,UAAM,eAAe,IAAI,kCAAa,QAAQ,UAAU,CAAC,CAAC;AAC1D,iBAAa,QAAQ,QAAQ;AAE7B,UAAM,eAAe,IAAI,kCAAa,QAAQ,UAAU,CAAC,CAAC;AAC1D,iBAAa,QAAQ,QAAQ;AAE7B,SAAK,gBAAgB;AAAA,MACnB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,eAAW,OAAO,OAAO,OAAO,KAAK,aAAa,GAAG;AACnD,WAAK,QAAQ,GAAG;AAAA,IAClB;AAAA,EACF;AAAA,EA9BQ;AAAA,EAgCR,MAAa,aAAa;AACxB,QAAI,UAAU;AAEd,UAAM,EAAE,qBAAqB,eAAe,cAAc,aAAa,IAAI,KAAK;AAEhF,UAAM,sBAAsB,oBAAoB,OAAO,IAAI;AAC3D,UAAM,gBAAgB,cAAc,OAAO,IAAI;AAC/C,UAAM,eAAe,aAAa,OAAO,IAAI;AAC7C,UAAM,eAAe,aAAa,OAAO,IAAI;AAE7C,UAAM,OAAO;AAAA,MACX,MAAM,KAAK,QAAQ,MAAM,QAAQ,CAAC;AAAA,IACpC;AAEA,eAAW;AAAA,MACT,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA,eAAe,oBAAoB,gBAAgB;AAAA,MACnD,eAAe,cAAc,gBAAgB;AAAA,MAC7C,eAAe,aAAa,gBAAgB;AAAA,MAC5C,eAAe,aAAa,gBAAgB;AAAA,MAC5C,eAAe,oBAAoB,gBAAgB;AAAA,MACnD,eAAe,cAAc,gBAAgB;AAAA,MAC7C,eAAe,aAAa,gBAAgB;AAAA,MAC5C,eAAe,aAAa,gBAAgB;AAAA,MAC5C;AAAA,MACA;AAAA,MACA,YAAY,KAAK,QAAQ;AAAA,MACzB,eAAe,KAAK,QAAQ;AAAA,MAC5B,eAAW,uCAAoB,IAAI;AAAA,MACnC,oBAAoB,oBAAoB,QAAQ,oBAAoB;AAAA,MACpE,cAAc,cAAc,QAAQ,cAAc;AAAA,MAClD,aAAa,aAAa,QAAQ,aAAa;AAAA,MAC/C,aAAa,aAAa,QAAQ,aAAa;AAAA,MAC/C;AAAA,IACF,EAAE,KAAK,IAAI;AAEX,WAAO;AAAA,EACT;AACF;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/code-generation/plugin-package/plugin-package-definition/states-module.ts"],
4
4
  "sourcesContent": ["import { jsonSchemaToTypescriptZuiSchema } from '../../generators'\nimport { Module, ReExportVariableModule } from '../../module'\nimport * as strings from '../../strings'\nimport * as types from './typings'\n\nexport class StateModule extends Module {\n public constructor(name: string, private _state: types.ApiStateDefinition) {\n super({\n path: `${name}.ts`,\n exportName: strings.varName(name),\n })\n }\n\n public async getContent() {\n return jsonSchemaToTypescriptZuiSchema(this._state.schema, this.exportName, {\n type: `\"${this._state.type}\" as const`,\n })\n }\n}\n\nexport class StatesModule extends ReExportVariableModule {\n public constructor(states: Record<string, types.ApiStateDefinition>) {\n super({ exportName: strings.varName('states') })\n for (const [stateName, state] of Object.entries(states)) {\n const module = new StateModule(stateName, state)\n this.pushDep(module)\n }\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAgD;AAChD,oBAA+C;AAC/C,cAAyB;AAGlB,MAAM,oBAAoB,qBAAO;AAAA,EAC/B,YAAY,MAAsB,QAAkC;AACzE,UAAM;AAAA,MACJ,MAAM,GAAG;AAAA,MACT,YAAY,QAAQ,QAAQ,IAAI;AAAA,IAClC,CAAC;AAJsC;AAAA,EAKzC;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,OAAO,QAAQ,KAAK,YAAY;AAAA,MAC1E,MAAM,IAAI,KAAK,OAAO;AAAA,IACxB,CAAC;AAAA,EACH;AACF;AAEO,MAAM,qBAAqB,qCAAuB;AAAA,EAChD,YAAY,QAAkD;AACnE,UAAM,EAAE,YAAY,QAAQ,QAAQ,QAAQ,EAAE,CAAC;AAC/C,eAAW,CAAC,WAAW,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACvD,YAAMA,UAAS,IAAI,YAAY,WAAW,KAAK;AAC/C,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAgD;AAChD,oBAA+C;AAC/C,cAAyB;AAGlB,MAAM,oBAAoB,qBAAO;AAAA,EAC/B,YAAY,MAAsB,QAAkC;AACzE,UAAM;AAAA,MACJ,MAAM,GAAG;AAAA,MACT,YAAY,QAAQ,QAAQ,IAAI;AAAA,IAClC,CAAC;AAJsC;AAAA,EAKzC;AAAA,EAEA,MAAa,aAAa;AACxB,eAAO,mDAAgC,KAAK,OAAO,QAAQ,KAAK,YAAY;AAAA,MAC1E,MAAM,IAAI,KAAK,OAAO;AAAA,IACxB,CAAC;AAAA,EACH;AACF;AAEO,MAAM,qBAAqB,qCAAuB;AAAA,EAChD,YAAY,QAAkD;AACnE,UAAM,EAAE,YAAY,QAAQ,QAAQ,QAAQ,EAAE,CAAC;AAC/C,eAAW,CAAC,WAAW,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACvD,YAAMA,UAAS,IAAI,YAAY,WAAW,KAAK;AAC/C,WAAK,QAAQA,OAAM;AAAA,IACrB;AAAA,EACF;AACF;",
6
6
  "names": ["module"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/code-generation/strings.ts"],
4
4
  "sourcesContent": ["import * as utils from '../utils'\ntype StrTransform = (str: string) => string\n\nconst TYPESCRIPT_RESERVED = new Set([\n 'break',\n 'as',\n 'any',\n 'case',\n 'implements',\n 'boolean',\n 'catch',\n 'interface',\n 'constructor',\n 'class',\n 'let',\n 'declare',\n 'const',\n 'package',\n 'get',\n 'continue',\n 'private',\n 'module',\n 'debugger',\n 'protected',\n 'require',\n 'default',\n 'public',\n 'number',\n 'delete',\n 'static',\n 'set',\n 'do',\n 'yield',\n 'string',\n 'else',\n 'symbol',\n 'enum',\n 'type',\n 'export',\n 'from',\n 'extends',\n 'of',\n 'false',\n 'finally',\n 'for',\n 'function',\n 'if',\n 'import',\n 'in',\n 'instanceof',\n 'new',\n 'null',\n 'return',\n 'super',\n 'switch',\n 'this',\n 'throw',\n 'true',\n 'try',\n 'typeof',\n 'var',\n 'void',\n 'while',\n 'with',\n])\nconst escapeReserved = (str: string): string => {\n if (TYPESCRIPT_RESERVED.has(str)) {\n return `_${str}`\n }\n return str\n}\n\nconst apply = (str: string, ...transforms: StrTransform[]) => transforms.reduce((acc, transform) => transform(acc), str)\n\nexport const typeName = (name: string) => apply(name, utils.casing.to.pascalCase)\nexport const importAlias = (name: string) => apply(name, utils.casing.to.camelCase, escapeReserved)\nexport const varName = (name: string) => apply(name, utils.casing.to.camelCase, escapeReserved)\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAuB;AAGvB,MAAM,sBAAsB,oBAAI,IAAI;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,iBAAiB,CAAC,QAAwB;AAC9C,MAAI,oBAAoB,IAAI,GAAG,GAAG;AAChC,WAAO,IAAI;AAAA,EACb;AACA,SAAO;AACT;AAEA,MAAM,QAAQ,CAAC,QAAgB,eAA+B,WAAW,OAAO,CAAC,KAAK,cAAc,UAAU,GAAG,GAAG,GAAG;AAEhH,MAAM,WAAW,CAAC,SAAiB,MAAM,MAAM,MAAM,OAAO,GAAG,UAAU;AACzE,MAAM,cAAc,CAAC,SAAiB,MAAM,MAAM,MAAM,OAAO,GAAG,WAAW,cAAc;AAC3F,MAAM,UAAU,CAAC,SAAiB,MAAM,MAAM,MAAM,OAAO,GAAG,WAAW,cAAc;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAuB;AAGvB,MAAM,sBAAsB,oBAAI,IAAI;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,iBAAiB,CAAC,QAAwB;AAC9C,MAAI,oBAAoB,IAAI,GAAG,GAAG;AAChC,WAAO,IAAI;AAAA,EACb;AACA,SAAO;AACT;AAEA,MAAM,QAAQ,CAAC,QAAgB,eAA+B,WAAW,OAAO,CAAC,KAAK,cAAc,UAAU,GAAG,GAAG,GAAG;AAEhH,MAAM,WAAW,CAAC,SAAiB,MAAM,MAAM,MAAM,OAAO,GAAG,UAAU;AACzE,MAAM,cAAc,CAAC,SAAiB,MAAM,MAAM,MAAM,OAAO,GAAG,WAAW,cAAc;AAC3F,MAAM,UAAU,CAAC,SAAiB,MAAM,MAAM,MAAM,OAAO,GAAG,WAAW,cAAc;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/command-definitions.ts"],
4
4
  "sourcesContent": ["import type { DefinitionTree } from './command-tree'\nimport * as config from './config'\n\nexport default {\n login: { description: 'Login to Botpress Cloud', schema: config.schemas.login },\n logout: { description: 'Logout of Botpress Cloud', schema: config.schemas.logout },\n bots: {\n description: 'Bot related commands',\n subcommands: {\n create: { description: 'Create new bot', schema: config.schemas.createBot, alias: 'new' },\n get: { description: 'Get bot', schema: config.schemas.getBot },\n delete: { description: 'Delete bot', schema: config.schemas.deleteBot, alias: 'rm' },\n list: { description: 'List bots', schema: config.schemas.listBots, alias: 'ls' },\n },\n },\n integrations: {\n description: 'Integration related commands',\n subcommands: {\n get: { description: 'Get integration', schema: config.schemas.getIntegration },\n delete: { description: 'Delete integration', schema: config.schemas.deleteIntegration, alias: 'rm' },\n list: { description: 'List integrations', schema: config.schemas.listIntegrations, alias: 'ls' },\n },\n },\n interfaces: {\n description: 'Interface related commands',\n subcommands: {\n get: { description: 'Get interface', schema: config.schemas.getInterface },\n delete: { description: 'Delete interface', schema: config.schemas.deleteInterface, alias: 'rm' },\n list: { description: 'List interfaces', schema: config.schemas.listInterfaces, alias: 'ls' },\n },\n },\n plugins: {\n description: 'Plugin related commands',\n subcommands: {\n get: { description: 'Get plugin', schema: config.schemas.getPlugin },\n delete: { description: 'Delete plugin', schema: config.schemas.deletePlugin, alias: 'rm' },\n list: { description: 'List plugins', schema: config.schemas.listPlugins, alias: 'ls' },\n },\n },\n init: { description: 'Initialize a new project', schema: config.schemas.init },\n generate: { description: 'Generate typings for intellisense', schema: config.schemas.generate, alias: 'gen' },\n bundle: { description: 'Bundle a botpress project', schema: config.schemas.bundle },\n build: { description: 'Generate typings and bundle a botpress project', schema: config.schemas.build },\n read: { description: 'Read and parse an integration definition', schema: config.schemas.read },\n serve: { description: 'Serve your project locally', schema: config.schemas.serve },\n deploy: { description: 'Deploy your project to the cloud', schema: config.schemas.deploy },\n add: { description: 'Install a package; could be an integration or an interface', schema: config.schemas.add },\n dev: { description: 'Run your project in dev mode', schema: config.schemas.dev },\n lint: { description: 'EXPERIMENTAL: Lint an integration definition', schema: config.schemas.lint },\n} satisfies DefinitionTree\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AAExB,IAAO,8BAAQ;AAAA,EACb,OAAO,EAAE,aAAa,2BAA2B,QAAQ,OAAO,QAAQ,MAAM;AAAA,EAC9E,QAAQ,EAAE,aAAa,4BAA4B,QAAQ,OAAO,QAAQ,OAAO;AAAA,EACjF,MAAM;AAAA,IACJ,aAAa;AAAA,IACb,aAAa;AAAA,MACX,QAAQ,EAAE,aAAa,kBAAkB,QAAQ,OAAO,QAAQ,WAAW,OAAO,MAAM;AAAA,MACxF,KAAK,EAAE,aAAa,WAAW,QAAQ,OAAO,QAAQ,OAAO;AAAA,MAC7D,QAAQ,EAAE,aAAa,cAAc,QAAQ,OAAO,QAAQ,WAAW,OAAO,KAAK;AAAA,MACnF,MAAM,EAAE,aAAa,aAAa,QAAQ,OAAO,QAAQ,UAAU,OAAO,KAAK;AAAA,IACjF;AAAA,EACF;AAAA,EACA,cAAc;AAAA,IACZ,aAAa;AAAA,IACb,aAAa;AAAA,MACX,KAAK,EAAE,aAAa,mBAAmB,QAAQ,OAAO,QAAQ,eAAe;AAAA,MAC7E,QAAQ,EAAE,aAAa,sBAAsB,QAAQ,OAAO,QAAQ,mBAAmB,OAAO,KAAK;AAAA,MACnG,MAAM,EAAE,aAAa,qBAAqB,QAAQ,OAAO,QAAQ,kBAAkB,OAAO,KAAK;AAAA,IACjG;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,aAAa;AAAA,IACb,aAAa;AAAA,MACX,KAAK,EAAE,aAAa,iBAAiB,QAAQ,OAAO,QAAQ,aAAa;AAAA,MACzE,QAAQ,EAAE,aAAa,oBAAoB,QAAQ,OAAO,QAAQ,iBAAiB,OAAO,KAAK;AAAA,MAC/F,MAAM,EAAE,aAAa,mBAAmB,QAAQ,OAAO,QAAQ,gBAAgB,OAAO,KAAK;AAAA,IAC7F;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,aAAa;AAAA,IACb,aAAa;AAAA,MACX,KAAK,EAAE,aAAa,cAAc,QAAQ,OAAO,QAAQ,UAAU;AAAA,MACnE,QAAQ,EAAE,aAAa,iBAAiB,QAAQ,OAAO,QAAQ,cAAc,OAAO,KAAK;AAAA,MACzF,MAAM,EAAE,aAAa,gBAAgB,QAAQ,OAAO,QAAQ,aAAa,OAAO,KAAK;AAAA,IACvF;AAAA,EACF;AAAA,EACA,MAAM,EAAE,aAAa,4BAA4B,QAAQ,OAAO,QAAQ,KAAK;AAAA,EAC7E,UAAU,EAAE,aAAa,qCAAqC,QAAQ,OAAO,QAAQ,UAAU,OAAO,MAAM;AAAA,EAC5G,QAAQ,EAAE,aAAa,6BAA6B,QAAQ,OAAO,QAAQ,OAAO;AAAA,EAClF,OAAO,EAAE,aAAa,kDAAkD,QAAQ,OAAO,QAAQ,MAAM;AAAA,EACrG,MAAM,EAAE,aAAa,4CAA4C,QAAQ,OAAO,QAAQ,KAAK;AAAA,EAC7F,OAAO,EAAE,aAAa,8BAA8B,QAAQ,OAAO,QAAQ,MAAM;AAAA,EACjF,QAAQ,EAAE,aAAa,oCAAoC,QAAQ,OAAO,QAAQ,OAAO;AAAA,EACzF,KAAK,EAAE,aAAa,8DAA8D,QAAQ,OAAO,QAAQ,IAAI;AAAA,EAC7G,KAAK,EAAE,aAAa,gCAAgC,QAAQ,OAAO,QAAQ,IAAI;AAAA,EAC/E,MAAM,EAAE,aAAa,gDAAgD,QAAQ,OAAO,QAAQ,KAAK;AACnG;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,aAAwB;AAExB,IAAO,8BAAQ;AAAA,EACb,OAAO,EAAE,aAAa,2BAA2B,QAAQ,OAAO,QAAQ,MAAM;AAAA,EAC9E,QAAQ,EAAE,aAAa,4BAA4B,QAAQ,OAAO,QAAQ,OAAO;AAAA,EACjF,MAAM;AAAA,IACJ,aAAa;AAAA,IACb,aAAa;AAAA,MACX,QAAQ,EAAE,aAAa,kBAAkB,QAAQ,OAAO,QAAQ,WAAW,OAAO,MAAM;AAAA,MACxF,KAAK,EAAE,aAAa,WAAW,QAAQ,OAAO,QAAQ,OAAO;AAAA,MAC7D,QAAQ,EAAE,aAAa,cAAc,QAAQ,OAAO,QAAQ,WAAW,OAAO,KAAK;AAAA,MACnF,MAAM,EAAE,aAAa,aAAa,QAAQ,OAAO,QAAQ,UAAU,OAAO,KAAK;AAAA,IACjF;AAAA,EACF;AAAA,EACA,cAAc;AAAA,IACZ,aAAa;AAAA,IACb,aAAa;AAAA,MACX,KAAK,EAAE,aAAa,mBAAmB,QAAQ,OAAO,QAAQ,eAAe;AAAA,MAC7E,QAAQ,EAAE,aAAa,sBAAsB,QAAQ,OAAO,QAAQ,mBAAmB,OAAO,KAAK;AAAA,MACnG,MAAM,EAAE,aAAa,qBAAqB,QAAQ,OAAO,QAAQ,kBAAkB,OAAO,KAAK;AAAA,IACjG;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,aAAa;AAAA,IACb,aAAa;AAAA,MACX,KAAK,EAAE,aAAa,iBAAiB,QAAQ,OAAO,QAAQ,aAAa;AAAA,MACzE,QAAQ,EAAE,aAAa,oBAAoB,QAAQ,OAAO,QAAQ,iBAAiB,OAAO,KAAK;AAAA,MAC/F,MAAM,EAAE,aAAa,mBAAmB,QAAQ,OAAO,QAAQ,gBAAgB,OAAO,KAAK;AAAA,IAC7F;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,aAAa;AAAA,IACb,aAAa;AAAA,MACX,KAAK,EAAE,aAAa,cAAc,QAAQ,OAAO,QAAQ,UAAU;AAAA,MACnE,QAAQ,EAAE,aAAa,iBAAiB,QAAQ,OAAO,QAAQ,cAAc,OAAO,KAAK;AAAA,MACzF,MAAM,EAAE,aAAa,gBAAgB,QAAQ,OAAO,QAAQ,aAAa,OAAO,KAAK;AAAA,IACvF;AAAA,EACF;AAAA,EACA,MAAM,EAAE,aAAa,4BAA4B,QAAQ,OAAO,QAAQ,KAAK;AAAA,EAC7E,UAAU,EAAE,aAAa,qCAAqC,QAAQ,OAAO,QAAQ,UAAU,OAAO,MAAM;AAAA,EAC5G,QAAQ,EAAE,aAAa,6BAA6B,QAAQ,OAAO,QAAQ,OAAO;AAAA,EAClF,OAAO,EAAE,aAAa,kDAAkD,QAAQ,OAAO,QAAQ,MAAM;AAAA,EACrG,MAAM,EAAE,aAAa,4CAA4C,QAAQ,OAAO,QAAQ,KAAK;AAAA,EAC7F,OAAO,EAAE,aAAa,8BAA8B,QAAQ,OAAO,QAAQ,MAAM;AAAA,EACjF,QAAQ,EAAE,aAAa,oCAAoC,QAAQ,OAAO,QAAQ,OAAO;AAAA,EACzF,KAAK,EAAE,aAAa,8DAA8D,QAAQ,OAAO,QAAQ,IAAI;AAAA,EAC7G,KAAK,EAAE,aAAa,gCAAgC,QAAQ,OAAO,QAAQ,IAAI;AAAA,EAC/E,MAAM,EAAE,aAAa,gDAAgD,QAAQ,OAAO,QAAQ,KAAK;AACnG;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -27,6 +31,7 @@ __export(add_command_exports, {
27
31
  AddCommand: () => AddCommand
28
32
  });
29
33
  module.exports = __toCommonJS(add_command_exports);
34
+ var sdk = __toESM(require("@botpress/sdk"));
30
35
  var fslib = __toESM(require("fs"));
31
36
  var pathlib = __toESM(require("path"));
32
37
  var import_api = require("../api");
@@ -39,16 +44,60 @@ var import_global_command = require("./global-command");
39
44
  var import_project_command = require("./project-command");
40
45
  class AddCommand extends import_global_command.GlobalCommand {
41
46
  async run() {
42
- const parsedRef = pkgRef.parsePackageRef(this.argv.packageRef);
43
- if (!parsedRef) {
47
+ const ref = this._parseArgvRef();
48
+ if (ref) {
49
+ return await this._addSinglePackage(ref);
50
+ }
51
+ const pkgJson = await utils.pkgJson.readPackageJson(this.argv.installPath);
52
+ if (!pkgJson) {
53
+ this.logger.warn("No package.json found in the install path");
54
+ return;
55
+ }
56
+ const { bpDependencies } = pkgJson;
57
+ if (!bpDependencies) {
58
+ this.logger.log("No bp dependencies found in package.json");
59
+ return;
60
+ }
61
+ const bpDependenciesSchema = sdk.z.record(sdk.z.string());
62
+ const parseResults = bpDependenciesSchema.safeParse(bpDependencies);
63
+ if (!parseResults.success) {
64
+ throw new errors.BotpressCLIError("Invalid bpDependencies found in package.json");
65
+ }
66
+ for (const [pkgAlias, pkgRefStr] of Object.entries(parseResults.data)) {
67
+ const parsed = pkgRef.parsePackageRef(pkgRefStr);
68
+ if (!parsed) {
69
+ throw new errors.InvalidPackageReferenceError(pkgRefStr);
70
+ }
71
+ await this._addSinglePackage({ ...parsed, alias: pkgAlias });
72
+ }
73
+ }
74
+ _parseArgvRef = () => {
75
+ if (!this.argv.packageRef) {
76
+ return;
77
+ }
78
+ const parsed = pkgRef.parsePackageRef(this.argv.packageRef);
79
+ if (!parsed) {
44
80
  throw new errors.InvalidPackageReferenceError(this.argv.packageRef);
45
81
  }
46
- const targetPackage = parsedRef.type === "path" ? await this._findLocalPackage(parsedRef) : await this._findRemotePackage(parsedRef);
82
+ if (parsed.type !== "name") {
83
+ return parsed;
84
+ }
85
+ const argvPkgType = this.argv.packageType;
86
+ if (!argvPkgType) {
87
+ return parsed;
88
+ }
89
+ const ref = { ...parsed, pkg: argvPkgType };
90
+ const strRef = pkgRef.formatPackageRef(ref);
91
+ this.logger.warn(`argument --packageType is deprecated; please use the package reference format "${strRef}"`);
92
+ return ref;
93
+ };
94
+ async _addSinglePackage(ref) {
95
+ const targetPackage = ref.type === "path" ? await this._findLocalPackage(ref) : await this._findRemotePackage(ref);
47
96
  if (!targetPackage) {
48
- const notFoundMessage = this.argv.packageType ? `Could not find package "${this.argv.packageRef}" of type "${this.argv.packageType}"` : `Could not find package "${this.argv.packageRef}"`;
49
- throw new errors.BotpressCLIError(notFoundMessage);
97
+ const strRef = pkgRef.formatPackageRef(ref);
98
+ throw new errors.BotpressCLIError(`Could not find package "${strRef}"`);
50
99
  }
51
- const packageName = targetPackage.pkg.name;
100
+ const packageName = ref.alias ?? targetPackage.pkg.name;
52
101
  const baseInstallPath = utils.path.absoluteFrom(utils.path.cwd(), this.argv.installPath);
53
102
  const packageDirName = utils.casing.to.kebabCase(packageName);
54
103
  const installPath = utils.path.join(baseInstallPath, consts.installDirName, packageDirName);
@@ -76,21 +125,21 @@ class AddCommand extends import_global_command.GlobalCommand {
76
125
  }
77
126
  async _findRemotePackage(ref) {
78
127
  const api = await this.ensureLoginAndCreateClient(this.argv);
79
- if (this._pkgCouldBe("integration")) {
128
+ if (this._pkgCouldBe(ref, "integration")) {
80
129
  const integration = await api.findIntegration(ref);
81
130
  if (integration) {
82
131
  const { name, version } = integration;
83
132
  return { type: "integration", pkg: { source: "remote", integration, name, version } };
84
133
  }
85
134
  }
86
- if (this._pkgCouldBe("interface")) {
135
+ if (this._pkgCouldBe(ref, "interface")) {
87
136
  const intrface = await api.findPublicInterface(ref);
88
137
  if (intrface) {
89
138
  const { name, version } = intrface;
90
139
  return { type: "interface", pkg: { source: "remote", interface: intrface, name, version } };
91
140
  }
92
141
  }
93
- if (this._pkgCouldBe("plugin")) {
142
+ if (this._pkgCouldBe(ref, "plugin")) {
94
143
  const plugin = await api.findPublicPlugin(ref);
95
144
  if (plugin) {
96
145
  const { name, version } = plugin;
@@ -102,21 +151,21 @@ class AddCommand extends import_global_command.GlobalCommand {
102
151
  async _findLocalPackage(ref) {
103
152
  const absPath = utils.path.absoluteFrom(utils.path.cwd(), ref.path);
104
153
  const { definition: projectDefinition, implementation: projectImplementation } = await this._readProject(absPath);
105
- if (this._pkgCouldBe("integration") && projectDefinition?.type === "integration") {
154
+ if (projectDefinition?.type === "integration") {
106
155
  const { name, version } = projectDefinition.definition;
107
156
  return {
108
157
  type: "integration",
109
158
  pkg: { source: "local", path: absPath, name, version }
110
159
  };
111
160
  }
112
- if (this._pkgCouldBe("interface") && projectDefinition?.type === "interface") {
161
+ if (projectDefinition?.type === "interface") {
113
162
  const { name, version } = projectDefinition.definition;
114
163
  return {
115
164
  type: "interface",
116
165
  pkg: { source: "local", path: absPath, name, version }
117
166
  };
118
167
  }
119
- if (this._pkgCouldBe("plugin") && projectDefinition?.type === "plugin") {
168
+ if (projectDefinition?.type === "plugin") {
120
169
  if (!projectImplementation) {
121
170
  throw new errors.BotpressCLIError(
122
171
  "Plugin implementation not found; Please build the plugin project before installing"
@@ -183,11 +232,14 @@ class AddCommand extends import_global_command.GlobalCommand {
183
232
  const implementation = await fslib.promises.readFile(implementationAbsPath, "utf8");
184
233
  return { definition, implementation };
185
234
  }
186
- _pkgCouldBe = (pkgType) => {
187
- if (!this.argv.packageType) {
235
+ _pkgCouldBe = (ref, pkgType) => {
236
+ if (ref.type === "id") {
237
+ return true;
238
+ }
239
+ if (!ref.pkg) {
188
240
  return true;
189
241
  }
190
- return this.argv.packageType === pkgType;
242
+ return ref.pkg === pkgType;
191
243
  };
192
244
  }
193
245
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/command-implementations/add-command.ts"],
4
- "sourcesContent": ["import * as fslib from 'fs'\nimport * as pathlib from 'path'\nimport { ApiClient } from '../api'\nimport * as codegen from '../code-generation'\nimport type commandDefinitions from '../command-definitions'\nimport * as consts from '../consts'\nimport * as errors from '../errors'\nimport * as pkgRef from '../package-ref'\nimport * as utils from '../utils'\nimport { GlobalCommand } from './global-command'\nimport { ProjectCommand, ProjectCommandDefinition, ProjectDefinition } from './project-command'\n\ntype InstallablePackage =\n | {\n type: 'integration'\n pkg: codegen.IntegrationInstallablePackage\n }\n | {\n type: 'interface'\n pkg: codegen.InterfaceInstallablePackage\n }\n | {\n type: 'plugin'\n pkg: codegen.PluginInstallablePackage\n }\n\nexport type AddCommandDefinition = typeof commandDefinitions.add\nexport class AddCommand extends GlobalCommand<AddCommandDefinition> {\n public async run(): Promise<void> {\n const parsedRef = pkgRef.parsePackageRef(this.argv.packageRef)\n if (!parsedRef) {\n throw new errors.InvalidPackageReferenceError(this.argv.packageRef)\n }\n\n const targetPackage =\n parsedRef.type === 'path' ? await this._findLocalPackage(parsedRef) : await this._findRemotePackage(parsedRef)\n\n if (!targetPackage) {\n const notFoundMessage = this.argv.packageType\n ? `Could not find package \"${this.argv.packageRef}\" of type \"${this.argv.packageType}\"`\n : `Could not find package \"${this.argv.packageRef}\"`\n throw new errors.BotpressCLIError(notFoundMessage)\n }\n\n const packageName = targetPackage.pkg.name // TODO: eventually replace name by alias (with argv --alias)\n const baseInstallPath = utils.path.absoluteFrom(utils.path.cwd(), this.argv.installPath)\n const packageDirName = utils.casing.to.kebabCase(packageName)\n const installPath = utils.path.join(baseInstallPath, consts.installDirName, packageDirName)\n\n const alreadyInstalled = fslib.existsSync(installPath)\n if (alreadyInstalled) {\n this.logger.warn(`Package with name \"${packageName}\" already installed.`)\n const res = await this.prompt.confirm('Do you want to overwrite the existing package?')\n if (!res) {\n this.logger.log('Aborted')\n return\n }\n\n await this._uninstall(installPath)\n }\n\n let files: codegen.File[]\n if (targetPackage.type === 'integration') {\n files = await codegen.generateIntegrationPackage(targetPackage.pkg)\n } else if (targetPackage.type === 'interface') {\n files = await codegen.generateInterfacePackage(targetPackage.pkg)\n } else if (targetPackage.type === 'plugin') {\n files = await codegen.generatePluginPackage(targetPackage.pkg)\n } else {\n type _assertion = utils.types.AssertNever<typeof targetPackage>\n throw new errors.BotpressCLIError('Invalid package type')\n }\n\n await this._install(installPath, files)\n }\n\n private async _findRemotePackage(ref: pkgRef.ApiPackageRef): Promise<InstallablePackage | undefined> {\n const api = await this.ensureLoginAndCreateClient(this.argv)\n if (this._pkgCouldBe('integration')) {\n const integration = await api.findIntegration(ref)\n if (integration) {\n const { name, version } = integration\n return { type: 'integration', pkg: { source: 'remote', integration, name, version } }\n }\n }\n if (this._pkgCouldBe('interface')) {\n const intrface = await api.findPublicInterface(ref)\n if (intrface) {\n const { name, version } = intrface\n return { type: 'interface', pkg: { source: 'remote', interface: intrface, name, version } }\n }\n }\n if (this._pkgCouldBe('plugin')) {\n const plugin = await api.findPublicPlugin(ref)\n if (plugin) {\n const { name, version } = plugin\n return { type: 'plugin', pkg: { source: 'remote', plugin, name, version } }\n }\n }\n return\n }\n\n private async _findLocalPackage(ref: pkgRef.LocalPackageRef): Promise<InstallablePackage | undefined> {\n const absPath = utils.path.absoluteFrom(utils.path.cwd(), ref.path)\n const { definition: projectDefinition, implementation: projectImplementation } = await this._readProject(absPath)\n if (this._pkgCouldBe('integration') && projectDefinition?.type === 'integration') {\n const { name, version } = projectDefinition.definition\n return {\n type: 'integration',\n pkg: { source: 'local', path: absPath, name, version },\n }\n }\n\n if (this._pkgCouldBe('interface') && projectDefinition?.type === 'interface') {\n const { name, version } = projectDefinition.definition\n return {\n type: 'interface',\n pkg: { source: 'local', path: absPath, name, version },\n }\n }\n\n if (this._pkgCouldBe('plugin') && projectDefinition?.type === 'plugin') {\n if (!projectImplementation) {\n throw new errors.BotpressCLIError(\n 'Plugin implementation not found; Please build the plugin project before installing'\n )\n }\n\n const { name, version } = projectDefinition.definition\n return {\n type: 'plugin',\n pkg: {\n source: 'local',\n path: absPath,\n implementationCode: projectImplementation,\n name,\n version,\n },\n }\n }\n\n if (projectDefinition?.type === 'bot') {\n throw new errors.BotpressCLIError('Cannot install a bot as a package')\n }\n return\n }\n\n private async _install(installPath: utils.path.AbsolutePath, files: codegen.File[]): Promise<void> {\n const line = this.logger.line()\n line.started(`Installing ${files.length} files to \"${installPath}\"`)\n try {\n for (const file of files) {\n const filePath = utils.path.absoluteFrom(installPath, file.path)\n const dirPath = pathlib.dirname(filePath)\n await fslib.promises.mkdir(dirPath, { recursive: true })\n await fslib.promises.writeFile(filePath, file.content)\n }\n line.success(`Installed ${files.length} files to \"${installPath}\"`)\n } finally {\n line.commit()\n }\n }\n\n private async _uninstall(installPath: utils.path.AbsolutePath): Promise<void> {\n await fslib.promises.rm(installPath, { recursive: true })\n }\n\n private async _readProject(workDir: utils.path.AbsolutePath): Promise<{\n definition?: ProjectDefinition\n implementation?: string\n }> {\n // this is a hack to avoid refactoring the project command class\n class AnyProjectCommand extends ProjectCommand<ProjectCommandDefinition> {\n public async run(): Promise<void> {\n throw new errors.BotpressCLIError('Not implemented')\n }\n\n public async readProjectDefinitionFromFS(): Promise<ProjectDefinition> {\n return super.readProjectDefinitionFromFS()\n }\n }\n\n const cmd = new AnyProjectCommand(ApiClient, this.prompt, this.logger, {\n ...this.argv,\n workDir,\n })\n\n const definition = await cmd.readProjectDefinitionFromFS().catch((thrown) => {\n if (thrown instanceof errors.ProjectDefinitionNotFoundError) {\n return undefined\n }\n throw thrown\n })\n\n const implementationAbsPath = utils.path.join(workDir, consts.fromWorkDir.outFile)\n if (!fslib.existsSync(implementationAbsPath)) {\n return { definition }\n }\n\n const implementation = await fslib.promises.readFile(implementationAbsPath, 'utf8')\n return { definition, implementation }\n }\n\n private _pkgCouldBe = (pkgType: InstallablePackage['type']) => {\n if (!this.argv.packageType) {\n return true\n }\n return this.argv.packageType === pkgType\n }\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as sdk from '@botpress/sdk'\nimport * as fslib from 'fs'\nimport * as pathlib from 'path'\nimport { ApiClient } from '../api'\nimport * as codegen from '../code-generation'\nimport type commandDefinitions from '../command-definitions'\nimport * as consts from '../consts'\nimport * as errors from '../errors'\nimport * as pkgRef from '../package-ref'\nimport * as utils from '../utils'\nimport { GlobalCommand } from './global-command'\nimport { ProjectCommand, ProjectCommandDefinition, ProjectDefinition } from './project-command'\n\ntype InstallablePackage =\n | {\n type: 'integration'\n pkg: codegen.IntegrationInstallablePackage\n }\n | {\n type: 'interface'\n pkg: codegen.InterfaceInstallablePackage\n }\n | {\n type: 'plugin'\n pkg: codegen.PluginInstallablePackage\n }\n\nexport type AddCommandDefinition = typeof commandDefinitions.add\nexport class AddCommand extends GlobalCommand<AddCommandDefinition> {\n public async run(): Promise<void> {\n const ref = this._parseArgvRef()\n if (ref) {\n return await this._addSinglePackage(ref)\n }\n\n const pkgJson = await utils.pkgJson.readPackageJson(this.argv.installPath)\n if (!pkgJson) {\n this.logger.warn('No package.json found in the install path')\n return\n }\n\n const { bpDependencies } = pkgJson\n if (!bpDependencies) {\n this.logger.log('No bp dependencies found in package.json')\n return\n }\n\n const bpDependenciesSchema = sdk.z.record(sdk.z.string())\n const parseResults = bpDependenciesSchema.safeParse(bpDependencies)\n if (!parseResults.success) {\n throw new errors.BotpressCLIError('Invalid bpDependencies found in package.json')\n }\n\n for (const [pkgAlias, pkgRefStr] of Object.entries(parseResults.data)) {\n const parsed = pkgRef.parsePackageRef(pkgRefStr)\n if (!parsed) {\n throw new errors.InvalidPackageReferenceError(pkgRefStr)\n }\n\n await this._addSinglePackage({ ...parsed, alias: pkgAlias })\n }\n }\n\n private _parseArgvRef = (): pkgRef.PackageRef | undefined => {\n if (!this.argv.packageRef) {\n return\n }\n\n const parsed = pkgRef.parsePackageRef(this.argv.packageRef)\n if (!parsed) {\n throw new errors.InvalidPackageReferenceError(this.argv.packageRef)\n }\n\n if (parsed.type !== 'name') {\n return parsed\n }\n\n const argvPkgType = this.argv.packageType\n if (!argvPkgType) {\n return parsed\n }\n\n const ref = { ...parsed, pkg: argvPkgType }\n\n const strRef = pkgRef.formatPackageRef(ref)\n this.logger.warn(`argument --packageType is deprecated; please use the package reference format \"${strRef}\"`)\n\n return ref\n }\n\n private async _addSinglePackage(ref: pkgRef.PackageRef & { alias?: string }): Promise<void> {\n const targetPackage = ref.type === 'path' ? await this._findLocalPackage(ref) : await this._findRemotePackage(ref)\n\n if (!targetPackage) {\n const strRef = pkgRef.formatPackageRef(ref)\n throw new errors.BotpressCLIError(`Could not find package \"${strRef}\"`)\n }\n\n const packageName = ref.alias ?? targetPackage.pkg.name\n const baseInstallPath = utils.path.absoluteFrom(utils.path.cwd(), this.argv.installPath)\n const packageDirName = utils.casing.to.kebabCase(packageName)\n const installPath = utils.path.join(baseInstallPath, consts.installDirName, packageDirName)\n\n const alreadyInstalled = fslib.existsSync(installPath)\n if (alreadyInstalled) {\n this.logger.warn(`Package with name \"${packageName}\" already installed.`)\n const res = await this.prompt.confirm('Do you want to overwrite the existing package?')\n if (!res) {\n this.logger.log('Aborted')\n return\n }\n\n await this._uninstall(installPath)\n }\n\n let files: codegen.File[]\n if (targetPackage.type === 'integration') {\n files = await codegen.generateIntegrationPackage(targetPackage.pkg)\n } else if (targetPackage.type === 'interface') {\n files = await codegen.generateInterfacePackage(targetPackage.pkg)\n } else if (targetPackage.type === 'plugin') {\n files = await codegen.generatePluginPackage(targetPackage.pkg)\n } else {\n type _assertion = utils.types.AssertNever<typeof targetPackage>\n throw new errors.BotpressCLIError('Invalid package type')\n }\n\n await this._install(installPath, files)\n }\n\n private async _findRemotePackage(ref: pkgRef.ApiPackageRef): Promise<InstallablePackage | undefined> {\n const api = await this.ensureLoginAndCreateClient(this.argv)\n if (this._pkgCouldBe(ref, 'integration')) {\n const integration = await api.findIntegration(ref)\n if (integration) {\n const { name, version } = integration\n return { type: 'integration', pkg: { source: 'remote', integration, name, version } }\n }\n }\n if (this._pkgCouldBe(ref, 'interface')) {\n const intrface = await api.findPublicInterface(ref)\n if (intrface) {\n const { name, version } = intrface\n return { type: 'interface', pkg: { source: 'remote', interface: intrface, name, version } }\n }\n }\n if (this._pkgCouldBe(ref, 'plugin')) {\n const plugin = await api.findPublicPlugin(ref)\n if (plugin) {\n const { name, version } = plugin\n return { type: 'plugin', pkg: { source: 'remote', plugin, name, version } }\n }\n }\n return\n }\n\n private async _findLocalPackage(ref: pkgRef.LocalPackageRef): Promise<InstallablePackage | undefined> {\n const absPath = utils.path.absoluteFrom(utils.path.cwd(), ref.path)\n const { definition: projectDefinition, implementation: projectImplementation } = await this._readProject(absPath)\n if (projectDefinition?.type === 'integration') {\n const { name, version } = projectDefinition.definition\n return {\n type: 'integration',\n pkg: { source: 'local', path: absPath, name, version },\n }\n }\n\n if (projectDefinition?.type === 'interface') {\n const { name, version } = projectDefinition.definition\n return {\n type: 'interface',\n pkg: { source: 'local', path: absPath, name, version },\n }\n }\n\n if (projectDefinition?.type === 'plugin') {\n if (!projectImplementation) {\n throw new errors.BotpressCLIError(\n 'Plugin implementation not found; Please build the plugin project before installing'\n )\n }\n\n const { name, version } = projectDefinition.definition\n return {\n type: 'plugin',\n pkg: {\n source: 'local',\n path: absPath,\n implementationCode: projectImplementation,\n name,\n version,\n },\n }\n }\n\n if (projectDefinition?.type === 'bot') {\n throw new errors.BotpressCLIError('Cannot install a bot as a package')\n }\n return\n }\n\n private async _install(installPath: utils.path.AbsolutePath, files: codegen.File[]): Promise<void> {\n const line = this.logger.line()\n line.started(`Installing ${files.length} files to \"${installPath}\"`)\n try {\n for (const file of files) {\n const filePath = utils.path.absoluteFrom(installPath, file.path)\n const dirPath = pathlib.dirname(filePath)\n await fslib.promises.mkdir(dirPath, { recursive: true })\n await fslib.promises.writeFile(filePath, file.content)\n }\n line.success(`Installed ${files.length} files to \"${installPath}\"`)\n } finally {\n line.commit()\n }\n }\n\n private async _uninstall(installPath: utils.path.AbsolutePath): Promise<void> {\n await fslib.promises.rm(installPath, { recursive: true })\n }\n\n private async _readProject(workDir: utils.path.AbsolutePath): Promise<{\n definition?: ProjectDefinition\n implementation?: string\n }> {\n // this is a hack to avoid refactoring the project command class\n class AnyProjectCommand extends ProjectCommand<ProjectCommandDefinition> {\n public async run(): Promise<void> {\n throw new errors.BotpressCLIError('Not implemented')\n }\n\n public async readProjectDefinitionFromFS(): Promise<ProjectDefinition> {\n return super.readProjectDefinitionFromFS()\n }\n }\n\n const cmd = new AnyProjectCommand(ApiClient, this.prompt, this.logger, {\n ...this.argv,\n workDir,\n })\n\n const definition = await cmd.readProjectDefinitionFromFS().catch((thrown) => {\n if (thrown instanceof errors.ProjectDefinitionNotFoundError) {\n return undefined\n }\n throw thrown\n })\n\n const implementationAbsPath = utils.path.join(workDir, consts.fromWorkDir.outFile)\n if (!fslib.existsSync(implementationAbsPath)) {\n return { definition }\n }\n\n const implementation = await fslib.promises.readFile(implementationAbsPath, 'utf8')\n return { definition, implementation }\n }\n\n private _pkgCouldBe = (ref: pkgRef.ApiPackageRef, pkgType: InstallablePackage['type']) => {\n if (ref.type === 'id') {\n // TODO: use ULID prefixes to determine the type of the package\n return true\n }\n if (!ref.pkg) {\n return true // ref does not specify the package type\n }\n return ref.pkg === pkgType\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/command-implementations/base-command.ts"],
4
4
  "sourcesContent": ["import * as errors from '../errors'\nimport type { Logger } from '../logger'\nimport type { CommandArgv, CommandDefinition } from '../typings'\n\nexport abstract class BaseCommand<C extends CommandDefinition> {\n public constructor(protected readonly logger: Logger, protected readonly argv: CommandArgv<C>) {}\n\n protected abstract run(): Promise<void>\n protected bootstrap?(): Promise<void>\n protected teardown?(): Promise<void>\n\n public async handler(): Promise<{ exitCode: number }> {\n let exitCode = 0\n try {\n if (this.bootstrap) {\n await this.bootstrap()\n }\n await this.run()\n } catch (thrown) {\n const error = errors.BotpressCLIError.map(thrown)\n\n if (error.debug) {\n const msg = error.message + ' (Run with verbose flag (-v) to see more details)'\n this.logger.error(msg)\n this.logger.debug(error.debug)\n } else {\n this.logger.error(error.message)\n }\n\n exitCode = 1\n } finally {\n if (this.teardown) {\n await this.teardown()\n }\n }\n\n return { exitCode }\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAwB;AAIjB,MAAe,YAAyC;AAAA,EACtD,YAA+B,QAAmC,MAAsB;AAAzD;AAAmC;AAAA,EAAuB;AAAA,EAMhG,MAAa,UAAyC;AACpD,QAAI,WAAW;AACf,QAAI;AACF,UAAI,KAAK,WAAW;AAClB,cAAM,KAAK,UAAU;AAAA,MACvB;AACA,YAAM,KAAK,IAAI;AAAA,IACjB,SAAS,QAAP;AACA,YAAM,QAAQ,OAAO,iBAAiB,IAAI,MAAM;AAEhD,UAAI,MAAM,OAAO;AACf,cAAM,MAAM,MAAM,UAAU;AAC5B,aAAK,OAAO,MAAM,GAAG;AACrB,aAAK,OAAO,MAAM,MAAM,KAAK;AAAA,MAC/B,OAAO;AACL,aAAK,OAAO,MAAM,MAAM,OAAO;AAAA,MACjC;AAEA,iBAAW;AAAA,IACb,UAAE;AACA,UAAI,KAAK,UAAU;AACjB,cAAM,KAAK,SAAS;AAAA,MACtB;AAAA,IACF;AAEA,WAAO,EAAE,SAAS;AAAA,EACpB;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAwB;AAIjB,MAAe,YAAyC;AAAA,EACtD,YAA+B,QAAmC,MAAsB;AAAzD;AAAmC;AAAA,EAAuB;AAAA,EAMhG,MAAa,UAAyC;AACpD,QAAI,WAAW;AACf,QAAI;AACF,UAAI,KAAK,WAAW;AAClB,cAAM,KAAK,UAAU;AAAA,MACvB;AACA,YAAM,KAAK,IAAI;AAAA,IACjB,SAAS,QAAP;AACA,YAAM,QAAQ,OAAO,iBAAiB,IAAI,MAAM;AAEhD,UAAI,MAAM,OAAO;AACf,cAAM,MAAM,MAAM,UAAU;AAC5B,aAAK,OAAO,MAAM,GAAG;AACrB,aAAK,OAAO,MAAM,MAAM,KAAK;AAAA,MAC/B,OAAO;AACL,aAAK,OAAO,MAAM,MAAM,OAAO;AAAA,MACjC;AAEA,iBAAW;AAAA,IACb,UAAE;AACA,UAAI,KAAK,UAAU;AACjB,cAAM,KAAK,SAAS;AAAA,MACtB;AAAA,IACF;AAEA,WAAO,EAAE,SAAS;AAAA,EACpB;AACF;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/command-implementations/bot-commands.ts"],
4
4
  "sourcesContent": ["import chalk from 'chalk'\nimport { ApiClient } from 'src/api/client'\nimport type commandDefinitions from '../command-definitions'\nimport * as errors from '../errors'\nimport { GlobalCommand } from './global-command'\n\nexport type GetBotCommandDefinition = typeof commandDefinitions.bots.subcommands.get\nexport class GetBotCommand extends GlobalCommand<GetBotCommandDefinition> {\n public async run(): Promise<void> {\n const { client } = await this.ensureLoginAndCreateClient(this.argv)\n\n try {\n const { bot } = await client.getBot({ id: this.argv.botRef })\n this.logger.success(`Bot ${chalk.bold(this.argv.botRef)}:`)\n this.logger.json(bot)\n } catch (thrown) {\n throw errors.BotpressCLIError.wrap(thrown, `Could not get bot ${this.argv.botRef}`)\n }\n }\n}\n\nexport type ListBotsCommandDefinition = typeof commandDefinitions.bots.subcommands.list\nexport class ListBotsCommand extends GlobalCommand<ListBotsCommandDefinition> {\n public async run(): Promise<void> {\n const api = await this.ensureLoginAndCreateClient(this.argv)\n\n try {\n const { dev } = this.argv\n const bots = await api.listAllPages(\n (x) => api.client.listBots({ ...x, dev }),\n (r) => r.bots\n )\n this.logger.success('Bots:')\n this.logger.json(bots)\n } catch (thrown) {\n throw errors.BotpressCLIError.wrap(thrown, 'Could not list bots')\n }\n }\n}\n\nexport type DeleteBotCommandDefinition = typeof commandDefinitions.bots.subcommands.delete\nexport class DeleteBotCommand extends GlobalCommand<DeleteBotCommandDefinition> {\n public async run(): Promise<void> {\n const { client } = await this.ensureLoginAndCreateClient(this.argv)\n\n try {\n await client.deleteBot({ id: this.argv.botRef })\n this.logger.success(`Bot ${chalk.bold(this.argv.botRef)} deleted`)\n } catch (thrown) {\n throw errors.BotpressCLIError.wrap(thrown, `Could not delete bot ${this.argv.botRef}`)\n }\n }\n}\n\nexport type CreateBotCommandDefinition = typeof commandDefinitions.bots.subcommands.create\nexport class CreateBotCommand extends GlobalCommand<CreateBotCommandDefinition> {\n public async run(): Promise<void> {\n const api = await this.ensureLoginAndCreateClient(this.argv)\n\n try {\n if (this.argv.ifNotExists) {\n await this._getOrCreate(api, this.argv.name)\n return\n }\n await this._create(api, this.argv.name)\n } catch (thrown) {\n throw errors.BotpressCLIError.wrap(thrown, 'Could not create bot')\n }\n }\n\n private _getOrCreate = async (api: ApiClient, name: string | undefined) => {\n if (!name) {\n throw new errors.BotpressCLIError('option --if-not-exists requires that a name be provided')\n }\n const existingBot = await api.findBotByName(name)\n if (existingBot) {\n this.logger.success(`Bot ${chalk.bold(name)} already exists`)\n this.logger.json(existingBot)\n return\n }\n return this._create(api, name)\n }\n\n private _create = async (api: ApiClient, name: string | undefined) => {\n const { bot } = await api.client.createBot({ name })\n this.logger.success(`Bot ${chalk.bold(bot.id)}:`)\n this.logger.json(bot)\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAGlB,aAAwB;AACxB,4BAA8B;AAGvB,MAAM,sBAAsB,oCAAuC;AAAA,EACxE,MAAa,MAAqB;AAChC,UAAM,EAAE,OAAO,IAAI,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAElE,QAAI;AACF,YAAM,EAAE,IAAI,IAAI,MAAM,OAAO,OAAO,EAAE,IAAI,KAAK,KAAK,OAAO,CAAC;AAC5D,WAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,KAAK,KAAK,MAAM,IAAI;AAC1D,WAAK,OAAO,KAAK,GAAG;AAAA,IACtB,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,qBAAqB,KAAK,KAAK,QAAQ;AAAA,IACpF;AAAA,EACF;AACF;AAGO,MAAM,wBAAwB,oCAAyC;AAAA,EAC5E,MAAa,MAAqB;AAChC,UAAM,MAAM,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAE3D,QAAI;AACF,YAAM,EAAE,IAAI,IAAI,KAAK;AACrB,YAAM,OAAO,MAAM,IAAI;AAAA,QACrB,CAAC,MAAM,IAAI,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC;AAAA,QACxC,CAAC,MAAM,EAAE;AAAA,MACX;AACA,WAAK,OAAO,QAAQ,OAAO;AAC3B,WAAK,OAAO,KAAK,IAAI;AAAA,IACvB,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,qBAAqB;AAAA,IAClE;AAAA,EACF;AACF;AAGO,MAAM,yBAAyB,oCAA0C;AAAA,EAC9E,MAAa,MAAqB;AAChC,UAAM,EAAE,OAAO,IAAI,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAElE,QAAI;AACF,YAAM,OAAO,UAAU,EAAE,IAAI,KAAK,KAAK,OAAO,CAAC;AAC/C,WAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,KAAK,KAAK,MAAM,WAAW;AAAA,IACnE,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,wBAAwB,KAAK,KAAK,QAAQ;AAAA,IACvF;AAAA,EACF;AACF;AAGO,MAAM,yBAAyB,oCAA0C;AAAA,EAC9E,MAAa,MAAqB;AAChC,UAAM,MAAM,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAE3D,QAAI;AACF,UAAI,KAAK,KAAK,aAAa;AACzB,cAAM,KAAK,aAAa,KAAK,KAAK,KAAK,IAAI;AAC3C;AAAA,MACF;AACA,YAAM,KAAK,QAAQ,KAAK,KAAK,KAAK,IAAI;AAAA,IACxC,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,sBAAsB;AAAA,IACnE;AAAA,EACF;AAAA,EAEQ,eAAe,OAAO,KAAgB,SAA6B;AACzE,QAAI,CAAC,MAAM;AACT,YAAM,IAAI,OAAO,iBAAiB,yDAAyD;AAAA,IAC7F;AACA,UAAM,cAAc,MAAM,IAAI,cAAc,IAAI;AAChD,QAAI,aAAa;AACf,WAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,IAAI,kBAAkB;AAC5D,WAAK,OAAO,KAAK,WAAW;AAC5B;AAAA,IACF;AACA,WAAO,KAAK,QAAQ,KAAK,IAAI;AAAA,EAC/B;AAAA,EAEQ,UAAU,OAAO,KAAgB,SAA6B;AACpE,UAAM,EAAE,IAAI,IAAI,MAAM,IAAI,OAAO,UAAU,EAAE,KAAK,CAAC;AACnD,SAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,IAAI,EAAE,IAAI;AAChD,SAAK,OAAO,KAAK,GAAG;AAAA,EACtB;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAGlB,aAAwB;AACxB,4BAA8B;AAGvB,MAAM,sBAAsB,oCAAuC;AAAA,EACxE,MAAa,MAAqB;AAChC,UAAM,EAAE,OAAO,IAAI,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAElE,QAAI;AACF,YAAM,EAAE,IAAI,IAAI,MAAM,OAAO,OAAO,EAAE,IAAI,KAAK,KAAK,OAAO,CAAC;AAC5D,WAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,KAAK,KAAK,MAAM,IAAI;AAC1D,WAAK,OAAO,KAAK,GAAG;AAAA,IACtB,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,qBAAqB,KAAK,KAAK,QAAQ;AAAA,IACpF;AAAA,EACF;AACF;AAGO,MAAM,wBAAwB,oCAAyC;AAAA,EAC5E,MAAa,MAAqB;AAChC,UAAM,MAAM,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAE3D,QAAI;AACF,YAAM,EAAE,IAAI,IAAI,KAAK;AACrB,YAAM,OAAO,MAAM,IAAI;AAAA,QACrB,CAAC,MAAM,IAAI,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC;AAAA,QACxC,CAAC,MAAM,EAAE;AAAA,MACX;AACA,WAAK,OAAO,QAAQ,OAAO;AAC3B,WAAK,OAAO,KAAK,IAAI;AAAA,IACvB,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,qBAAqB;AAAA,IAClE;AAAA,EACF;AACF;AAGO,MAAM,yBAAyB,oCAA0C;AAAA,EAC9E,MAAa,MAAqB;AAChC,UAAM,EAAE,OAAO,IAAI,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAElE,QAAI;AACF,YAAM,OAAO,UAAU,EAAE,IAAI,KAAK,KAAK,OAAO,CAAC;AAC/C,WAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,KAAK,KAAK,MAAM,WAAW;AAAA,IACnE,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,wBAAwB,KAAK,KAAK,QAAQ;AAAA,IACvF;AAAA,EACF;AACF;AAGO,MAAM,yBAAyB,oCAA0C;AAAA,EAC9E,MAAa,MAAqB;AAChC,UAAM,MAAM,MAAM,KAAK,2BAA2B,KAAK,IAAI;AAE3D,QAAI;AACF,UAAI,KAAK,KAAK,aAAa;AACzB,cAAM,KAAK,aAAa,KAAK,KAAK,KAAK,IAAI;AAC3C;AAAA,MACF;AACA,YAAM,KAAK,QAAQ,KAAK,KAAK,KAAK,IAAI;AAAA,IACxC,SAAS,QAAP;AACA,YAAM,OAAO,iBAAiB,KAAK,QAAQ,sBAAsB;AAAA,IACnE;AAAA,EACF;AAAA,EAEQ,eAAe,OAAO,KAAgB,SAA6B;AACzE,QAAI,CAAC,MAAM;AACT,YAAM,IAAI,OAAO,iBAAiB,yDAAyD;AAAA,IAC7F;AACA,UAAM,cAAc,MAAM,IAAI,cAAc,IAAI;AAChD,QAAI,aAAa;AACf,WAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,IAAI,kBAAkB;AAC5D,WAAK,OAAO,KAAK,WAAW;AAC5B;AAAA,IACF;AACA,WAAO,KAAK,QAAQ,KAAK,IAAI;AAAA,EAC/B;AAAA,EAEQ,UAAU,OAAO,KAAgB,SAA6B;AACpE,UAAM,EAAE,IAAI,IAAI,MAAM,IAAI,OAAO,UAAU,EAAE,KAAK,CAAC;AACnD,SAAK,OAAO,QAAQ,OAAO,aAAAA,QAAM,KAAK,IAAI,EAAE,IAAI;AAChD,SAAK,OAAO,KAAK,GAAG;AAAA,EACtB;AACF;",
6
6
  "names": ["chalk"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/command-implementations/bundle-command.ts"],
4
4
  "sourcesContent": ["import chalk from 'chalk'\nimport { SingleLineLogger } from 'src/logger'\nimport type commandDefinitions from '../command-definitions'\nimport * as errors from '../errors'\nimport * as utils from '../utils'\nimport { ProjectCommand } from './project-command'\n\nexport type BundleCommandDefinition = typeof commandDefinitions.bundle\nexport class BundleCommand extends ProjectCommand<BundleCommandDefinition> {\n public async run(): Promise<void> {\n const projectDef = await this.readProjectDefinitionFromFS()\n\n if (projectDef.type === 'interface') {\n this.logger.success('Interface projects have no implementation to bundle.')\n return\n }\n\n const line = this.logger.line()\n\n if (projectDef.type === 'integration') {\n const { name } = projectDef.definition\n line.started(`Bundling integration ${chalk.bold(name)}...`)\n return await this._bundle(line)\n }\n\n if (projectDef.type === 'bot') {\n line.started('Bundling bot...')\n return await this._bundle(line)\n }\n\n if (projectDef.type === 'plugin') {\n line.started('Bundling plugin...')\n return await this._bundle(line)\n }\n\n throw new errors.UnsupportedProjectType()\n }\n\n private async _bundle(line: SingleLineLogger, props: Partial<utils.esbuild.BuildCodeProps> = {}) {\n const logLevel = this.argv.verbose ? 'info' : 'silent'\n const abs = this.projectPaths.abs\n const rel = this.projectPaths.rel('workDir')\n\n const unixPath = utils.path.toUnix(rel.entryPoint)\n const importFrom = utils.path.rmExtension(unixPath)\n const code = `import x from './${importFrom}'; export default x; export const handler = x.handler;`\n\n const outfile = abs.outFile // TODO: ensure dir exists\n line.debug(`Writing bundle to ${outfile}`)\n\n await utils.esbuild.buildCode({\n code,\n cwd: abs.workDir,\n outfile,\n logLevel,\n write: true,\n sourcemap: this.argv.sourceMap,\n minify: this.argv.minify,\n ...props,\n })\n\n line.success(`Bundle available at ${chalk.grey(rel.outDir)}`)\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAGlB,aAAwB;AACxB,YAAuB;AACvB,6BAA+B;AAGxB,MAAM,sBAAsB,sCAAwC;AAAA,EACzE,MAAa,MAAqB;AAChC,UAAM,aAAa,MAAM,KAAK,4BAA4B;AAE1D,QAAI,WAAW,SAAS,aAAa;AACnC,WAAK,OAAO,QAAQ,sDAAsD;AAC1E;AAAA,IACF;AAEA,UAAM,OAAO,KAAK,OAAO,KAAK;AAE9B,QAAI,WAAW,SAAS,eAAe;AACrC,YAAM,EAAE,KAAK,IAAI,WAAW;AAC5B,WAAK,QAAQ,wBAAwB,aAAAA,QAAM,KAAK,IAAI,MAAM;AAC1D,aAAO,MAAM,KAAK,QAAQ,IAAI;AAAA,IAChC;AAEA,QAAI,WAAW,SAAS,OAAO;AAC7B,WAAK,QAAQ,iBAAiB;AAC9B,aAAO,MAAM,KAAK,QAAQ,IAAI;AAAA,IAChC;AAEA,QAAI,WAAW,SAAS,UAAU;AAChC,WAAK,QAAQ,oBAAoB;AACjC,aAAO,MAAM,KAAK,QAAQ,IAAI;AAAA,IAChC;AAEA,UAAM,IAAI,OAAO,uBAAuB;AAAA,EAC1C;AAAA,EAEA,MAAc,QAAQ,MAAwB,QAA+C,CAAC,GAAG;AAC/F,UAAM,WAAW,KAAK,KAAK,UAAU,SAAS;AAC9C,UAAM,MAAM,KAAK,aAAa;AAC9B,UAAM,MAAM,KAAK,aAAa,IAAI,SAAS;AAE3C,UAAM,WAAW,MAAM,KAAK,OAAO,IAAI,UAAU;AACjD,UAAM,aAAa,MAAM,KAAK,YAAY,QAAQ;AAClD,UAAM,OAAO,oBAAoB;AAEjC,UAAM,UAAU,IAAI;AACpB,SAAK,MAAM,qBAAqB,SAAS;AAEzC,UAAM,MAAM,QAAQ,UAAU;AAAA,MAC5B;AAAA,MACA,KAAK,IAAI;AAAA,MACT;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,WAAW,KAAK,KAAK;AAAA,MACrB,QAAQ,KAAK,KAAK;AAAA,MAClB,GAAG;AAAA,IACL,CAAC;AAED,SAAK,QAAQ,uBAAuB,aAAAA,QAAM,KAAK,IAAI,MAAM,GAAG;AAAA,EAC9D;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAGlB,aAAwB;AACxB,YAAuB;AACvB,6BAA+B;AAGxB,MAAM,sBAAsB,sCAAwC;AAAA,EACzE,MAAa,MAAqB;AAChC,UAAM,aAAa,MAAM,KAAK,4BAA4B;AAE1D,QAAI,WAAW,SAAS,aAAa;AACnC,WAAK,OAAO,QAAQ,sDAAsD;AAC1E;AAAA,IACF;AAEA,UAAM,OAAO,KAAK,OAAO,KAAK;AAE9B,QAAI,WAAW,SAAS,eAAe;AACrC,YAAM,EAAE,KAAK,IAAI,WAAW;AAC5B,WAAK,QAAQ,wBAAwB,aAAAA,QAAM,KAAK,IAAI,MAAM;AAC1D,aAAO,MAAM,KAAK,QAAQ,IAAI;AAAA,IAChC;AAEA,QAAI,WAAW,SAAS,OAAO;AAC7B,WAAK,QAAQ,iBAAiB;AAC9B,aAAO,MAAM,KAAK,QAAQ,IAAI;AAAA,IAChC;AAEA,QAAI,WAAW,SAAS,UAAU;AAChC,WAAK,QAAQ,oBAAoB;AACjC,aAAO,MAAM,KAAK,QAAQ,IAAI;AAAA,IAChC;AAEA,UAAM,IAAI,OAAO,uBAAuB;AAAA,EAC1C;AAAA,EAEA,MAAc,QAAQ,MAAwB,QAA+C,CAAC,GAAG;AAC/F,UAAM,WAAW,KAAK,KAAK,UAAU,SAAS;AAC9C,UAAM,MAAM,KAAK,aAAa;AAC9B,UAAM,MAAM,KAAK,aAAa,IAAI,SAAS;AAE3C,UAAM,WAAW,MAAM,KAAK,OAAO,IAAI,UAAU;AACjD,UAAM,aAAa,MAAM,KAAK,YAAY,QAAQ;AAClD,UAAM,OAAO,oBAAoB;AAEjC,UAAM,UAAU,IAAI;AACpB,SAAK,MAAM,qBAAqB,SAAS;AAEzC,UAAM,MAAM,QAAQ,UAAU;AAAA,MAC5B;AAAA,MACA,KAAK,IAAI;AAAA,MACT;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,WAAW,KAAK,KAAK;AAAA,MACrB,QAAQ,KAAK,KAAK;AAAA,MAClB,GAAG;AAAA,IACL,CAAC;AAED,SAAK,QAAQ,uBAAuB,aAAAA,QAAM,KAAK,IAAI,MAAM,GAAG;AAAA,EAC9D;AACF;",
6
6
  "names": ["chalk"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
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.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));