commandkit 1.0.0-dev.20250529020123 → 1.0.0-dev.20250529125116

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 (89) hide show
  1. package/dist/CommandKit.js +4 -4
  2. package/dist/CommandKit.js.map +1 -1
  3. package/dist/app/commands/AppCommandRunner.js +2 -2
  4. package/dist/app/commands/AppCommandRunner.js.map +1 -1
  5. package/dist/app/commands/Context.js +2 -2
  6. package/dist/app/commands/Context.js.map +1 -1
  7. package/dist/app/handlers/AppCommandHandler.js +3 -3
  8. package/dist/app/handlers/AppCommandHandler.js.map +1 -1
  9. package/dist/app/handlers/AppEventsHandler.js +2 -2
  10. package/dist/app/handlers/AppEventsHandler.js.map +1 -1
  11. package/dist/app/index.js +3 -3
  12. package/dist/app/index.js.map +1 -1
  13. package/dist/app/register/CommandRegistrar.js +2 -2
  14. package/dist/app/register/CommandRegistrar.js.map +1 -1
  15. package/dist/cli/app-process.js +2 -2
  16. package/dist/cli/app-process.js.map +1 -1
  17. package/dist/cli/build.js +2 -2
  18. package/dist/cli/build.js.map +1 -1
  19. package/dist/cli/common.js +4 -4
  20. package/dist/cli/common.js.map +1 -1
  21. package/dist/cli/development.js +8 -8
  22. package/dist/cli/development.js.map +1 -1
  23. package/dist/cli/generators.js +4 -4
  24. package/dist/cli/generators.js.map +1 -1
  25. package/dist/cli/information.js +1 -1
  26. package/dist/cli/information.js.map +1 -1
  27. package/dist/cli/init.js +15 -15
  28. package/dist/cli/init.js.map +1 -1
  29. package/dist/cli/production.js +9 -9
  30. package/dist/cli/production.js.map +1 -1
  31. package/dist/cli/type-checker.js +2 -2
  32. package/dist/cli/type-checker.js.map +1 -1
  33. package/dist/components/index.js +4 -4
  34. package/dist/components/index.js.map +1 -1
  35. package/dist/components/v1/button/Button.js +4 -4
  36. package/dist/components/v1/button/Button.js.map +1 -1
  37. package/dist/components/v1/button/ButtonKit.js +4 -4
  38. package/dist/components/v1/button/ButtonKit.js.map +1 -1
  39. package/dist/components/v1/modal/Modal.js +4 -4
  40. package/dist/components/v1/modal/Modal.js.map +1 -1
  41. package/dist/components/v1/modal/ModalKit.js +4 -4
  42. package/dist/components/v1/modal/ModalKit.js.map +1 -1
  43. package/dist/components/v1/select-menu/ChannelSelectMenuKit.js +4 -4
  44. package/dist/components/v1/select-menu/ChannelSelectMenuKit.js.map +1 -1
  45. package/dist/components/v1/select-menu/MentionableSelectMenuKit.js +4 -4
  46. package/dist/components/v1/select-menu/MentionableSelectMenuKit.js.map +1 -1
  47. package/dist/components/v1/select-menu/RoleSelectMenuKit.js +4 -4
  48. package/dist/components/v1/select-menu/RoleSelectMenuKit.js.map +1 -1
  49. package/dist/components/v1/select-menu/SelectMenu.js +4 -4
  50. package/dist/components/v1/select-menu/SelectMenu.js.map +1 -1
  51. package/dist/components/v1/select-menu/StringSelectMenuKit.js +4 -4
  52. package/dist/components/v1/select-menu/StringSelectMenuKit.js.map +1 -1
  53. package/dist/components/v1/select-menu/UserSelectMenuKit.js +4 -4
  54. package/dist/components/v1/select-menu/UserSelectMenuKit.js.map +1 -1
  55. package/dist/config/config.js +2 -2
  56. package/dist/config/config.js.map +1 -1
  57. package/dist/config/default.js +2 -2
  58. package/dist/config/default.js.map +1 -1
  59. package/dist/config/loader.js +4 -4
  60. package/dist/config/loader.js.map +1 -1
  61. package/dist/context/async-context.js +4 -4
  62. package/dist/context/async-context.js.map +1 -1
  63. package/dist/context/environment.js +2 -2
  64. package/dist/context/environment.js.map +1 -1
  65. package/dist/flags/feature-flags.js +6 -6
  66. package/dist/flags/feature-flags.js.map +1 -1
  67. package/dist/index.js +4 -4
  68. package/dist/index.js.map +1 -1
  69. package/dist/logger/DefaultLogger.js +2 -2
  70. package/dist/logger/DefaultLogger.js.map +1 -1
  71. package/dist/logger/Logger.js +2 -2
  72. package/dist/logger/Logger.js.map +1 -1
  73. package/dist/plugins/index.js +2 -2
  74. package/dist/plugins/index.js.map +1 -1
  75. package/dist/plugins/plugin-runtime/CommandKitPluginRuntime.js +1 -1
  76. package/dist/plugins/plugin-runtime/CommandKitPluginRuntime.js.map +1 -1
  77. package/dist/plugins/plugin-runtime/CompilerPluginRuntime.js +1 -1
  78. package/dist/plugins/plugin-runtime/CompilerPluginRuntime.js.map +1 -1
  79. package/dist/plugins/plugin-runtime/builtin/CommonDirectiveTransformer.js +2 -2
  80. package/dist/plugins/plugin-runtime/builtin/CommonDirectiveTransformer.js.map +1 -1
  81. package/dist/plugins/plugin-runtime/builtin/MacroPlugin.js +2 -2
  82. package/dist/plugins/plugin-runtime/builtin/MacroPlugin.js.map +1 -1
  83. package/dist/utils/dev-hooks.js +1 -1
  84. package/dist/utils/dev-hooks.js.map +1 -1
  85. package/dist/utils/utilities.js +1 -1
  86. package/dist/utils/utilities.js.map +1 -1
  87. package/dist/version.js +1 -1
  88. package/dist/version.js.map +1 -1
  89. package/package.json +2 -2
@@ -1,10 +1,10 @@
1
- "use strict";var h=Object.create;var x=Object.defineProperty;var P=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,j=Object.prototype.hasOwnProperty;var n=(e,t)=>x(e,"name",{value:t,configurable:!0});var I=(e,t)=>{for(var o in t)x(e,o,{get:t[o],enumerable:!0})},w=(e,t,o,c)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of A(t))!j.call(e,s)&&s!==o&&x(e,s,{get:()=>t[s],enumerable:!(c=P(t,s))||c.enumerable});return e};var T=(e,t,o)=>(o=e!=null?h(K(e)):{},w(t||!e||!e.__esModule?x(o,"default",{value:e,enumerable:!0}):o,e)),R=e=>w(x({},"__esModule",{value:!0}),e);var G={};I(G,{copyLocaleFiles:()=>B,erase:()=>V,findEntrypoint:()=>F,findPackageJSON:()=>$,loadConfigFileFromPath:()=>L,loadTypeScript:()=>_,panic:()=>g,write:()=>N});module.exports=R(G);var E=require("rimraf"),p=require("path"),i=T(require("fs"));var M=require("picocolors"),k=(0,M.createColors)(!0);var m=require("fs/promises"),l=require("path");var W=Symbol("kCommandKitCacheTag"),C=process.env.COMMANDKIT_IS_DEV==="true",X=process.env.COMMANDKIT_IS_TEST==="true",Y=process.env.COMMANDKIT_BOOTSTRAP_MODE||"development";var b=require("fs");async function O(e=!1){let t=(0,l.join)(process.cwd(),"node_modules","commandkit-types");if(!C&&!e)return t;let o=(0,l.join)(t,"package.json"),c=(0,l.join)(t,"index.js"),s=(0,l.join)(t,"index.d.ts"),d=(0,l.join)(t,"command.d.ts"),f={name:"commandkit-types",version:"1.0.0",description:"CommandKit types package",type:"commonjs",main:"index.js",types:"index.d.ts"},r="module.exports = {};",y=`// Main types index file - imports all type declarations
1
+ "use strict";var D=Object.create;var x=Object.defineProperty;var P=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,j=Object.prototype.hasOwnProperty;var s=(e,t)=>x(e,"name",{value:t,configurable:!0});var I=(e,t)=>{for(var n in t)x(e,n,{get:t[n],enumerable:!0})},w=(e,t,n,d)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of A(t))!j.call(e,o)&&o!==n&&x(e,o,{get:()=>t[o],enumerable:!(d=P(t,o))||d.enumerable});return e};var T=(e,t,n)=>(n=e!=null?D(K(e)):{},w(t||!e||!e.__esModule?x(n,"default",{value:e,enumerable:!0}):n,e)),F=e=>w(x({},"__esModule",{value:!0}),e);var G={};I(G,{copyLocaleFiles:()=>B,erase:()=>V,findEntrypoint:()=>b,findPackageJSON:()=>$,loadConfigFileFromPath:()=>L,loadTypeScript:()=>_,panic:()=>g,write:()=>N});module.exports=F(G);var E=require("rimraf"),a=require("path"),r=T(require("fs"));var M=require("picocolors"),k=(0,M.createColors)(!0);var m=require("fs/promises"),u=require("path");var W=Symbol("kCommandKitCacheTag"),C=process.env.COMMANDKIT_IS_DEV==="true",X=process.env.COMMANDKIT_IS_TEST==="true",Y=process.env.COMMANDKIT_BOOTSTRAP_MODE||"development";var R=require("fs");async function O(e=!1){let t=(0,u.join)(process.cwd(),"node_modules","commandkit-types");if(!C&&!e)return t;let n=(0,u.join)(t,"package.json"),d=(0,u.join)(t,"index.js"),o=(0,u.join)(t,"index.d.ts"),l=(0,u.join)(t,"command.d.ts"),y={name:"commandkit-types",version:"1.0.0",description:"CommandKit types package",type:"commonjs",main:"index.js",types:"index.d.ts"},i="module.exports = {};",p=`// Main types index file - imports all type declarations
2
2
  import './command';
3
3
  export {};
4
- `,D=`// Auto-generated command types
4
+ `,h=`// Auto-generated command types
5
5
  export {};
6
6
  declare module 'commandkit' {
7
7
  type CommandTypeData = string
8
- }`;return await(0,m.mkdir)(t,{recursive:!0}).catch(()=>{}),await(0,m.writeFile)(o,JSON.stringify(f,null,2)),await(0,m.writeFile)(c,r),await(0,m.writeFile)(s,y),await(0,m.writeFile)(d,D),t}n(O,"generateTypesPackage");var v=require("child_process");var a;function N(e){process.stdout.write(e),process.stdout.write(`
9
- `)}n(N,"write");function F(e){let t=(0,p.join)(e,"sharding-manager.js");return i.default.existsSync(t)?t:(0,p.join)(e,"index.js")}n(F,"findEntrypoint");function g(e){N(k.red(`Error: ${e}`)),process.exit(1)}n(g,"panic");function $(){let e=process.cwd(),t=(0,p.join)(e,"package.json");return i.default.existsSync(t)||g("Could not find package.json in current directory."),JSON.parse(i.default.readFileSync(t,"utf8"))}n($,"findPackageJSON");async function H(e){return/\.(c|m)?tsx?$/.test(e)?(process.features.typescript||await _(),!0):!1}n(H,"ensureTypeScript");var u;function J(){if(u)return u;let e={"yarn.lock":"yarn","pnpm-lock.yaml":"pnpm","package-lock.json":"npm","bun.lock":"bun","bun.lockb":"bun"};for(let[t,o]of Object.entries(e))if(i.default.existsSync((0,p.join)(process.cwd(),t))){u=o;break}return u||(u="npm"),u}n(J,"detectPackageManager");async function _(e){if(a)return a;try{a=await import("typescript")}catch(t){if(t instanceof Error&&"code"in t&&t.code==="MODULE_NOT_FOUND")try{let o=J();return(0,v.execSync)(`${o} add typescript`,{stdio:"inherit",cwd:process.cwd()}),console.log(k.cyan("TypeScript has been installed automatically, restarting...")),a=await import("typescript"),a}catch{g("TypeScript is not installed and could not be installed automatically. Please install it manually.")}g(t||"TypeScript must be installed to use TypeScript config files.")}return a}n(_,"loadTypeScript");async function L(e){if(await U(e),await H(e)&&a){let{transpileModule:c}=a,s=i.default.readFileSync(e,"utf8"),{outputText:d}=c(s,{compilerOptions:{module:a.ModuleKind.ESNext,target:a.ScriptTarget.ESNext,moduleResolution:a.ModuleResolutionKind.NodeNext},fileName:e}),f=await O(),r=(0,p.join)(f,"compiled-commandkit.config.mjs");i.default.writeFileSync(r,d),e=r}return await import(`file://${e}`).then(c=>c.default||c)}n(L,"loadConfigFileFromPath");async function U(e){if(!i.default.existsSync(e))throw new Error(`File not found: ${e}`)}n(U,"ensureExists");function V(e){(0,E.rimrafSync)(e)}n(V,"erase");async function B(e,t){let o=(0,p.join)(process.cwd(),e),c=(0,p.join)(process.cwd(),t),s=["app/locales"],d=s.map(r=>(0,p.join)(o,r)),f=s.map(r=>(0,p.join)(c,r));for(let r of d){if(!i.default.existsSync(r))continue;let y=f[d.indexOf(r)];i.default.existsSync(y)||i.default.promises.mkdir(y,{recursive:!0}),await i.default.promises.cp(r,y,{recursive:!0,force:!0})}}n(B,"copyLocaleFiles");0&&(module.exports={copyLocaleFiles,erase,findEntrypoint,findPackageJSON,loadConfigFileFromPath,loadTypeScript,panic,write});
8
+ }`;return await(0,m.mkdir)(t,{recursive:!0}).catch(()=>{}),await(0,m.writeFile)(n,JSON.stringify(y,null,2)),await(0,m.writeFile)(d,i),await(0,m.writeFile)(o,p),await(0,m.writeFile)(l,h),t}s(O,"generateTypesPackage");var v=require("child_process");var c;function N(e){process.stdout.write(e),process.stdout.write(`
9
+ `)}s(N,"write");function b(e){let t=(0,a.join)(e,"sharding-manager.js");return r.default.existsSync(t)?t:(0,a.join)(e,"index.js")}s(b,"findEntrypoint");function g(e){N(k.red(`Error: ${e}`)),process.exit(1)}s(g,"panic");function $(){let e=process.cwd(),t=(0,a.join)(e,"package.json");return r.default.existsSync(t)||g("Could not find package.json in current directory."),JSON.parse(r.default.readFileSync(t,"utf8"))}s($,"findPackageJSON");async function H(e){return/\.(c|m)?tsx?$/.test(e)?(process.features.typescript||await _(),!0):!1}s(H,"ensureTypeScript");var f;function J(){if(f)return f;let e={"yarn.lock":"yarn","pnpm-lock.yaml":"pnpm","package-lock.json":"npm","bun.lock":"bun","bun.lockb":"bun"};for(let[t,n]of Object.entries(e))if(r.default.existsSync((0,a.join)(process.cwd(),t))){f=n;break}return f||(f="npm"),f}s(J,"detectPackageManager");async function _(e){if(c)return c;try{c=await import("typescript")}catch(t){if(t instanceof Error&&"code"in t&&t.code==="MODULE_NOT_FOUND")try{let n=J();return(0,v.execSync)(`${n} add typescript`,{stdio:"inherit",cwd:process.cwd()}),console.log(k.cyan("TypeScript has been installed automatically, restarting...")),c=await import("typescript"),c}catch{g("TypeScript is not installed and could not be installed automatically. Please install it manually.")}g(t||"TypeScript must be installed to use TypeScript config files.")}return c}s(_,"loadTypeScript");async function L(e){await U(e);let t=await H(e),n;if(t&&c){let{transpileModule:o}=c,l=r.default.readFileSync(e,"utf8"),{outputText:y}=o(l,{compilerOptions:{module:c.ModuleKind.ESNext,target:c.ScriptTarget.ESNext,moduleResolution:c.ModuleResolutionKind.NodeNext},fileName:e});await O();let i=process.cwd(),p=(0,a.join)(i,"compiled-commandkit.config.mjs");r.default.writeFileSync(p,y),n=p,e=p}let d=await import(`file://${e}`).then(o=>o.default||o);if(n)try{r.default.unlinkSync(n)}catch{}return d}s(L,"loadConfigFileFromPath");async function U(e){if(!r.default.existsSync(e))throw new Error(`File not found: ${e}`)}s(U,"ensureExists");function V(e){(0,E.rimrafSync)(e)}s(V,"erase");async function B(e,t){let n=(0,a.join)(process.cwd(),e),d=(0,a.join)(process.cwd(),t),o=["app/locales"],l=o.map(i=>(0,a.join)(n,i)),y=o.map(i=>(0,a.join)(d,i));for(let i of l){if(!r.default.existsSync(i))continue;let p=y[l.indexOf(i)];r.default.existsSync(p)||r.default.promises.mkdir(p,{recursive:!0}),await r.default.promises.cp(i,p,{recursive:!0,force:!0})}}s(B,"copyLocaleFiles");0&&(module.exports={copyLocaleFiles,erase,findEntrypoint,findPackageJSON,loadConfigFileFromPath,loadTypeScript,panic,write});
10
10
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/common.ts","../../src/utils/colors.ts","../../src/utils/types-package.ts","../../src/utils/constants.ts"],"sourcesContent":["import { rimrafSync } from 'rimraf';\nimport { join } from 'node:path';\nimport fs from 'node:fs';\nimport colors from '../utils/colors';\nimport { ResolvedCommandKitConfig } from '../config/utils';\nimport { generateTypesPackage } from '../utils/types-package';\nimport { execSync } from 'node:child_process';\n\nlet ts: typeof import('typescript') | undefined;\n\nexport function write(message: any) {\n process.stdout.write(message);\n process.stdout.write('\\n');\n}\n\nexport function findEntrypoint(dir: string) {\n const target = join(dir, 'sharding-manager.js');\n\n // if sharding manager exists, return that file instead\n if (fs.existsSync(target)) return target;\n\n return join(dir, 'index.js');\n}\n\n/**\n * @returns {never}\n */\nexport function panic(message: any): never {\n write(colors.red(`Error: ${message}`));\n process.exit(1);\n}\n\nexport function findPackageJSON() {\n const cwd = process.cwd();\n const target = join(cwd, 'package.json');\n\n if (!fs.existsSync(target)) {\n panic('Could not find package.json in current directory.');\n }\n\n return JSON.parse(fs.readFileSync(target, 'utf8'));\n}\n\nasync function ensureTypeScript(target: string) {\n const isTypeScript = /\\.(c|m)?tsx?$/.test(target);\n\n if (!isTypeScript) return false;\n if (process.features.typescript) return true;\n\n await loadTypeScript();\n\n return true;\n}\n\nlet packageManager: string;\n\nfunction detectPackageManager() {\n if (packageManager) return packageManager;\n\n const lockfiles = {\n 'yarn.lock': 'yarn',\n 'pnpm-lock.yaml': 'pnpm',\n 'package-lock.json': 'npm',\n 'bun.lock': 'bun',\n 'bun.lockb': 'bun'\n };\n\n for (const [lockfile, manager] of Object.entries(lockfiles)) {\n if (fs.existsSync(join(process.cwd(), lockfile))) {\n packageManager = manager;\n break;\n }\n }\n\n if (!packageManager) {\n packageManager = 'npm';\n }\n\n return packageManager;\n}\n\nexport async function loadTypeScript(e?: string) {\n if (ts) return ts;\n\n try {\n ts = await import('typescript');\n } catch (e) {\n if (e instanceof Error && 'code' in e && e.code === 'MODULE_NOT_FOUND') {\n try {\n const packageManager = detectPackageManager();\n\n execSync(`${packageManager} add typescript`, {\n stdio: 'inherit',\n cwd: process.cwd()\n });\n\n console.log(\n colors.cyan(\n `TypeScript has been installed automatically, restarting...`\n )\n );\n\n ts = await import('typescript');\n\n return ts;\n } catch {\n panic(\n 'TypeScript is not installed and could not be installed automatically. Please install it manually.'\n );\n }\n }\n panic(e || 'TypeScript must be installed to use TypeScript config files.');\n }\n\n return ts;\n}\n\nexport async function loadConfigFileFromPath(\ntarget: string)\n: Promise<ResolvedCommandKitConfig> {\n await ensureExists(target);\n\n const isTs = await ensureTypeScript(target);\n\n if (isTs && ts) {\n const { transpileModule } = ts;\n const src = fs.readFileSync(target, 'utf8');\n const { outputText } = transpileModule(src, {\n compilerOptions: {\n module: ts.ModuleKind.ESNext,\n target: ts.ScriptTarget.ESNext,\n moduleResolution: ts.ModuleResolutionKind.NodeNext\n },\n fileName: target\n });\n\n const nodeModulesPath = await generateTypesPackage();\n\n const tmpFile = join(nodeModulesPath, 'compiled-commandkit.config.mjs');\n\n fs.writeFileSync(tmpFile, outputText);\n\n target = tmpFile;\n }\n\n /**\n * @type {import('..').CommandKitConfig}\n */\n const config = await import(`file://${target}`).then(\n (conf) => conf.default || conf\n );\n\n return config;\n}\n\nasync function ensureExists(loc: string) {\n const exists = fs.existsSync(loc);\n\n if (!exists) {\n throw new Error(`File not found: ${loc}`);\n }\n}\n\nexport function erase(dir: string) {\n rimrafSync(dir);\n}\n\nexport async function copyLocaleFiles(_from: string, _to: string) {\n const resolvedFrom = join(process.cwd(), _from);\n const resolvedTo = join(process.cwd(), _to);\n\n const localePaths = ['app/locales'];\n const srcLocalePaths = localePaths.map((path) => join(resolvedFrom, path));\n const destLocalePaths = localePaths.map((path) => join(resolvedTo, path));\n\n for (const localePath of srcLocalePaths) {\n if (!fs.existsSync(localePath)) {\n continue;\n }\n\n // copy localePath to destLocalePath\n const destLocalePath = destLocalePaths[srcLocalePaths.indexOf(localePath)];\n\n if (!fs.existsSync(destLocalePath)) {\n fs.promises.mkdir(destLocalePath, { recursive: true });\n }\n\n await fs.promises.cp(localePath, destLocalePath, {\n recursive: true,\n force: true\n });\n }\n}","import { createColors } from 'picocolors';\n\nexport default createColors(true);","import { mkdir, writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { COMMANDKIT_IS_DEV } from './constants';\nimport { existsSync } from 'node:fs';\n\nexport async function generateTypesPackage(force = false) {\n const location = join(process.cwd(), 'node_modules', 'commandkit-types');\n if (!COMMANDKIT_IS_DEV && !force) return location;\n const packageJSON = join(location, 'package.json');\n const index = join(location, 'index.js');\n const types = join(location, 'index.d.ts');\n const command = join(location, 'command.d.ts');\n\n const packageJSONContent = {\n name: 'commandkit-types',\n version: '1.0.0',\n description: 'CommandKit types package',\n type: 'commonjs',\n main: 'index.js',\n types: 'index.d.ts'\n };\n\n const indexContent = `module.exports = {};`;\n\n // Restructuring the type declarations to properly extend rather than replace types\n const typesContent = `// Main types index file - imports all type declarations\nimport './command';\nexport {};\n`;\n\n // Properly set up command types to extend the CommandTypeData interface\n const commandTypesContent = `// Auto-generated command types\n export {};\ndeclare module 'commandkit' {\n type CommandTypeData = string\n}`;\n\n await mkdir(location, { recursive: true }).catch(() => {});\n await writeFile(packageJSON, JSON.stringify(packageJSONContent, null, 2));\n await writeFile(index, indexContent);\n await writeFile(types, typesContent);\n await writeFile(command, commandTypesContent);\n\n return location;\n}\n\nexport async function rewriteCommandDeclaration(data: string) {\n const commandTypesContent = `// Auto-generated command types\n declare module 'commandkit' {\n ${data}\n}\n export {};\n`;\n\n const location = join(process.cwd(), 'node_modules', 'commandkit-types');\n\n if (!existsSync(location)) return;\n\n const type = join(location, 'command.d.ts');\n\n await writeFile(type, commandTypesContent, { encoding: 'utf-8' });\n}","export const COMMANDKIT_CACHE_TAG = Symbol('kCommandKitCacheTag');\n\nexport const COMMANDKIT_IS_DEV = process.env.COMMANDKIT_IS_DEV === 'true';\n\nexport const COMMANDKIT_IS_TEST = process.env.COMMANDKIT_IS_TEST === 'true';\n\nexport const COMMANDKIT_BOOTSTRAP_MODE = (process.env.\nCOMMANDKIT_BOOTSTRAP_MODE || 'development') as 'development' | 'production';\n\n/**\n * Types of Hot Module Replacement events\n */\nexport const HMREventType = {\n ReloadCommands: 'reload-commands',\n ReloadEvents: 'reload-events',\n Unknown: 'unknown'\n} as const;\n\nexport type HMREventType = (typeof HMREventType)[keyof typeof HMREventType];"],"mappings":"6mBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,UAAAC,EAAA,mBAAAC,EAAA,oBAAAC,EAAA,2BAAAC,EAAA,mBAAAC,EAAA,UAAAC,EAAA,UAAAC,IAAA,eAAAC,EAAAV,GAAA,IAAAW,EAA2B,kBAC3BC,EAAqB,gBACrBC,EAAe,iBCFf,IAAAC,EAA6B,sBAEtBC,KAAQ,gBAAa,EAAI,ECFhC,IAAAC,EAAiC,uBACjCC,EAAqB,gBCDd,IAAMC,EAAuB,OAAO,qBAAqB,EAEnDC,EAAoB,QAAQ,IAAI,oBAAsB,OAEtDC,EAAqB,QAAQ,IAAI,qBAAuB,OAExDC,EAA6B,QAAQ,IAClD,2BAA6B,cDJ7B,IAAAC,EAA2B,cAE3B,eAAsBC,EAAqBC,EAAQ,GAAO,CACxD,IAAMC,KAAW,QAAK,QAAQ,IAAI,EAAG,eAAgB,kBAAkB,EACvE,GAAI,CAACC,GAAqB,CAACF,EAAO,OAAOC,EACzC,IAAME,KAAc,QAAKF,EAAU,cAAc,EAC3CG,KAAQ,QAAKH,EAAU,UAAU,EACjCI,KAAQ,QAAKJ,EAAU,YAAY,EACnCK,KAAU,QAAKL,EAAU,cAAc,EAEvCM,EAAqB,CACzB,KAAM,mBACN,QAAS,QACT,YAAa,2BACb,KAAM,WACN,KAAM,WACN,MAAO,YACT,EAEMC,EAAe,uBAGfC,EAAe;AAAA;AAAA;AAAA,EAMfC,EAAsB;AAAA;AAAA;AAAA;AAAA,GAM5B,eAAM,SAAMT,EAAU,CAAE,UAAW,EAAK,CAAC,EAAE,MAAM,IAAM,CAAC,CAAC,EACzD,QAAM,aAAUE,EAAa,KAAK,UAAUI,EAAoB,KAAM,CAAC,CAAC,EACxE,QAAM,aAAUH,EAAOI,CAAY,EACnC,QAAM,aAAUH,EAAOI,CAAY,EACnC,QAAM,aAAUH,EAASI,CAAmB,EAErCT,CACT,CAvCsBU,EAAAZ,EAAA,wBFCtB,IAAAa,EAAyB,yBAEzB,IAAIC,EAEG,SAASC,EAAMC,EAAc,CAClC,QAAQ,OAAO,MAAMA,CAAO,EAC5B,QAAQ,OAAO,MAAM;AAAA,CAAI,CAC3B,CAHgBC,EAAAF,EAAA,SAKT,SAASG,EAAeC,EAAa,CAC1C,IAAMC,KAAS,QAAKD,EAAK,qBAAqB,EAG9C,OAAI,EAAAE,QAAG,WAAWD,CAAM,EAAUA,KAE3B,QAAKD,EAAK,UAAU,CAC7B,CAPgBF,EAAAC,EAAA,kBAYT,SAASI,EAAMN,EAAqB,CACzCD,EAAMQ,EAAO,IAAI,UAAUP,CAAO,EAAE,CAAC,EACrC,QAAQ,KAAK,CAAC,CAChB,CAHgBC,EAAAK,EAAA,SAKT,SAASE,GAAkB,CAChC,IAAMC,EAAM,QAAQ,IAAI,EAClBL,KAAS,QAAKK,EAAK,cAAc,EAEvC,OAAK,EAAAJ,QAAG,WAAWD,CAAM,GACvBE,EAAM,mDAAmD,EAGpD,KAAK,MAAM,EAAAD,QAAG,aAAaD,EAAQ,MAAM,CAAC,CACnD,CATgBH,EAAAO,EAAA,mBAWhB,eAAeE,EAAiBN,EAAgB,CAG9C,MAFqB,gBAAgB,KAAKA,CAAM,GAG5C,QAAQ,SAAS,YAErB,MAAMO,EAAe,EAEd,IALmB,EAM5B,CATeV,EAAAS,EAAA,oBAWf,IAAIE,EAEJ,SAASC,GAAuB,CAC9B,GAAID,EAAgB,OAAOA,EAE3B,IAAME,EAAY,CAChB,YAAa,OACb,iBAAkB,OAClB,oBAAqB,MACrB,WAAY,MACZ,YAAa,KACf,EAEA,OAAW,CAACC,EAAUC,CAAO,IAAK,OAAO,QAAQF,CAAS,EACxD,GAAI,EAAAT,QAAG,cAAW,QAAK,QAAQ,IAAI,EAAGU,CAAQ,CAAC,EAAG,CAChDH,EAAiBI,EACjB,KACF,CAGF,OAAKJ,IACHA,EAAiB,OAGZA,CACT,CAvBSX,EAAAY,EAAA,wBAyBT,eAAsBF,EAAe,EAAY,CAC/C,GAAIb,EAAI,OAAOA,EAEf,GAAI,CACFA,EAAK,KAAM,QAAO,YAAY,CAChC,OAASmB,EAAG,CACV,GAAIA,aAAa,OAAS,SAAUA,GAAKA,EAAE,OAAS,mBAClD,GAAI,CACF,IAAML,EAAiBC,EAAqB,EAE5C,qBAAS,GAAGD,CAAc,kBAAmB,CAC3C,MAAO,UACP,IAAK,QAAQ,IAAI,CACnB,CAAC,EAED,QAAQ,IACNL,EAAO,KACL,4DACF,CACF,EAEAT,EAAK,KAAM,QAAO,YAAY,EAEvBA,CACT,MAAQ,CACNQ,EACE,mGACF,CACF,CAEFA,EAAMW,GAAK,8DAA8D,CAC3E,CAEA,OAAOnB,CACT,CAlCsBG,EAAAU,EAAA,kBAoCtB,eAAsBO,EACtBd,EACoC,CAKlC,GAJA,MAAMe,EAAaf,CAAM,EAEZ,MAAMM,EAAiBN,CAAM,GAE9BN,EAAI,CACd,GAAM,CAAE,gBAAAsB,CAAgB,EAAItB,EACtBuB,EAAM,EAAAhB,QAAG,aAAaD,EAAQ,MAAM,EACpC,CAAE,WAAAkB,CAAW,EAAIF,EAAgBC,EAAK,CAC1C,gBAAiB,CACf,OAAQvB,EAAG,WAAW,OACtB,OAAQA,EAAG,aAAa,OACxB,iBAAkBA,EAAG,qBAAqB,QAC5C,EACA,SAAUM,CACZ,CAAC,EAEKmB,EAAkB,MAAMC,EAAqB,EAE7CC,KAAU,QAAKF,EAAiB,gCAAgC,EAEtE,EAAAlB,QAAG,cAAcoB,EAASH,CAAU,EAEpClB,EAASqB,CACX,CASA,OAJe,MAAM,OAAO,UAAUrB,CAAM,IAAI,KAC7CsB,GAASA,EAAK,SAAWA,CAC5B,CAGF,CApCsBzB,EAAAiB,EAAA,0BAsCtB,eAAeC,EAAaQ,EAAa,CAGvC,GAAI,CAFW,EAAAtB,QAAG,WAAWsB,CAAG,EAG9B,MAAM,IAAI,MAAM,mBAAmBA,CAAG,EAAE,CAE5C,CANe1B,EAAAkB,EAAA,gBAQR,SAASS,EAAMzB,EAAa,IACjC,cAAWA,CAAG,CAChB,CAFgBF,EAAA2B,EAAA,SAIhB,eAAsBC,EAAgBC,EAAeC,EAAa,CAChE,IAAMC,KAAe,QAAK,QAAQ,IAAI,EAAGF,CAAK,EACxCG,KAAa,QAAK,QAAQ,IAAI,EAAGF,CAAG,EAEpCG,EAAc,CAAC,aAAa,EAC5BC,EAAiBD,EAAY,IAAKE,MAAS,QAAKJ,EAAcI,CAAI,CAAC,EACnEC,EAAkBH,EAAY,IAAKE,MAAS,QAAKH,EAAYG,CAAI,CAAC,EAExE,QAAWE,KAAcH,EAAgB,CACvC,GAAI,CAAC,EAAA9B,QAAG,WAAWiC,CAAU,EAC3B,SAIF,IAAMC,EAAiBF,EAAgBF,EAAe,QAAQG,CAAU,CAAC,EAEpE,EAAAjC,QAAG,WAAWkC,CAAc,GAC/B,EAAAlC,QAAG,SAAS,MAAMkC,EAAgB,CAAE,UAAW,EAAK,CAAC,EAGvD,MAAM,EAAAlC,QAAG,SAAS,GAAGiC,EAAYC,EAAgB,CAC/C,UAAW,GACX,MAAO,EACT,CAAC,CACH,CACF,CAzBsBtC,EAAA4B,EAAA","names":["common_exports","__export","copyLocaleFiles","erase","findEntrypoint","findPackageJSON","loadConfigFileFromPath","loadTypeScript","panic","write","__toCommonJS","import_rimraf","import_node_path","import_node_fs","import_picocolors","colors_default","import_promises","import_node_path","COMMANDKIT_CACHE_TAG","COMMANDKIT_IS_DEV","COMMANDKIT_IS_TEST","COMMANDKIT_BOOTSTRAP_MODE","import_node_fs","generateTypesPackage","force","location","COMMANDKIT_IS_DEV","packageJSON","index","types","command","packageJSONContent","indexContent","typesContent","commandTypesContent","__name","import_node_child_process","ts","write","message","__name","findEntrypoint","dir","target","fs","panic","colors_default","findPackageJSON","cwd","ensureTypeScript","loadTypeScript","packageManager","detectPackageManager","lockfiles","lockfile","manager","e","loadConfigFileFromPath","ensureExists","transpileModule","src","outputText","nodeModulesPath","generateTypesPackage","tmpFile","conf","loc","erase","copyLocaleFiles","_from","_to","resolvedFrom","resolvedTo","localePaths","srcLocalePaths","path","destLocalePaths","localePath","destLocalePath"]}
1
+ {"version":3,"sources":["../../src/cli/common.ts","../../src/utils/colors.ts","../../src/utils/types-package.ts","../../src/utils/constants.ts"],"sourcesContent":["import { rimrafSync } from 'rimraf';\nimport { join } from 'node:path';\nimport fs from 'node:fs';\nimport colors from '../utils/colors';\nimport { ResolvedCommandKitConfig } from '../config/utils';\nimport { generateTypesPackage } from '../utils/types-package';\nimport { execSync } from 'node:child_process';\n\nlet ts: typeof import('typescript') | undefined;\n\nexport function write(message: any) {\n process.stdout.write(message);\n process.stdout.write('\\n');\n}\n\nexport function findEntrypoint(dir: string) {\n const target = join(dir, 'sharding-manager.js');\n\n // if sharding manager exists, return that file instead\n if (fs.existsSync(target)) return target;\n\n return join(dir, 'index.js');\n}\n\n/**\n * @returns {never}\n */\nexport function panic(message: any): never {\n write(colors.red(`Error: ${message}`));\n process.exit(1);\n}\n\nexport function findPackageJSON() {\n const cwd = process.cwd();\n const target = join(cwd, 'package.json');\n\n if (!fs.existsSync(target)) {\n panic('Could not find package.json in current directory.');\n }\n\n return JSON.parse(fs.readFileSync(target, 'utf8'));\n}\n\nasync function ensureTypeScript(target: string) {\n const isTypeScript = /\\.(c|m)?tsx?$/.test(target);\n\n if (!isTypeScript) return false;\n if (process.features.typescript) return true;\n\n await loadTypeScript();\n\n return true;\n}\n\nlet packageManager: string;\n\nfunction detectPackageManager() {\n if (packageManager) return packageManager;\n\n const lockfiles = {\n 'yarn.lock': 'yarn',\n 'pnpm-lock.yaml': 'pnpm',\n 'package-lock.json': 'npm',\n 'bun.lock': 'bun',\n 'bun.lockb': 'bun'\n };\n\n for (const [lockfile, manager] of Object.entries(lockfiles)) {\n if (fs.existsSync(join(process.cwd(), lockfile))) {\n packageManager = manager;\n break;\n }\n }\n\n if (!packageManager) {\n packageManager = 'npm';\n }\n\n return packageManager;\n}\n\nexport async function loadTypeScript(e?: string) {\n if (ts) return ts;\n\n try {\n ts = await import('typescript');\n } catch (e) {\n if (e instanceof Error && 'code' in e && e.code === 'MODULE_NOT_FOUND') {\n try {\n const packageManager = detectPackageManager();\n\n execSync(`${packageManager} add typescript`, {\n stdio: 'inherit',\n cwd: process.cwd()\n });\n\n console.log(\n colors.cyan(\n `TypeScript has been installed automatically, restarting...`\n )\n );\n\n ts = await import('typescript');\n\n return ts;\n } catch {\n panic(\n 'TypeScript is not installed and could not be installed automatically. Please install it manually.'\n );\n }\n }\n panic(e || 'TypeScript must be installed to use TypeScript config files.');\n }\n\n return ts;\n}\n\nexport async function loadConfigFileFromPath(\ntarget: string)\n: Promise<ResolvedCommandKitConfig> {\n await ensureExists(target);\n\n const isTs = await ensureTypeScript(target);\n\n let generatedFilePath: string | undefined;\n\n if (isTs && ts) {\n const { transpileModule } = ts;\n const src = fs.readFileSync(target, 'utf8');\n const { outputText } = transpileModule(src, {\n compilerOptions: {\n module: ts.ModuleKind.ESNext,\n target: ts.ScriptTarget.ESNext,\n moduleResolution: ts.ModuleResolutionKind.NodeNext\n },\n fileName: target\n });\n\n await generateTypesPackage();\n\n const nodeModulesPath = process.cwd();\n\n const tmpFile = join(nodeModulesPath, 'compiled-commandkit.config.mjs');\n\n fs.writeFileSync(tmpFile, outputText);\n\n generatedFilePath = tmpFile;\n\n target = tmpFile;\n }\n\n /**\n * @type {import('..').CommandKitConfig}\n */\n const config = await import(`file://${target}`).then(\n (conf) => conf.default || conf\n );\n\n if (generatedFilePath) {\n try {\n fs.unlinkSync(generatedFilePath);\n } catch {\n\n //\n }}\n\n return config;\n}\n\nasync function ensureExists(loc: string) {\n const exists = fs.existsSync(loc);\n\n if (!exists) {\n throw new Error(`File not found: ${loc}`);\n }\n}\n\nexport function erase(dir: string) {\n rimrafSync(dir);\n}\n\nexport async function copyLocaleFiles(_from: string, _to: string) {\n const resolvedFrom = join(process.cwd(), _from);\n const resolvedTo = join(process.cwd(), _to);\n\n const localePaths = ['app/locales'];\n const srcLocalePaths = localePaths.map((path) => join(resolvedFrom, path));\n const destLocalePaths = localePaths.map((path) => join(resolvedTo, path));\n\n for (const localePath of srcLocalePaths) {\n if (!fs.existsSync(localePath)) {\n continue;\n }\n\n // copy localePath to destLocalePath\n const destLocalePath = destLocalePaths[srcLocalePaths.indexOf(localePath)];\n\n if (!fs.existsSync(destLocalePath)) {\n fs.promises.mkdir(destLocalePath, { recursive: true });\n }\n\n await fs.promises.cp(localePath, destLocalePath, {\n recursive: true,\n force: true\n });\n }\n}","import { createColors } from 'picocolors';\n\nexport default createColors(true);","import { mkdir, writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { COMMANDKIT_IS_DEV } from './constants';\nimport { existsSync } from 'node:fs';\n\nexport async function generateTypesPackage(force = false) {\n const location = join(process.cwd(), 'node_modules', 'commandkit-types');\n if (!COMMANDKIT_IS_DEV && !force) return location;\n const packageJSON = join(location, 'package.json');\n const index = join(location, 'index.js');\n const types = join(location, 'index.d.ts');\n const command = join(location, 'command.d.ts');\n\n const packageJSONContent = {\n name: 'commandkit-types',\n version: '1.0.0',\n description: 'CommandKit types package',\n type: 'commonjs',\n main: 'index.js',\n types: 'index.d.ts'\n };\n\n const indexContent = `module.exports = {};`;\n\n // Restructuring the type declarations to properly extend rather than replace types\n const typesContent = `// Main types index file - imports all type declarations\nimport './command';\nexport {};\n`;\n\n // Properly set up command types to extend the CommandTypeData interface\n const commandTypesContent = `// Auto-generated command types\n export {};\ndeclare module 'commandkit' {\n type CommandTypeData = string\n}`;\n\n await mkdir(location, { recursive: true }).catch(() => {});\n await writeFile(packageJSON, JSON.stringify(packageJSONContent, null, 2));\n await writeFile(index, indexContent);\n await writeFile(types, typesContent);\n await writeFile(command, commandTypesContent);\n\n return location;\n}\n\nexport async function rewriteCommandDeclaration(data: string) {\n const commandTypesContent = `// Auto-generated command types\n declare module 'commandkit' {\n ${data}\n}\n export {};\n`;\n\n const location = join(process.cwd(), 'node_modules', 'commandkit-types');\n\n if (!existsSync(location)) return;\n\n const type = join(location, 'command.d.ts');\n\n await writeFile(type, commandTypesContent, { encoding: 'utf-8' });\n}","export const COMMANDKIT_CACHE_TAG = Symbol('kCommandKitCacheTag');\n\nexport const COMMANDKIT_IS_DEV = process.env.COMMANDKIT_IS_DEV === 'true';\n\nexport const COMMANDKIT_IS_TEST = process.env.COMMANDKIT_IS_TEST === 'true';\n\nexport const COMMANDKIT_BOOTSTRAP_MODE = (process.env.\nCOMMANDKIT_BOOTSTRAP_MODE || 'development') as 'development' | 'production';\n\n/**\n * Types of Hot Module Replacement events\n */\nexport const HMREventType = {\n ReloadCommands: 'reload-commands',\n ReloadEvents: 'reload-events',\n Unknown: 'unknown'\n} as const;\n\nexport type HMREventType = (typeof HMREventType)[keyof typeof HMREventType];"],"mappings":"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","names":["common_exports","__export","copyLocaleFiles","erase","findEntrypoint","findPackageJSON","loadConfigFileFromPath","loadTypeScript","panic","write","__toCommonJS","import_rimraf","import_node_path","import_node_fs","import_picocolors","colors_default","import_promises","import_node_path","COMMANDKIT_CACHE_TAG","COMMANDKIT_IS_DEV","COMMANDKIT_IS_TEST","COMMANDKIT_BOOTSTRAP_MODE","import_node_fs","generateTypesPackage","force","location","COMMANDKIT_IS_DEV","packageJSON","index","types","command","packageJSONContent","indexContent","typesContent","commandTypesContent","__name","import_node_child_process","ts","write","message","__name","findEntrypoint","dir","target","fs","panic","colors_default","findPackageJSON","cwd","ensureTypeScript","loadTypeScript","packageManager","detectPackageManager","lockfiles","lockfile","manager","e","loadConfigFileFromPath","ensureExists","isTs","generatedFilePath","transpileModule","src","outputText","generateTypesPackage","nodeModulesPath","tmpFile","config","conf","loc","erase","copyLocaleFiles","_from","_to","resolvedFrom","resolvedTo","localePaths","srcLocalePaths","path","destLocalePaths","localePath","destLocalePath"]}
@@ -1,15 +1,15 @@
1
- "use strict";var ht=Object.create;var U=Object.defineProperty;var gt=Object.getOwnPropertyDescriptor;var Ct=Object.getOwnPropertyNames;var yt=Object.getPrototypeOf,xt=Object.prototype.hasOwnProperty;var r=(n,e)=>U(n,"name",{value:e,configurable:!0});var bt=(n,e)=>{for(var t in e)U(n,t,{get:e[t],enumerable:!0})},ye=(n,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Ct(e))!xt.call(n,a)&&a!==t&&U(n,a,{get:()=>e[a],enumerable:!(o=gt(e,a))||o.enumerable});return n};var S=(n,e,t)=>(t=n!=null?ht(yt(n)):{},ye(e||!n||!n.__esModule?U(t,"default",{value:n,enumerable:!0}):t,n)),Et=n=>ye(U({},"__esModule",{value:!0}),n);var wn={};bt(wn,{bootstrapDevelopmentServer:()=>En});module.exports=Et(wn);var mt=require("path");var Ve=require("fs"),We=require("path");var vt=require("rimraf"),E=require("path"),x=S(require("fs"));var xe=require("picocolors"),l=(0,xe.createColors)(!0);var P=require("fs/promises"),L=require("path");var Sn=Symbol("kCommandKitCacheTag"),O=process.env.COMMANDKIT_IS_DEV==="true",Rn=process.env.COMMANDKIT_IS_TEST==="true",Pn=process.env.COMMANDKIT_BOOTSTRAP_MODE||"development",R={ReloadCommands:"reload-commands",ReloadEvents:"reload-events",Unknown:"unknown"};var wt=require("fs");async function re(n=!1){let e=(0,L.join)(process.cwd(),"node_modules","commandkit-types");if(!O&&!n)return e;let t=(0,L.join)(e,"package.json"),o=(0,L.join)(e,"index.js"),a=(0,L.join)(e,"index.d.ts"),i=(0,L.join)(e,"command.d.ts"),c={name:"commandkit-types",version:"1.0.0",description:"CommandKit types package",type:"commonjs",main:"index.js",types:"index.d.ts"},u="module.exports = {};",m=`// Main types index file - imports all type declarations
1
+ "use strict";var ht=Object.create;var U=Object.defineProperty;var gt=Object.getOwnPropertyDescriptor;var Ct=Object.getOwnPropertyNames;var yt=Object.getPrototypeOf,xt=Object.prototype.hasOwnProperty;var r=(n,e)=>U(n,"name",{value:e,configurable:!0});var bt=(n,e)=>{for(var t in e)U(n,t,{get:e[t],enumerable:!0})},ye=(n,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ct(e))!xt.call(n,i)&&i!==t&&U(n,i,{get:()=>e[i],enumerable:!(a=gt(e,i))||a.enumerable});return n};var S=(n,e,t)=>(t=n!=null?ht(yt(n)):{},ye(e||!n||!n.__esModule?U(t,"default",{value:n,enumerable:!0}):t,n)),Et=n=>ye(U({},"__esModule",{value:!0}),n);var wn={};bt(wn,{bootstrapDevelopmentServer:()=>En});module.exports=Et(wn);var mt=require("path");var Ve=require("fs"),We=require("path");var vt=require("rimraf"),E=require("path"),y=S(require("fs"));var xe=require("picocolors"),l=(0,xe.createColors)(!0);var P=require("fs/promises"),L=require("path");var Sn=Symbol("kCommandKitCacheTag"),O=process.env.COMMANDKIT_IS_DEV==="true",Rn=process.env.COMMANDKIT_IS_TEST==="true",Pn=process.env.COMMANDKIT_BOOTSTRAP_MODE||"development",R={ReloadCommands:"reload-commands",ReloadEvents:"reload-events",Unknown:"unknown"};var wt=require("fs");async function re(n=!1){let e=(0,L.join)(process.cwd(),"node_modules","commandkit-types");if(!O&&!n)return e;let t=(0,L.join)(e,"package.json"),a=(0,L.join)(e,"index.js"),i=(0,L.join)(e,"index.d.ts"),o=(0,L.join)(e,"command.d.ts"),m={name:"commandkit-types",version:"1.0.0",description:"CommandKit types package",type:"commonjs",main:"index.js",types:"index.d.ts"},u="module.exports = {};",c=`// Main types index file - imports all type declarations
2
2
  import './command';
3
3
  export {};
4
4
  `,p=`// Auto-generated command types
5
5
  export {};
6
6
  declare module 'commandkit' {
7
7
  type CommandTypeData = string
8
- }`;return await(0,P.mkdir)(e,{recursive:!0}).catch(()=>{}),await(0,P.writeFile)(t,JSON.stringify(c,null,2)),await(0,P.writeFile)(o,u),await(0,P.writeFile)(a,m),await(0,P.writeFile)(i,p),e}r(re,"generateTypesPackage");var be=require("child_process");var C;function Mt(n){process.stdout.write(n),process.stdout.write(`
9
- `)}r(Mt,"write");function Ee(n){let e=(0,E.join)(n,"sharding-manager.js");return x.default.existsSync(e)?e:(0,E.join)(n,"index.js")}r(Ee,"findEntrypoint");function _(n){Mt(l.red(`Error: ${n}`)),process.exit(1)}r(_,"panic");async function It(n){return/\.(c|m)?tsx?$/.test(n)?(process.features.typescript||await oe(),!0):!1}r(It,"ensureTypeScript");var $;function St(){if($)return $;let n={"yarn.lock":"yarn","pnpm-lock.yaml":"pnpm","package-lock.json":"npm","bun.lock":"bun","bun.lockb":"bun"};for(let[e,t]of Object.entries(n))if(x.default.existsSync((0,E.join)(process.cwd(),e))){$=t;break}return $||($="npm"),$}r(St,"detectPackageManager");async function oe(n){if(C)return C;try{C=await import("typescript")}catch(e){if(e instanceof Error&&"code"in e&&e.code==="MODULE_NOT_FOUND")try{let t=St();return(0,be.execSync)(`${t} add typescript`,{stdio:"inherit",cwd:process.cwd()}),console.log(l.cyan("TypeScript has been installed automatically, restarting...")),C=await import("typescript"),C}catch{_("TypeScript is not installed and could not be installed automatically. Please install it manually.")}_(e||"TypeScript must be installed to use TypeScript config files.")}return C}r(oe,"loadTypeScript");async function we(n){if(await Rt(n),await It(n)&&C){let{transpileModule:o}=C,a=x.default.readFileSync(n,"utf8"),{outputText:i}=o(a,{compilerOptions:{module:C.ModuleKind.ESNext,target:C.ScriptTarget.ESNext,moduleResolution:C.ModuleResolutionKind.NodeNext},fileName:n}),c=await re(),u=(0,E.join)(c,"compiled-commandkit.config.mjs");x.default.writeFileSync(u,i),n=u}return await import(`file://${n}`).then(o=>o.default||o)}r(we,"loadConfigFileFromPath");async function Rt(n){if(!x.default.existsSync(n))throw new Error(`File not found: ${n}`)}r(Rt,"ensureExists");async function ve(n,e){let t=(0,E.join)(process.cwd(),n),o=(0,E.join)(process.cwd(),e),a=["app/locales"],i=a.map(u=>(0,E.join)(t,u)),c=a.map(u=>(0,E.join)(o,u));for(let u of i){if(!x.default.existsSync(u))continue;let m=c[i.indexOf(u)];x.default.existsSync(m)||x.default.promises.mkdir(m,{recursive:!0}),await x.default.promises.cp(u,m,{recursive:!0,force:!0})}}r(ve,"copyLocaleFiles");var Me=require("crypto");var ae=class ae{constructor(e){this.options=e}id=(0,Me.randomUUID)();loadedAt=Date.now();async activate(e){}async deactivate(e){}};r(ae,"PluginCommon");var F=ae;function ie(n){return n instanceof F}r(ie,"isPlugin");var se=class se extends F{type="compiler";async transform(e){return null}async resolve(e){return null}async onBuildStart(){}async onBuildEnd(){}};r(se,"CompilerPlugin");var K=se;function Ie(n){return ie(n)&&n.type==="compiler"}r(Ie,"isCompilerPlugin");var ln=require("discord.js");var j={ExitMiddleware:Symbol("kExitMiddleware"),ForwardedCommand:Symbol("kForwardedCommand"),InvalidCommandPrefix:Symbol("kInvalidCommandPrefix"),PluginCaptureHandle:Symbol("kPluginCaptureHandle")};var He=require("async_hooks");var Zt=S(require("events"));var Kt=require("discord.js");var le=require("discord.js");var Dt=require("discord.js");var Se=require("discord.js");var ce=require("discord.js");var Re=require("discord.js");var Pe=require("discord.js");var Ke=require("discord.js");var De=require("discord.js");var Te=require("discord.js");var Tt=require("discord.js");var D=require("discord.js");var kt=require("discord.js");var Ae=require("discord.js");var V=require("discord.js");var At=require("discord.js");var Bt=require("discord.js");var Ne=require("discord.js");var Lt=require("fs"),$t=require("path");var Oe=require("async_hooks");var ji=Symbol("commandkitEventWorker"),Ot=new Oe.AsyncLocalStorage;function Le(n,e){let t=null,o=null;return(...a)=>(t&&(clearTimeout(t),o&&o(null)),new Promise(i=>{o=i,t=setTimeout(()=>{let c=n(...a);i(c),t=null,o=null},e)}))}r(Le,"debounce");var en=require("path");var k=require("discord.js");var Ft=S(require("path"));var W=require("discord.js");var ue=require("discord.js");var Ut=require("discord.js");var Nt=require("crypto");var Gt=require("discord.js"),_t=require("fs"),Vt=require("fs/promises"),q=require("path");var Wt=require("discord.js"),qt=require("fs"),zt=require("fs/promises"),Jt=require("path");var Yt=require("discord.js");var tn=require("fs");var Xt=S(require("events"));var Qt=require("discord.js");var Ml=Symbol("commandkitCommandWorker"),nn=new He.AsyncLocalStorage;function y(){return nn.getStore()}r(y,"getContext");var rn={autocomplete:"Autocomplete",messageContextMenu:"MessageContextMenu",userContextMenu:"UserContextMenu",chatInput:"ChatInputCommand",message:"Message"},on={0:l.blue,1:l.green,2:l.yellow,3:l.red,4:l.white},an={0:l.bgBlue,1:l.bgGreen,2:l.bgYellow,3:l.bgRed,4:l.bgWhite},z={vertical:"\u2502",horizontalDown:"\u252C",horizontalUp:"\u2534",verticalRight:"\u251C",corner:"\u2514"},de=class de{constructor(e=process.stdout,t=process.stderr){this.stdout=e;this.stderr=t;this.logger=new console.Console(this.stdout,this.stderr)}logger;_formatTime(e){let t=e.getHours().toString().padStart(2,"0"),o=e.getMinutes().toString().padStart(2,"0"),a=e.getSeconds().toString().padStart(2,"0"),i=e.getMilliseconds().toString().padStart(3,"0");return`${t}:${o}:${a}.${i}`}_getContext(){let e=y();if(!e)return"";let t=e.variables.get("execHandlerKind"),o=e.variables.get("commandHandlerType"),a=e.variables.get("currentCommandName");if(!t&&!o)return"";let i=rn[t];if(!i&&!o)return"";let c=e.variables.get("forwardedBy"),u=e.variables.get("forwardedTo"),m=a?l.magenta(`/${a}`)+" ":"",p=u?`${l.yellowBright(`(${c||a} \u2192 ${u})`)} `:"";return l.dim(`${z.vertical} `)+l.cyanBright(`${m}${p}${i?l.gray(`[${i}]`):""}`.trim())}_getLevelLabel(e){let t;switch(e){case 0:t="[DEBUG]";break;case 1:t="[INFO]";break;case 2:t="[WARN]";break;case 3:t="[ERROR]";break;default:t="[LOG]"}return`${an[e](l.whiteBright(` ${t} `))} `}_getPrefix(e){let t=this._formatTime(new Date);return`${this._getLevelLabel(e)}${l.dim(z.vertical)} ${l.dim(t)}`}_log(e,...t){let o=this._getPrefix(e),a=this._getContext(),i=on[e];a?this.logger.log(`${o}
10
- ${a} ${l.dim(z.corner)}`,...t.map(c=>i(c))):this.logger.log(`${o} ${l.dim(z.corner)}`,...t.map(c=>i(c)))}debug(...e){this._log(0,...e)}error(...e){this._log(3,...e)}log(...e){this._log(4,...e)}info(...e){this._log(1,...e)}warn(...e){this._log(2,...e)}};r(de,"DefaultLogger");var J=de;function sn(n){let e=n;if(!(e!=null&&e.provider))throw new Error("A logger provider must be provided.");let t=["log","error","warn","info","debug"],o={configure(a){e=a}};for(let a of t)o[a]=(...i)=>{e.provider[a](...i)};return o}r(sn,"createLogger");var T=sn({provider:new J});var je=require("fs/promises");var Ue=/\.(c|m)?(t|j)sx?$/,pe=class pe{constructor(e){this.plugins=e}name="CompilerPluginRuntime";getPlugins(){return this.plugins}isEmpty(){return!this.plugins.length}async onLoad(e){var i,c;let o=await(0,je.readFile)(e.path,"utf8"),a=(i=e.path)==null?void 0:i.split(".").pop();for(let u of this.plugins)try{let m=await((c=u.transform)==null?void 0:c.call(u,{contents:o,path:e.path,loader:a,args:e}));if(!m)continue;m.contents&&(o=m.contents),m.loader&&(a=m.loader)}catch(m){let p=m instanceof Error?m:new Error(m);return{pluginName:u.name,errors:[{text:p.message,detail:(p==null?void 0:p.stack)??p,location:null}]}}return{contents:o,loader:a}}async onResolve(e){var o;let t={};for(let a of this.plugins)try{let i=await((o=a.resolve)==null?void 0:o.call(a,e));if(!i)continue;t={...t,...i}}catch(i){let c=i instanceof Error?i:new Error(i);return{errors:[{text:c.message,detail:(c==null?void 0:c.stack)??c,location:null}]}}return t}async onStart(){var e;for(let t of this.plugins)try{await((e=t.onBuildStart)==null?void 0:e.call(t))}catch(o){console.error(`Plugin ${t.name} failed to run onBuildStart with ${(o==null?void 0:o.stack)||o}`)}}async onEnd(){var e;for(let t of this.plugins)try{await((e=t.onBuildEnd)==null?void 0:e.call(t))}catch(o){console.error(`Plugin ${t.name} failed to run onBuildEnd with ${(o==null?void 0:o.stack)||o}`)}}async onDispose(){var e;for(let t of this.plugins)try{await((e=t.deactivate)==null?void 0:e.call(t,this))}catch(o){console.error(`Plugin ${t.name} failed to deactivate with ${(o==null?void 0:o.stack)||o}`)}}async onInit(){var e;for(let t of this.plugins)try{await((e=t.activate)==null?void 0:e.call(t,this))}catch(o){console.error(`Plugin ${t.name} failed to activate with ${(o==null?void 0:o.stack)||o}`)}}async cleanup(){await this.onEnd(),await this.onDispose()}async setup(e){this.plugins.length&&(await this.onInit(),await e.onResolve({filter:Ue},this.onResolve.bind(this)),await e.onLoad({filter:Ue},this.onLoad.bind(this)),await e.onStart(this.onStart.bind(this)),e.onEnd(async()=>{await this.onEnd()}),e.onDispose(async()=>{await this.onDispose()}))}toEsbuildPlugin(){return{name:this.name,setup:this.setup.bind(this)}}};r(pe,"CompilerPluginRuntime");var Y=pe;function Ge(n){let t=class t extends K{name=n.name;onBuildEnd(){var a;return(a=n.onBuildEnd)==null?void 0:a.call(n)}onBuildStart(){var a;return(a=n.onBuildStart)==null?void 0:a.call(n)}async transform(a){var i;return(i=n.transform)==null?void 0:i.call(n,a)}async resolve(a){var i;return(i=n.resolve)==null?void 0:i.call(n,a)}};r(t,"EsbuildPluginCompat");let e=t;return e}r(Ge,"fromEsbuildPlugin");var fe=class fe extends K{name="MacroPlugin";macroTransformer;async activate(){let e=await import("use-macro");this.macroTransformer=new e.MacroTransformer}async deactivate(){this.macroTransformer=null}async transform(e){if(!this.options.enabled)return null;let{contents:t,loader:o}=await this.macroTransformer.transform(e.contents.toString(),e.path);return{contents:t,loader:o}}};r(fe,"MacroPlugin");var X=fe;var _e={plugins:[new X({enabled:!0})],esbuildPlugins:[],compilerOptions:{macro:{development:!1}},static:!0,typescript:{ignoreBuildErrors:!1},distDir:"dist",env:{},sourceMap:{development:!0,production:!0},typedCommands:!0};var cn=_e;function me(){return cn}r(me,"getConfig");var mn=["commandkit.config.js","commandkit.config.mjs","commandkit.config.cjs","commandkit.config.ts"];function ge(n){return mn.map(e=>(0,We.join)(n,e))}r(ge,"getPossibleConfigPaths");function un(n){let e=ge(n);for(let t of e)if((0,Ve.existsSync)(t))return{path:t,isTypeScript:/\.ts$/.test(t)};return null}r(un,"findConfigFile");var he=null;async function G(n=process.cwd()){if(he)return he;let e=un(n);if(!e)return me();let t=await we(e.path);return he=t,t}r(G,"loadConfigFile");var Ye=require("child_process");function Q(n=!1){let e={NODE_ENV:"development",COMMANDKIT_IS_DEV:"true"};return n?Object.assign({},e):Object.assign({},process.env,e)}r(Q,"DevEnv");function Z(n=!1){let e={NODE_ENV:"production",COMMANDKIT_IS_DEV:"false"};return n?Object.assign({},e):Object.assign({},process.env,e)}r(Z,"ProdEnv");var qe=[".env",".env.local"],dn=[".env.development",".env.development.local"],pn=[".env.production",".env.production.local"],ze=[...qe,...dn],Je=[...qe,...pn];var Xe=require("path"),Qe=require("fs");function fn(n){return n?["pipe","pipe","pipe","ipc"]:["pipe","pipe","pipe"]}r(fn,"getStdio");function Ze(n,e,t){var i,c;(0,Qe.existsSync)((0,Xe.join)(e,n))||_(`Could not locate the entrypoint file: ${n}`);let o=fn(t),a=(0,Ye.spawn)("node",[`--title="CommandKit ${t?"Development":"Production"}"`,"--enable-source-maps",n],{cwd:e,windowsHide:!0,env:t?Q():Z(),stdio:o});return(i=a.stdout)==null||i.pipe(process.stdout),(c=a.stderr)==null||c.pipe(process.stderr),a}r(Ze,"createAppProcess");var it=require("tsup");var at=require("fs/promises"),st=require("path");var lt=require("rimraf");var et=require("fs");var ee=require("path");var hn="TypeScript must be installed in order to use the type checker. Please install it using `npm install typescript` or `yarn add typescript`";function gn(n,e,t){let o=n.flattenDiagnosticMessageText(e.messageText,`
11
- `);if(!e.file)return`${l.red("error")}: ${o}`;let{line:a,character:i}=n.getLineAndCharacterOfPosition(e.file,e.start),c=(0,ee.relative)(t,e.file.fileName),u=`${a+1}:${i+1}`,m=e.code?`TS${e.code}`:"";return[`${l.bold(l.cyan(c))}:${l.bold(l.yellow(u))} - ${l.red("error")} ${l.gray(m)}`,`${o}`].join(`
12
- `)}r(gn,"formatDiagnostic");async function tt(n){let e=(0,ee.join)(n,"tsconfig.json");if(!(0,et.existsSync)(e))return;let t=await oe(hn),o={getCanonicalFileName:r(m=>m,"getCanonicalFileName"),getCurrentDirectory:t.sys.getCurrentDirectory,getNewLine:r(()=>t.sys.newLine,"getNewLine")},a=t.readConfigFile(e,t.sys.readFile);a.error&&(console.error(l.red(`Error reading tsconfig.json: ${t.formatDiagnostic(a.error,o)}`)),process.exit(1));let i=t.parseJsonConfigFileContent(a.config,t.sys,n);i.options.noEmit=!0;let c=t.createProgram({rootNames:i.fileNames,options:i.options,projectReferences:i.projectReferences}),u=[...c.getOptionsDiagnostics(),...c.getGlobalDiagnostics(),...c.getSyntacticDiagnostics(),...c.getSemanticDiagnostics()];if(u.length>0){console.log(""),console.error(l.bold(l.red("Type checking failed with the following errors:"))),console.log("");let m=new Map;for(let A of u){let d=A.file?A.file.fileName:"Global";m.has(d)||m.set(d,[]),m.get(d).push(A)}let p=u.length,I=0;for(let[A,d]of m)for(let f of d)I++,console.log(gn(t,f,n)),I<p&&console.log("");console.log(""),console.error(l.bold(l.red(`Found ${p} error${p>1?"s":""}`))),console.log(""),process.exit(1)}console.log(l.green("\u2713 Type checking completed successfully."))}r(tt,"performTypeCheck");async function ct({plugins:n,esbuildPlugins:e,isDev:t,configPath:o}){var u;let a=await G(o);!t&&!((u=a==null?void 0:a.typescript)!=null&&u.ignoreBuildErrors)&&await tt(o||process.cwd());let i=new Y(n||[]),c=i.isEmpty()?[]:[i.toEsbuildPlugin()];e!=null&&e.length&&c.push(...e.map(Ge));try{let m=t?".commandkit":a.distDir;await(0,lt.rimraf)(m),await(0,it.build)({esbuildPlugins:c,watch:!1,banner:{js:t?"":"/* Optimized production build generated by commandkit */"},cjsInterop:!0,dts:!1,clean:!0,format:["esm"],shims:!0,keepNames:!0,minify:!1,esbuildOptions:r(p=>(p.jsx="automatic",p.jsxImportSource="commandkit",p),"esbuildOptions"),minifyIdentifiers:!1,minifySyntax:!1,silent:!!t,splitting:!0,skipNodeModulesBundle:!0,name:"CommandKit",sourcemap:!0,target:"node16",outDir:m,env:t?Q(!0):Z(!0),entry:["src",`!${a.distDir}`,"!.commandkit","!**/*.test.*","!**/*.spec.*"]}),await ve("src",m),await yn(o||process.cwd(),!!t,a.distDir)}catch(m){console.error("Build failed:",m),m instanceof Error&&console.error("Error details:",m.stack),process.exit(1)}finally{await i.cleanup()}}r(ct,"buildApplication");var nt=r(n=>`// --- Environment Variables Loader ---
8
+ }`;return await(0,P.mkdir)(e,{recursive:!0}).catch(()=>{}),await(0,P.writeFile)(t,JSON.stringify(m,null,2)),await(0,P.writeFile)(a,u),await(0,P.writeFile)(i,c),await(0,P.writeFile)(o,p),e}r(re,"generateTypesPackage");var be=require("child_process");var C;function Mt(n){process.stdout.write(n),process.stdout.write(`
9
+ `)}r(Mt,"write");function Ee(n){let e=(0,E.join)(n,"sharding-manager.js");return y.default.existsSync(e)?e:(0,E.join)(n,"index.js")}r(Ee,"findEntrypoint");function _(n){Mt(l.red(`Error: ${n}`)),process.exit(1)}r(_,"panic");async function It(n){return/\.(c|m)?tsx?$/.test(n)?(process.features.typescript||await oe(),!0):!1}r(It,"ensureTypeScript");var $;function St(){if($)return $;let n={"yarn.lock":"yarn","pnpm-lock.yaml":"pnpm","package-lock.json":"npm","bun.lock":"bun","bun.lockb":"bun"};for(let[e,t]of Object.entries(n))if(y.default.existsSync((0,E.join)(process.cwd(),e))){$=t;break}return $||($="npm"),$}r(St,"detectPackageManager");async function oe(n){if(C)return C;try{C=await import("typescript")}catch(e){if(e instanceof Error&&"code"in e&&e.code==="MODULE_NOT_FOUND")try{let t=St();return(0,be.execSync)(`${t} add typescript`,{stdio:"inherit",cwd:process.cwd()}),console.log(l.cyan("TypeScript has been installed automatically, restarting...")),C=await import("typescript"),C}catch{_("TypeScript is not installed and could not be installed automatically. Please install it manually.")}_(e||"TypeScript must be installed to use TypeScript config files.")}return C}r(oe,"loadTypeScript");async function we(n){await Rt(n);let e=await It(n),t;if(e&&C){let{transpileModule:i}=C,o=y.default.readFileSync(n,"utf8"),{outputText:m}=i(o,{compilerOptions:{module:C.ModuleKind.ESNext,target:C.ScriptTarget.ESNext,moduleResolution:C.ModuleResolutionKind.NodeNext},fileName:n});await re();let u=process.cwd(),c=(0,E.join)(u,"compiled-commandkit.config.mjs");y.default.writeFileSync(c,m),t=c,n=c}let a=await import(`file://${n}`).then(i=>i.default||i);if(t)try{y.default.unlinkSync(t)}catch{}return a}r(we,"loadConfigFileFromPath");async function Rt(n){if(!y.default.existsSync(n))throw new Error(`File not found: ${n}`)}r(Rt,"ensureExists");async function ve(n,e){let t=(0,E.join)(process.cwd(),n),a=(0,E.join)(process.cwd(),e),i=["app/locales"],o=i.map(u=>(0,E.join)(t,u)),m=i.map(u=>(0,E.join)(a,u));for(let u of o){if(!y.default.existsSync(u))continue;let c=m[o.indexOf(u)];y.default.existsSync(c)||y.default.promises.mkdir(c,{recursive:!0}),await y.default.promises.cp(u,c,{recursive:!0,force:!0})}}r(ve,"copyLocaleFiles");var Me=require("crypto");var ae=class ae{constructor(e){this.options=e}id=(0,Me.randomUUID)();loadedAt=Date.now();async activate(e){}async deactivate(e){}};r(ae,"PluginCommon");var F=ae;function ie(n){return n instanceof F}r(ie,"isPlugin");var se=class se extends F{type="compiler";async transform(e){return null}async resolve(e){return null}async onBuildStart(){}async onBuildEnd(){}};r(se,"CompilerPlugin");var K=se;function Ie(n){return ie(n)&&n.type==="compiler"}r(Ie,"isCompilerPlugin");var ln=require("discord.js");var j={ExitMiddleware:Symbol("kExitMiddleware"),ForwardedCommand:Symbol("kForwardedCommand"),InvalidCommandPrefix:Symbol("kInvalidCommandPrefix"),PluginCaptureHandle:Symbol("kPluginCaptureHandle")};var He=require("async_hooks");var Zt=S(require("events"));var Kt=require("discord.js");var le=require("discord.js");var Dt=require("discord.js");var Se=require("discord.js");var ce=require("discord.js");var Re=require("discord.js");var Pe=require("discord.js");var Ke=require("discord.js");var De=require("discord.js");var Te=require("discord.js");var Tt=require("discord.js");var D=require("discord.js");var kt=require("discord.js");var Ae=require("discord.js");var V=require("discord.js");var At=require("discord.js");var Bt=require("discord.js");var Ne=require("discord.js");var Lt=require("fs"),$t=require("path");var Oe=require("async_hooks");var ji=Symbol("commandkitEventWorker"),Ot=new Oe.AsyncLocalStorage;function Le(n,e){let t=null,a=null;return(...i)=>(t&&(clearTimeout(t),a&&a(null)),new Promise(o=>{a=o,t=setTimeout(()=>{let m=n(...i);o(m),t=null,a=null},e)}))}r(Le,"debounce");var en=require("path");var k=require("discord.js");var Ft=S(require("path"));var W=require("discord.js");var ue=require("discord.js");var Ut=require("discord.js");var Nt=require("crypto");var Gt=require("discord.js"),_t=require("fs"),Vt=require("fs/promises"),q=require("path");var Wt=require("discord.js"),qt=require("fs"),zt=require("fs/promises"),Jt=require("path");var Yt=require("discord.js");var tn=require("fs");var Xt=S(require("events"));var Qt=require("discord.js");var Ml=Symbol("commandkitCommandWorker"),nn=new He.AsyncLocalStorage;function x(){return nn.getStore()}r(x,"getContext");var rn={autocomplete:"Autocomplete",messageContextMenu:"MessageContextMenu",userContextMenu:"UserContextMenu",chatInput:"ChatInputCommand",message:"Message"},on={0:l.blue,1:l.green,2:l.yellow,3:l.red,4:l.white},an={0:l.bgBlue,1:l.bgGreen,2:l.bgYellow,3:l.bgRed,4:l.bgWhite},z={vertical:"\u2502",horizontalDown:"\u252C",horizontalUp:"\u2534",verticalRight:"\u251C",corner:"\u2514"},de=class de{constructor(e=process.stdout,t=process.stderr){this.stdout=e;this.stderr=t;this.logger=new console.Console(this.stdout,this.stderr)}logger;_formatTime(e){let t=e.getHours().toString().padStart(2,"0"),a=e.getMinutes().toString().padStart(2,"0"),i=e.getSeconds().toString().padStart(2,"0"),o=e.getMilliseconds().toString().padStart(3,"0");return`${t}:${a}:${i}.${o}`}_getContext(){let e=x();if(!e)return"";let t=e.variables.get("execHandlerKind"),a=e.variables.get("commandHandlerType"),i=e.variables.get("currentCommandName");if(!t&&!a)return"";let o=rn[t];if(!o&&!a)return"";let m=e.variables.get("forwardedBy"),u=e.variables.get("forwardedTo"),c=i?l.magenta(`/${i}`)+" ":"",p=u?`${l.yellowBright(`(${m||i} \u2192 ${u})`)} `:"";return l.dim(`${z.vertical} `)+l.cyanBright(`${c}${p}${o?l.gray(`[${o}]`):""}`.trim())}_getLevelLabel(e){let t;switch(e){case 0:t="[DEBUG]";break;case 1:t="[INFO]";break;case 2:t="[WARN]";break;case 3:t="[ERROR]";break;default:t="[LOG]"}return`${an[e](l.whiteBright(` ${t} `))} `}_getPrefix(e){let t=this._formatTime(new Date);return`${this._getLevelLabel(e)}${l.dim(z.vertical)} ${l.dim(t)}`}_log(e,...t){let a=this._getPrefix(e),i=this._getContext(),o=on[e];i?this.logger.log(`${a}
10
+ ${i} ${l.dim(z.corner)}`,...t.map(m=>o(m))):this.logger.log(`${a} ${l.dim(z.corner)}`,...t.map(m=>o(m)))}debug(...e){this._log(0,...e)}error(...e){this._log(3,...e)}log(...e){this._log(4,...e)}info(...e){this._log(1,...e)}warn(...e){this._log(2,...e)}};r(de,"DefaultLogger");var J=de;function sn(n){let e=n;if(!(e!=null&&e.provider))throw new Error("A logger provider must be provided.");let t=["log","error","warn","info","debug"],a={configure(i){e=i}};for(let i of t)a[i]=(...o)=>{e.provider[i](...o)};return a}r(sn,"createLogger");var T=sn({provider:new J});var je=require("fs/promises");var Ue=/\.(c|m)?(t|j)sx?$/,pe=class pe{constructor(e){this.plugins=e}name="CompilerPluginRuntime";getPlugins(){return this.plugins}isEmpty(){return!this.plugins.length}async onLoad(e){var o,m;let a=await(0,je.readFile)(e.path,"utf8"),i=(o=e.path)==null?void 0:o.split(".").pop();for(let u of this.plugins)try{let c=await((m=u.transform)==null?void 0:m.call(u,{contents:a,path:e.path,loader:i,args:e}));if(!c)continue;c.contents&&(a=c.contents),c.loader&&(i=c.loader)}catch(c){let p=c instanceof Error?c:new Error(c);return{pluginName:u.name,errors:[{text:p.message,detail:(p==null?void 0:p.stack)??p,location:null}]}}return{contents:a,loader:i}}async onResolve(e){var a;let t={};for(let i of this.plugins)try{let o=await((a=i.resolve)==null?void 0:a.call(i,e));if(!o)continue;t={...t,...o}}catch(o){let m=o instanceof Error?o:new Error(o);return{errors:[{text:m.message,detail:(m==null?void 0:m.stack)??m,location:null}]}}return t}async onStart(){var e;for(let t of this.plugins)try{await((e=t.onBuildStart)==null?void 0:e.call(t))}catch(a){console.error(`Plugin ${t.name} failed to run onBuildStart with ${(a==null?void 0:a.stack)||a}`)}}async onEnd(){var e;for(let t of this.plugins)try{await((e=t.onBuildEnd)==null?void 0:e.call(t))}catch(a){console.error(`Plugin ${t.name} failed to run onBuildEnd with ${(a==null?void 0:a.stack)||a}`)}}async onDispose(){var e;for(let t of this.plugins)try{await((e=t.deactivate)==null?void 0:e.call(t,this))}catch(a){console.error(`Plugin ${t.name} failed to deactivate with ${(a==null?void 0:a.stack)||a}`)}}async onInit(){var e;for(let t of this.plugins)try{await((e=t.activate)==null?void 0:e.call(t,this))}catch(a){console.error(`Plugin ${t.name} failed to activate with ${(a==null?void 0:a.stack)||a}`)}}async cleanup(){await this.onEnd(),await this.onDispose()}async setup(e){this.plugins.length&&(await this.onInit(),await e.onResolve({filter:Ue},this.onResolve.bind(this)),await e.onLoad({filter:Ue},this.onLoad.bind(this)),await e.onStart(this.onStart.bind(this)),e.onEnd(async()=>{await this.onEnd()}),e.onDispose(async()=>{await this.onDispose()}))}toEsbuildPlugin(){return{name:this.name,setup:this.setup.bind(this)}}};r(pe,"CompilerPluginRuntime");var Y=pe;function Ge(n){let t=class t extends K{name=n.name;onBuildEnd(){var i;return(i=n.onBuildEnd)==null?void 0:i.call(n)}onBuildStart(){var i;return(i=n.onBuildStart)==null?void 0:i.call(n)}async transform(i){var o;return(o=n.transform)==null?void 0:o.call(n,i)}async resolve(i){var o;return(o=n.resolve)==null?void 0:o.call(n,i)}};r(t,"EsbuildPluginCompat");let e=t;return e}r(Ge,"fromEsbuildPlugin");var fe=class fe extends K{name="MacroPlugin";macroTransformer;async activate(){let e=await import("use-macro");this.macroTransformer=new e.MacroTransformer}async deactivate(){this.macroTransformer=null}async transform(e){if(!this.options.enabled)return null;let{contents:t,loader:a}=await this.macroTransformer.transform(e.contents.toString(),e.path);return{contents:t,loader:a}}};r(fe,"MacroPlugin");var X=fe;var _e={plugins:[new X({enabled:!0})],esbuildPlugins:[],compilerOptions:{macro:{development:!1}},static:!0,typescript:{ignoreBuildErrors:!1},distDir:"dist",env:{},sourceMap:{development:!0,production:!0},typedCommands:!0};var cn=_e;function me(){return cn}r(me,"getConfig");var mn=["commandkit.config.js","commandkit.config.mjs","commandkit.config.cjs","commandkit.config.ts"];function ge(n){return mn.map(e=>(0,We.join)(n,e))}r(ge,"getPossibleConfigPaths");function un(n){let e=ge(n);for(let t of e)if((0,Ve.existsSync)(t))return{path:t,isTypeScript:/\.ts$/.test(t)};return null}r(un,"findConfigFile");var he=null;async function G(n=process.cwd()){if(he)return he;let e=un(n);if(!e)return me();let t=await we(e.path);return he=t,t}r(G,"loadConfigFile");var Ye=require("child_process");function Q(n=!1){let e={NODE_ENV:"development",COMMANDKIT_IS_DEV:"true"};return n?Object.assign({},e):Object.assign({},process.env,e)}r(Q,"DevEnv");function Z(n=!1){let e={NODE_ENV:"production",COMMANDKIT_IS_DEV:"false"};return n?Object.assign({},e):Object.assign({},process.env,e)}r(Z,"ProdEnv");var qe=[".env",".env.local"],dn=[".env.development",".env.development.local"],pn=[".env.production",".env.production.local"],ze=[...qe,...dn],Je=[...qe,...pn];var Xe=require("path"),Qe=require("fs");function fn(n){return n?["pipe","pipe","pipe","ipc"]:["pipe","pipe","pipe"]}r(fn,"getStdio");function Ze(n,e,t){var o,m;(0,Qe.existsSync)((0,Xe.join)(e,n))||_(`Could not locate the entrypoint file: ${n}`);let a=fn(t),i=(0,Ye.spawn)("node",[`--title="CommandKit ${t?"Development":"Production"}"`,"--enable-source-maps",n],{cwd:e,windowsHide:!0,env:t?Q():Z(),stdio:a});return(o=i.stdout)==null||o.pipe(process.stdout),(m=i.stderr)==null||m.pipe(process.stderr),i}r(Ze,"createAppProcess");var it=require("tsup");var at=require("fs/promises"),st=require("path");var lt=require("rimraf");var et=require("fs");var ee=require("path");var hn="TypeScript must be installed in order to use the type checker. Please install it using `npm install typescript` or `yarn add typescript`";function gn(n,e,t){let a=n.flattenDiagnosticMessageText(e.messageText,`
11
+ `);if(!e.file)return`${l.red("error")}: ${a}`;let{line:i,character:o}=n.getLineAndCharacterOfPosition(e.file,e.start),m=(0,ee.relative)(t,e.file.fileName),u=`${i+1}:${o+1}`,c=e.code?`TS${e.code}`:"";return[`${l.bold(l.cyan(m))}:${l.bold(l.yellow(u))} - ${l.red("error")} ${l.gray(c)}`,`${a}`].join(`
12
+ `)}r(gn,"formatDiagnostic");async function tt(n){let e=(0,ee.join)(n,"tsconfig.json");if(!(0,et.existsSync)(e))return;let t=await oe(hn),a={getCanonicalFileName:r(c=>c,"getCanonicalFileName"),getCurrentDirectory:t.sys.getCurrentDirectory,getNewLine:r(()=>t.sys.newLine,"getNewLine")},i=t.readConfigFile(e,t.sys.readFile);i.error&&(console.error(l.red(`Error reading tsconfig.json: ${t.formatDiagnostic(i.error,a)}`)),process.exit(1));let o=t.parseJsonConfigFileContent(i.config,t.sys,n);o.options.noEmit=!0;let m=t.createProgram({rootNames:o.fileNames,options:o.options,projectReferences:o.projectReferences}),u=[...m.getOptionsDiagnostics(),...m.getGlobalDiagnostics(),...m.getSyntacticDiagnostics(),...m.getSemanticDiagnostics()];if(u.length>0){console.log(""),console.error(l.bold(l.red("Type checking failed with the following errors:"))),console.log("");let c=new Map;for(let A of u){let d=A.file?A.file.fileName:"Global";c.has(d)||c.set(d,[]),c.get(d).push(A)}let p=u.length,I=0;for(let[A,d]of c)for(let f of d)I++,console.log(gn(t,f,n)),I<p&&console.log("");console.log(""),console.error(l.bold(l.red(`Found ${p} error${p>1?"s":""}`))),console.log(""),process.exit(1)}console.log(l.green("\u2713 Type checking completed successfully."))}r(tt,"performTypeCheck");async function ct({plugins:n,esbuildPlugins:e,isDev:t,configPath:a}){var u;let i=await G(a);!t&&!((u=i==null?void 0:i.typescript)!=null&&u.ignoreBuildErrors)&&await tt(a||process.cwd());let o=new Y(n||[]),m=o.isEmpty()?[]:[o.toEsbuildPlugin()];e!=null&&e.length&&m.push(...e.map(Ge));try{let c=t?".commandkit":i.distDir;await(0,lt.rimraf)(c),await(0,it.build)({esbuildPlugins:m,watch:!1,banner:{js:t?"":"/* Optimized production build generated by commandkit */"},cjsInterop:!0,dts:!1,clean:!0,format:["esm"],shims:!0,keepNames:!0,minify:!1,esbuildOptions:r(p=>(p.jsx="automatic",p.jsxImportSource="commandkit",p),"esbuildOptions"),minifyIdentifiers:!1,minifySyntax:!1,silent:!!t,splitting:!0,skipNodeModulesBundle:!0,name:"CommandKit",sourcemap:!0,target:"node16",outDir:c,env:t?Q(!0):Z(!0),entry:["src",`!${i.distDir}`,"!.commandkit","!**/*.test.*","!**/*.spec.*"]}),await ve("src",c),await yn(a||process.cwd(),!!t,i.distDir)}catch(c){console.error("Build failed:",c),c instanceof Error&&console.error("Error details:",c.stack),process.exit(1)}finally{await o.cleanup()}}r(ct,"buildApplication");var nt=r(n=>`// --- Environment Variables Loader ---
13
13
  const $env = [${(n?ze:Je).map(e=>`"${e}"`).join(", ")}];
14
14
  for (const file of $env) {
15
15
  try {
@@ -23,7 +23,7 @@ for (const file of $env) {
23
23
  ${n.join(`
24
24
 
25
25
  `)}
26
- })();`,"wrapInAsyncIIFE");async function yn(n,e,t){let o=`/* Entrypoint File Generated By CommandKit */
26
+ })();`,"wrapInAsyncIIFE");async function yn(n,e,t){let a=`/* Entrypoint File Generated By CommandKit */
27
27
  ${e?`
28
28
 
29
29
  // Injected for development
@@ -45,7 +45,7 @@ async function bootstrap() {
45
45
  await bootstrap().catch((e) => {
46
46
  console.error('Failed to bootstrap CommandKit application:\\n', e.stack);
47
47
  })
48
- `;await(0,at.writeFile)((0,st.join)(n,e?".commandkit":t||"dist","index.js"),o)}r(yn,"injectEntryFile");var ut=require("chokidar");var Ce=require("timers/promises"),dt=require("crypto");async function te(n,e=!1){let t=await G(n),o=Ee(".commandkit");return await ct({configPath:n,isDev:!0,plugins:t.plugins.flat(2).filter(i=>Ie(i)),esbuildPlugins:t.esbuildPlugins}),e?null:Ze(o,n,!0)}r(te,"buildAndStart");var xn=r(n=>n.replaceAll("\\","/").includes("src/app/commands"),"isCommandSource"),bn=r(n=>n.replaceAll("\\","/").includes("src/app/events"),"isEventSource");async function En(n){process.env.COMMANDKIT_BOOTSTRAP_MODE="development";let e=performance.now(),t=n||process.cwd(),o=ge(t),a=(0,ut.watch)([(0,mt.join)(t,"src"),...o],{ignoreInitial:!0}),i=null,c=r(d=>new Promise(f=>{if(!i)return f(!1);let h=!1,B=r(M=>{if(h=!0,typeof M!="object"||M===null)return;let{type:ne,id:pt,handled:ft}=M;ne==="commandkit-hmr-ack"&&pt===d&&(i==null||i.off("message",B),f(!!ft))},"onMessage");i.once("message",B),h||(0,Ce.setTimeout)(3e3).then(()=>{i==null||i.off("message",B),f(!1)})}),"waitForAcknowledgment"),u=r(async(d,f)=>{if(!i||!i.send)return!1;let h=(0,dt.randomUUID)(),B=c(h);i.send({event:d,path:f,id:h});try{let M=!1,ne=!!await Promise.race([B,(0,Ce.setTimeout)(3e3).then(()=>(M||console.warn(l.yellow(`HMR acknowledgment timed out for event ${d} on path ${f}`)),!1))]);return M=!0,ne}catch(M){return console.error(l.red(`Error waiting for HMR acknowledgment: ${M}`)),!1}},"sendHmrEvent"),m=Le(async d=>{if(!d||!i)return!1;let f=null,h="";return xn(d)?(f=R.ReloadCommands,h="command(s)"):bn(d)?(f=R.ReloadEvents,h="event(s)"):(f=R.Unknown,h="unknown source"),f&&(console.log(`${l.cyanBright(`Attempting to reload ${h} at`)} ${l.yellowBright(d)}`),await te(t,!0),await u(f,d))?(console.log(`${l.greenBright(`Successfully hot reloaded ${h} at`)} ${l.yellowBright(d)}`),!0):!1},300),p=r(d=>{let f=o.some(h=>d===h);return f?(console.log(l.yellowBright("It seems like commandkit config file was updated, please restart the server manually to apply changes.")),f):!1},"isConfigUpdate"),I=r(async d=>{p(d)||await m(d)||(console.log(`${l.yellowBright("\u26A1\uFE0F Performing full restart due to the changes in")} ${l.cyanBright(d)}`),i==null||i.kill(),i=await te(t))},"hmrHandler");process.stdin.on("data",async d=>{switch(d.toString().trim()){case"r":console.log("Received restart command, restarting..."),i==null||i.kill(),i=null,i=await te(t);break;case"rc":console.log("Received reload commands command, reloading..."),await u(R.ReloadCommands);break;case"re":console.log("Received reload events command, reloading..."),await u(R.ReloadEvents);break}}),a.on("change",I),a.on("add",I),a.on("unlink",I),a.on("unlinkDir",I),a.on("error",d=>{console.error(d)}),i=await te(t);let A=performance.now();console.log(`${l.greenBright("Development server started in")} ${l.yellowBright(`${(A-e).toFixed(2)}ms`)}
48
+ `;await(0,at.writeFile)((0,st.join)(n,e?".commandkit":t||"dist","index.js"),a)}r(yn,"injectEntryFile");var ut=require("chokidar");var Ce=require("timers/promises"),dt=require("crypto");async function te(n,e=!1){let t=await G(n),a=Ee(".commandkit");return await ct({configPath:n,isDev:!0,plugins:t.plugins.flat(2).filter(o=>Ie(o)),esbuildPlugins:t.esbuildPlugins}),e?null:Ze(a,n,!0)}r(te,"buildAndStart");var xn=r(n=>n.replaceAll("\\","/").includes("src/app/commands"),"isCommandSource"),bn=r(n=>n.replaceAll("\\","/").includes("src/app/events"),"isEventSource");async function En(n){process.env.COMMANDKIT_BOOTSTRAP_MODE="development";let e=performance.now(),t=n||process.cwd(),a=ge(t),i=(0,ut.watch)([(0,mt.join)(t,"src"),...a],{ignoreInitial:!0}),o=null,m=r(d=>new Promise(f=>{if(!o)return f(!1);let h=!1,B=r(M=>{if(h=!0,typeof M!="object"||M===null)return;let{type:ne,id:pt,handled:ft}=M;ne==="commandkit-hmr-ack"&&pt===d&&(o==null||o.off("message",B),f(!!ft))},"onMessage");o.once("message",B),h||(0,Ce.setTimeout)(3e3).then(()=>{o==null||o.off("message",B),f(!1)})}),"waitForAcknowledgment"),u=r(async(d,f)=>{if(!o||!o.send)return!1;let h=(0,dt.randomUUID)(),B=m(h);o.send({event:d,path:f,id:h});try{let M=!1,ne=!!await Promise.race([B,(0,Ce.setTimeout)(3e3).then(()=>(M||console.warn(l.yellow(`HMR acknowledgment timed out for event ${d} on path ${f}`)),!1))]);return M=!0,ne}catch(M){return console.error(l.red(`Error waiting for HMR acknowledgment: ${M}`)),!1}},"sendHmrEvent"),c=Le(async d=>{if(!d||!o)return!1;let f=null,h="";return xn(d)?(f=R.ReloadCommands,h="command(s)"):bn(d)?(f=R.ReloadEvents,h="event(s)"):(f=R.Unknown,h="unknown source"),f&&(console.log(`${l.cyanBright(`Attempting to reload ${h} at`)} ${l.yellowBright(d)}`),await te(t,!0),await u(f,d))?(console.log(`${l.greenBright(`Successfully hot reloaded ${h} at`)} ${l.yellowBright(d)}`),!0):!1},300),p=r(d=>{let f=a.some(h=>d===h);return f?(console.log(l.yellowBright("It seems like commandkit config file was updated, please restart the server manually to apply changes.")),f):!1},"isConfigUpdate"),I=r(async d=>{p(d)||await c(d)||(console.log(`${l.yellowBright("\u26A1\uFE0F Performing full restart due to the changes in")} ${l.cyanBright(d)}`),o==null||o.kill(),o=await te(t))},"hmrHandler");process.stdin.on("data",async d=>{switch(d.toString().trim()){case"r":console.log("Received restart command, restarting..."),o==null||o.kill(),o=null,o=await te(t);break;case"rc":console.log("Received reload commands command, reloading..."),await u(R.ReloadCommands);break;case"re":console.log("Received reload events command, reloading..."),await u(R.ReloadEvents);break}}),i.on("change",I),i.on("add",I),i.on("unlink",I),i.on("unlinkDir",I),i.on("error",d=>{console.error(d)}),o=await te(t);let A=performance.now();console.log(`${l.greenBright("Development server started in")} ${l.yellowBright(`${(A-e).toFixed(2)}ms`)}
49
49
  ${l.greenBright("Watching for changes in")} ${l.yellowBright("src")} ${l.greenBright("directory")}
50
50
 
51
51
  ${l.greenBright("Commands:")}