/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/clever-tools@4.8.0/bin/clever.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
#!/usr/bin/env node
import"../src/initial-setup.js";import"../src/initial-update-notifier.js";import pkg from"../package.json"with{type:"json"};import{curl}from"../src/commands/curl/curl.command.js";import{globalCommands}from"../src/commands/global.commands.js";import{colorOption,helpOption,updateNotifierOption,verboseOption,versionOption}from"../src/commands/global.options.js";import{EXPERIMENTAL_FEATURES,getFeatures}from"../src/config/features.js";import{cliparse}from"../src/lib/cliparse-patched.js";import{styleText}from"../src/lib/style-text.js";import{getDefault,getEnumValues,isBoolean,isRequired}from"../src/lib/zod-utils.js";async function run(){const e=await getFeatures(),o=[];for(const[t,s]of Object.entries(globalCommands)){const r=buildCommand(t,s,e);null!=r&&o.push(r)}const t={description:"CLI tool to manage Clever Cloud's data and products",options:{help:helpOption,version:versionOption,verbose:verboseOption,color:colorOption,"update-notifier":updateNotifierOption}},s=o.sort(((e,o)=>e.name.localeCompare(o.name))),r=cliparse.cli({name:"clever",description:t.description,version:pkg.version,options:[convertOption(colorOption),convertOption(updateNotifierOption),convertOption(verboseOption)],helpCommand:!1,commands:s});r._definition=t;const n=process.argv;n[0]="node",cliparse.parse(r,n)}function buildCommand(e,o,t){let s,r={};if(Array.isArray(o)?[s,r]=o:s=o,s.featureFlag&&!t[s.featureFlag])return null;const n=[];for(const[e,o]of Object.entries(r)){const s=buildCommand(e,o,t);null!=s&&n.push(s)}const i=convertCommand(e,s,n);if(s.isExperimental&&s.featureFlag){const e=EXPERIMENTAL_FEATURES[s.featureFlag];if(null!=e){const o=e.status;i.description=styleText("yellow",i.description+" ["+o.toUpperCase()+"]")}}return i}function convertCommand(e,o,t=[]){const s={description:o.description};null!=o.options&&(s.privateOptions=Object.values(o.options).map(convertOption)),null!=o.args&&o.args.length>0&&(s.args=o.args.map(convertArgument)),t.length>0&&(s.commands=t);const r=cliparse.command(e,s,o.handler);return r._definition=o,r}function convertOption(e){const o={description:e.description};null!=e.aliases&&(o.aliases=e.aliases);const t=getDefault(e.schema);if(null!=t){const s=e.schema.safeParse(t);o.default=s.success?s.data:t}if(null!=e.placeholder&&(o.metavar=e.placeholder),null!=e.complete)o.complete=e.complete;else{const t=getEnumValues(e.schema);null!=t&&(o.complete=t)}return o.parser=o=>{if(e.deprecated){const o="string"==typeof e.deprecated?`, ${e.deprecated}.`:"";console.error(styleText("yellow",`Warning: --${e.name} is deprecated${o}`))}const t=e.schema.safeParse(o);if(!t.success)throw new Error(t.error.issues.map((e=>e.message)).join(", "));return t.data},isRequired(e.schema)&&(o.required=!0),isBoolean(e.schema)&&(o.expects_value=!1),cliparse.option(e.name,o)}function convertArgument(e){const o={description:e.description};if(e.complete)o.complete=e.complete;else{const t=getEnumValues(e.schema);null!=t&&(o.complete=t)}o.parser=o=>{const t=e.schema.safeParse(o);if(!t.success)throw new Error(t.error.issues.map((e=>e.message)).join(", "));return t.data};const t=getDefault(e.schema);if(null!=t){const s=e.schema.safeParse(t);o.default=s.success?s.data:t}else isRequired(e.schema)||(o.default="");return cliparse.argument(e.placeholder,o)}process.stdout.on("error",(e=>{"EPIPE"===e.code&&process.exit(0)})),"curl"===process.argv[2]?curl().catch((()=>process.exit(1))):run().catch((()=>process.exit(1)));
//# sourceMappingURL=/sm/0434096efd031932991de86cbe73fbba3ed93ee69ad2b9ccb8b8fab0732adf35.map