@strapi/cloud-cli 5.37.0 → 5.38.0

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 (98) hide show
  1. package/dist/bin.js.map +1 -1
  2. package/dist/bin.mjs.map +1 -1
  3. package/dist/cloud/command.js.map +1 -1
  4. package/dist/cloud/command.mjs.map +1 -1
  5. package/dist/config/api.js.map +1 -1
  6. package/dist/config/api.mjs.map +1 -1
  7. package/dist/config/local.js.map +1 -1
  8. package/dist/config/local.mjs.map +1 -1
  9. package/dist/create-growth-sso-trial/action.js.map +1 -1
  10. package/dist/create-growth-sso-trial/action.mjs.map +1 -1
  11. package/dist/create-project/action.js.map +1 -1
  12. package/dist/create-project/action.mjs.map +1 -1
  13. package/dist/create-project/command.js.map +1 -1
  14. package/dist/create-project/command.mjs.map +1 -1
  15. package/dist/create-project/index.js.map +1 -1
  16. package/dist/create-project/index.mjs.map +1 -1
  17. package/dist/create-project/utils/get-project-name-from-pkg.js.map +1 -1
  18. package/dist/create-project/utils/get-project-name-from-pkg.mjs.map +1 -1
  19. package/dist/create-project/utils/project-questions.utils.js.map +1 -1
  20. package/dist/create-project/utils/project-questions.utils.mjs.map +1 -1
  21. package/dist/deploy-project/action.js.map +1 -1
  22. package/dist/deploy-project/action.mjs.map +1 -1
  23. package/dist/deploy-project/command.js.map +1 -1
  24. package/dist/deploy-project/command.mjs.map +1 -1
  25. package/dist/deploy-project/index.js.map +1 -1
  26. package/dist/deploy-project/index.mjs.map +1 -1
  27. package/dist/environment/command.js.map +1 -1
  28. package/dist/environment/command.mjs.map +1 -1
  29. package/dist/environment/link/action.js.map +1 -1
  30. package/dist/environment/link/action.mjs.map +1 -1
  31. package/dist/environment/link/command.js.map +1 -1
  32. package/dist/environment/link/command.mjs.map +1 -1
  33. package/dist/environment/link/index.js.map +1 -1
  34. package/dist/environment/link/index.mjs.map +1 -1
  35. package/dist/environment/list/action.js.map +1 -1
  36. package/dist/environment/list/action.mjs.map +1 -1
  37. package/dist/environment/list/command.js.map +1 -1
  38. package/dist/environment/list/command.mjs.map +1 -1
  39. package/dist/environment/list/index.js.map +1 -1
  40. package/dist/environment/list/index.mjs.map +1 -1
  41. package/dist/index.js +22 -22
  42. package/dist/index.js.map +1 -1
  43. package/dist/index.mjs.map +1 -1
  44. package/dist/link/action.js.map +1 -1
  45. package/dist/link/action.mjs.map +1 -1
  46. package/dist/link/command.js.map +1 -1
  47. package/dist/link/command.mjs.map +1 -1
  48. package/dist/link/index.js.map +1 -1
  49. package/dist/link/index.mjs.map +1 -1
  50. package/dist/list-projects/action.js.map +1 -1
  51. package/dist/list-projects/action.mjs.map +1 -1
  52. package/dist/list-projects/command.js.map +1 -1
  53. package/dist/list-projects/command.mjs.map +1 -1
  54. package/dist/list-projects/index.js.map +1 -1
  55. package/dist/list-projects/index.mjs.map +1 -1
  56. package/dist/login/action.js.map +1 -1
  57. package/dist/login/action.mjs.map +1 -1
  58. package/dist/login/command.js.map +1 -1
  59. package/dist/login/command.mjs.map +1 -1
  60. package/dist/login/index.js.map +1 -1
  61. package/dist/login/index.mjs.map +1 -1
  62. package/dist/logout/action.js.map +1 -1
  63. package/dist/logout/action.mjs.map +1 -1
  64. package/dist/logout/command.js.map +1 -1
  65. package/dist/logout/command.mjs.map +1 -1
  66. package/dist/logout/index.js.map +1 -1
  67. package/dist/logout/index.mjs.map +1 -1
  68. package/dist/package.json.js +2 -120
  69. package/dist/package.json.js.map +1 -1
  70. package/dist/package.json.mjs +3 -102
  71. package/dist/package.json.mjs.map +1 -1
  72. package/dist/services/build-logs.js.map +1 -1
  73. package/dist/services/build-logs.mjs.map +1 -1
  74. package/dist/services/cli-api.js.map +1 -1
  75. package/dist/services/cli-api.mjs.map +1 -1
  76. package/dist/services/context.js.map +1 -1
  77. package/dist/services/context.mjs.map +1 -1
  78. package/dist/services/logger.js.map +1 -1
  79. package/dist/services/logger.mjs.map +1 -1
  80. package/dist/services/notification.js.map +1 -1
  81. package/dist/services/notification.mjs.map +1 -1
  82. package/dist/services/strapi-info-save.js.map +1 -1
  83. package/dist/services/strapi-info-save.mjs.map +1 -1
  84. package/dist/services/token.js.map +1 -1
  85. package/dist/services/token.mjs.map +1 -1
  86. package/dist/utils/analytics.js.map +1 -1
  87. package/dist/utils/analytics.mjs.map +1 -1
  88. package/dist/utils/compress-files.js.map +1 -1
  89. package/dist/utils/compress-files.mjs.map +1 -1
  90. package/dist/utils/error-message-factories.js.map +1 -1
  91. package/dist/utils/error-message-factories.mjs.map +1 -1
  92. package/dist/utils/get-local-config.js.map +1 -1
  93. package/dist/utils/get-local-config.mjs.map +1 -1
  94. package/dist/utils/helpers.js.map +1 -1
  95. package/dist/utils/helpers.mjs.map +1 -1
  96. package/dist/utils/pkg.js.map +1 -1
  97. package/dist/utils/pkg.mjs.map +1 -1
  98. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"action.mjs","sources":["../../src/deploy-project/action.ts"],"sourcesContent":["import fse from 'fs-extra';\nimport inquirer from 'inquirer';\nimport boxen from 'boxen';\nimport path from 'path';\nimport chalk from 'chalk';\nimport { AxiosError } from 'axios';\nimport * as crypto from 'node:crypto';\nimport { apiConfig } from '../config/api';\nimport { compressFilesToTar } from '../utils/compress-files';\nimport createProjectAction from '../create-project/action';\nimport type {\n CLIContext,\n CloudApiService,\n CloudCliConfig,\n EnvironmentDetails,\n ProjectInfo,\n} from '../types';\nimport { getTmpStoragePath } from '../config/local';\nimport { cloudApiFactory, tokenServiceFactory, local } from '../services';\nimport { VERSION } from '../services/cli-api';\nimport { notificationServiceFactory } from '../services/notification';\nimport { loadPkg } from '../utils/pkg';\nimport { buildLogsServiceFactory } from '../services/build-logs';\nimport { promptLogin } from '../login/action';\nimport { trackEvent } from '../utils/analytics';\nimport {\n environmentCreationErrorFactory,\n environmentErrorMessageFactory,\n} from '../utils/error-message-factories';\n\ntype PackageJson = {\n name: string;\n strapi?: {\n uuid: string;\n };\n};\n\ninterface CmdOptions {\n env?: string;\n force?: boolean;\n}\n\nconst boxenOptions: boxen.Options = {\n padding: 1,\n margin: 1,\n align: 'center',\n borderColor: 'yellow',\n borderStyle: 'round',\n};\n\nconst QUIT_OPTION = 'Quit';\n\nasync function promptForEnvironment(environments: string[]): Promise<string> {\n const choices = environments.map((env) => ({ name: env, value: env }));\n const { selectedEnvironment } = await inquirer.prompt([\n {\n type: 'list',\n name: 'selectedEnvironment',\n message: 'Select the environment to deploy:',\n choices: [...choices, { name: chalk.grey(`(${QUIT_OPTION})`), value: null }],\n },\n ]);\n if (selectedEnvironment === null) {\n process.exit(1);\n }\n\n return selectedEnvironment;\n}\n\nasync function upload(\n ctx: CLIContext,\n project: Omit<ProjectInfo, 'id'>,\n cliConfig: CloudCliConfig,\n token: string,\n maxProjectFileSize: number\n) {\n const cloudApi = await cloudApiFactory(ctx, token);\n try {\n const storagePath = await getTmpStoragePath();\n const projectFolder = path.resolve(process.cwd());\n const packageJson = (await loadPkg(ctx)) as PackageJson;\n\n if (!packageJson) {\n ctx.logger.error(\n 'Unable to deploy the project. Please make sure the package.json file is correctly formatted.'\n );\n return;\n }\n\n const compressSpinner = ctx.logger.spinner('Compressing project...').start();\n compressSpinner.indent = 1;\n // hash packageJson.name to avoid conflicts\n const hashname = crypto.createHash('sha512').update(packageJson.name).digest('hex');\n const compressedFilename = `${hashname}.tar.gz`;\n try {\n ctx.logger.debug(\n 'Compression parameters\\n',\n `Storage path: ${storagePath}\\n`,\n `Project folder: ${projectFolder}\\n`,\n `Compressed filename: ${compressedFilename}`\n );\n await compressFilesToTar(storagePath, projectFolder, compressedFilename);\n compressSpinner.succeed(`Project compressed successfully!`);\n } catch (e: unknown) {\n compressSpinner.fail(\n 'Project compression failed. Try again later or check for large/incompatible files.'\n );\n ctx.logger.debug(e);\n process.exit(1);\n }\n\n const tarFilePath = path.resolve(storagePath, compressedFilename);\n const fileStats = await fse.stat(tarFilePath);\n\n if (fileStats.size > maxProjectFileSize) {\n ctx.logger.log(\n 'Unable to proceed: Your project is too big to be transferred, please use a git repo instead.'\n );\n try {\n await fse.remove(tarFilePath);\n } catch (e: any) {\n ctx.logger.log('Unable to remove file: ', tarFilePath);\n ctx.logger.debug(e);\n }\n return;\n }\n\n const progressBar = ctx.logger.progressBar(100, ' ∷ Uploading project');\n\n try {\n const { data } = await cloudApi.deploy(\n { filePath: tarFilePath, project },\n {\n onUploadProgress(progressEvent) {\n const total = progressEvent.total || fileStats.size;\n const percentage = Math.round((progressEvent.loaded * 100) / total);\n progressBar.update(percentage);\n },\n }\n );\n\n progressBar.update(100);\n progressBar.stop();\n ctx.logger.log(`${chalk.green.bold('✔')} Upload finished!\\n`);\n return data.build_id;\n } catch (e: any) {\n progressBar.stop();\n await handleUploadError(ctx, e, project, cliConfig);\n } finally {\n await fse.remove(tarFilePath);\n }\n process.exit(0);\n } catch (e: any) {\n ctx.logger.error('An error occurred while deploying the project. Please try again later.');\n ctx.logger.debug(e);\n process.exit(1);\n }\n}\n\nasync function handleUploadError(\n ctx: CLIContext,\n error: any,\n project: any,\n cliConfig: CloudCliConfig\n) {\n const { logger } = ctx;\n logger.debug(error);\n\n if (error.response?.status) {\n switch (error.response.status) {\n case 405: {\n const environmentErrorMessage = environmentErrorMessageFactory({\n projectName: project.name,\n firstLine: cliConfig.projectDeployment.errors.environmentNotReady.firstLine,\n secondLine: cliConfig.projectDeployment.errors.environmentNotReady.secondLine,\n });\n logger.log(environmentCreationErrorFactory(environmentErrorMessage));\n return;\n }\n case 413:\n logger.error(\n 'The project you are trying to upload is too big. Please remove unnecessary files and try again.'\n );\n return;\n default:\n break;\n }\n }\n logger.error('An error occurred while deploying the project. Please try again later.');\n}\n\nasync function getProject(ctx: CLIContext) {\n const { project } = await local.retrieve();\n if (!project) {\n try {\n const projectResponse = await createProjectAction(ctx);\n if (projectResponse) {\n const { project: projectSaved } = await local.retrieve();\n return projectSaved;\n }\n } catch (e: any) {\n ctx.logger.error('An error occurred while deploying the project. Please try again later.');\n ctx.logger.debug(e);\n process.exit(1);\n }\n }\n return project;\n}\n\nasync function getConfig({\n ctx,\n cloudApiService,\n}: {\n ctx: CLIContext;\n cloudApiService: CloudApiService;\n}): Promise<CloudCliConfig | null> {\n try {\n const { data: cliConfig } = await cloudApiService.config();\n return cliConfig;\n } catch (e) {\n ctx.logger.debug('Failed to get cli config', e);\n return null;\n }\n}\n\nfunction validateEnvironment(ctx: CLIContext, environment: string, environments: string[]): void {\n if (!environments.includes(environment)) {\n ctx.logger.error(`Environment ${environment} does not exist.`);\n process.exit(1);\n }\n}\n\nasync function getTargetEnvironment(\n ctx: CLIContext,\n opts: CmdOptions,\n project: Omit<ProjectInfo, 'id'>,\n environments: string[]\n): Promise<string> {\n if (opts.env) {\n validateEnvironment(ctx, opts.env, environments);\n return opts.env;\n }\n\n if (project.targetEnvironment) {\n return project.targetEnvironment;\n }\n\n if (environments.length > 1) {\n return promptForEnvironment(environments);\n }\n\n return environments[0];\n}\n\nfunction hasPendingOrLiveDeployment(\n environments: EnvironmentDetails[],\n targetEnvironment: string\n): boolean {\n const environment = environments.find((env) => env.name === targetEnvironment);\n if (!environment) {\n throw new Error(`Environment details ${targetEnvironment} not found.`);\n }\n return environment.hasPendingDeployment || environment.hasLiveDeployment || false;\n}\n\nexport default async (ctx: CLIContext, opts: CmdOptions) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n if (!token) {\n return;\n }\n\n const project = await getProject(ctx);\n if (!project) {\n process.exit(1);\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n let projectData;\n let environments: string[];\n let environmentsDetails: EnvironmentDetails[];\n\n try {\n const {\n data: { data, metadata },\n } = await cloudApiService.getProject({ name: project.name });\n projectData = data;\n environments = projectData.environments;\n environmentsDetails = projectData.environmentsDetails;\n const isProjectSuspended = projectData.suspendedAt;\n\n if (isProjectSuspended) {\n ctx.logger.log(\n '\\n Oops! This project has been suspended. \\n\\n Please reactivate it from the dashboard to continue deploying: '\n );\n ctx.logger.log(chalk.underline(`${metadata.dashboardUrls.project}`));\n return;\n }\n } catch (e: Error | unknown) {\n if (e instanceof AxiosError && e.response?.data) {\n if (e.response.status === 404) {\n ctx.logger.warn(\n `The project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command before deploying.`\n );\n } else {\n ctx.logger.error(e.response.data);\n }\n } else {\n ctx.logger.error(\n \"An error occurred while retrieving the project's information. Please try again later.\"\n );\n }\n ctx.logger.debug(e);\n return;\n }\n\n await trackEvent(ctx, cloudApiService, 'willDeployWithCLI', {\n projectInternalName: project.name,\n });\n\n const notificationService = notificationServiceFactory(ctx);\n const buildLogsService = buildLogsServiceFactory(ctx);\n\n const cliConfig = await getConfig({ ctx, cloudApiService });\n if (!cliConfig) {\n ctx.logger.error(\n 'An error occurred while retrieving data from Strapi Cloud. Please check your network or try again later.'\n );\n return;\n }\n\n let maxSize: number = parseInt(cliConfig.maxProjectFileSize, 10);\n if (Number.isNaN(maxSize)) {\n ctx.logger.debug(\n 'An error occurred while parsing the maxProjectFileSize. Using default value.'\n );\n maxSize = 100000000;\n }\n\n project.targetEnvironment = await getTargetEnvironment(ctx, opts, project, environments);\n\n if (!opts.force) {\n const shouldDisplayWarning = hasPendingOrLiveDeployment(\n environmentsDetails,\n project.targetEnvironment\n );\n if (shouldDisplayWarning) {\n ctx.logger.log(boxen(cliConfig.projectDeployment.confirmationText, boxenOptions));\n const { confirm } = await inquirer.prompt([\n {\n type: 'confirm',\n name: 'confirm',\n message: `Do you want to proceed with deployment to ${chalk.cyan(projectData.displayName)} on ${chalk.cyan(project.targetEnvironment)} environment?`,\n },\n ]);\n if (!confirm) {\n process.exit(1);\n }\n }\n }\n\n const buildId = await upload(ctx, project, cliConfig, token, maxSize);\n\n if (!buildId) {\n return;\n }\n\n let notifications: ReturnType<typeof notificationService> | null = null;\n\n try {\n ctx.logger.log(\n `∷ Deploying project to ${chalk.cyan(project.targetEnvironment ?? `production`)} environment...`\n );\n\n notifications = notificationService(\n `${apiConfig.apiBaseUrl}/${VERSION}/notifications`,\n token,\n cliConfig\n );\n\n await buildLogsService(`${apiConfig.apiBaseUrl}/${VERSION}/logs/${buildId}`, token, cliConfig);\n const dashboardUrlLine =\n chalk.cyan(' → ') +\n chalk.cyan.underline(`${apiConfig.dashboardBaseUrl}/projects/${project.name}/deployments`);\n ctx.logger.log(\n boxen(`Project and deployment logs ready at:\\n${dashboardUrlLine}`, {\n padding: 1,\n margin: 1,\n borderStyle: 'round',\n borderColor: 'white',\n titleAlignment: 'left',\n })\n );\n } catch (e: Error | unknown) {\n ctx.logger.debug(e);\n if (e instanceof Error) {\n ctx.logger.error(e.message);\n } else {\n ctx.logger.error('An error occurred while deploying the project. Please try again later.');\n }\n } finally {\n if (notifications) {\n notifications.close();\n }\n }\n};\n"],"names":["boxenOptions","padding","margin","align","borderColor","borderStyle","QUIT_OPTION","promptForEnvironment","environments","choices","map","env","name","value","selectedEnvironment","inquirer","prompt","type","message","chalk","grey","process","exit","upload","ctx","project","cliConfig","token","maxProjectFileSize","cloudApi","cloudApiFactory","storagePath","getTmpStoragePath","projectFolder","path","resolve","cwd","packageJson","loadPkg","logger","error","compressSpinner","spinner","start","indent","hashname","crypto","createHash","update","digest","compressedFilename","debug","compressFilesToTar","succeed","e","fail","tarFilePath","fileStats","fse","stat","size","log","remove","progressBar","data","deploy","filePath","onUploadProgress","progressEvent","total","percentage","Math","round","loaded","stop","green","bold","build_id","handleUploadError","response","status","environmentErrorMessage","environmentErrorMessageFactory","projectName","firstLine","projectDeployment","errors","environmentNotReady","secondLine","environmentCreationErrorFactory","getProject","local","projectResponse","createProjectAction","projectSaved","getConfig","cloudApiService","config","validateEnvironment","environment","includes","getTargetEnvironment","opts","targetEnvironment","length","hasPendingOrLiveDeployment","find","Error","hasPendingDeployment","hasLiveDeployment","getValidToken","tokenServiceFactory","promptLogin","projectData","environmentsDetails","metadata","isProjectSuspended","suspendedAt","underline","dashboardUrls","AxiosError","warn","cyan","trackEvent","projectInternalName","notificationService","notificationServiceFactory","buildLogsService","buildLogsServiceFactory","maxSize","parseInt","Number","isNaN","force","shouldDisplayWarning","boxen","confirmationText","confirm","displayName","buildId","notifications","apiConfig","apiBaseUrl","VERSION","dashboardUrlLine","dashboardBaseUrl","titleAlignment","close"],"mappings":"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"}
1
+ {"version":3,"file":"action.mjs","sources":["../../src/deploy-project/action.ts"],"sourcesContent":["import fse from 'fs-extra';\nimport inquirer from 'inquirer';\nimport boxen from 'boxen';\nimport path from 'path';\nimport chalk from 'chalk';\nimport { AxiosError } from 'axios';\nimport * as crypto from 'node:crypto';\nimport { apiConfig } from '../config/api';\nimport { compressFilesToTar } from '../utils/compress-files';\nimport createProjectAction from '../create-project/action';\nimport type {\n CLIContext,\n CloudApiService,\n CloudCliConfig,\n EnvironmentDetails,\n ProjectInfo,\n} from '../types';\nimport { getTmpStoragePath } from '../config/local';\nimport { cloudApiFactory, tokenServiceFactory, local } from '../services';\nimport { VERSION } from '../services/cli-api';\nimport { notificationServiceFactory } from '../services/notification';\nimport { loadPkg } from '../utils/pkg';\nimport { buildLogsServiceFactory } from '../services/build-logs';\nimport { promptLogin } from '../login/action';\nimport { trackEvent } from '../utils/analytics';\nimport {\n environmentCreationErrorFactory,\n environmentErrorMessageFactory,\n} from '../utils/error-message-factories';\n\ntype PackageJson = {\n name: string;\n strapi?: {\n uuid: string;\n };\n};\n\ninterface CmdOptions {\n env?: string;\n force?: boolean;\n}\n\nconst boxenOptions: boxen.Options = {\n padding: 1,\n margin: 1,\n align: 'center',\n borderColor: 'yellow',\n borderStyle: 'round',\n};\n\nconst QUIT_OPTION = 'Quit';\n\nasync function promptForEnvironment(environments: string[]): Promise<string> {\n const choices = environments.map((env) => ({ name: env, value: env }));\n const { selectedEnvironment } = await inquirer.prompt([\n {\n type: 'list',\n name: 'selectedEnvironment',\n message: 'Select the environment to deploy:',\n choices: [...choices, { name: chalk.grey(`(${QUIT_OPTION})`), value: null }],\n },\n ]);\n if (selectedEnvironment === null) {\n process.exit(1);\n }\n\n return selectedEnvironment;\n}\n\nasync function upload(\n ctx: CLIContext,\n project: Omit<ProjectInfo, 'id'>,\n cliConfig: CloudCliConfig,\n token: string,\n maxProjectFileSize: number\n) {\n const cloudApi = await cloudApiFactory(ctx, token);\n try {\n const storagePath = await getTmpStoragePath();\n const projectFolder = path.resolve(process.cwd());\n const packageJson = (await loadPkg(ctx)) as PackageJson;\n\n if (!packageJson) {\n ctx.logger.error(\n 'Unable to deploy the project. Please make sure the package.json file is correctly formatted.'\n );\n return;\n }\n\n const compressSpinner = ctx.logger.spinner('Compressing project...').start();\n compressSpinner.indent = 1;\n // hash packageJson.name to avoid conflicts\n const hashname = crypto.createHash('sha512').update(packageJson.name).digest('hex');\n const compressedFilename = `${hashname}.tar.gz`;\n try {\n ctx.logger.debug(\n 'Compression parameters\\n',\n `Storage path: ${storagePath}\\n`,\n `Project folder: ${projectFolder}\\n`,\n `Compressed filename: ${compressedFilename}`\n );\n await compressFilesToTar(storagePath, projectFolder, compressedFilename);\n compressSpinner.succeed(`Project compressed successfully!`);\n } catch (e: unknown) {\n compressSpinner.fail(\n 'Project compression failed. Try again later or check for large/incompatible files.'\n );\n ctx.logger.debug(e);\n process.exit(1);\n }\n\n const tarFilePath = path.resolve(storagePath, compressedFilename);\n const fileStats = await fse.stat(tarFilePath);\n\n if (fileStats.size > maxProjectFileSize) {\n ctx.logger.log(\n 'Unable to proceed: Your project is too big to be transferred, please use a git repo instead.'\n );\n try {\n await fse.remove(tarFilePath);\n } catch (e: any) {\n ctx.logger.log('Unable to remove file: ', tarFilePath);\n ctx.logger.debug(e);\n }\n return;\n }\n\n const progressBar = ctx.logger.progressBar(100, ' ∷ Uploading project');\n\n try {\n const { data } = await cloudApi.deploy(\n { filePath: tarFilePath, project },\n {\n onUploadProgress(progressEvent) {\n const total = progressEvent.total || fileStats.size;\n const percentage = Math.round((progressEvent.loaded * 100) / total);\n progressBar.update(percentage);\n },\n }\n );\n\n progressBar.update(100);\n progressBar.stop();\n ctx.logger.log(`${chalk.green.bold('✔')} Upload finished!\\n`);\n return data.build_id;\n } catch (e: any) {\n progressBar.stop();\n await handleUploadError(ctx, e, project, cliConfig);\n } finally {\n await fse.remove(tarFilePath);\n }\n process.exit(0);\n } catch (e: any) {\n ctx.logger.error('An error occurred while deploying the project. Please try again later.');\n ctx.logger.debug(e);\n process.exit(1);\n }\n}\n\nasync function handleUploadError(\n ctx: CLIContext,\n error: any,\n project: any,\n cliConfig: CloudCliConfig\n) {\n const { logger } = ctx;\n logger.debug(error);\n\n if (error.response?.status) {\n switch (error.response.status) {\n case 405: {\n const environmentErrorMessage = environmentErrorMessageFactory({\n projectName: project.name,\n firstLine: cliConfig.projectDeployment.errors.environmentNotReady.firstLine,\n secondLine: cliConfig.projectDeployment.errors.environmentNotReady.secondLine,\n });\n logger.log(environmentCreationErrorFactory(environmentErrorMessage));\n return;\n }\n case 413:\n logger.error(\n 'The project you are trying to upload is too big. Please remove unnecessary files and try again.'\n );\n return;\n default:\n break;\n }\n }\n logger.error('An error occurred while deploying the project. Please try again later.');\n}\n\nasync function getProject(ctx: CLIContext) {\n const { project } = await local.retrieve();\n if (!project) {\n try {\n const projectResponse = await createProjectAction(ctx);\n if (projectResponse) {\n const { project: projectSaved } = await local.retrieve();\n return projectSaved;\n }\n } catch (e: any) {\n ctx.logger.error('An error occurred while deploying the project. Please try again later.');\n ctx.logger.debug(e);\n process.exit(1);\n }\n }\n return project;\n}\n\nasync function getConfig({\n ctx,\n cloudApiService,\n}: {\n ctx: CLIContext;\n cloudApiService: CloudApiService;\n}): Promise<CloudCliConfig | null> {\n try {\n const { data: cliConfig } = await cloudApiService.config();\n return cliConfig;\n } catch (e) {\n ctx.logger.debug('Failed to get cli config', e);\n return null;\n }\n}\n\nfunction validateEnvironment(ctx: CLIContext, environment: string, environments: string[]): void {\n if (!environments.includes(environment)) {\n ctx.logger.error(`Environment ${environment} does not exist.`);\n process.exit(1);\n }\n}\n\nasync function getTargetEnvironment(\n ctx: CLIContext,\n opts: CmdOptions,\n project: Omit<ProjectInfo, 'id'>,\n environments: string[]\n): Promise<string> {\n if (opts.env) {\n validateEnvironment(ctx, opts.env, environments);\n return opts.env;\n }\n\n if (project.targetEnvironment) {\n return project.targetEnvironment;\n }\n\n if (environments.length > 1) {\n return promptForEnvironment(environments);\n }\n\n return environments[0];\n}\n\nfunction hasPendingOrLiveDeployment(\n environments: EnvironmentDetails[],\n targetEnvironment: string\n): boolean {\n const environment = environments.find((env) => env.name === targetEnvironment);\n if (!environment) {\n throw new Error(`Environment details ${targetEnvironment} not found.`);\n }\n return environment.hasPendingDeployment || environment.hasLiveDeployment || false;\n}\n\nexport default async (ctx: CLIContext, opts: CmdOptions) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n if (!token) {\n return;\n }\n\n const project = await getProject(ctx);\n if (!project) {\n process.exit(1);\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n let projectData;\n let environments: string[];\n let environmentsDetails: EnvironmentDetails[];\n\n try {\n const {\n data: { data, metadata },\n } = await cloudApiService.getProject({ name: project.name });\n projectData = data;\n environments = projectData.environments;\n environmentsDetails = projectData.environmentsDetails;\n const isProjectSuspended = projectData.suspendedAt;\n\n if (isProjectSuspended) {\n ctx.logger.log(\n '\\n Oops! This project has been suspended. \\n\\n Please reactivate it from the dashboard to continue deploying: '\n );\n ctx.logger.log(chalk.underline(`${metadata.dashboardUrls.project}`));\n return;\n }\n } catch (e: Error | unknown) {\n if (e instanceof AxiosError && e.response?.data) {\n if (e.response.status === 404) {\n ctx.logger.warn(\n `The project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command before deploying.`\n );\n } else {\n ctx.logger.error(e.response.data);\n }\n } else {\n ctx.logger.error(\n \"An error occurred while retrieving the project's information. Please try again later.\"\n );\n }\n ctx.logger.debug(e);\n return;\n }\n\n await trackEvent(ctx, cloudApiService, 'willDeployWithCLI', {\n projectInternalName: project.name,\n });\n\n const notificationService = notificationServiceFactory(ctx);\n const buildLogsService = buildLogsServiceFactory(ctx);\n\n const cliConfig = await getConfig({ ctx, cloudApiService });\n if (!cliConfig) {\n ctx.logger.error(\n 'An error occurred while retrieving data from Strapi Cloud. Please check your network or try again later.'\n );\n return;\n }\n\n let maxSize: number = parseInt(cliConfig.maxProjectFileSize, 10);\n if (Number.isNaN(maxSize)) {\n ctx.logger.debug(\n 'An error occurred while parsing the maxProjectFileSize. Using default value.'\n );\n maxSize = 100000000;\n }\n\n project.targetEnvironment = await getTargetEnvironment(ctx, opts, project, environments);\n\n if (!opts.force) {\n const shouldDisplayWarning = hasPendingOrLiveDeployment(\n environmentsDetails,\n project.targetEnvironment\n );\n if (shouldDisplayWarning) {\n ctx.logger.log(boxen(cliConfig.projectDeployment.confirmationText, boxenOptions));\n const { confirm } = await inquirer.prompt([\n {\n type: 'confirm',\n name: 'confirm',\n message: `Do you want to proceed with deployment to ${chalk.cyan(projectData.displayName)} on ${chalk.cyan(project.targetEnvironment)} environment?`,\n },\n ]);\n if (!confirm) {\n process.exit(1);\n }\n }\n }\n\n const buildId = await upload(ctx, project, cliConfig, token, maxSize);\n\n if (!buildId) {\n return;\n }\n\n let notifications: ReturnType<typeof notificationService> | null = null;\n\n try {\n ctx.logger.log(\n `∷ Deploying project to ${chalk.cyan(project.targetEnvironment ?? `production`)} environment...`\n );\n\n notifications = notificationService(\n `${apiConfig.apiBaseUrl}/${VERSION}/notifications`,\n token,\n cliConfig\n );\n\n await buildLogsService(`${apiConfig.apiBaseUrl}/${VERSION}/logs/${buildId}`, token, cliConfig);\n const dashboardUrlLine =\n chalk.cyan(' → ') +\n chalk.cyan.underline(`${apiConfig.dashboardBaseUrl}/projects/${project.name}/deployments`);\n ctx.logger.log(\n boxen(`Project and deployment logs ready at:\\n${dashboardUrlLine}`, {\n padding: 1,\n margin: 1,\n borderStyle: 'round',\n borderColor: 'white',\n titleAlignment: 'left',\n })\n );\n } catch (e: Error | unknown) {\n ctx.logger.debug(e);\n if (e instanceof Error) {\n ctx.logger.error(e.message);\n } else {\n ctx.logger.error('An error occurred while deploying the project. Please try again later.');\n }\n } finally {\n if (notifications) {\n notifications.close();\n }\n }\n};\n"],"names":["boxenOptions","padding","margin","align","borderColor","borderStyle","QUIT_OPTION","promptForEnvironment","environments","choices","map","env","name","value","selectedEnvironment","inquirer","prompt","type","message","chalk","grey","process","exit","upload","ctx","project","cliConfig","token","maxProjectFileSize","cloudApi","cloudApiFactory","storagePath","getTmpStoragePath","projectFolder","path","resolve","cwd","packageJson","loadPkg","logger","error","compressSpinner","spinner","start","indent","hashname","crypto","createHash","update","digest","compressedFilename","debug","compressFilesToTar","succeed","e","fail","tarFilePath","fileStats","fse","stat","size","log","remove","progressBar","data","deploy","filePath","onUploadProgress","progressEvent","total","percentage","Math","round","loaded","stop","green","bold","build_id","handleUploadError","response","status","environmentErrorMessage","environmentErrorMessageFactory","projectName","firstLine","projectDeployment","errors","environmentNotReady","secondLine","environmentCreationErrorFactory","getProject","local","projectResponse","createProjectAction","projectSaved","getConfig","cloudApiService","config","validateEnvironment","environment","includes","getTargetEnvironment","opts","targetEnvironment","length","hasPendingOrLiveDeployment","find","Error","hasPendingDeployment","hasLiveDeployment","getValidToken","tokenServiceFactory","promptLogin","projectData","environmentsDetails","metadata","isProjectSuspended","suspendedAt","underline","dashboardUrls","AxiosError","warn","cyan","trackEvent","projectInternalName","notificationService","notificationServiceFactory","buildLogsService","buildLogsServiceFactory","maxSize","parseInt","Number","isNaN","force","shouldDisplayWarning","boxen","confirmationText","confirm","displayName","buildId","notifications","apiConfig","apiBaseUrl","VERSION","dashboardUrlLine","dashboardBaseUrl","titleAlignment","close"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA0CA,MAAMA,YAAAA,GAA8B;IAClCC,OAAAA,EAAS,CAAA;IACTC,MAAAA,EAAQ,CAAA;IACRC,KAAAA,EAAO,QAAA;IACPC,WAAAA,EAAa,QAAA;IACbC,WAAAA,EAAa;AACf,CAAA;AAEA,MAAMC,WAAAA,GAAc,MAAA;AAEpB,eAAeC,qBAAqBC,YAAsB,EAAA;AACxD,IAAA,MAAMC,UAAUD,YAAAA,CAAaE,GAAG,CAAC,CAACC,OAAS;YAAEC,IAAAA,EAAMD,GAAAA;YAAKE,KAAAA,EAAOF;SAAI,CAAA,CAAA;AACnE,IAAA,MAAM,EAAEG,mBAAmB,EAAE,GAAG,MAAMC,QAAAA,CAASC,MAAM,CAAC;AACpD,QAAA;YACEC,IAAAA,EAAM,MAAA;YACNL,IAAAA,EAAM,qBAAA;YACNM,OAAAA,EAAS,mCAAA;YACTT,OAAAA,EAAS;AAAIA,gBAAAA,GAAAA,OAAAA;AAAS,gBAAA;oBAAEG,IAAAA,EAAMO,KAAAA,CAAMC,IAAI,CAAC,CAAC,CAAC,EAAEd,WAAAA,CAAY,CAAC,CAAC,CAAA;oBAAGO,KAAAA,EAAO;AAAK;AAAE;AAC9E;AACD,KAAA,CAAA;AACD,IAAA,IAAIC,wBAAwB,IAAA,EAAM;AAChCO,QAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,IAAA;IAEA,OAAOR,mBAAAA;AACT;AAEA,eAAeS,MAAAA,CACbC,GAAe,EACfC,OAAgC,EAChCC,SAAyB,EACzBC,KAAa,EACbC,kBAA0B,EAAA;IAE1B,MAAMC,QAAAA,GAAW,MAAMC,eAAAA,CAAgBN,GAAAA,EAAKG,KAAAA,CAAAA;IAC5C,IAAI;AACF,QAAA,MAAMI,cAAc,MAAMC,iBAAAA,EAAAA;AAC1B,QAAA,MAAMC,aAAAA,GAAgBC,aAAAA,CAAKC,OAAO,CAACd,QAAQe,GAAG,EAAA,CAAA;QAC9C,MAAMC,WAAAA,GAAe,MAAMC,OAAAA,CAAQd,GAAAA,CAAAA;AAEnC,QAAA,IAAI,CAACa,WAAAA,EAAa;YAChBb,GAAAA,CAAIe,MAAM,CAACC,KAAK,CACd,8FAAA,CAAA;AAEF,YAAA;AACF,QAAA;AAEA,QAAA,MAAMC,kBAAkBjB,GAAAA,CAAIe,MAAM,CAACG,OAAO,CAAC,0BAA0BC,KAAK,EAAA;AAC1EF,QAAAA,eAAAA,CAAgBG,MAAM,GAAG,CAAA;;QAEzB,MAAMC,QAAAA,GAAWC,MAAAA,CAAOC,UAAU,CAAC,QAAA,CAAA,CAAUC,MAAM,CAACX,WAAAA,CAAYzB,IAAI,CAAA,CAAEqC,MAAM,CAAC,KAAA,CAAA;AAC7E,QAAA,MAAMC,kBAAAA,GAAqB,CAAA,EAAGL,QAAAA,CAAS,OAAO,CAAC;QAC/C,IAAI;YACFrB,GAAAA,CAAIe,MAAM,CAACY,KAAK,CACd,4BACA,CAAC,cAAc,EAAEpB,WAAAA,CAAY,EAAE,CAAC,EAChC,CAAC,gBAAgB,EAAEE,aAAAA,CAAc,EAAE,CAAC,EACpC,CAAC,qBAAqB,EAAEiB,kBAAAA,CAAAA,CAAoB,CAAA;YAE9C,MAAME,kBAAAA,CAAmBrB,aAAaE,aAAAA,EAAeiB,kBAAAA,CAAAA;AACrDT,YAAAA,eAAAA,CAAgBY,OAAO,CAAC,CAAC,gCAAgC,CAAC,CAAA;AAC5D,QAAA,CAAA,CAAE,OAAOC,CAAAA,EAAY;AACnBb,YAAAA,eAAAA,CAAgBc,IAAI,CAClB,oFAAA,CAAA;YAEF/B,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAACG,CAAAA,CAAAA;AACjBjC,YAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,QAAA;AAEA,QAAA,MAAMkC,WAAAA,GAActB,aAAAA,CAAKC,OAAO,CAACJ,WAAAA,EAAamB,kBAAAA,CAAAA;AAC9C,QAAA,MAAMO,SAAAA,GAAY,MAAMC,YAAAA,CAAIC,IAAI,CAACH,WAAAA,CAAAA;QAEjC,IAAIC,SAAAA,CAAUG,IAAI,GAAGhC,kBAAAA,EAAoB;YACvCJ,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CACZ,8FAAA,CAAA;YAEF,IAAI;gBACF,MAAMH,YAAAA,CAAII,MAAM,CAACN,WAAAA,CAAAA;AACnB,YAAA,CAAA,CAAE,OAAOF,CAAAA,EAAQ;AACf9B,gBAAAA,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CAAC,yBAAA,EAA2BL,WAAAA,CAAAA;gBAC1ChC,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAACG,CAAAA,CAAAA;AACnB,YAAA;AACA,YAAA;AACF,QAAA;AAEA,QAAA,MAAMS,cAAcvC,GAAAA,CAAIe,MAAM,CAACwB,WAAW,CAAC,GAAA,EAAK,sBAAA,CAAA;QAEhD,IAAI;AACF,YAAA,MAAM,EAAEC,IAAI,EAAE,GAAG,MAAMnC,QAAAA,CAASoC,MAAM,CACpC;gBAAEC,QAAAA,EAAUV,WAAAA;AAAa/B,gBAAAA;aAAQ,EACjC;AACE0C,gBAAAA,gBAAAA,CAAAA,CAAiBC,aAAa,EAAA;AAC5B,oBAAA,MAAMC,KAAAA,GAAQD,aAAAA,CAAcC,KAAK,IAAIZ,UAAUG,IAAI;oBACnD,MAAMU,UAAAA,GAAaC,KAAKC,KAAK,CAAC,aAACJ,CAAcK,MAAM,GAAG,GAAA,GAAOJ,KAAAA,CAAAA;AAC7DN,oBAAAA,WAAAA,CAAYf,MAAM,CAACsB,UAAAA,CAAAA;AACrB,gBAAA;AACF,aAAA,CAAA;AAGFP,YAAAA,WAAAA,CAAYf,MAAM,CAAC,GAAA,CAAA;AACnBe,YAAAA,WAAAA,CAAYW,IAAI,EAAA;AAChBlD,YAAAA,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CAAC,CAAA,EAAG1C,KAAAA,CAAMwD,KAAK,CAACC,IAAI,CAAC,GAAA,CAAA,CAAK,mBAAmB,CAAC,CAAA;AAC5D,YAAA,OAAOZ,KAAKa,QAAQ;AACtB,QAAA,CAAA,CAAE,OAAOvB,CAAAA,EAAQ;AACfS,YAAAA,WAAAA,CAAYW,IAAI,EAAA;YAChB,MAAMI,iBAAAA,CAAkBtD,GAAAA,EAAK8B,CAAAA,EAAG7B,OAAAA,EAASC,SAAAA,CAAAA;QAC3C,CAAA,QAAU;YACR,MAAMgC,YAAAA,CAAII,MAAM,CAACN,WAAAA,CAAAA;AACnB,QAAA;AACAnC,QAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,IAAA,CAAA,CAAE,OAAOgC,CAAAA,EAAQ;QACf9B,GAAAA,CAAIe,MAAM,CAACC,KAAK,CAAC,wEAAA,CAAA;QACjBhB,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAACG,CAAAA,CAAAA;AACjBjC,QAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,IAAA;AACF;AAEA,eAAewD,kBACbtD,GAAe,EACfgB,KAAU,EACVf,OAAY,EACZC,SAAyB,EAAA;IAEzB,MAAM,EAAEa,MAAM,EAAE,GAAGf,GAAAA;AACnBe,IAAAA,MAAAA,CAAOY,KAAK,CAACX,KAAAA,CAAAA;IAEb,IAAIA,KAAAA,CAAMuC,QAAQ,EAAEC,MAAAA,EAAQ;QAC1B,OAAQxC,KAAAA,CAAMuC,QAAQ,CAACC,MAAM;YAC3B,KAAK,GAAA;AAAK,gBAAA;AACR,oBAAA,MAAMC,0BAA0BC,8BAAAA,CAA+B;AAC7DC,wBAAAA,WAAAA,EAAa1D,QAAQb,IAAI;AACzBwE,wBAAAA,SAAAA,EAAW1D,UAAU2D,iBAAiB,CAACC,MAAM,CAACC,mBAAmB,CAACH,SAAS;AAC3EI,wBAAAA,UAAAA,EAAY9D,UAAU2D,iBAAiB,CAACC,MAAM,CAACC,mBAAmB,CAACC;AACrE,qBAAA,CAAA;oBACAjD,MAAAA,CAAOsB,GAAG,CAAC4B,+BAAAA,CAAgCR,uBAAAA,CAAAA,CAAAA;AAC3C,oBAAA;AACF,gBAAA;YACA,KAAK,GAAA;AACH1C,gBAAAA,MAAAA,CAAOC,KAAK,CACV,iGAAA,CAAA;AAEF,gBAAA;AAGJ;AACF,IAAA;AACAD,IAAAA,MAAAA,CAAOC,KAAK,CAAC,wEAAA,CAAA;AACf;AAEA,eAAekD,WAAWlE,GAAe,EAAA;AACvC,IAAA,MAAM,EAAEC,OAAO,EAAE,GAAG,MAAMkE,QAAc,EAAA;AACxC,IAAA,IAAI,CAAClE,OAAAA,EAAS;QACZ,IAAI;YACF,MAAMmE,eAAAA,GAAkB,MAAMC,QAAAA,CAAoBrE,GAAAA,CAAAA;AAClD,YAAA,IAAIoE,eAAAA,EAAiB;AACnB,gBAAA,MAAM,EAAEnE,OAAAA,EAASqE,YAAY,EAAE,GAAG,MAAMH,QAAc,EAAA;gBACtD,OAAOG,YAAAA;AACT,YAAA;AACF,QAAA,CAAA,CAAE,OAAOxC,CAAAA,EAAQ;YACf9B,GAAAA,CAAIe,MAAM,CAACC,KAAK,CAAC,wEAAA,CAAA;YACjBhB,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAACG,CAAAA,CAAAA;AACjBjC,YAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,QAAA;AACF,IAAA;IACA,OAAOG,OAAAA;AACT;AAEA,eAAesE,SAAAA,CAAU,EACvBvE,GAAG,EACHwE,eAAe,EAIhB,EAAA;IACC,IAAI;AACF,QAAA,MAAM,EAAEhC,IAAAA,EAAMtC,SAAS,EAAE,GAAG,MAAMsE,gBAAgBC,MAAM,EAAA;QACxD,OAAOvE,SAAAA;AACT,IAAA,CAAA,CAAE,OAAO4B,CAAAA,EAAG;AACV9B,QAAAA,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAAC,0BAAA,EAA4BG,CAAAA,CAAAA;QAC7C,OAAO,IAAA;AACT,IAAA;AACF;AAEA,SAAS4C,mBAAAA,CAAoB1E,GAAe,EAAE2E,WAAmB,EAAE3F,YAAsB,EAAA;AACvF,IAAA,IAAI,CAACA,YAAAA,CAAa4F,QAAQ,CAACD,WAAAA,CAAAA,EAAc;QACvC3E,GAAAA,CAAIe,MAAM,CAACC,KAAK,CAAC,CAAC,YAAY,EAAE2D,WAAAA,CAAY,gBAAgB,CAAC,CAAA;AAC7D9E,QAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,IAAA;AACF;AAEA,eAAe+E,qBACb7E,GAAe,EACf8E,IAAgB,EAChB7E,OAAgC,EAChCjB,YAAsB,EAAA;IAEtB,IAAI8F,IAAAA,CAAK3F,GAAG,EAAE;QACZuF,mBAAAA,CAAoB1E,GAAAA,EAAK8E,IAAAA,CAAK3F,GAAG,EAAEH,YAAAA,CAAAA;AACnC,QAAA,OAAO8F,KAAK3F,GAAG;AACjB,IAAA;IAEA,IAAIc,OAAAA,CAAQ8E,iBAAiB,EAAE;AAC7B,QAAA,OAAO9E,QAAQ8E,iBAAiB;AAClC,IAAA;IAEA,IAAI/F,YAAAA,CAAagG,MAAM,GAAG,CAAA,EAAG;AAC3B,QAAA,OAAOjG,oBAAAA,CAAqBC,YAAAA,CAAAA;AAC9B,IAAA;IAEA,OAAOA,YAAY,CAAC,CAAA,CAAE;AACxB;AAEA,SAASiG,0BAAAA,CACPjG,YAAkC,EAClC+F,iBAAyB,EAAA;IAEzB,MAAMJ,WAAAA,GAAc3F,aAAakG,IAAI,CAAC,CAAC/F,GAAAA,GAAQA,GAAAA,CAAIC,IAAI,KAAK2F,iBAAAA,CAAAA;AAC5D,IAAA,IAAI,CAACJ,WAAAA,EAAa;AAChB,QAAA,MAAM,IAAIQ,KAAAA,CAAM,CAAC,oBAAoB,EAAEJ,iBAAAA,CAAkB,WAAW,CAAC,CAAA;AACvE,IAAA;AACA,IAAA,OAAOJ,WAAAA,CAAYS,oBAAoB,IAAIT,WAAAA,CAAYU,iBAAiB,IAAI,KAAA;AAC9E;AAEA,aAAe,CAAA,OAAOrF,GAAAA,EAAiB8E,IAAAA,GAAAA;AACrC,IAAA,MAAM,EAAEQ,aAAa,EAAE,GAAG,MAAMC,mBAAAA,CAAoBvF,GAAAA,CAAAA;IACpD,MAAMG,KAAAA,GAAQ,MAAMmF,aAAAA,CAActF,GAAAA,EAAKwF,WAAAA,CAAAA;AACvC,IAAA,IAAI,CAACrF,KAAAA,EAAO;AACV,QAAA;AACF,IAAA;IAEA,MAAMF,OAAAA,GAAU,MAAMiE,UAAAA,CAAWlE,GAAAA,CAAAA;AACjC,IAAA,IAAI,CAACC,OAAAA,EAAS;AACZJ,QAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,IAAA;IAEA,MAAM0E,eAAAA,GAAkB,MAAMlE,eAAAA,CAAgBN,GAAAA,EAAKG,KAAAA,CAAAA;IACnD,IAAIsF,WAAAA;IACJ,IAAIzG,YAAAA;IACJ,IAAI0G,mBAAAA;IAEJ,IAAI;AACF,QAAA,MAAM,EACJlD,IAAAA,EAAM,EAAEA,IAAI,EAAEmD,QAAQ,EAAE,EACzB,GAAG,MAAMnB,eAAAA,CAAgBN,UAAU,CAAC;AAAE9E,YAAAA,IAAAA,EAAMa,QAAQb;AAAK,SAAA,CAAA;QAC1DqG,WAAAA,GAAcjD,IAAAA;AACdxD,QAAAA,YAAAA,GAAeyG,YAAYzG,YAAY;AACvC0G,QAAAA,mBAAAA,GAAsBD,YAAYC,mBAAmB;QACrD,MAAME,kBAAAA,GAAqBH,YAAYI,WAAW;AAElD,QAAA,IAAID,kBAAAA,EAAoB;YACtB5F,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CACZ,gHAAA,CAAA;AAEFrC,YAAAA,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CAAC1C,KAAAA,CAAMmG,SAAS,CAAC,CAAA,EAAGH,QAAAA,CAASI,aAAa,CAAC9F,OAAO,CAAA,CAAE,CAAA,CAAA;AAClE,YAAA;AACF,QAAA;AACF,IAAA,CAAA,CAAE,OAAO6B,CAAAA,EAAoB;AAC3B,QAAA,IAAIA,CAAAA,YAAakE,UAAAA,IAAclE,CAAAA,CAAEyB,QAAQ,EAAEf,IAAAA,EAAM;AAC/C,YAAA,IAAIV,CAAAA,CAAEyB,QAAQ,CAACC,MAAM,KAAK,GAAA,EAAK;AAC7BxD,gBAAAA,GAAAA,CAAIe,MAAM,CAACkF,IAAI,CACb,CAAC,uJAAuJ,EAAEtG,KAAAA,CAAMuG,IAAI,CAClK,MAAA,CAAA,CACA,0BAA0B,CAAC,CAAA;YAEjC,CAAA,MAAO;AACLlG,gBAAAA,GAAAA,CAAIe,MAAM,CAACC,KAAK,CAACc,CAAAA,CAAEyB,QAAQ,CAACf,IAAI,CAAA;AAClC,YAAA;QACF,CAAA,MAAO;YACLxC,GAAAA,CAAIe,MAAM,CAACC,KAAK,CACd,uFAAA,CAAA;AAEJ,QAAA;QACAhB,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAACG,CAAAA,CAAAA;AACjB,QAAA;AACF,IAAA;IAEA,MAAMqE,UAAAA,CAAWnG,GAAAA,EAAKwE,eAAAA,EAAiB,mBAAA,EAAqB;AAC1D4B,QAAAA,mBAAAA,EAAqBnG,QAAQb;AAC/B,KAAA,CAAA;AAEA,IAAA,MAAMiH,sBAAsBC,0BAAAA,CAA2BtG,GAAAA,CAAAA;AACvD,IAAA,MAAMuG,mBAAmBC,uBAAAA,CAAwBxG,GAAAA,CAAAA;IAEjD,MAAME,SAAAA,GAAY,MAAMqE,SAAAA,CAAU;AAAEvE,QAAAA,GAAAA;AAAKwE,QAAAA;AAAgB,KAAA,CAAA;AACzD,IAAA,IAAI,CAACtE,SAAAA,EAAW;QACdF,GAAAA,CAAIe,MAAM,CAACC,KAAK,CACd,0GAAA,CAAA;AAEF,QAAA;AACF,IAAA;AAEA,IAAA,IAAIyF,OAAAA,GAAkBC,QAAAA,CAASxG,SAAAA,CAAUE,kBAAkB,EAAE,EAAA,CAAA;IAC7D,IAAIuG,MAAAA,CAAOC,KAAK,CAACH,OAAAA,CAAAA,EAAU;QACzBzG,GAAAA,CAAIe,MAAM,CAACY,KAAK,CACd,8EAAA,CAAA;QAEF8E,OAAAA,GAAU,SAAA;AACZ,IAAA;AAEAxG,IAAAA,OAAAA,CAAQ8E,iBAAiB,GAAG,MAAMF,oBAAAA,CAAqB7E,GAAAA,EAAK8E,MAAM7E,OAAAA,EAASjB,YAAAA,CAAAA;IAE3E,IAAI,CAAC8F,IAAAA,CAAK+B,KAAK,EAAE;AACf,QAAA,MAAMC,oBAAAA,GAAuB7B,0BAAAA,CAC3BS,mBAAAA,EACAzF,OAAAA,CAAQ8E,iBAAiB,CAAA;AAE3B,QAAA,IAAI+B,oBAAAA,EAAsB;YACxB9G,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CAAC0E,MAAM7G,SAAAA,CAAU2D,iBAAiB,CAACmD,gBAAgB,EAAExI,YAAAA,CAAAA,CAAAA;AACnE,YAAA,MAAM,EAAEyI,OAAO,EAAE,GAAG,MAAM1H,QAAAA,CAASC,MAAM,CAAC;AACxC,gBAAA;oBACEC,IAAAA,EAAM,SAAA;oBACNL,IAAAA,EAAM,SAAA;AACNM,oBAAAA,OAAAA,EAAS,CAAC,0CAA0C,EAAEC,MAAMuG,IAAI,CAACT,YAAYyB,WAAW,CAAA,CAAE,IAAI,EAAEvH,MAAMuG,IAAI,CAACjG,QAAQ8E,iBAAiB,CAAA,CAAE,aAAa;AACrJ;AACD,aAAA,CAAA;AACD,YAAA,IAAI,CAACkC,OAAAA,EAAS;AACZpH,gBAAAA,OAAAA,CAAQC,IAAI,CAAC,CAAA,CAAA;AACf,YAAA;AACF,QAAA;AACF,IAAA;AAEA,IAAA,MAAMqH,UAAU,MAAMpH,MAAAA,CAAOC,GAAAA,EAAKC,OAAAA,EAASC,WAAWC,KAAAA,EAAOsG,OAAAA,CAAAA;AAE7D,IAAA,IAAI,CAACU,OAAAA,EAAS;AACZ,QAAA;AACF,IAAA;AAEA,IAAA,IAAIC,aAAAA,GAA+D,IAAA;IAEnE,IAAI;AACFpH,QAAAA,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CACZ,CAAC,uBAAuB,EAAE1C,KAAAA,CAAMuG,IAAI,CAACjG,OAAAA,CAAQ8E,iBAAiB,IAAI,CAAC,UAAU,CAAC,CAAA,CAAE,eAAe,CAAC,CAAA;QAGlGqC,aAAAA,GAAgBf,mBAAAA,CACd,CAAA,EAAGgB,SAAAA,CAAUC,UAAU,CAAC,CAAC,EAAEC,OAAAA,CAAQ,cAAc,CAAC,EAClDpH,KAAAA,EACAD,SAAAA,CAAAA;AAGF,QAAA,MAAMqG,gBAAAA,CAAiB,CAAA,EAAGc,SAAAA,CAAUC,UAAU,CAAC,CAAC,EAAEC,OAAAA,CAAQ,MAAM,EAAEJ,OAAAA,CAAAA,CAAS,EAAEhH,KAAAA,EAAOD,SAAAA,CAAAA;QACpF,MAAMsH,gBAAAA,GACJ7H,MAAMuG,IAAI,CAAC,UACXvG,KAAAA,CAAMuG,IAAI,CAACJ,SAAS,CAAC,GAAGuB,SAAAA,CAAUI,gBAAgB,CAAC,UAAU,EAAExH,QAAQb,IAAI,CAAC,YAAY,CAAC,CAAA;QAC3FY,GAAAA,CAAIe,MAAM,CAACsB,GAAG,CACZ0E,MAAM,CAAC,uCAAuC,EAAES,gBAAAA,CAAAA,CAAkB,EAAE;YAClE/I,OAAAA,EAAS,CAAA;YACTC,MAAAA,EAAQ,CAAA;YACRG,WAAAA,EAAa,OAAA;YACbD,WAAAA,EAAa,OAAA;YACb8I,cAAAA,EAAgB;AAClB,SAAA,CAAA,CAAA;AAEJ,IAAA,CAAA,CAAE,OAAO5F,CAAAA,EAAoB;QAC3B9B,GAAAA,CAAIe,MAAM,CAACY,KAAK,CAACG,CAAAA,CAAAA;AACjB,QAAA,IAAIA,aAAaqD,KAAAA,EAAO;AACtBnF,YAAAA,GAAAA,CAAIe,MAAM,CAACC,KAAK,CAACc,EAAEpC,OAAO,CAAA;QAC5B,CAAA,MAAO;YACLM,GAAAA,CAAIe,MAAM,CAACC,KAAK,CAAC,wEAAA,CAAA;AACnB,QAAA;IACF,CAAA,QAAU;AACR,QAAA,IAAIoG,aAAAA,EAAe;AACjBA,YAAAA,aAAAA,CAAcO,KAAK,EAAA;AACrB,QAAA;AACF,IAAA;AACF,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sources":["../../src/deploy-project/command.ts"],"sourcesContent":["import { createCommand } from 'commander';\nimport { type StrapiCloudCommand } from '../types';\nimport { runAction } from '../utils/helpers';\nimport action from './action';\n\n/**\n * `$ deploy project to the cloud`\n */\nconst command: StrapiCloudCommand = ({ ctx }) => {\n return createCommand('cloud:deploy')\n .alias('deploy')\n .description('Deploy a Strapi Cloud project')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .option('-f, --force', 'Skip confirmation to deploy')\n .option('-e, --env <name>', 'Specify the environment to deploy')\n .action((opts) => runAction('deploy', action)(ctx, opts));\n};\n\nexport default command;\n"],"names":["command","ctx","createCommand","alias","description","option","action","opts","runAction"],"mappings":";;;;;;AAKA;;AAEC,IACKA,MAAAA,OAAAA,GAA8B,CAAC,EAAEC,GAAG,EAAE,GAAA;AAC1C,IAAA,OAAOC,uBAAc,CAAA,cAAA,CAAA,CAClBC,KAAK,CAAC,QACNC,CAAAA,CAAAA,WAAW,CAAC,+BAAA,CAAA,CACZC,MAAM,CAAC,aAAe,EAAA,yCAAA,CAAA,CACtBA,MAAM,CAAC,cAAA,EAAgB,oBACvBA,CAAAA,CAAAA,MAAM,CAAC,aAAA,EAAe,6BACtBA,CAAAA,CAAAA,MAAM,CAAC,kBAAoB,EAAA,mCAAA,CAAA,CAC3BC,MAAM,CAAC,CAACC,IAAAA,GAASC,iBAAU,CAAA,QAAA,EAAUF,QAAQL,GAAKM,EAAAA,IAAAA,CAAAA,CAAAA;AACvD;;;;"}
1
+ {"version":3,"file":"command.js","sources":["../../src/deploy-project/command.ts"],"sourcesContent":["import { createCommand } from 'commander';\nimport { type StrapiCloudCommand } from '../types';\nimport { runAction } from '../utils/helpers';\nimport action from './action';\n\n/**\n * `$ deploy project to the cloud`\n */\nconst command: StrapiCloudCommand = ({ ctx }) => {\n return createCommand('cloud:deploy')\n .alias('deploy')\n .description('Deploy a Strapi Cloud project')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .option('-f, --force', 'Skip confirmation to deploy')\n .option('-e, --env <name>', 'Specify the environment to deploy')\n .action((opts) => runAction('deploy', action)(ctx, opts));\n};\n\nexport default command;\n"],"names":["command","ctx","createCommand","alias","description","option","action","opts","runAction"],"mappings":";;;;;;AAKA;;AAEC,IACD,MAAMA,OAAAA,GAA8B,CAAC,EAAEC,GAAG,EAAE,GAAA;AAC1C,IAAA,OAAOC,uBAAAA,CAAc,cAAA,CAAA,CAClBC,KAAK,CAAC,QAAA,CAAA,CACNC,WAAW,CAAC,+BAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,yCAAA,CAAA,CACtBA,MAAM,CAAC,cAAA,EAAgB,oBAAA,CAAA,CACvBA,MAAM,CAAC,aAAA,EAAe,6BAAA,CAAA,CACtBA,MAAM,CAAC,kBAAA,EAAoB,mCAAA,CAAA,CAC3BC,MAAM,CAAC,CAACC,IAAAA,GAASC,iBAAAA,CAAU,QAAA,EAAUF,QAAQL,GAAAA,EAAKM,IAAAA,CAAAA,CAAAA;AACvD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.mjs","sources":["../../src/deploy-project/command.ts"],"sourcesContent":["import { createCommand } from 'commander';\nimport { type StrapiCloudCommand } from '../types';\nimport { runAction } from '../utils/helpers';\nimport action from './action';\n\n/**\n * `$ deploy project to the cloud`\n */\nconst command: StrapiCloudCommand = ({ ctx }) => {\n return createCommand('cloud:deploy')\n .alias('deploy')\n .description('Deploy a Strapi Cloud project')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .option('-f, --force', 'Skip confirmation to deploy')\n .option('-e, --env <name>', 'Specify the environment to deploy')\n .action((opts) => runAction('deploy', action)(ctx, opts));\n};\n\nexport default command;\n"],"names":["command","ctx","createCommand","alias","description","option","action","opts","runAction"],"mappings":";;;;AAKA;;AAEC,IACKA,MAAAA,OAAAA,GAA8B,CAAC,EAAEC,GAAG,EAAE,GAAA;AAC1C,IAAA,OAAOC,aAAc,CAAA,cAAA,CAAA,CAClBC,KAAK,CAAC,QACNC,CAAAA,CAAAA,WAAW,CAAC,+BAAA,CAAA,CACZC,MAAM,CAAC,aAAe,EAAA,yCAAA,CAAA,CACtBA,MAAM,CAAC,cAAA,EAAgB,oBACvBA,CAAAA,CAAAA,MAAM,CAAC,aAAA,EAAe,6BACtBA,CAAAA,CAAAA,MAAM,CAAC,kBAAoB,EAAA,mCAAA,CAAA,CAC3BC,MAAM,CAAC,CAACC,IAAAA,GAASC,SAAU,CAAA,QAAA,EAAUF,QAAQL,GAAKM,EAAAA,IAAAA,CAAAA,CAAAA;AACvD;;;;"}
1
+ {"version":3,"file":"command.mjs","sources":["../../src/deploy-project/command.ts"],"sourcesContent":["import { createCommand } from 'commander';\nimport { type StrapiCloudCommand } from '../types';\nimport { runAction } from '../utils/helpers';\nimport action from './action';\n\n/**\n * `$ deploy project to the cloud`\n */\nconst command: StrapiCloudCommand = ({ ctx }) => {\n return createCommand('cloud:deploy')\n .alias('deploy')\n .description('Deploy a Strapi Cloud project')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .option('-f, --force', 'Skip confirmation to deploy')\n .option('-e, --env <name>', 'Specify the environment to deploy')\n .action((opts) => runAction('deploy', action)(ctx, opts));\n};\n\nexport default command;\n"],"names":["command","ctx","createCommand","alias","description","option","action","opts","runAction"],"mappings":";;;;AAKA;;AAEC,IACD,MAAMA,OAAAA,GAA8B,CAAC,EAAEC,GAAG,EAAE,GAAA;AAC1C,IAAA,OAAOC,aAAAA,CAAc,cAAA,CAAA,CAClBC,KAAK,CAAC,QAAA,CAAA,CACNC,WAAW,CAAC,+BAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,yCAAA,CAAA,CACtBA,MAAM,CAAC,cAAA,EAAgB,oBAAA,CAAA,CACvBA,MAAM,CAAC,aAAA,EAAe,6BAAA,CAAA,CACtBA,MAAM,CAAC,kBAAA,EAAoB,mCAAA,CAAA,CAC3BC,MAAM,CAAC,CAACC,IAAAA,GAASC,SAAAA,CAAU,QAAA,EAAUF,QAAQL,GAAAA,EAAKM,IAAAA,CAAAA,CAAAA;AACvD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/deploy-project/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../types';\n\nexport { action, command };\n\nexport default {\n name: 'deploy-project',\n description: 'Deploy a Strapi Cloud project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;;;;;AAMA,oBAAe;IACbA,IAAM,EAAA,gBAAA;IACNC,WAAa,EAAA,+BAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAA4B;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/deploy-project/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../types';\n\nexport { action, command };\n\nexport default {\n name: 'deploy-project',\n description: 'Deploy a Strapi Cloud project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;;;;;AAMA,oBAAe;IACbA,IAAAA,EAAM,gBAAA;IACNC,WAAAA,EAAa,+BAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAAA;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/deploy-project/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../types';\n\nexport { action, command };\n\nexport default {\n name: 'deploy-project',\n description: 'Deploy a Strapi Cloud project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;AAMA,oBAAe;IACbA,IAAM,EAAA,gBAAA;IACNC,WAAa,EAAA,+BAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAA4B;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/deploy-project/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../types';\n\nexport { action, command };\n\nexport default {\n name: 'deploy-project',\n description: 'Deploy a Strapi Cloud project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;AAMA,oBAAe;IACbA,IAAAA,EAAM,gBAAA;IACNC,WAAAA,EAAa,+BAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sources":["../../src/environment/command.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { defineCloudNamespace } from '../cloud/command';\n\nlet environmentCmd: Command | null = null;\n\nexport const initializeEnvironmentCommand = (command: Command, ctx: unknown): Command => {\n if (!environmentCmd) {\n const cloud = defineCloudNamespace(command, ctx);\n environmentCmd = cloud.command('environment').description('Manage environments');\n }\n return environmentCmd;\n};\n"],"names":["environmentCmd","initializeEnvironmentCommand","command","ctx","cloud","defineCloudNamespace","description"],"mappings":";;;;AAGA,IAAIA,cAAiC,GAAA,IAAA;AAE9B,MAAMC,4BAA+B,GAAA,CAACC,SAAkBC,EAAAA,GAAAA,GAAAA;AAC7D,IAAA,IAAI,CAACH,cAAgB,EAAA;QACnB,MAAMI,KAAAA,GAAQC,6BAAqBH,SAASC,EAAAA,GAAAA,CAAAA;AAC5CH,QAAAA,cAAAA,GAAiBI,KAAMF,CAAAA,OAAO,CAAC,aAAA,CAAA,CAAeI,WAAW,CAAC,qBAAA,CAAA;AAC5D;IACA,OAAON,cAAAA;AACT;;;;"}
1
+ {"version":3,"file":"command.js","sources":["../../src/environment/command.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { defineCloudNamespace } from '../cloud/command';\n\nlet environmentCmd: Command | null = null;\n\nexport const initializeEnvironmentCommand = (command: Command, ctx: unknown): Command => {\n if (!environmentCmd) {\n const cloud = defineCloudNamespace(command, ctx);\n environmentCmd = cloud.command('environment').description('Manage environments');\n }\n return environmentCmd;\n};\n"],"names":["environmentCmd","initializeEnvironmentCommand","command","ctx","cloud","defineCloudNamespace","description"],"mappings":";;;;AAGA,IAAIA,cAAAA,GAAiC,IAAA;AAE9B,MAAMC,4BAAAA,GAA+B,CAACC,SAAAA,EAAkBC,GAAAA,GAAAA;AAC7D,IAAA,IAAI,CAACH,cAAAA,EAAgB;QACnB,MAAMI,KAAAA,GAAQC,6BAAqBH,SAAAA,EAASC,GAAAA,CAAAA;AAC5CH,QAAAA,cAAAA,GAAiBI,KAAAA,CAAMF,OAAO,CAAC,aAAA,CAAA,CAAeI,WAAW,CAAC,qBAAA,CAAA;AAC5D,IAAA;IACA,OAAON,cAAAA;AACT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.mjs","sources":["../../src/environment/command.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { defineCloudNamespace } from '../cloud/command';\n\nlet environmentCmd: Command | null = null;\n\nexport const initializeEnvironmentCommand = (command: Command, ctx: unknown): Command => {\n if (!environmentCmd) {\n const cloud = defineCloudNamespace(command, ctx);\n environmentCmd = cloud.command('environment').description('Manage environments');\n }\n return environmentCmd;\n};\n"],"names":["environmentCmd","initializeEnvironmentCommand","command","ctx","cloud","defineCloudNamespace","description"],"mappings":";;AAGA,IAAIA,cAAiC,GAAA,IAAA;AAE9B,MAAMC,4BAA+B,GAAA,CAACC,OAAkBC,EAAAA,GAAAA,GAAAA;AAC7D,IAAA,IAAI,CAACH,cAAgB,EAAA;QACnB,MAAMI,KAAAA,GAAQC,qBAAqBH,OAASC,EAAAA,GAAAA,CAAAA;AAC5CH,QAAAA,cAAAA,GAAiBI,KAAMF,CAAAA,OAAO,CAAC,aAAA,CAAA,CAAeI,WAAW,CAAC,qBAAA,CAAA;AAC5D;IACA,OAAON,cAAAA;AACT;;;;"}
1
+ {"version":3,"file":"command.mjs","sources":["../../src/environment/command.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { defineCloudNamespace } from '../cloud/command';\n\nlet environmentCmd: Command | null = null;\n\nexport const initializeEnvironmentCommand = (command: Command, ctx: unknown): Command => {\n if (!environmentCmd) {\n const cloud = defineCloudNamespace(command, ctx);\n environmentCmd = cloud.command('environment').description('Manage environments');\n }\n return environmentCmd;\n};\n"],"names":["environmentCmd","initializeEnvironmentCommand","command","ctx","cloud","defineCloudNamespace","description"],"mappings":";;AAGA,IAAIA,cAAAA,GAAiC,IAAA;AAE9B,MAAMC,4BAAAA,GAA+B,CAACC,OAAAA,EAAkBC,GAAAA,GAAAA;AAC7D,IAAA,IAAI,CAACH,cAAAA,EAAgB;QACnB,MAAMI,KAAAA,GAAQC,qBAAqBH,OAAAA,EAASC,GAAAA,CAAAA;AAC5CH,QAAAA,cAAAA,GAAiBI,KAAAA,CAAMF,OAAO,CAAC,aAAA,CAAA,CAAeI,WAAW,CAAC,qBAAA,CAAA;AAC5D,IAAA;IACA,OAAON,cAAAA;AACT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sources":["../../../src/environment/link/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport inquirer, { type Answers } from 'inquirer';\nimport { EnvironmentDetails, ProjectInput } from '../../services/cli-api';\nimport type { CLIContext, CloudApiService } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory, local } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nconst QUIT_OPTION = 'Quit';\n\ninterface LinkEnvironmentAnswer extends Answers {\n targetEnvironment: string;\n}\n\ninterface LinkEnvironmentInput extends Answers {\n targetEnvironment: string;\n}\n\ntype EnvironmentsList = EnvironmentDetails[];\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n\n if (!project) {\n logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const environments = await getEnvironmentsList(ctx, cloudApiService, project);\n\n if (!environments) {\n logger.debug(`Fetching environments failed.`);\n return;\n }\n\n if (environments.length === 0) {\n logger.log(\n `The only available environment is already linked. You can add a new one from your project settings on the Strapi Cloud dashboard.`\n );\n return;\n }\n\n const answer: LinkEnvironmentAnswer | null = await promptUserForEnvironment(ctx, environments);\n\n if (!answer) {\n return;\n }\n\n await trackEvent(ctx, cloudApiService, 'willLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n\n try {\n await local.patch({ project: { targetEnvironment: answer.targetEnvironment } });\n } catch (e) {\n await trackEvent(ctx, cloudApiService, 'didNotLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n logger.debug('Failed to link environment', e);\n logger.error(\n 'Failed to link the environment. If this issue persists, try re-linking your project or contact support.'\n );\n process.exit(1);\n }\n\n logger.log(\n ` You have successfully linked your project to ${chalk.cyan(answer.targetEnvironment)}, on ${chalk.cyan(project.displayName)}. You are now able to deploy your project.`\n );\n await trackEvent(ctx, cloudApiService, 'didLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n};\n\nasync function promptUserForEnvironment(\n ctx: CLIContext,\n environments: EnvironmentsList\n): Promise<LinkEnvironmentAnswer | null> {\n const { logger } = ctx;\n\n try {\n const answer: LinkEnvironmentInput = await inquirer.prompt([\n {\n type: 'list',\n name: 'targetEnvironment',\n message: 'Which environment do you want to link?',\n choices: [...environments, { name: chalk.grey(`(${QUIT_OPTION})`), value: null }],\n },\n ]);\n\n if (!answer.targetEnvironment) {\n return null;\n }\n\n return answer;\n } catch (e) {\n logger.debug('Failed to get user input', e);\n logger.error('An error occurred while trying to get your environment selection.');\n return null;\n }\n}\n\nasync function getEnvironmentsList(\n ctx: CLIContext,\n cloudApiService: CloudApiService,\n project: ProjectInput\n) {\n const spinner = ctx.logger.spinner('Fetching environments...\\n').start();\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listLinkEnvironments({ name: project.name });\n\n if (!Array.isArray(environmentsList) || environmentsList.length === 0) {\n throw new Error('Environments not found in server response');\n }\n spinner.succeed();\n return environmentsList.filter(\n (environment: EnvironmentDetails) => environment.name !== project.targetEnvironment\n );\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n ctx.logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command.`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n ctx.logger.debug('Failed to list environments', e);\n }\n }\n}\n"],"names":["QUIT_OPTION","ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","environments","getEnvironmentsList","length","log","answer","promptUserForEnvironment","trackEvent","projectName","name","environmentName","targetEnvironment","local","e","error","process","exit","chalk","cyan","displayName","inquirer","prompt","type","message","choices","grey","value","spinner","start","data","environmentsList","listLinkEnvironments","Array","isArray","Error","succeed","filter","environment","response","status","warn","fail"],"mappings":"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"}
1
+ {"version":3,"file":"action.js","sources":["../../../src/environment/link/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport inquirer, { type Answers } from 'inquirer';\nimport { EnvironmentDetails, ProjectInput } from '../../services/cli-api';\nimport type { CLIContext, CloudApiService } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory, local } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nconst QUIT_OPTION = 'Quit';\n\ninterface LinkEnvironmentAnswer extends Answers {\n targetEnvironment: string;\n}\n\ninterface LinkEnvironmentInput extends Answers {\n targetEnvironment: string;\n}\n\ntype EnvironmentsList = EnvironmentDetails[];\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n\n if (!project) {\n logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const environments = await getEnvironmentsList(ctx, cloudApiService, project);\n\n if (!environments) {\n logger.debug(`Fetching environments failed.`);\n return;\n }\n\n if (environments.length === 0) {\n logger.log(\n `The only available environment is already linked. You can add a new one from your project settings on the Strapi Cloud dashboard.`\n );\n return;\n }\n\n const answer: LinkEnvironmentAnswer | null = await promptUserForEnvironment(ctx, environments);\n\n if (!answer) {\n return;\n }\n\n await trackEvent(ctx, cloudApiService, 'willLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n\n try {\n await local.patch({ project: { targetEnvironment: answer.targetEnvironment } });\n } catch (e) {\n await trackEvent(ctx, cloudApiService, 'didNotLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n logger.debug('Failed to link environment', e);\n logger.error(\n 'Failed to link the environment. If this issue persists, try re-linking your project or contact support.'\n );\n process.exit(1);\n }\n\n logger.log(\n ` You have successfully linked your project to ${chalk.cyan(answer.targetEnvironment)}, on ${chalk.cyan(project.displayName)}. You are now able to deploy your project.`\n );\n await trackEvent(ctx, cloudApiService, 'didLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n};\n\nasync function promptUserForEnvironment(\n ctx: CLIContext,\n environments: EnvironmentsList\n): Promise<LinkEnvironmentAnswer | null> {\n const { logger } = ctx;\n\n try {\n const answer: LinkEnvironmentInput = await inquirer.prompt([\n {\n type: 'list',\n name: 'targetEnvironment',\n message: 'Which environment do you want to link?',\n choices: [...environments, { name: chalk.grey(`(${QUIT_OPTION})`), value: null }],\n },\n ]);\n\n if (!answer.targetEnvironment) {\n return null;\n }\n\n return answer;\n } catch (e) {\n logger.debug('Failed to get user input', e);\n logger.error('An error occurred while trying to get your environment selection.');\n return null;\n }\n}\n\nasync function getEnvironmentsList(\n ctx: CLIContext,\n cloudApiService: CloudApiService,\n project: ProjectInput\n) {\n const spinner = ctx.logger.spinner('Fetching environments...\\n').start();\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listLinkEnvironments({ name: project.name });\n\n if (!Array.isArray(environmentsList) || environmentsList.length === 0) {\n throw new Error('Environments not found in server response');\n }\n spinner.succeed();\n return environmentsList.filter(\n (environment: EnvironmentDetails) => environment.name !== project.targetEnvironment\n );\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n ctx.logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command.`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n ctx.logger.debug('Failed to list environments', e);\n }\n }\n}\n"],"names":["QUIT_OPTION","ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","environments","getEnvironmentsList","length","log","answer","promptUserForEnvironment","trackEvent","projectName","name","environmentName","targetEnvironment","local","e","error","process","exit","chalk","cyan","displayName","inquirer","prompt","type","message","choices","grey","value","spinner","start","data","environmentsList","listLinkEnvironments","Array","isArray","Error","succeed","filter","environment","response","status","warn","fail"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.mjs","sources":["../../../src/environment/link/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport inquirer, { type Answers } from 'inquirer';\nimport { EnvironmentDetails, ProjectInput } from '../../services/cli-api';\nimport type { CLIContext, CloudApiService } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory, local } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nconst QUIT_OPTION = 'Quit';\n\ninterface LinkEnvironmentAnswer extends Answers {\n targetEnvironment: string;\n}\n\ninterface LinkEnvironmentInput extends Answers {\n targetEnvironment: string;\n}\n\ntype EnvironmentsList = EnvironmentDetails[];\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n\n if (!project) {\n logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const environments = await getEnvironmentsList(ctx, cloudApiService, project);\n\n if (!environments) {\n logger.debug(`Fetching environments failed.`);\n return;\n }\n\n if (environments.length === 0) {\n logger.log(\n `The only available environment is already linked. You can add a new one from your project settings on the Strapi Cloud dashboard.`\n );\n return;\n }\n\n const answer: LinkEnvironmentAnswer | null = await promptUserForEnvironment(ctx, environments);\n\n if (!answer) {\n return;\n }\n\n await trackEvent(ctx, cloudApiService, 'willLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n\n try {\n await local.patch({ project: { targetEnvironment: answer.targetEnvironment } });\n } catch (e) {\n await trackEvent(ctx, cloudApiService, 'didNotLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n logger.debug('Failed to link environment', e);\n logger.error(\n 'Failed to link the environment. If this issue persists, try re-linking your project or contact support.'\n );\n process.exit(1);\n }\n\n logger.log(\n ` You have successfully linked your project to ${chalk.cyan(answer.targetEnvironment)}, on ${chalk.cyan(project.displayName)}. You are now able to deploy your project.`\n );\n await trackEvent(ctx, cloudApiService, 'didLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n};\n\nasync function promptUserForEnvironment(\n ctx: CLIContext,\n environments: EnvironmentsList\n): Promise<LinkEnvironmentAnswer | null> {\n const { logger } = ctx;\n\n try {\n const answer: LinkEnvironmentInput = await inquirer.prompt([\n {\n type: 'list',\n name: 'targetEnvironment',\n message: 'Which environment do you want to link?',\n choices: [...environments, { name: chalk.grey(`(${QUIT_OPTION})`), value: null }],\n },\n ]);\n\n if (!answer.targetEnvironment) {\n return null;\n }\n\n return answer;\n } catch (e) {\n logger.debug('Failed to get user input', e);\n logger.error('An error occurred while trying to get your environment selection.');\n return null;\n }\n}\n\nasync function getEnvironmentsList(\n ctx: CLIContext,\n cloudApiService: CloudApiService,\n project: ProjectInput\n) {\n const spinner = ctx.logger.spinner('Fetching environments...\\n').start();\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listLinkEnvironments({ name: project.name });\n\n if (!Array.isArray(environmentsList) || environmentsList.length === 0) {\n throw new Error('Environments not found in server response');\n }\n spinner.succeed();\n return environmentsList.filter(\n (environment: EnvironmentDetails) => environment.name !== project.targetEnvironment\n );\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n ctx.logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command.`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n ctx.logger.debug('Failed to list environments', e);\n }\n }\n}\n"],"names":["QUIT_OPTION","ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","environments","getEnvironmentsList","length","log","answer","promptUserForEnvironment","trackEvent","projectName","name","environmentName","targetEnvironment","local","e","error","process","exit","chalk","cyan","displayName","inquirer","prompt","type","message","choices","grey","value","spinner","start","data","environmentsList","listLinkEnvironments","Array","isArray","Error","succeed","filter","environment","response","status","warn","fail"],"mappings":"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"}
1
+ {"version":3,"file":"action.mjs","sources":["../../../src/environment/link/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport inquirer, { type Answers } from 'inquirer';\nimport { EnvironmentDetails, ProjectInput } from '../../services/cli-api';\nimport type { CLIContext, CloudApiService } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory, local } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nconst QUIT_OPTION = 'Quit';\n\ninterface LinkEnvironmentAnswer extends Answers {\n targetEnvironment: string;\n}\n\ninterface LinkEnvironmentInput extends Answers {\n targetEnvironment: string;\n}\n\ntype EnvironmentsList = EnvironmentDetails[];\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n\n if (!project) {\n logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const environments = await getEnvironmentsList(ctx, cloudApiService, project);\n\n if (!environments) {\n logger.debug(`Fetching environments failed.`);\n return;\n }\n\n if (environments.length === 0) {\n logger.log(\n `The only available environment is already linked. You can add a new one from your project settings on the Strapi Cloud dashboard.`\n );\n return;\n }\n\n const answer: LinkEnvironmentAnswer | null = await promptUserForEnvironment(ctx, environments);\n\n if (!answer) {\n return;\n }\n\n await trackEvent(ctx, cloudApiService, 'willLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n\n try {\n await local.patch({ project: { targetEnvironment: answer.targetEnvironment } });\n } catch (e) {\n await trackEvent(ctx, cloudApiService, 'didNotLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n logger.debug('Failed to link environment', e);\n logger.error(\n 'Failed to link the environment. If this issue persists, try re-linking your project or contact support.'\n );\n process.exit(1);\n }\n\n logger.log(\n ` You have successfully linked your project to ${chalk.cyan(answer.targetEnvironment)}, on ${chalk.cyan(project.displayName)}. You are now able to deploy your project.`\n );\n await trackEvent(ctx, cloudApiService, 'didLinkEnvironment', {\n projectName: project.name,\n environmentName: answer.targetEnvironment,\n });\n};\n\nasync function promptUserForEnvironment(\n ctx: CLIContext,\n environments: EnvironmentsList\n): Promise<LinkEnvironmentAnswer | null> {\n const { logger } = ctx;\n\n try {\n const answer: LinkEnvironmentInput = await inquirer.prompt([\n {\n type: 'list',\n name: 'targetEnvironment',\n message: 'Which environment do you want to link?',\n choices: [...environments, { name: chalk.grey(`(${QUIT_OPTION})`), value: null }],\n },\n ]);\n\n if (!answer.targetEnvironment) {\n return null;\n }\n\n return answer;\n } catch (e) {\n logger.debug('Failed to get user input', e);\n logger.error('An error occurred while trying to get your environment selection.');\n return null;\n }\n}\n\nasync function getEnvironmentsList(\n ctx: CLIContext,\n cloudApiService: CloudApiService,\n project: ProjectInput\n) {\n const spinner = ctx.logger.spinner('Fetching environments...\\n').start();\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listLinkEnvironments({ name: project.name });\n\n if (!Array.isArray(environmentsList) || environmentsList.length === 0) {\n throw new Error('Environments not found in server response');\n }\n spinner.succeed();\n return environmentsList.filter(\n (environment: EnvironmentDetails) => environment.name !== project.targetEnvironment\n );\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n ctx.logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command.`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n ctx.logger.debug('Failed to list environments', e);\n }\n }\n}\n"],"names":["QUIT_OPTION","ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","environments","getEnvironmentsList","length","log","answer","promptUserForEnvironment","trackEvent","projectName","name","environmentName","targetEnvironment","local","e","error","process","exit","chalk","cyan","displayName","inquirer","prompt","type","message","choices","grey","value","spinner","start","data","environmentsList","listLinkEnvironments","Array","isArray","Error","succeed","filter","environment","response","status","warn","fail"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sources":["../../../src/environment/link/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('link')\n .description('Link project to a specific Strapi Cloud project environment')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('link', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,uCAA6BH,OAASC,EAAAA,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,6DAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBACvBC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,iBAAAA,CAAU,QAAQD,MAAQL,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
1
+ {"version":3,"file":"command.js","sources":["../../../src/environment/link/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('link')\n .description('Link project to a specific Strapi Cloud project environment')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('link', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,uCAA6BH,OAAAA,EAASC,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,6DAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBAAA,CAAA,CACvBC,MAAM,CAAC,IAAMC,iBAAAA,CAAU,QAAQD,MAAAA,CAAAA,CAAQL,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.mjs","sources":["../../../src/environment/link/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('link')\n .description('Link project to a specific Strapi Cloud project environment')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('link', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,6BAA6BH,OAASC,EAAAA,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,6DAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBACvBC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,SAAAA,CAAU,QAAQD,MAAQL,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
1
+ {"version":3,"file":"command.mjs","sources":["../../../src/environment/link/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('link')\n .description('Link project to a specific Strapi Cloud project environment')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('link', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,6BAA6BH,OAAAA,EAASC,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,6DAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBAAA,CAAA,CACvBC,MAAM,CAAC,IAAMC,SAAAA,CAAU,QAAQD,MAAAA,CAAAA,CAAQL,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/environment/link/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'link-environment',\n description: 'Link Strapi Cloud environment to a local project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;;;;;AAMA,sBAAe;IACbA,IAAM,EAAA,kBAAA;IACNC,WAAa,EAAA,kDAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAA4B;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/environment/link/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'link-environment',\n description: 'Link Strapi Cloud environment to a local project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;;;;;AAMA,sBAAe;IACbA,IAAAA,EAAM,kBAAA;IACNC,WAAAA,EAAa,kDAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAAA;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/environment/link/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'link-environment',\n description: 'Link Strapi Cloud environment to a local project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;AAMA,sBAAe;IACbA,IAAM,EAAA,kBAAA;IACNC,WAAa,EAAA,kDAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAA4B;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/environment/link/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'link-environment',\n description: 'Link Strapi Cloud environment to a local project',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;AAMA,sBAAe;IACbA,IAAAA,EAAM,kBAAA;IACNC,WAAAA,EAAa,kDAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sources":["../../../src/environment/list/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { CLIContext } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n if (!project) {\n ctx.logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const spinner = logger.spinner('Fetching environments...').start();\n await trackEvent(ctx, cloudApiService, 'willListEnvironment', {\n projectInternalName: project.name,\n });\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listEnvironments({ name: project.name });\n spinner.succeed();\n logger.log(environmentsList);\n await trackEvent(ctx, cloudApiService, 'didListEnvironment', {\n projectInternalName: project.name,\n });\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n logger.debug('Failed to list environments', e);\n }\n await trackEvent(ctx, cloudApiService, 'didNotListEnvironment', {\n projectInternalName: project.name,\n });\n }\n};\n"],"names":["ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","spinner","start","trackEvent","projectInternalName","name","data","environmentsList","listEnvironments","succeed","log","e","response","status","warn","chalk","cyan","fail"],"mappings":";;;;;;;;;;;;;;;AAOA,aAAe,CAAA,OAAOA,GAAAA,GAAAA;AACpB,IAAA,MAAM,EAAEC,aAAa,EAAE,GAAG,MAAMC,yBAAoBF,CAAAA,GAAAA,CAAAA;IACpD,MAAMG,OAAAA,GAAQ,MAAMF,aAAAA,CAAcD,GAAKI,EAAAA,oBAAAA,CAAAA;IACvC,MAAM,EAAEC,MAAM,EAAE,GAAGL,GAAAA;AAEnB,IAAA,IAAI,CAACG,OAAO,EAAA;AACV,QAAA;AACF;IAEA,MAAMG,OAAAA,GAAU,MAAMC,8BAAgBP,CAAAA,GAAAA,CAAAA;AACtC,IAAA,IAAI,CAACM,OAAS,EAAA;AACZN,QAAAA,GAAAA,CAAIK,MAAM,CAACG,KAAK,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAClE,QAAA;AACF;IAEA,MAAMC,eAAAA,GAAkB,MAAMC,sBAAAA,CAAgBV,GAAKG,EAAAA,OAAAA,CAAAA;AACnD,IAAA,MAAMQ,OAAUN,GAAAA,MAAAA,CAAOM,OAAO,CAAC,4BAA4BC,KAAK,EAAA;IAChE,MAAMC,oBAAAA,CAAWb,GAAKS,EAAAA,eAAAA,EAAiB,qBAAuB,EAAA;AAC5DK,QAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,KAAA,CAAA;IAEA,IAAI;QACF,MAAM,EACJC,IAAM,EAAA,EAAEA,IAAMC,EAAAA,gBAAgB,EAAE,EACjC,GAAG,MAAMR,eAAgBS,CAAAA,gBAAgB,CAAC;AAAEH,YAAAA,IAAAA,EAAMT,QAAQS;AAAK,SAAA,CAAA;AAChEJ,QAAAA,OAAAA,CAAQQ,OAAO,EAAA;AACfd,QAAAA,MAAAA,CAAOe,GAAG,CAACH,gBAAAA,CAAAA;QACX,MAAMJ,oBAAAA,CAAWb,GAAKS,EAAAA,eAAAA,EAAiB,oBAAsB,EAAA;AAC3DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF,KAAA,CAAE,OAAOM,CAAQ,EAAA;QACf,IAAIA,CAAAA,CAAEC,QAAQ,IAAID,CAAAA,CAAEC,QAAQ,CAACC,MAAM,KAAK,GAAK,EAAA;AAC3CZ,YAAAA,OAAAA,CAAQQ,OAAO,EAAA;YACfd,MAAOmB,CAAAA,IAAI,CACT,CAAC,yJAAyJ,EAAEC,MAAMC,IAAI,CACpK,MACA,CAAA,CAAA,QAAQ,CAAC,CAAA;SAER,MAAA;AACLf,YAAAA,OAAAA,CAAQgB,IAAI,CAAC,uEAAA,CAAA;YACbtB,MAAOG,CAAAA,KAAK,CAAC,6BAA+Ba,EAAAA,CAAAA,CAAAA;AAC9C;QACA,MAAMR,oBAAAA,CAAWb,GAAKS,EAAAA,eAAAA,EAAiB,uBAAyB,EAAA;AAC9DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF;AACF,CAAA;;;;"}
1
+ {"version":3,"file":"action.js","sources":["../../../src/environment/list/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { CLIContext } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n if (!project) {\n ctx.logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const spinner = logger.spinner('Fetching environments...').start();\n await trackEvent(ctx, cloudApiService, 'willListEnvironment', {\n projectInternalName: project.name,\n });\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listEnvironments({ name: project.name });\n spinner.succeed();\n logger.log(environmentsList);\n await trackEvent(ctx, cloudApiService, 'didListEnvironment', {\n projectInternalName: project.name,\n });\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n logger.debug('Failed to list environments', e);\n }\n await trackEvent(ctx, cloudApiService, 'didNotListEnvironment', {\n projectInternalName: project.name,\n });\n }\n};\n"],"names":["ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","spinner","start","trackEvent","projectInternalName","name","data","environmentsList","listEnvironments","succeed","log","e","response","status","warn","chalk","cyan","fail"],"mappings":";;;;;;;;;;;;;;;AAOA,aAAe,CAAA,OAAOA,GAAAA,GAAAA;AACpB,IAAA,MAAM,EAAEC,aAAa,EAAE,GAAG,MAAMC,yBAAAA,CAAoBF,GAAAA,CAAAA;IACpD,MAAMG,OAAAA,GAAQ,MAAMF,aAAAA,CAAcD,GAAAA,EAAKI,oBAAAA,CAAAA;IACvC,MAAM,EAAEC,MAAM,EAAE,GAAGL,GAAAA;AAEnB,IAAA,IAAI,CAACG,OAAAA,EAAO;AACV,QAAA;AACF,IAAA;IAEA,MAAMG,OAAAA,GAAU,MAAMC,8BAAAA,CAAgBP,GAAAA,CAAAA;AACtC,IAAA,IAAI,CAACM,OAAAA,EAAS;AACZN,QAAAA,GAAAA,CAAIK,MAAM,CAACG,KAAK,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAClE,QAAA;AACF,IAAA;IAEA,MAAMC,eAAAA,GAAkB,MAAMC,sBAAAA,CAAgBV,GAAAA,EAAKG,OAAAA,CAAAA;AACnD,IAAA,MAAMQ,OAAAA,GAAUN,MAAAA,CAAOM,OAAO,CAAC,4BAA4BC,KAAK,EAAA;IAChE,MAAMC,oBAAAA,CAAWb,GAAAA,EAAKS,eAAAA,EAAiB,qBAAA,EAAuB;AAC5DK,QAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,KAAA,CAAA;IAEA,IAAI;QACF,MAAM,EACJC,IAAAA,EAAM,EAAEA,IAAAA,EAAMC,gBAAgB,EAAE,EACjC,GAAG,MAAMR,eAAAA,CAAgBS,gBAAgB,CAAC;AAAEH,YAAAA,IAAAA,EAAMT,QAAQS;AAAK,SAAA,CAAA;AAChEJ,QAAAA,OAAAA,CAAQQ,OAAO,EAAA;AACfd,QAAAA,MAAAA,CAAOe,GAAG,CAACH,gBAAAA,CAAAA;QACX,MAAMJ,oBAAAA,CAAWb,GAAAA,EAAKS,eAAAA,EAAiB,oBAAA,EAAsB;AAC3DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF,IAAA,CAAA,CAAE,OAAOM,CAAAA,EAAQ;QACf,IAAIA,CAAAA,CAAEC,QAAQ,IAAID,CAAAA,CAAEC,QAAQ,CAACC,MAAM,KAAK,GAAA,EAAK;AAC3CZ,YAAAA,OAAAA,CAAQQ,OAAO,EAAA;YACfd,MAAAA,CAAOmB,IAAI,CACT,CAAC,yJAAyJ,EAAEC,MAAMC,IAAI,CACpK,MAAA,CAAA,CACA,QAAQ,CAAC,CAAA;QAEf,CAAA,MAAO;AACLf,YAAAA,OAAAA,CAAQgB,IAAI,CAAC,uEAAA,CAAA;YACbtB,MAAAA,CAAOG,KAAK,CAAC,6BAAA,EAA+Ba,CAAAA,CAAAA;AAC9C,QAAA;QACA,MAAMR,oBAAAA,CAAWb,GAAAA,EAAKS,eAAAA,EAAiB,uBAAA,EAAyB;AAC9DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF,IAAA;AACF,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.mjs","sources":["../../../src/environment/list/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { CLIContext } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n if (!project) {\n ctx.logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const spinner = logger.spinner('Fetching environments...').start();\n await trackEvent(ctx, cloudApiService, 'willListEnvironment', {\n projectInternalName: project.name,\n });\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listEnvironments({ name: project.name });\n spinner.succeed();\n logger.log(environmentsList);\n await trackEvent(ctx, cloudApiService, 'didListEnvironment', {\n projectInternalName: project.name,\n });\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n logger.debug('Failed to list environments', e);\n }\n await trackEvent(ctx, cloudApiService, 'didNotListEnvironment', {\n projectInternalName: project.name,\n });\n }\n};\n"],"names":["ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","spinner","start","trackEvent","projectInternalName","name","data","environmentsList","listEnvironments","succeed","log","e","response","status","warn","chalk","cyan","fail"],"mappings":";;;;;;;;;;;;;AAOA,aAAe,CAAA,OAAOA,GAAAA,GAAAA;AACpB,IAAA,MAAM,EAAEC,aAAa,EAAE,GAAG,MAAMC,mBAAoBF,CAAAA,GAAAA,CAAAA;IACpD,MAAMG,KAAAA,GAAQ,MAAMF,aAAAA,CAAcD,GAAKI,EAAAA,WAAAA,CAAAA;IACvC,MAAM,EAAEC,MAAM,EAAE,GAAGL,GAAAA;AAEnB,IAAA,IAAI,CAACG,KAAO,EAAA;AACV,QAAA;AACF;IAEA,MAAMG,OAAAA,GAAU,MAAMC,eAAgBP,CAAAA,GAAAA,CAAAA;AACtC,IAAA,IAAI,CAACM,OAAS,EAAA;AACZN,QAAAA,GAAAA,CAAIK,MAAM,CAACG,KAAK,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAClE,QAAA;AACF;IAEA,MAAMC,eAAAA,GAAkB,MAAMC,eAAAA,CAAgBV,GAAKG,EAAAA,KAAAA,CAAAA;AACnD,IAAA,MAAMQ,OAAUN,GAAAA,MAAAA,CAAOM,OAAO,CAAC,4BAA4BC,KAAK,EAAA;IAChE,MAAMC,UAAAA,CAAWb,GAAKS,EAAAA,eAAAA,EAAiB,qBAAuB,EAAA;AAC5DK,QAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,KAAA,CAAA;IAEA,IAAI;QACF,MAAM,EACJC,IAAM,EAAA,EAAEA,IAAMC,EAAAA,gBAAgB,EAAE,EACjC,GAAG,MAAMR,eAAgBS,CAAAA,gBAAgB,CAAC;AAAEH,YAAAA,IAAAA,EAAMT,QAAQS;AAAK,SAAA,CAAA;AAChEJ,QAAAA,OAAAA,CAAQQ,OAAO,EAAA;AACfd,QAAAA,MAAAA,CAAOe,GAAG,CAACH,gBAAAA,CAAAA;QACX,MAAMJ,UAAAA,CAAWb,GAAKS,EAAAA,eAAAA,EAAiB,oBAAsB,EAAA;AAC3DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF,KAAA,CAAE,OAAOM,CAAQ,EAAA;QACf,IAAIA,CAAAA,CAAEC,QAAQ,IAAID,CAAAA,CAAEC,QAAQ,CAACC,MAAM,KAAK,GAAK,EAAA;AAC3CZ,YAAAA,OAAAA,CAAQQ,OAAO,EAAA;YACfd,MAAOmB,CAAAA,IAAI,CACT,CAAC,yJAAyJ,EAAEC,MAAMC,IAAI,CACpK,MACA,CAAA,CAAA,QAAQ,CAAC,CAAA;SAER,MAAA;AACLf,YAAAA,OAAAA,CAAQgB,IAAI,CAAC,uEAAA,CAAA;YACbtB,MAAOG,CAAAA,KAAK,CAAC,6BAA+Ba,EAAAA,CAAAA,CAAAA;AAC9C;QACA,MAAMR,UAAAA,CAAWb,GAAKS,EAAAA,eAAAA,EAAiB,uBAAyB,EAAA;AAC9DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF;AACF,CAAA;;;;"}
1
+ {"version":3,"file":"action.mjs","sources":["../../../src/environment/list/action.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { CLIContext } from '../../types';\nimport { cloudApiFactory, tokenServiceFactory } from '../../services';\nimport { promptLogin } from '../../login/action';\nimport { trackEvent } from '../../utils/analytics';\nimport { getLocalProject } from '../../utils/get-local-config';\n\nexport default async (ctx: CLIContext) => {\n const { getValidToken } = await tokenServiceFactory(ctx);\n const token = await getValidToken(ctx, promptLogin);\n const { logger } = ctx;\n\n if (!token) {\n return;\n }\n\n const project = await getLocalProject(ctx);\n if (!project) {\n ctx.logger.debug(`No valid local project configuration was found.`);\n return;\n }\n\n const cloudApiService = await cloudApiFactory(ctx, token);\n const spinner = logger.spinner('Fetching environments...').start();\n await trackEvent(ctx, cloudApiService, 'willListEnvironment', {\n projectInternalName: project.name,\n });\n\n try {\n const {\n data: { data: environmentsList },\n } = await cloudApiService.listEnvironments({ name: project.name });\n spinner.succeed();\n logger.log(environmentsList);\n await trackEvent(ctx, cloudApiService, 'didListEnvironment', {\n projectInternalName: project.name,\n });\n } catch (e: any) {\n if (e.response && e.response.status === 404) {\n spinner.succeed();\n logger.warn(\n `\\nThe project associated with this folder does not exist in Strapi Cloud. \\nPlease link your local project to an existing Strapi Cloud project using the ${chalk.cyan(\n 'link'\n )} command`\n );\n } else {\n spinner.fail('An error occurred while fetching environments data from Strapi Cloud.');\n logger.debug('Failed to list environments', e);\n }\n await trackEvent(ctx, cloudApiService, 'didNotListEnvironment', {\n projectInternalName: project.name,\n });\n }\n};\n"],"names":["ctx","getValidToken","tokenServiceFactory","token","promptLogin","logger","project","getLocalProject","debug","cloudApiService","cloudApiFactory","spinner","start","trackEvent","projectInternalName","name","data","environmentsList","listEnvironments","succeed","log","e","response","status","warn","chalk","cyan","fail"],"mappings":";;;;;;;;;;;;;AAOA,aAAe,CAAA,OAAOA,GAAAA,GAAAA;AACpB,IAAA,MAAM,EAAEC,aAAa,EAAE,GAAG,MAAMC,mBAAAA,CAAoBF,GAAAA,CAAAA;IACpD,MAAMG,KAAAA,GAAQ,MAAMF,aAAAA,CAAcD,GAAAA,EAAKI,WAAAA,CAAAA;IACvC,MAAM,EAAEC,MAAM,EAAE,GAAGL,GAAAA;AAEnB,IAAA,IAAI,CAACG,KAAAA,EAAO;AACV,QAAA;AACF,IAAA;IAEA,MAAMG,OAAAA,GAAU,MAAMC,eAAAA,CAAgBP,GAAAA,CAAAA;AACtC,IAAA,IAAI,CAACM,OAAAA,EAAS;AACZN,QAAAA,GAAAA,CAAIK,MAAM,CAACG,KAAK,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAClE,QAAA;AACF,IAAA;IAEA,MAAMC,eAAAA,GAAkB,MAAMC,eAAAA,CAAgBV,GAAAA,EAAKG,KAAAA,CAAAA;AACnD,IAAA,MAAMQ,OAAAA,GAAUN,MAAAA,CAAOM,OAAO,CAAC,4BAA4BC,KAAK,EAAA;IAChE,MAAMC,UAAAA,CAAWb,GAAAA,EAAKS,eAAAA,EAAiB,qBAAA,EAAuB;AAC5DK,QAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,KAAA,CAAA;IAEA,IAAI;QACF,MAAM,EACJC,IAAAA,EAAM,EAAEA,IAAAA,EAAMC,gBAAgB,EAAE,EACjC,GAAG,MAAMR,eAAAA,CAAgBS,gBAAgB,CAAC;AAAEH,YAAAA,IAAAA,EAAMT,QAAQS;AAAK,SAAA,CAAA;AAChEJ,QAAAA,OAAAA,CAAQQ,OAAO,EAAA;AACfd,QAAAA,MAAAA,CAAOe,GAAG,CAACH,gBAAAA,CAAAA;QACX,MAAMJ,UAAAA,CAAWb,GAAAA,EAAKS,eAAAA,EAAiB,oBAAA,EAAsB;AAC3DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF,IAAA,CAAA,CAAE,OAAOM,CAAAA,EAAQ;QACf,IAAIA,CAAAA,CAAEC,QAAQ,IAAID,CAAAA,CAAEC,QAAQ,CAACC,MAAM,KAAK,GAAA,EAAK;AAC3CZ,YAAAA,OAAAA,CAAQQ,OAAO,EAAA;YACfd,MAAAA,CAAOmB,IAAI,CACT,CAAC,yJAAyJ,EAAEC,MAAMC,IAAI,CACpK,MAAA,CAAA,CACA,QAAQ,CAAC,CAAA;QAEf,CAAA,MAAO;AACLf,YAAAA,OAAAA,CAAQgB,IAAI,CAAC,uEAAA,CAAA;YACbtB,MAAAA,CAAOG,KAAK,CAAC,6BAAA,EAA+Ba,CAAAA,CAAAA;AAC9C,QAAA;QACA,MAAMR,UAAAA,CAAWb,GAAAA,EAAKS,eAAAA,EAAiB,uBAAA,EAAyB;AAC9DK,YAAAA,mBAAAA,EAAqBR,QAAQS;AAC/B,SAAA,CAAA;AACF,IAAA;AACF,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sources":["../../../src/environment/list/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('list')\n .description('List Strapi Cloud project environments')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('list', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,uCAA6BH,OAASC,EAAAA,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,wCAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBACvBC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,iBAAAA,CAAU,QAAQD,MAAQL,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
1
+ {"version":3,"file":"command.js","sources":["../../../src/environment/list/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('list')\n .description('List Strapi Cloud project environments')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('list', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,uCAA6BH,OAAAA,EAASC,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,wCAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBAAA,CAAA,CACvBC,MAAM,CAAC,IAAMC,iBAAAA,CAAU,QAAQD,MAAAA,CAAAA,CAAQL,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.mjs","sources":["../../../src/environment/list/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('list')\n .description('List Strapi Cloud project environments')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('list', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,6BAA6BH,OAASC,EAAAA,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,wCAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBACvBC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,SAAAA,CAAU,QAAQD,MAAQL,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
1
+ {"version":3,"file":"command.mjs","sources":["../../../src/environment/list/command.ts"],"sourcesContent":["import { type StrapiCloudCommand } from '../../types';\nimport { runAction } from '../../utils/helpers';\nimport action from './action';\nimport { initializeEnvironmentCommand } from '../command';\n\nconst command: StrapiCloudCommand = ({ command, ctx }) => {\n const environmentCmd = initializeEnvironmentCommand(command, ctx);\n\n environmentCmd\n .command('list')\n .description('List Strapi Cloud project environments')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('list', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","environmentCmd","initializeEnvironmentCommand","description","option","action","runAction"],"mappings":";;;;AAKA,MAAMA,UAA8B,CAAC,EAAEA,OAAO,EAAEC,GAAG,EAAE,GAAA;IACnD,MAAMC,cAAAA,GAAiBC,6BAA6BH,OAAAA,EAASC,GAAAA,CAAAA;AAE7DC,IAAAA,cAAAA,CACGF,OAAO,CAAC,MAAA,CAAA,CACRI,WAAW,CAAC,wCAAA,CAAA,CACZC,MAAM,CAAC,aAAA,EAAe,2CACtBA,MAAM,CAAC,gBAAgB,oBAAA,CAAA,CACvBC,MAAM,CAAC,IAAMC,SAAAA,CAAU,QAAQD,MAAAA,CAAAA,CAAQL,GAAAA,CAAAA,CAAAA;AAC5C;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/environment/list/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'list-environments',\n description: 'List Strapi Cloud environments',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;;;;;AAMA,uBAAe;IACbA,IAAM,EAAA,mBAAA;IACNC,WAAa,EAAA,gCAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAA4B;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/environment/list/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'list-environments',\n description: 'List Strapi Cloud environments',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;;;;;AAMA,uBAAe;IACbA,IAAAA,EAAM,mBAAA;IACNC,WAAAA,EAAa,gCAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAAA;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/environment/list/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'list-environments',\n description: 'List Strapi Cloud environments',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;AAMA,uBAAe;IACbA,IAAM,EAAA,mBAAA;IACNC,WAAa,EAAA,gCAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAA4B;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/environment/list/index.ts"],"sourcesContent":["import action from './action';\nimport command from './command';\nimport type { StrapiCloudCommandInfo } from '../../types';\n\nexport { action, command };\n\nexport default {\n name: 'list-environments',\n description: 'List Strapi Cloud environments',\n action,\n command,\n} as StrapiCloudCommandInfo;\n"],"names":["name","description","action","command"],"mappings":";;;AAMA,uBAAe;IACbA,IAAAA,EAAM,mBAAA;IACNC,WAAAA,EAAa,gCAAA;AACbC,IAAAA,MAAAA;AACAC,IAAAA;AACF,CAAA;;;;"}
package/dist/index.js CHANGED
@@ -1,36 +1,36 @@
1
1
  'use strict';
2
2
 
3
3
  var crypto = require('crypto');
4
- var index$1 = require('./deploy-project/index.js');
5
- var index$2 = require('./link/index.js');
6
- var index$3 = require('./login/index.js');
7
- var index$4 = require('./logout/index.js');
8
- var index$5 = require('./create-project/index.js');
4
+ var index$8 = require('./deploy-project/index.js');
5
+ var index$7 = require('./link/index.js');
6
+ var index$6 = require('./login/index.js');
7
+ var index$5 = require('./logout/index.js');
8
+ var index$4 = require('./create-project/index.js');
9
9
  var action = require('./create-growth-sso-trial/action.js');
10
- var index$7 = require('./list-projects/index.js');
11
- var index$8 = require('./environment/list/index.js');
12
- var index$6 = require('./environment/link/index.js');
10
+ var index$2 = require('./list-projects/index.js');
11
+ var index$1 = require('./environment/list/index.js');
12
+ var index$3 = require('./environment/link/index.js');
13
13
  var local = require('./config/local.js');
14
14
  var index = require('./services/index.js');
15
15
 
16
16
  const cli = {
17
- deployProject: index$1.default,
18
- link: index$2.default,
19
- login: index$3.default,
20
- logout: index$4.default,
21
- createProject: index$5.default,
22
- linkEnvironment: index$6.default,
23
- listProjects: index$7.default,
24
- listEnvironments: index$8.default
17
+ deployProject: index$8.default,
18
+ link: index$7.default,
19
+ login: index$6.default,
20
+ logout: index$5.default,
21
+ createProject: index$4.default,
22
+ linkEnvironment: index$3.default,
23
+ listProjects: index$2.default,
24
+ listEnvironments: index$1.default
25
25
  };
26
26
  const cloudCommands = [
27
- index$1.default,
28
- index$2.default,
29
- index$3.default,
30
- index$4.default,
31
- index$6.default,
27
+ index$8.default,
32
28
  index$7.default,
33
- index$8.default
29
+ index$6.default,
30
+ index$5.default,
31
+ index$3.default,
32
+ index$2.default,
33
+ index$1.default
34
34
  ];
35
35
  async function initCloudCLIConfig() {
36
36
  const localConfig = await local.getLocalConfig();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { Command } from 'commander';\nimport crypto from 'crypto';\nimport deployProject from './deploy-project';\nimport link from './link';\nimport login from './login';\nimport logout from './logout';\nimport createProject from './create-project';\nimport { createGrowthSsoTrial } from './create-growth-sso-trial';\nimport listProjects from './list-projects';\nimport listEnvironments from './environment/list';\nimport linkEnvironment from './environment/link';\nimport { CLIContext } from './types';\nimport { getLocalConfig, saveLocalConfig } from './config/local';\n\nexport const cli = {\n deployProject,\n link,\n login,\n logout,\n createProject,\n linkEnvironment,\n listProjects,\n listEnvironments,\n};\n\nexport { createGrowthSsoTrial };\n\nconst cloudCommands = [\n deployProject,\n link,\n login,\n logout,\n linkEnvironment,\n listProjects,\n listEnvironments,\n];\n\nasync function initCloudCLIConfig() {\n const localConfig = await getLocalConfig();\n\n if (!localConfig.installId) {\n localConfig.installId = crypto.randomUUID();\n }\n\n await saveLocalConfig(localConfig);\n}\n\nexport async function buildStrapiCloudCommands({\n command,\n ctx,\n argv,\n}: {\n command: Command;\n ctx: CLIContext;\n argv: string[];\n}) {\n await initCloudCLIConfig();\n // Load all commands\n for (const cloudCommand of cloudCommands) {\n try {\n // Add this command to the Commander command object\n const subCommand = await cloudCommand.command({ command, ctx, argv });\n\n if (subCommand) {\n command.addCommand(subCommand);\n }\n } catch (e) {\n console.error(`Failed to load command ${cloudCommand.name}`, e);\n }\n }\n}\n\nexport * as services from './services';\n\nexport * from './types';\n"],"names":["cli","deployProject","link","login","logout","createProject","linkEnvironment","listProjects","listEnvironments","cloudCommands","initCloudCLIConfig","localConfig","getLocalConfig","installId","crypto","randomUUID","saveLocalConfig","buildStrapiCloudCommands","command","ctx","argv","cloudCommand","subCommand","addCommand","e","console","error","name"],"mappings":";;;;;;;;;;;;;;;MAcaA,GAAM,GAAA;AACjBC,mBAAAA,eAAAA;AACAC,UAAAA,eAAAA;AACAC,WAAAA,eAAAA;AACAC,YAAAA,eAAAA;AACAC,mBAAAA,eAAAA;AACAC,qBAAAA,eAAAA;AACAC,kBAAAA,eAAAA;AACAC,sBAAAA;AACF;AAIA,MAAMC,aAAgB,GAAA;AACpBR,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAE,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA;AACD,CAAA;AAED,eAAeE,kBAAAA,GAAAA;AACb,IAAA,MAAMC,cAAc,MAAMC,oBAAAA,EAAAA;IAE1B,IAAI,CAACD,WAAYE,CAAAA,SAAS,EAAE;QAC1BF,WAAYE,CAAAA,SAAS,GAAGC,MAAAA,CAAOC,UAAU,EAAA;AAC3C;AAEA,IAAA,MAAMC,qBAAgBL,CAAAA,WAAAA,CAAAA;AACxB;AAEO,eAAeM,yBAAyB,EAC7CC,OAAO,EACPC,GAAG,EACHC,IAAI,EAKL,EAAA;IACC,MAAMV,kBAAAA,EAAAA;;IAEN,KAAK,MAAMW,gBAAgBZ,aAAe,CAAA;QACxC,IAAI;;AAEF,YAAA,MAAMa,UAAa,GAAA,MAAMD,YAAaH,CAAAA,OAAO,CAAC;AAAEA,gBAAAA,OAAAA;AAASC,gBAAAA,GAAAA;AAAKC,gBAAAA;AAAK,aAAA,CAAA;AAEnE,YAAA,IAAIE,UAAY,EAAA;AACdJ,gBAAAA,OAAAA,CAAQK,UAAU,CAACD,UAAAA,CAAAA;AACrB;AACF,SAAA,CAAE,OAAOE,CAAG,EAAA;YACVC,OAAQC,CAAAA,KAAK,CAAC,CAAC,uBAAuB,EAAEL,YAAaM,CAAAA,IAAI,EAAE,EAAEH,CAAAA,CAAAA;AAC/D;AACF;AACF;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { Command } from 'commander';\nimport crypto from 'crypto';\nimport deployProject from './deploy-project';\nimport link from './link';\nimport login from './login';\nimport logout from './logout';\nimport createProject from './create-project';\nimport { createGrowthSsoTrial } from './create-growth-sso-trial';\nimport listProjects from './list-projects';\nimport listEnvironments from './environment/list';\nimport linkEnvironment from './environment/link';\nimport { CLIContext } from './types';\nimport { getLocalConfig, saveLocalConfig } from './config/local';\n\nexport const cli = {\n deployProject,\n link,\n login,\n logout,\n createProject,\n linkEnvironment,\n listProjects,\n listEnvironments,\n};\n\nexport { createGrowthSsoTrial };\n\nconst cloudCommands = [\n deployProject,\n link,\n login,\n logout,\n linkEnvironment,\n listProjects,\n listEnvironments,\n];\n\nasync function initCloudCLIConfig() {\n const localConfig = await getLocalConfig();\n\n if (!localConfig.installId) {\n localConfig.installId = crypto.randomUUID();\n }\n\n await saveLocalConfig(localConfig);\n}\n\nexport async function buildStrapiCloudCommands({\n command,\n ctx,\n argv,\n}: {\n command: Command;\n ctx: CLIContext;\n argv: string[];\n}) {\n await initCloudCLIConfig();\n // Load all commands\n for (const cloudCommand of cloudCommands) {\n try {\n // Add this command to the Commander command object\n const subCommand = await cloudCommand.command({ command, ctx, argv });\n\n if (subCommand) {\n command.addCommand(subCommand);\n }\n } catch (e) {\n console.error(`Failed to load command ${cloudCommand.name}`, e);\n }\n }\n}\n\nexport * as services from './services';\n\nexport * from './types';\n"],"names":["cli","deployProject","link","login","logout","createProject","linkEnvironment","listProjects","listEnvironments","cloudCommands","initCloudCLIConfig","localConfig","getLocalConfig","installId","crypto","randomUUID","saveLocalConfig","buildStrapiCloudCommands","command","ctx","argv","cloudCommand","subCommand","addCommand","e","console","error","name"],"mappings":";;;;;;;;;;;;;;;MAcaA,GAAAA,GAAM;AACjBC,mBAAAA,eAAAA;AACAC,UAAAA,eAAAA;AACAC,WAAAA,eAAAA;AACAC,YAAAA,eAAAA;AACAC,mBAAAA,eAAAA;AACAC,qBAAAA,eAAAA;AACAC,kBAAAA,eAAAA;AACAC,sBAAAA;AACF;AAIA,MAAMC,aAAAA,GAAgB;AACpBR,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAE,IAAAA,eAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA;AACD,CAAA;AAED,eAAeE,kBAAAA,GAAAA;AACb,IAAA,MAAMC,cAAc,MAAMC,oBAAAA,EAAAA;IAE1B,IAAI,CAACD,WAAAA,CAAYE,SAAS,EAAE;QAC1BF,WAAAA,CAAYE,SAAS,GAAGC,MAAAA,CAAOC,UAAU,EAAA;AAC3C,IAAA;AAEA,IAAA,MAAMC,qBAAAA,CAAgBL,WAAAA,CAAAA;AACxB;AAEO,eAAeM,yBAAyB,EAC7CC,OAAO,EACPC,GAAG,EACHC,IAAI,EAKL,EAAA;IACC,MAAMV,kBAAAA,EAAAA;;IAEN,KAAK,MAAMW,gBAAgBZ,aAAAA,CAAe;QACxC,IAAI;;AAEF,YAAA,MAAMa,UAAAA,GAAa,MAAMD,YAAAA,CAAaH,OAAO,CAAC;AAAEA,gBAAAA,OAAAA;AAASC,gBAAAA,GAAAA;AAAKC,gBAAAA;AAAK,aAAA,CAAA;AAEnE,YAAA,IAAIE,UAAAA,EAAY;AACdJ,gBAAAA,OAAAA,CAAQK,UAAU,CAACD,UAAAA,CAAAA;AACrB,YAAA;AACF,QAAA,CAAA,CAAE,OAAOE,CAAAA,EAAG;YACVC,OAAAA,CAAQC,KAAK,CAAC,CAAC,uBAAuB,EAAEL,YAAAA,CAAaM,IAAI,EAAE,EAAEH,CAAAA,CAAAA;AAC/D,QAAA;AACF,IAAA;AACF;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":["import { Command } from 'commander';\nimport crypto from 'crypto';\nimport deployProject from './deploy-project';\nimport link from './link';\nimport login from './login';\nimport logout from './logout';\nimport createProject from './create-project';\nimport { createGrowthSsoTrial } from './create-growth-sso-trial';\nimport listProjects from './list-projects';\nimport listEnvironments from './environment/list';\nimport linkEnvironment from './environment/link';\nimport { CLIContext } from './types';\nimport { getLocalConfig, saveLocalConfig } from './config/local';\n\nexport const cli = {\n deployProject,\n link,\n login,\n logout,\n createProject,\n linkEnvironment,\n listProjects,\n listEnvironments,\n};\n\nexport { createGrowthSsoTrial };\n\nconst cloudCommands = [\n deployProject,\n link,\n login,\n logout,\n linkEnvironment,\n listProjects,\n listEnvironments,\n];\n\nasync function initCloudCLIConfig() {\n const localConfig = await getLocalConfig();\n\n if (!localConfig.installId) {\n localConfig.installId = crypto.randomUUID();\n }\n\n await saveLocalConfig(localConfig);\n}\n\nexport async function buildStrapiCloudCommands({\n command,\n ctx,\n argv,\n}: {\n command: Command;\n ctx: CLIContext;\n argv: string[];\n}) {\n await initCloudCLIConfig();\n // Load all commands\n for (const cloudCommand of cloudCommands) {\n try {\n // Add this command to the Commander command object\n const subCommand = await cloudCommand.command({ command, ctx, argv });\n\n if (subCommand) {\n command.addCommand(subCommand);\n }\n } catch (e) {\n console.error(`Failed to load command ${cloudCommand.name}`, e);\n }\n }\n}\n\nexport * as services from './services';\n\nexport * from './types';\n"],"names":["cli","deployProject","link","login","logout","createProject","linkEnvironment","listProjects","listEnvironments","cloudCommands","initCloudCLIConfig","localConfig","getLocalConfig","installId","crypto","randomUUID","saveLocalConfig","buildStrapiCloudCommands","command","ctx","argv","cloudCommand","subCommand","addCommand","e","console","error","name"],"mappings":";;;;;;;;;;;;;;MAcaA,GAAM,GAAA;AACjBC,IAAAA,aAAAA;AACAC,IAAAA,IAAAA;AACAC,IAAAA,KAAAA;AACAC,IAAAA,MAAAA;AACAC,IAAAA,aAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA,YAAAA;AACAC,IAAAA;AACF;AAIA,MAAMC,aAAgB,GAAA;AACpBR,IAAAA,aAAAA;AACAC,IAAAA,IAAAA;AACAC,IAAAA,KAAAA;AACAC,IAAAA,MAAAA;AACAE,IAAAA,eAAAA;AACAC,IAAAA,YAAAA;AACAC,IAAAA;AACD,CAAA;AAED,eAAeE,kBAAAA,GAAAA;AACb,IAAA,MAAMC,cAAc,MAAMC,cAAAA,EAAAA;IAE1B,IAAI,CAACD,WAAYE,CAAAA,SAAS,EAAE;QAC1BF,WAAYE,CAAAA,SAAS,GAAGC,MAAAA,CAAOC,UAAU,EAAA;AAC3C;AAEA,IAAA,MAAMC,eAAgBL,CAAAA,WAAAA,CAAAA;AACxB;AAEO,eAAeM,yBAAyB,EAC7CC,OAAO,EACPC,GAAG,EACHC,IAAI,EAKL,EAAA;IACC,MAAMV,kBAAAA,EAAAA;;IAEN,KAAK,MAAMW,gBAAgBZ,aAAe,CAAA;QACxC,IAAI;;AAEF,YAAA,MAAMa,UAAa,GAAA,MAAMD,YAAaH,CAAAA,OAAO,CAAC;AAAEA,gBAAAA,OAAAA;AAASC,gBAAAA,GAAAA;AAAKC,gBAAAA;AAAK,aAAA,CAAA;AAEnE,YAAA,IAAIE,UAAY,EAAA;AACdJ,gBAAAA,OAAAA,CAAQK,UAAU,CAACD,UAAAA,CAAAA;AACrB;AACF,SAAA,CAAE,OAAOE,CAAG,EAAA;YACVC,OAAQC,CAAAA,KAAK,CAAC,CAAC,uBAAuB,EAAEL,YAAaM,CAAAA,IAAI,EAAE,EAAEH,CAAAA,CAAAA;AAC/D;AACF;AACF;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":["import { Command } from 'commander';\nimport crypto from 'crypto';\nimport deployProject from './deploy-project';\nimport link from './link';\nimport login from './login';\nimport logout from './logout';\nimport createProject from './create-project';\nimport { createGrowthSsoTrial } from './create-growth-sso-trial';\nimport listProjects from './list-projects';\nimport listEnvironments from './environment/list';\nimport linkEnvironment from './environment/link';\nimport { CLIContext } from './types';\nimport { getLocalConfig, saveLocalConfig } from './config/local';\n\nexport const cli = {\n deployProject,\n link,\n login,\n logout,\n createProject,\n linkEnvironment,\n listProjects,\n listEnvironments,\n};\n\nexport { createGrowthSsoTrial };\n\nconst cloudCommands = [\n deployProject,\n link,\n login,\n logout,\n linkEnvironment,\n listProjects,\n listEnvironments,\n];\n\nasync function initCloudCLIConfig() {\n const localConfig = await getLocalConfig();\n\n if (!localConfig.installId) {\n localConfig.installId = crypto.randomUUID();\n }\n\n await saveLocalConfig(localConfig);\n}\n\nexport async function buildStrapiCloudCommands({\n command,\n ctx,\n argv,\n}: {\n command: Command;\n ctx: CLIContext;\n argv: string[];\n}) {\n await initCloudCLIConfig();\n // Load all commands\n for (const cloudCommand of cloudCommands) {\n try {\n // Add this command to the Commander command object\n const subCommand = await cloudCommand.command({ command, ctx, argv });\n\n if (subCommand) {\n command.addCommand(subCommand);\n }\n } catch (e) {\n console.error(`Failed to load command ${cloudCommand.name}`, e);\n }\n }\n}\n\nexport * as services from './services';\n\nexport * from './types';\n"],"names":["cli","deployProject","link","login","logout","createProject","linkEnvironment","listProjects","listEnvironments","cloudCommands","initCloudCLIConfig","localConfig","getLocalConfig","installId","crypto","randomUUID","saveLocalConfig","buildStrapiCloudCommands","command","ctx","argv","cloudCommand","subCommand","addCommand","e","console","error","name"],"mappings":";;;;;;;;;;;;;;MAcaA,GAAAA,GAAM;AACjBC,IAAAA,aAAAA;AACAC,IAAAA,IAAAA;AACAC,IAAAA,KAAAA;AACAC,IAAAA,MAAAA;AACAC,IAAAA,aAAAA;AACAC,IAAAA,eAAAA;AACAC,IAAAA,YAAAA;AACAC,IAAAA;AACF;AAIA,MAAMC,aAAAA,GAAgB;AACpBR,IAAAA,aAAAA;AACAC,IAAAA,IAAAA;AACAC,IAAAA,KAAAA;AACAC,IAAAA,MAAAA;AACAE,IAAAA,eAAAA;AACAC,IAAAA,YAAAA;AACAC,IAAAA;AACD,CAAA;AAED,eAAeE,kBAAAA,GAAAA;AACb,IAAA,MAAMC,cAAc,MAAMC,cAAAA,EAAAA;IAE1B,IAAI,CAACD,WAAAA,CAAYE,SAAS,EAAE;QAC1BF,WAAAA,CAAYE,SAAS,GAAGC,MAAAA,CAAOC,UAAU,EAAA;AAC3C,IAAA;AAEA,IAAA,MAAMC,eAAAA,CAAgBL,WAAAA,CAAAA;AACxB;AAEO,eAAeM,yBAAyB,EAC7CC,OAAO,EACPC,GAAG,EACHC,IAAI,EAKL,EAAA;IACC,MAAMV,kBAAAA,EAAAA;;IAEN,KAAK,MAAMW,gBAAgBZ,aAAAA,CAAe;QACxC,IAAI;;AAEF,YAAA,MAAMa,UAAAA,GAAa,MAAMD,YAAAA,CAAaH,OAAO,CAAC;AAAEA,gBAAAA,OAAAA;AAASC,gBAAAA,GAAAA;AAAKC,gBAAAA;AAAK,aAAA,CAAA;AAEnE,YAAA,IAAIE,UAAAA,EAAY;AACdJ,gBAAAA,OAAAA,CAAQK,UAAU,CAACD,UAAAA,CAAAA;AACrB,YAAA;AACF,QAAA,CAAA,CAAE,OAAOE,CAAAA,EAAG;YACVC,OAAAA,CAAQC,KAAK,CAAC,CAAC,uBAAuB,EAAEL,YAAAA,CAAaM,IAAI,EAAE,EAAEH,CAAAA,CAAAA;AAC/D,QAAA;AACF,IAAA;AACF;;;;"}