commandkit 1.2.0-rc.7 → 1.2.0-rc.8

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 (55) hide show
  1. package/dist/analytics/analytics-engine.js +1 -1
  2. package/dist/analytics/utils.js +1 -1
  3. package/dist/app/commands/AppCommandRunner.js +1 -1
  4. package/dist/app/commands/Context.js +1 -1
  5. package/dist/app/handlers/AppCommandHandler.js +1 -1
  6. package/dist/app/handlers/AppEventsHandler.js +1 -1
  7. package/dist/app/index.js +1 -1
  8. package/dist/app/middlewares/permissions.js +1 -1
  9. package/dist/app/register/CommandRegistrar.js +1 -1
  10. package/dist/{build-e6PlVFfe.js → build-CxC-b0wN.js} +2 -2
  11. package/dist/{build-e6PlVFfe.js.map → build-CxC-b0wN.js.map} +1 -1
  12. package/dist/cli/build.js +2 -2
  13. package/dist/cli/development.js +2 -2
  14. package/dist/cli/information.js +1 -1
  15. package/dist/cli/init.js +2 -2
  16. package/dist/cli/production.js +2 -2
  17. package/dist/{commandkit-Dy4V-Rk2.js → commandkit-CuM4HbAQ.js} +2 -2
  18. package/dist/{commandkit-Dy4V-Rk2.js.map → commandkit-CuM4HbAQ.js.map} +1 -1
  19. package/dist/commandkit.js +1 -1
  20. package/dist/components/index.js +1 -1
  21. package/dist/components/v1/button/Button.js +1 -1
  22. package/dist/components/v1/button/ButtonKit.js +1 -1
  23. package/dist/components/v1/modal/Modal.js +1 -1
  24. package/dist/components/v1/modal/ModalKit.js +1 -1
  25. package/dist/components/v1/select-menu/ChannelSelectMenuKit.js +1 -1
  26. package/dist/components/v1/select-menu/MentionableSelectMenuKit.js +1 -1
  27. package/dist/components/v1/select-menu/RoleSelectMenuKit.js +1 -1
  28. package/dist/components/v1/select-menu/SelectMenu.js +1 -1
  29. package/dist/components/v1/select-menu/StringSelectMenuKit.js +1 -1
  30. package/dist/components/v1/select-menu/UserSelectMenuKit.js +1 -1
  31. package/dist/config/config.js +1 -1
  32. package/dist/config/default.js +1 -1
  33. package/dist/config/loader.js +1 -1
  34. package/dist/context/async-context.js +1 -1
  35. package/dist/context/environment.js +1 -1
  36. package/dist/{feature-flags-3TQSPAVn.js → feature-flags-DafbZSFy.js} +2 -2
  37. package/dist/{feature-flags-3TQSPAVn.js.map → feature-flags-DafbZSFy.js.map} +1 -1
  38. package/dist/flags/feature-flags.js +2 -2
  39. package/dist/index.js +4 -4
  40. package/dist/{init-Bo01I_h_.js → init-C41hZSJg.js} +2 -2
  41. package/dist/{init-Bo01I_h_.js.map → init-C41hZSJg.js.map} +1 -1
  42. package/dist/logger/DefaultLogger.js +1 -1
  43. package/dist/logger/Logger.js +1 -1
  44. package/dist/plugins/index.js +1 -1
  45. package/dist/plugins/plugin-runtime/CommandKitPluginRuntime.js +1 -1
  46. package/dist/plugins/plugin-runtime/CompilerPluginRuntime.js +1 -1
  47. package/dist/plugins/plugin-runtime/builtin/CommonDirectiveTransformer.js +1 -1
  48. package/dist/plugins/plugin-runtime/builtin/MacroPlugin.js +1 -1
  49. package/dist/utils/dev-hooks.js +1 -1
  50. package/dist/utils/utilities.js +1 -1
  51. package/dist/{version-CphQqt4J.js → version-CS7843dE.js} +2 -2
  52. package/dist/{version-CphQqt4J.js.map → version-CS7843dE.js.map} +1 -1
  53. package/dist/version.js +1 -1
  54. package/hooks.d.ts +3 -1
  55. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
1
  require('../colors-DL3ucTiT.js');
2
2
  require('../ActionRow-CbdGFWMT.js');
3
3
  require('../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../commandkit-CuM4HbAQ.js');
5
5
  require('../common-CcfjYnPG.js');
6
6
  require('../common-vnMIelAE.js');
7
7
  require('../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../colors-DL3ucTiT.js');
2
2
  require('../ActionRow-CbdGFWMT.js');
3
3
  require('../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../commandkit-CuM4HbAQ.js');
5
5
  require('../common-CcfjYnPG.js');
6
6
  require('../common-vnMIelAE.js');
7
7
  require('../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../../colors-DL3ucTiT.js');
2
2
  require('../../ActionRow-CbdGFWMT.js');
3
3
  require('../../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../../commandkit-CuM4HbAQ.js');
5
5
  require('../../common-CcfjYnPG.js');
6
6
  require('../../common-vnMIelAE.js');
7
7
  require('../../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../../colors-DL3ucTiT.js');
2
2
  require('../../ActionRow-CbdGFWMT.js');
3
3
  require('../../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../../commandkit-CuM4HbAQ.js');
5
5
  require('../../common-CcfjYnPG.js');
6
6
  require('../../common-vnMIelAE.js');
7
7
  require('../../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../../colors-DL3ucTiT.js');
2
2
  require('../../ActionRow-CbdGFWMT.js');
3
3
  require('../../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../../commandkit-CuM4HbAQ.js');
5
5
  require('../../common-CcfjYnPG.js');
6
6
  require('../../common-vnMIelAE.js');
7
7
  require('../../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../../colors-DL3ucTiT.js');
2
2
  require('../../ActionRow-CbdGFWMT.js');
3
3
  require('../../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../../commandkit-CuM4HbAQ.js');
5
5
  require('../../common-CcfjYnPG.js');
6
6
  require('../../common-vnMIelAE.js');
7
7
  require('../../container-C6GtfAPW.js');
package/dist/app/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  require('../colors-DL3ucTiT.js');
2
2
  require('../ActionRow-CbdGFWMT.js');
3
3
  require('../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../commandkit-CuM4HbAQ.js');
5
5
  require('../common-CcfjYnPG.js');
6
6
  require('../common-vnMIelAE.js');
7
7
  require('../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../../colors-DL3ucTiT.js');
2
2
  require('../../ActionRow-CbdGFWMT.js');
3
3
  require('../../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../../commandkit-CuM4HbAQ.js');
5
5
  require('../../common-CcfjYnPG.js');
6
6
  require('../../common-vnMIelAE.js');
7
7
  require('../../container-C6GtfAPW.js');
@@ -1,7 +1,7 @@
1
1
  require('../../colors-DL3ucTiT.js');
2
2
  require('../../ActionRow-CbdGFWMT.js');
3
3
  require('../../error-codes-Ds0bnPvT.js');
4
- const require_commandkit = require('../../commandkit-Dy4V-Rk2.js');
4
+ const require_commandkit = require('../../commandkit-CuM4HbAQ.js');
5
5
  require('../../common-CcfjYnPG.js');
6
6
  require('../../common-vnMIelAE.js');
7
7
  require('../../container-C6GtfAPW.js');
@@ -1,5 +1,5 @@
1
1
  const require_chunk = require('./chunk-nOFOJqeH.js');
2
- const require_commandkit = require('./commandkit-Dy4V-Rk2.js');
2
+ const require_commandkit = require('./commandkit-CuM4HbAQ.js');
3
3
  const require_constants = require('./constants-B5_Ta7PR.js');
4
4
  const require_utils = require('./utils-KsNof0Xz.js');
5
5
  const require_common = require('./common-DVM_onKu.js');
@@ -172,4 +172,4 @@ Object.defineProperty(exports, 'buildApplication', {
172
172
  return buildApplication;
173
173
  }
174
174
  });
175
- //# sourceMappingURL=build-e6PlVFfe.js.map
175
+ //# sourceMappingURL=build-CxC-b0wN.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-e6PlVFfe.js","names":[],"sources":["../src/cli/build.ts"],"sourcesContent":["import { existsSync } from 'node:fs';\nimport { writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { rimraf } from 'rimraf';\nimport { build, Options } from 'tsdown';\n\nimport { MaybeArray } from '../components';\nimport { loadConfigFile } from '../config/loader';\nimport { mergeDeep } from '../config/utils';\nimport { CompilerPlugin, CompilerPluginRuntime } from '../plugins';\nimport { COMMANDKIT_CWD } from '../utils/constants';\nimport { copyLocaleFiles } from './common';\nimport { devEnvFileArgs, prodEnvFileArgs } from './env';\nimport { performTypeCheck } from './type-checker';\n\n/**\n * @private\n * @internal\n */\nexport interface ApplicationBuildOptions {\n plugins?: MaybeArray<CompilerPlugin>[] | Array<CompilerPlugin>;\n rolldownPlugins?: any[];\n isDev?: boolean;\n configPath?: string;\n}\n\n// emit public env variables and given env variables\n/**\n * @private\n * @internal\n */\nfunction mergeDefinitionsIfNeeded(env: Record<string, string>, isDev: boolean) {\n const values = Object.fromEntries(\n Object.entries(process.env).filter(\n ([k]) => !(k in env) && k.startsWith('COMMANDKIT_PUBLIC_'),\n ),\n );\n\n return {\n ...env,\n ...values,\n ...(isDev\n ? {\n NODE_ENV: 'development',\n COMMANDKIT_BOOTSTRAP_MODE: 'development',\n COMMANDKIT_IS_DEV: 'true',\n COMMANDKIT_IS_TEST: 'false',\n }\n : {\n NODE_ENV: 'production',\n COMMANDKIT_BOOTSTRAP_MODE: 'production',\n COMMANDKIT_IS_DEV: 'false',\n COMMANDKIT_IS_TEST: 'false',\n }),\n };\n}\n\n/**\n * @private\n * @internal\n */\nexport async function buildApplication({\n plugins,\n rolldownPlugins,\n isDev,\n configPath,\n}: ApplicationBuildOptions) {\n const config = await loadConfigFile(configPath);\n\n if (!isDev && !config?.typescript?.ignoreBuildErrors) {\n await performTypeCheck(configPath || COMMANDKIT_CWD);\n }\n\n const pluginRuntime = new CompilerPluginRuntime(\n (plugins || []) as CompilerPlugin[],\n );\n\n rolldownPlugins ??= [];\n\n rolldownPlugins.push(pluginRuntime.toJSON());\n\n try {\n const dest = isDev ? '.commandkit' : config.distDir;\n\n // Clean the destination directory\n await rimraf(dest);\n\n await pluginRuntime.init();\n\n await build(\n mergeDeep(\n {\n watch: false,\n dts: false,\n clean: true,\n format: ['esm'],\n shims: true,\n minify: false,\n silent: !!isDev,\n inputOptions: {\n transform: {\n jsx: {\n runtime: 'automatic',\n importSource: 'commandkit',\n },\n },\n checks: {\n circularDependency: true,\n },\n onwarn: (warning, defaultWarn) => {\n if (warning?.message?.includes('compilerOptions.jsx')) return;\n\n return defaultWarn(warning);\n },\n onLog: (level, log, defaultLog) => {\n if (isDev) return;\n\n return defaultLog(level, log);\n },\n moduleTypes: {\n '.json': 'js',\n '.node': 'binary',\n },\n },\n plugins: rolldownPlugins,\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap:\n config.sourceMap?.[isDev ? 'development' : 'production'] ?? true,\n target: 'node16',\n outDir: dest,\n env: mergeDefinitionsIfNeeded(config.env || {}, !!isDev),\n entry: Array.from(\n new Set([\n 'src/**/*.{js,cjs,mjs,ts,cts,mts,jsx,tsx}',\n `!${config.distDir}`,\n '!.commandkit',\n '!**/*.test.*',\n '!**/*.spec.*',\n ...(config.entrypoints ?? []),\n ]),\n ),\n outputOptions: {\n sanitizeFileName: (name) => name,\n },\n unbundle: isDev\n ? true\n : (config.compilerOptions?.disableChunking ?? false),\n } satisfies Options,\n config.compilerOptions?.tsdown,\n ),\n );\n\n await copyLocaleFiles('src', dest);\n await injectEntryFile(\n configPath || COMMANDKIT_CWD,\n !!isDev,\n !!(\n config.antiCrashScript?.[isDev ? 'development' : 'production'] ??\n (isDev ? true : false)\n ),\n config.distDir,\n );\n } catch (error) {\n console.error('Build failed:', error);\n if (error instanceof Error) {\n console.error('Error details:', error.stack);\n }\n process.exit(1); // Force exit on error\n } finally {\n // Ensure plugins are cleaned up\n await pluginRuntime.destroy();\n }\n}\n\nconst envScript = (dev: boolean) => `// --- Environment Variables Loader ---\nconst $env = [${(dev ? devEnvFileArgs : prodEnvFileArgs).map((p) => `\"${p}\"`).join(', ')}];\nfor (const file of $env) {\n try {\n process.loadEnvFile(file);\n console.log('\\\\x1b[36m✔ Loaded \\\\x1b[0m\\\\x1b[33m%s\\\\x1b[0m', file);\n } catch {}\n}\n`;\n\nconst antiCrashScript = [\n '// --- CommandKit Anti-Crash Monitor ---',\n \" // 'uncaughtException' event is supposed to be used to perform synchronous cleanup before shutting down the process\",\n ' // instead of using it as a means to resume operation.',\n ' // But it exists here due to compatibility reasons with discord bot ecosystem.',\n \" const p = (t) => `\\\\x1b[31m${t}\\\\x1b[0m`, b = '[CommandKit Anti-Crash Monitor]', l = console.log, e1 = 'uncaughtException', e2 = 'unhandledRejection';\",\n ' if (!process.eventNames().includes(e1)) // skip if it is already handled',\n ' process.on(e1, (e) => {',\n ' l(p(`${b} Uncaught Exception`)); l(p(b), p(e.stack || e));',\n ' })',\n ' if (!process.eventNames().includes(e2)) // skip if it is already handled',\n ' process.on(e2, (r) => {',\n ' l(p(`${b} Unhandled promise rejection`)); l(p(`${b} ${r.stack || r}`));',\n ' });',\n '// --- CommandKit Anti-Crash Monitor ---',\n].join('\\n');\n\nconst wrapInAsyncIIFE = (code: string[]) =>\n `;await (async () => {\\n${code.join('\\n\\n')}\\n})();`;\n\nasync function injectEntryFile(\n configPath: string,\n isDev: boolean,\n emitAntiCrashScript: boolean,\n distDir?: string,\n) {\n const dist = isDev ? '.commandkit' : distDir || 'dist';\n const entryFilePath = join(configPath, dist, 'index.js');\n\n // skip if the entry file already exists\n if (existsSync(entryFilePath)) return;\n\n const code = `/* Entrypoint File Generated By CommandKit */\n${isDev ? `\\n\\n// Injected for development\\n${wrapInAsyncIIFE([envScript(isDev), emitAntiCrashScript ? antiCrashScript : ''])}\\n\\n` : wrapInAsyncIIFE([envScript(isDev)])}\n\nimport { commandkit } from 'commandkit';\nimport { Client } from 'discord.js';\n\nasync function bootstrap() {\n const app = await import('./app.js').then((m) => m.default ?? m);\n\n if (!app || !(app instanceof Client)) {\n throw new Error('The app file must default export the discord.js client instance');\n }\n\n commandkit.setClient(app);\n\n await commandkit.start();\n}\n\nawait bootstrap().catch((e) => {\n console.error('Failed to bootstrap CommandKit application:\\\\n', e.stack);\n})\n`;\n\n await writeFile(entryFilePath, code);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"build-CxC-b0wN.js","names":[],"sources":["../src/cli/build.ts"],"sourcesContent":["import { existsSync } from 'node:fs';\nimport { writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { rimraf } from 'rimraf';\nimport { build, Options } from 'tsdown';\n\nimport { MaybeArray } from '../components';\nimport { loadConfigFile } from '../config/loader';\nimport { mergeDeep } from '../config/utils';\nimport { CompilerPlugin, CompilerPluginRuntime } from '../plugins';\nimport { COMMANDKIT_CWD } from '../utils/constants';\nimport { copyLocaleFiles } from './common';\nimport { devEnvFileArgs, prodEnvFileArgs } from './env';\nimport { performTypeCheck } from './type-checker';\n\n/**\n * @private\n * @internal\n */\nexport interface ApplicationBuildOptions {\n plugins?: MaybeArray<CompilerPlugin>[] | Array<CompilerPlugin>;\n rolldownPlugins?: any[];\n isDev?: boolean;\n configPath?: string;\n}\n\n// emit public env variables and given env variables\n/**\n * @private\n * @internal\n */\nfunction mergeDefinitionsIfNeeded(env: Record<string, string>, isDev: boolean) {\n const values = Object.fromEntries(\n Object.entries(process.env).filter(\n ([k]) => !(k in env) && k.startsWith('COMMANDKIT_PUBLIC_'),\n ),\n );\n\n return {\n ...env,\n ...values,\n ...(isDev\n ? {\n NODE_ENV: 'development',\n COMMANDKIT_BOOTSTRAP_MODE: 'development',\n COMMANDKIT_IS_DEV: 'true',\n COMMANDKIT_IS_TEST: 'false',\n }\n : {\n NODE_ENV: 'production',\n COMMANDKIT_BOOTSTRAP_MODE: 'production',\n COMMANDKIT_IS_DEV: 'false',\n COMMANDKIT_IS_TEST: 'false',\n }),\n };\n}\n\n/**\n * @private\n * @internal\n */\nexport async function buildApplication({\n plugins,\n rolldownPlugins,\n isDev,\n configPath,\n}: ApplicationBuildOptions) {\n const config = await loadConfigFile(configPath);\n\n if (!isDev && !config?.typescript?.ignoreBuildErrors) {\n await performTypeCheck(configPath || COMMANDKIT_CWD);\n }\n\n const pluginRuntime = new CompilerPluginRuntime(\n (plugins || []) as CompilerPlugin[],\n );\n\n rolldownPlugins ??= [];\n\n rolldownPlugins.push(pluginRuntime.toJSON());\n\n try {\n const dest = isDev ? '.commandkit' : config.distDir;\n\n // Clean the destination directory\n await rimraf(dest);\n\n await pluginRuntime.init();\n\n await build(\n mergeDeep(\n {\n watch: false,\n dts: false,\n clean: true,\n format: ['esm'],\n shims: true,\n minify: false,\n silent: !!isDev,\n inputOptions: {\n transform: {\n jsx: {\n runtime: 'automatic',\n importSource: 'commandkit',\n },\n },\n checks: {\n circularDependency: true,\n },\n onwarn: (warning, defaultWarn) => {\n if (warning?.message?.includes('compilerOptions.jsx')) return;\n\n return defaultWarn(warning);\n },\n onLog: (level, log, defaultLog) => {\n if (isDev) return;\n\n return defaultLog(level, log);\n },\n moduleTypes: {\n '.json': 'js',\n '.node': 'binary',\n },\n },\n plugins: rolldownPlugins,\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap:\n config.sourceMap?.[isDev ? 'development' : 'production'] ?? true,\n target: 'node16',\n outDir: dest,\n env: mergeDefinitionsIfNeeded(config.env || {}, !!isDev),\n entry: Array.from(\n new Set([\n 'src/**/*.{js,cjs,mjs,ts,cts,mts,jsx,tsx}',\n `!${config.distDir}`,\n '!.commandkit',\n '!**/*.test.*',\n '!**/*.spec.*',\n ...(config.entrypoints ?? []),\n ]),\n ),\n outputOptions: {\n sanitizeFileName: (name) => name,\n },\n unbundle: isDev\n ? true\n : (config.compilerOptions?.disableChunking ?? false),\n } satisfies Options,\n config.compilerOptions?.tsdown,\n ),\n );\n\n await copyLocaleFiles('src', dest);\n await injectEntryFile(\n configPath || COMMANDKIT_CWD,\n !!isDev,\n !!(\n config.antiCrashScript?.[isDev ? 'development' : 'production'] ??\n (isDev ? true : false)\n ),\n config.distDir,\n );\n } catch (error) {\n console.error('Build failed:', error);\n if (error instanceof Error) {\n console.error('Error details:', error.stack);\n }\n process.exit(1); // Force exit on error\n } finally {\n // Ensure plugins are cleaned up\n await pluginRuntime.destroy();\n }\n}\n\nconst envScript = (dev: boolean) => `// --- Environment Variables Loader ---\nconst $env = [${(dev ? devEnvFileArgs : prodEnvFileArgs).map((p) => `\"${p}\"`).join(', ')}];\nfor (const file of $env) {\n try {\n process.loadEnvFile(file);\n console.log('\\\\x1b[36m✔ Loaded \\\\x1b[0m\\\\x1b[33m%s\\\\x1b[0m', file);\n } catch {}\n}\n`;\n\nconst antiCrashScript = [\n '// --- CommandKit Anti-Crash Monitor ---',\n \" // 'uncaughtException' event is supposed to be used to perform synchronous cleanup before shutting down the process\",\n ' // instead of using it as a means to resume operation.',\n ' // But it exists here due to compatibility reasons with discord bot ecosystem.',\n \" const p = (t) => `\\\\x1b[31m${t}\\\\x1b[0m`, b = '[CommandKit Anti-Crash Monitor]', l = console.log, e1 = 'uncaughtException', e2 = 'unhandledRejection';\",\n ' if (!process.eventNames().includes(e1)) // skip if it is already handled',\n ' process.on(e1, (e) => {',\n ' l(p(`${b} Uncaught Exception`)); l(p(b), p(e.stack || e));',\n ' })',\n ' if (!process.eventNames().includes(e2)) // skip if it is already handled',\n ' process.on(e2, (r) => {',\n ' l(p(`${b} Unhandled promise rejection`)); l(p(`${b} ${r.stack || r}`));',\n ' });',\n '// --- CommandKit Anti-Crash Monitor ---',\n].join('\\n');\n\nconst wrapInAsyncIIFE = (code: string[]) =>\n `;await (async () => {\\n${code.join('\\n\\n')}\\n})();`;\n\nasync function injectEntryFile(\n configPath: string,\n isDev: boolean,\n emitAntiCrashScript: boolean,\n distDir?: string,\n) {\n const dist = isDev ? '.commandkit' : distDir || 'dist';\n const entryFilePath = join(configPath, dist, 'index.js');\n\n // skip if the entry file already exists\n if (existsSync(entryFilePath)) return;\n\n const code = `/* Entrypoint File Generated By CommandKit */\n${isDev ? `\\n\\n// Injected for development\\n${wrapInAsyncIIFE([envScript(isDev), emitAntiCrashScript ? antiCrashScript : ''])}\\n\\n` : wrapInAsyncIIFE([envScript(isDev)])}\n\nimport { commandkit } from 'commandkit';\nimport { Client } from 'discord.js';\n\nasync function bootstrap() {\n const app = await import('./app.js').then((m) => m.default ?? m);\n\n if (!app || !(app instanceof Client)) {\n throw new Error('The app file must default export the discord.js client instance');\n }\n\n commandkit.setClient(app);\n\n await commandkit.start();\n}\n\nawait bootstrap().catch((e) => {\n console.error('Failed to bootstrap CommandKit application:\\\\n', e.stack);\n})\n`;\n\n await writeFile(entryFilePath, code);\n}\n"],"mappings":"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"}
package/dist/cli/build.js CHANGED
@@ -1,7 +1,7 @@
1
1
  require('../colors-DL3ucTiT.js');
2
2
  require('../ActionRow-CbdGFWMT.js');
3
3
  require('../error-codes-Ds0bnPvT.js');
4
- require('../commandkit-Dy4V-Rk2.js');
4
+ require('../commandkit-CuM4HbAQ.js');
5
5
  require('../common-CcfjYnPG.js');
6
6
  require('../common-vnMIelAE.js');
7
7
  require('../container-C6GtfAPW.js');
@@ -35,6 +35,6 @@ require('../CommandKitEventsChannel-B5vbINtP.js');
35
35
  require('../store-Hcgz7DSt.js');
36
36
  require('../env-_68PRRoA.js');
37
37
  require('../type-checker-M1NIIoWL.js');
38
- const require_build = require('../build-e6PlVFfe.js');
38
+ const require_build = require('../build-CxC-b0wN.js');
39
39
 
40
40
  exports.buildApplication = require_build.buildApplication;
@@ -2,7 +2,7 @@ const require_chunk = require('../chunk-nOFOJqeH.js');
2
2
  const require_colors = require('../colors-DL3ucTiT.js');
3
3
  require('../ActionRow-CbdGFWMT.js');
4
4
  require('../error-codes-Ds0bnPvT.js');
5
- const require_commandkit = require('../commandkit-Dy4V-Rk2.js');
5
+ const require_commandkit = require('../commandkit-CuM4HbAQ.js');
6
6
  require('../common-CcfjYnPG.js');
7
7
  require('../common-vnMIelAE.js');
8
8
  require('../container-C6GtfAPW.js');
@@ -37,7 +37,7 @@ require('../store-Hcgz7DSt.js');
37
37
  require('../env-_68PRRoA.js');
38
38
  const require_app_process = require('../app-process-u2DXakNv.js');
39
39
  require('../type-checker-M1NIIoWL.js');
40
- const require_build = require('../build-e6PlVFfe.js');
40
+ const require_build = require('../build-CxC-b0wN.js');
41
41
  let node_crypto = require("node:crypto");
42
42
  node_crypto = require_chunk.__toESM(node_crypto);
43
43
  let path = require("path");
@@ -1,6 +1,6 @@
1
1
  const require_chunk = require('../chunk-nOFOJqeH.js');
2
2
  const require_constants = require('../constants-B5_Ta7PR.js');
3
- const require_version = require('../version-CphQqt4J.js');
3
+ const require_version = require('../version-CS7843dE.js');
4
4
  let node_fs = require("node:fs");
5
5
  node_fs = require_chunk.__toESM(node_fs);
6
6
  let node_path = require("node:path");
package/dist/cli/init.js CHANGED
@@ -1,7 +1,7 @@
1
1
  require('../colors-DL3ucTiT.js');
2
2
  require('../ActionRow-CbdGFWMT.js');
3
3
  require('../error-codes-Ds0bnPvT.js');
4
- require('../commandkit-Dy4V-Rk2.js');
4
+ require('../commandkit-CuM4HbAQ.js');
5
5
  require('../common-CcfjYnPG.js');
6
6
  require('../common-vnMIelAE.js');
7
7
  require('../container-C6GtfAPW.js');
@@ -33,6 +33,6 @@ require('../router-DHnFRADH.js');
33
33
  require('../common-DVM_onKu.js');
34
34
  require('../CommandKitEventsChannel-B5vbINtP.js');
35
35
  require('../store-Hcgz7DSt.js');
36
- const require_init = require('../init-Bo01I_h_.js');
36
+ const require_init = require('../init-C41hZSJg.js');
37
37
 
38
38
  exports.bootstrapCommandkitCLI = require_init.bootstrapCommandkitCLI;
@@ -2,7 +2,7 @@ const require_chunk = require('../chunk-nOFOJqeH.js');
2
2
  require('../colors-DL3ucTiT.js');
3
3
  require('../ActionRow-CbdGFWMT.js');
4
4
  require('../error-codes-Ds0bnPvT.js');
5
- const require_commandkit = require('../commandkit-Dy4V-Rk2.js');
5
+ const require_commandkit = require('../commandkit-CuM4HbAQ.js');
6
6
  require('../common-CcfjYnPG.js');
7
7
  require('../common-vnMIelAE.js');
8
8
  require('../container-C6GtfAPW.js');
@@ -37,7 +37,7 @@ require('../store-Hcgz7DSt.js');
37
37
  require('../env-_68PRRoA.js');
38
38
  const require_app_process = require('../app-process-u2DXakNv.js');
39
39
  require('../type-checker-M1NIIoWL.js');
40
- const require_build = require('../build-e6PlVFfe.js');
40
+ const require_build = require('../build-CxC-b0wN.js');
41
41
  const require_utils$1 = require('../utils-DCSnVAZ6.js');
42
42
  let fs = require("fs");
43
43
  fs = require_chunk.__toESM(fs);
@@ -3975,7 +3975,7 @@ var CommandKit = class CommandKit extends node_events.default {
3975
3975
  return this;
3976
3976
  }
3977
3977
  async #init() {
3978
- if (!this.getAppDirectory()) return;
3978
+ if (!this.getAppDirectory()) throw new Error("CommandKit could not determine the application directory. This issue is common when you are not using the `commandkit dev` command to start the project. You can either use `commandkit dev` to start the project, or set the `COMMANDKIT_IS_CLI=true` environment variable (Note that adding this to `.env` file may not work).");
3979
3979
  const commandsPath = this.getPath("commands");
3980
3980
  const events = this.getPath("events");
3981
3981
  this.commandHandler = new AppCommandHandler(this);
@@ -4460,4 +4460,4 @@ Object.defineProperty(exports, 'useStore', {
4460
4460
  return useStore;
4461
4461
  }
4462
4462
  });
4463
- //# sourceMappingURL=commandkit-Dy4V-Rk2.js.map
4463
+ //# sourceMappingURL=commandkit-CuM4HbAQ.js.map