@strapi/cloud-cli 5.12.1 → 5.12.3

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 (323) hide show
  1. package/dist/bin.d.ts.map +1 -0
  2. package/dist/bin.js +5 -18
  3. package/dist/bin.js.map +1 -1
  4. package/dist/bin.mjs +3 -16
  5. package/dist/bin.mjs.map +1 -1
  6. package/dist/cloud/command.d.ts.map +1 -0
  7. package/dist/cloud/command.js +14 -0
  8. package/dist/cloud/command.js.map +1 -0
  9. package/dist/cloud/command.mjs +12 -0
  10. package/dist/cloud/command.mjs.map +1 -0
  11. package/dist/config/api.d.ts.map +1 -0
  12. package/dist/config/api.js +11 -0
  13. package/dist/config/api.js.map +1 -0
  14. package/dist/config/api.mjs +9 -0
  15. package/dist/config/api.mjs.map +1 -0
  16. package/dist/config/local.d.ts.map +1 -0
  17. package/dist/config/local.js +60 -0
  18. package/dist/config/local.js.map +1 -0
  19. package/dist/config/local.mjs +55 -0
  20. package/dist/config/local.mjs.map +1 -0
  21. package/dist/create-project/action.d.ts.map +1 -0
  22. package/dist/create-project/action.js +95 -0
  23. package/dist/create-project/action.js.map +1 -0
  24. package/dist/create-project/action.mjs +93 -0
  25. package/dist/create-project/action.mjs.map +1 -0
  26. package/dist/create-project/command.d.ts.map +1 -0
  27. package/dist/create-project/command.js +14 -0
  28. package/dist/create-project/command.js.map +1 -0
  29. package/dist/create-project/command.mjs +12 -0
  30. package/dist/create-project/command.mjs.map +1 -0
  31. package/dist/create-project/index.d.ts.map +1 -0
  32. package/dist/create-project/index.js +18 -0
  33. package/dist/create-project/index.js.map +1 -0
  34. package/dist/create-project/index.mjs +12 -0
  35. package/dist/create-project/index.mjs.map +1 -0
  36. package/dist/create-project/utils/get-project-name-from-pkg.d.ts.map +1 -0
  37. package/dist/create-project/utils/get-project-name-from-pkg.js +15 -0
  38. package/dist/create-project/utils/get-project-name-from-pkg.js.map +1 -0
  39. package/dist/create-project/utils/get-project-name-from-pkg.mjs +13 -0
  40. package/dist/create-project/utils/get-project-name-from-pkg.mjs.map +1 -0
  41. package/dist/create-project/utils/project-questions.utils.d.ts.map +1 -0
  42. package/dist/create-project/utils/project-questions.utils.js +63 -0
  43. package/dist/create-project/utils/project-questions.utils.js.map +1 -0
  44. package/dist/create-project/utils/project-questions.utils.mjs +59 -0
  45. package/dist/create-project/utils/project-questions.utils.mjs.map +1 -0
  46. package/dist/deploy-project/action.d.ts.map +1 -0
  47. package/dist/deploy-project/action.js +287 -0
  48. package/dist/deploy-project/action.js.map +1 -0
  49. package/dist/deploy-project/action.mjs +266 -0
  50. package/dist/deploy-project/action.mjs.map +1 -0
  51. package/dist/deploy-project/command.d.ts.map +1 -0
  52. package/dist/deploy-project/command.js +14 -0
  53. package/dist/deploy-project/command.js.map +1 -0
  54. package/dist/deploy-project/command.mjs +12 -0
  55. package/dist/deploy-project/command.mjs.map +1 -0
  56. package/dist/deploy-project/index.d.ts.map +1 -0
  57. package/dist/deploy-project/index.js +18 -0
  58. package/dist/deploy-project/index.js.map +1 -0
  59. package/dist/deploy-project/index.mjs +12 -0
  60. package/dist/deploy-project/index.mjs.map +1 -0
  61. package/dist/environment/command.d.ts.map +1 -0
  62. package/dist/environment/command.js +15 -0
  63. package/dist/environment/command.js.map +1 -0
  64. package/dist/environment/command.mjs +13 -0
  65. package/dist/environment/command.mjs.map +1 -0
  66. package/dist/environment/link/action.d.ts.map +1 -0
  67. package/dist/environment/link/action.js +117 -0
  68. package/dist/environment/link/action.js.map +1 -0
  69. package/dist/environment/link/action.mjs +115 -0
  70. package/dist/environment/link/action.mjs.map +1 -0
  71. package/dist/environment/link/command.d.ts.map +1 -0
  72. package/dist/environment/link/command.js +13 -0
  73. package/dist/environment/link/command.js.map +1 -0
  74. package/dist/environment/link/command.mjs +11 -0
  75. package/dist/environment/link/command.mjs.map +1 -0
  76. package/dist/environment/link/index.d.ts.map +1 -0
  77. package/dist/environment/link/index.js +18 -0
  78. package/dist/environment/link/index.js.map +1 -0
  79. package/dist/environment/link/index.mjs +12 -0
  80. package/dist/environment/link/index.mjs.map +1 -0
  81. package/dist/environment/list/action.d.ts.map +1 -0
  82. package/dist/environment/list/action.js +57 -0
  83. package/dist/environment/list/action.js.map +1 -0
  84. package/dist/environment/list/action.mjs +55 -0
  85. package/dist/environment/list/action.mjs.map +1 -0
  86. package/dist/environment/list/command.d.ts.map +1 -0
  87. package/dist/environment/list/command.js +13 -0
  88. package/dist/environment/list/command.js.map +1 -0
  89. package/dist/environment/list/command.mjs +11 -0
  90. package/dist/environment/list/command.mjs.map +1 -0
  91. package/dist/environment/list/index.d.ts.map +1 -0
  92. package/dist/environment/list/index.js +18 -0
  93. package/dist/environment/list/index.js.map +1 -0
  94. package/dist/environment/list/index.mjs +12 -0
  95. package/dist/environment/list/index.mjs.map +1 -0
  96. package/dist/index.d.ts.map +1 -0
  97. package/dist/index.js +59 -29
  98. package/dist/index.js.map +1 -1
  99. package/dist/index.mjs +60 -25
  100. package/dist/index.mjs.map +1 -1
  101. package/dist/link/action.d.ts.map +1 -0
  102. package/dist/link/action.js +146 -0
  103. package/dist/link/action.js.map +1 -0
  104. package/dist/link/action.mjs +144 -0
  105. package/dist/link/action.mjs.map +1 -0
  106. package/dist/link/command.d.ts.map +1 -0
  107. package/dist/link/command.js +13 -0
  108. package/dist/link/command.js.map +1 -0
  109. package/dist/link/command.mjs +11 -0
  110. package/dist/link/command.mjs.map +1 -0
  111. package/dist/link/index.d.ts.map +1 -0
  112. package/dist/link/index.js +18 -0
  113. package/dist/link/index.js.map +1 -0
  114. package/dist/link/index.mjs +12 -0
  115. package/dist/link/index.mjs.map +1 -0
  116. package/dist/list-projects/action.d.ts.map +1 -0
  117. package/dist/list-projects/action.js +34 -0
  118. package/dist/list-projects/action.js.map +1 -0
  119. package/dist/list-projects/action.mjs +32 -0
  120. package/dist/list-projects/action.mjs.map +1 -0
  121. package/dist/list-projects/command.d.ts.map +1 -0
  122. package/dist/list-projects/command.js +13 -0
  123. package/dist/list-projects/command.js.map +1 -0
  124. package/dist/list-projects/command.mjs +11 -0
  125. package/dist/list-projects/command.mjs.map +1 -0
  126. package/dist/list-projects/index.d.ts.map +1 -0
  127. package/dist/list-projects/index.js +18 -0
  128. package/dist/list-projects/index.js.map +1 -0
  129. package/dist/list-projects/index.mjs +12 -0
  130. package/dist/list-projects/index.mjs.map +1 -0
  131. package/dist/login/action.d.ts.map +1 -0
  132. package/dist/login/action.js +177 -0
  133. package/dist/login/action.js.map +1 -0
  134. package/dist/login/action.mjs +172 -0
  135. package/dist/login/action.mjs.map +1 -0
  136. package/dist/login/command.d.ts.map +1 -0
  137. package/dist/login/command.js +14 -0
  138. package/dist/login/command.js.map +1 -0
  139. package/dist/login/command.mjs +12 -0
  140. package/dist/login/command.mjs.map +1 -0
  141. package/dist/login/index.d.ts.map +1 -0
  142. package/dist/login/index.js +18 -0
  143. package/dist/login/index.js.map +1 -0
  144. package/dist/login/index.mjs +12 -0
  145. package/dist/login/index.mjs.map +1 -0
  146. package/dist/logout/action.d.ts.map +1 -0
  147. package/dist/logout/action.js +46 -0
  148. package/dist/logout/action.js.map +1 -0
  149. package/dist/logout/action.mjs +44 -0
  150. package/dist/logout/action.mjs.map +1 -0
  151. package/dist/logout/command.d.ts.map +1 -0
  152. package/dist/logout/command.js +14 -0
  153. package/dist/logout/command.js.map +1 -0
  154. package/dist/logout/command.mjs +12 -0
  155. package/dist/logout/command.mjs.map +1 -0
  156. package/dist/logout/index.d.ts.map +1 -0
  157. package/dist/logout/index.js +18 -0
  158. package/dist/logout/index.js.map +1 -0
  159. package/dist/logout/index.mjs +12 -0
  160. package/dist/logout/index.mjs.map +1 -0
  161. package/dist/package.json.js +129 -0
  162. package/dist/package.json.js.map +1 -0
  163. package/dist/package.json.mjs +105 -0
  164. package/dist/package.json.mjs.map +1 -0
  165. package/dist/services/build-logs.d.ts.map +1 -0
  166. package/dist/services/build-logs.js +67 -0
  167. package/dist/services/build-logs.js.map +1 -0
  168. package/dist/services/build-logs.mjs +65 -0
  169. package/dist/services/build-logs.mjs.map +1 -0
  170. package/dist/services/cli-api.d.ts.map +1 -0
  171. package/dist/services/cli-api.js +146 -0
  172. package/dist/services/cli-api.js.map +1 -0
  173. package/dist/services/cli-api.mjs +143 -0
  174. package/dist/services/cli-api.mjs.map +1 -0
  175. package/dist/services/index.d.ts.map +1 -0
  176. package/dist/services/index.js +14 -0
  177. package/dist/services/index.js.map +1 -0
  178. package/dist/services/index.mjs +6 -0
  179. package/dist/services/index.mjs.map +1 -0
  180. package/dist/services/logger.d.ts.map +1 -0
  181. package/dist/services/logger.js +128 -0
  182. package/dist/services/logger.js.map +1 -0
  183. package/dist/services/logger.mjs +107 -0
  184. package/dist/services/logger.mjs.map +1 -0
  185. package/dist/services/notification.d.ts.map +1 -0
  186. package/dist/services/notification.js +37 -0
  187. package/dist/services/notification.js.map +1 -0
  188. package/dist/services/notification.mjs +35 -0
  189. package/dist/services/notification.mjs.map +1 -0
  190. package/dist/services/strapi-info-save.d.ts.map +1 -0
  191. package/dist/services/strapi-info-save.js +53 -0
  192. package/dist/services/strapi-info-save.js.map +1 -0
  193. package/dist/services/strapi-info-save.mjs +47 -0
  194. package/dist/services/strapi-info-save.mjs.map +1 -0
  195. package/dist/services/token.d.ts.map +1 -0
  196. package/dist/services/token.js +126 -0
  197. package/dist/services/token.js.map +1 -0
  198. package/dist/services/token.mjs +124 -0
  199. package/dist/services/token.mjs.map +1 -0
  200. package/dist/types.d.ts.map +1 -0
  201. package/dist/utils/analytics.d.ts.map +1 -0
  202. package/dist/utils/analytics.js +12 -0
  203. package/dist/utils/analytics.js.map +1 -0
  204. package/dist/utils/analytics.mjs +10 -0
  205. package/dist/utils/analytics.mjs.map +1 -0
  206. package/dist/utils/compress-files.d.ts.map +1 -0
  207. package/dist/utils/compress-files.js +102 -0
  208. package/dist/utils/compress-files.js.map +1 -0
  209. package/dist/utils/compress-files.mjs +78 -0
  210. package/dist/utils/compress-files.mjs.map +1 -0
  211. package/dist/utils/get-local-config.d.ts.map +1 -0
  212. package/dist/utils/get-local-config.js +37 -0
  213. package/dist/utils/get-local-config.js.map +1 -0
  214. package/dist/utils/get-local-config.mjs +34 -0
  215. package/dist/utils/get-local-config.mjs.map +1 -0
  216. package/dist/utils/helpers.d.ts.map +1 -0
  217. package/dist/utils/helpers.js +33 -0
  218. package/dist/utils/helpers.js.map +1 -0
  219. package/dist/utils/helpers.mjs +31 -0
  220. package/dist/utils/helpers.mjs.map +1 -0
  221. package/dist/utils/pkg.d.ts.map +1 -0
  222. package/dist/utils/pkg.js +65 -0
  223. package/dist/utils/pkg.js.map +1 -0
  224. package/dist/utils/pkg.mjs +43 -0
  225. package/dist/utils/pkg.mjs.map +1 -0
  226. package/dist/utils/tests/compress-files.test.d.ts.map +1 -0
  227. package/package.json +5 -5
  228. package/dist/chunks/index-Cs4iEXVp.mjs +0 -1869
  229. package/dist/chunks/index-Cs4iEXVp.mjs.map +0 -1
  230. package/dist/chunks/index-DuvtFoFz.js +0 -1896
  231. package/dist/chunks/index-DuvtFoFz.js.map +0 -1
  232. package/dist/src/bin.d.ts.map +0 -1
  233. package/dist/src/cloud/command.d.ts.map +0 -1
  234. package/dist/src/config/api.d.ts.map +0 -1
  235. package/dist/src/config/local.d.ts.map +0 -1
  236. package/dist/src/create-project/action.d.ts.map +0 -1
  237. package/dist/src/create-project/command.d.ts.map +0 -1
  238. package/dist/src/create-project/index.d.ts.map +0 -1
  239. package/dist/src/create-project/utils/get-project-name-from-pkg.d.ts.map +0 -1
  240. package/dist/src/create-project/utils/project-questions.utils.d.ts.map +0 -1
  241. package/dist/src/deploy-project/action.d.ts.map +0 -1
  242. package/dist/src/deploy-project/command.d.ts.map +0 -1
  243. package/dist/src/deploy-project/index.d.ts.map +0 -1
  244. package/dist/src/environment/command.d.ts.map +0 -1
  245. package/dist/src/environment/link/action.d.ts.map +0 -1
  246. package/dist/src/environment/link/command.d.ts.map +0 -1
  247. package/dist/src/environment/link/index.d.ts.map +0 -1
  248. package/dist/src/environment/list/action.d.ts.map +0 -1
  249. package/dist/src/environment/list/command.d.ts.map +0 -1
  250. package/dist/src/environment/list/index.d.ts.map +0 -1
  251. package/dist/src/index.d.ts.map +0 -1
  252. package/dist/src/link/action.d.ts.map +0 -1
  253. package/dist/src/link/command.d.ts.map +0 -1
  254. package/dist/src/link/index.d.ts.map +0 -1
  255. package/dist/src/list-projects/action.d.ts.map +0 -1
  256. package/dist/src/list-projects/command.d.ts.map +0 -1
  257. package/dist/src/list-projects/index.d.ts.map +0 -1
  258. package/dist/src/login/action.d.ts.map +0 -1
  259. package/dist/src/login/command.d.ts.map +0 -1
  260. package/dist/src/login/index.d.ts.map +0 -1
  261. package/dist/src/logout/action.d.ts.map +0 -1
  262. package/dist/src/logout/command.d.ts.map +0 -1
  263. package/dist/src/logout/index.d.ts.map +0 -1
  264. package/dist/src/services/build-logs.d.ts.map +0 -1
  265. package/dist/src/services/cli-api.d.ts.map +0 -1
  266. package/dist/src/services/index.d.ts.map +0 -1
  267. package/dist/src/services/logger.d.ts.map +0 -1
  268. package/dist/src/services/notification.d.ts.map +0 -1
  269. package/dist/src/services/strapi-info-save.d.ts.map +0 -1
  270. package/dist/src/services/token.d.ts.map +0 -1
  271. package/dist/src/types.d.ts.map +0 -1
  272. package/dist/src/utils/analytics.d.ts.map +0 -1
  273. package/dist/src/utils/compress-files.d.ts.map +0 -1
  274. package/dist/src/utils/get-local-config.d.ts.map +0 -1
  275. package/dist/src/utils/helpers.d.ts.map +0 -1
  276. package/dist/src/utils/pkg.d.ts.map +0 -1
  277. package/dist/src/utils/tests/compress-files.test.d.ts.map +0 -1
  278. /package/dist/{src/bin.d.ts → bin.d.ts} +0 -0
  279. /package/dist/{src/cloud → cloud}/command.d.ts +0 -0
  280. /package/dist/{src/config → config}/api.d.ts +0 -0
  281. /package/dist/{src/config → config}/local.d.ts +0 -0
  282. /package/dist/{src/create-project → create-project}/action.d.ts +0 -0
  283. /package/dist/{src/create-project → create-project}/command.d.ts +0 -0
  284. /package/dist/{src/create-project → create-project}/index.d.ts +0 -0
  285. /package/dist/{src/create-project → create-project}/utils/get-project-name-from-pkg.d.ts +0 -0
  286. /package/dist/{src/create-project → create-project}/utils/project-questions.utils.d.ts +0 -0
  287. /package/dist/{src/deploy-project → deploy-project}/action.d.ts +0 -0
  288. /package/dist/{src/deploy-project → deploy-project}/command.d.ts +0 -0
  289. /package/dist/{src/deploy-project → deploy-project}/index.d.ts +0 -0
  290. /package/dist/{src/environment → environment}/command.d.ts +0 -0
  291. /package/dist/{src/environment → environment}/link/action.d.ts +0 -0
  292. /package/dist/{src/environment → environment}/link/command.d.ts +0 -0
  293. /package/dist/{src/environment → environment}/link/index.d.ts +0 -0
  294. /package/dist/{src/environment → environment}/list/action.d.ts +0 -0
  295. /package/dist/{src/environment → environment}/list/command.d.ts +0 -0
  296. /package/dist/{src/environment → environment}/list/index.d.ts +0 -0
  297. /package/dist/{src/index.d.ts → index.d.ts} +0 -0
  298. /package/dist/{src/link → link}/action.d.ts +0 -0
  299. /package/dist/{src/link → link}/command.d.ts +0 -0
  300. /package/dist/{src/link → link}/index.d.ts +0 -0
  301. /package/dist/{src/list-projects → list-projects}/action.d.ts +0 -0
  302. /package/dist/{src/list-projects → list-projects}/command.d.ts +0 -0
  303. /package/dist/{src/list-projects → list-projects}/index.d.ts +0 -0
  304. /package/dist/{src/login → login}/action.d.ts +0 -0
  305. /package/dist/{src/login → login}/command.d.ts +0 -0
  306. /package/dist/{src/login → login}/index.d.ts +0 -0
  307. /package/dist/{src/logout → logout}/action.d.ts +0 -0
  308. /package/dist/{src/logout → logout}/command.d.ts +0 -0
  309. /package/dist/{src/logout → logout}/index.d.ts +0 -0
  310. /package/dist/{src/services → services}/build-logs.d.ts +0 -0
  311. /package/dist/{src/services → services}/cli-api.d.ts +0 -0
  312. /package/dist/{src/services → services}/index.d.ts +0 -0
  313. /package/dist/{src/services → services}/logger.d.ts +0 -0
  314. /package/dist/{src/services → services}/notification.d.ts +0 -0
  315. /package/dist/{src/services → services}/strapi-info-save.d.ts +0 -0
  316. /package/dist/{src/services → services}/token.d.ts +0 -0
  317. /package/dist/{src/types.d.ts → types.d.ts} +0 -0
  318. /package/dist/{src/utils → utils}/analytics.d.ts +0 -0
  319. /package/dist/{src/utils → utils}/compress-files.d.ts +0 -0
  320. /package/dist/{src/utils → utils}/get-local-config.d.ts +0 -0
  321. /package/dist/{src/utils → utils}/helpers.d.ts +0 -0
  322. /package/dist/{src/utils → utils}/pkg.d.ts +0 -0
  323. /package/dist/{src/utils → utils}/tests/compress-files.test.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA4BpC,iBAAS,qBAAqB,CAAC,IAAI,WAAe,EAAE,OAAO,UAAgB,QAG1E;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
package/dist/bin.js CHANGED
@@ -4,27 +4,14 @@ var commander = require('commander');
4
4
  require('axios');
5
5
  require('fs-extra');
6
6
  require('os');
7
- var index = require('./chunks/index-DuvtFoFz.js');
7
+ require('./config/api.js');
8
8
  require('path');
9
9
  require('xdg-app-paths');
10
10
  require('lodash');
11
11
  require('jwks-rsa');
12
12
  require('jsonwebtoken');
13
- require('crypto');
14
- require('inquirer');
15
- require('boxen');
16
- require('chalk');
17
- require('node:crypto');
18
- require('@strapi/utils');
19
- require('tar');
20
- require('minimatch');
21
- require('lodash/fp');
22
- require('fast-safe-stringify');
23
- require('ora');
24
- require('cli-progress');
25
- require('pkg-up');
26
- require('yup');
27
- require('eventsource');
13
+ var logger = require('./services/logger.js');
14
+ var index = require('./index.js');
28
15
 
29
16
  function loadStrapiCloudCommand(argv = process.argv, command = new commander.Command()) {
30
17
  // Initial program setup
@@ -35,14 +22,14 @@ function loadStrapiCloudCommand(argv = process.argv, command = new commander.Com
35
22
  const cwd = process.cwd();
36
23
  const hasDebug = argv.includes('--debug');
37
24
  const hasSilent = argv.includes('--silent');
38
- const logger = index.createLogger({
25
+ const logger$1 = logger.createLogger({
39
26
  debug: hasDebug,
40
27
  silent: hasSilent,
41
28
  timestamp: false
42
29
  });
43
30
  const ctx = {
44
31
  cwd,
45
- logger
32
+ logger: logger$1
46
33
  };
47
34
  index.buildStrapiCloudCommands({
48
35
  command,
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sources":["../src/bin.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { createLogger } from './services';\nimport { CLIContext } from './types';\nimport { buildStrapiCloudCommands } from './index';\n\nfunction loadStrapiCloudCommand(argv = process.argv, command = new Command()) {\n // Initial program setup\n command.storeOptionsAsProperties(false).allowUnknownOption(true);\n\n // Help command\n command.helpOption('-h, --help', 'Display help for command');\n command.addHelpCommand('help [command]', 'Display help for command');\n\n const cwd = process.cwd();\n\n const hasDebug = argv.includes('--debug');\n const hasSilent = argv.includes('--silent');\n\n const logger = createLogger({ debug: hasDebug, silent: hasSilent, timestamp: false });\n\n const ctx = {\n cwd,\n logger,\n } satisfies CLIContext;\n\n buildStrapiCloudCommands({ command, ctx, argv });\n}\n\nfunction runStrapiCloudCommand(argv = process.argv, command = new Command()) {\n loadStrapiCloudCommand(argv, command);\n command.parse(argv);\n}\n\nexport { runStrapiCloudCommand };\n"],"names":["loadStrapiCloudCommand","argv","process","command","Command","storeOptionsAsProperties","allowUnknownOption","helpOption","addHelpCommand","cwd","hasDebug","includes","hasSilent","logger","createLogger","debug","silent","timestamp","ctx","buildStrapiCloudCommands","runStrapiCloudCommand","parse"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAASA,uBAAuBC,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,iBAAS,EAAA,EAAA;;AAE1ED,IAAAA,OAAAA,CAAQE,wBAAwB,CAAC,KAAOC,CAAAA,CAAAA,kBAAkB,CAAC,IAAA,CAAA;;IAG3DH,OAAQI,CAAAA,UAAU,CAAC,YAAc,EAAA,0BAAA,CAAA;IACjCJ,OAAQK,CAAAA,cAAc,CAAC,gBAAkB,EAAA,0BAAA,CAAA;IAEzC,MAAMC,GAAAA,GAAMP,QAAQO,GAAG,EAAA;IAEvB,MAAMC,QAAAA,GAAWT,IAAKU,CAAAA,QAAQ,CAAC,SAAA,CAAA;IAC/B,MAAMC,SAAAA,GAAYX,IAAKU,CAAAA,QAAQ,CAAC,UAAA,CAAA;AAEhC,IAAA,MAAME,SAASC,kBAAa,CAAA;QAAEC,KAAOL,EAAAA,QAAAA;QAAUM,MAAQJ,EAAAA,SAAAA;QAAWK,SAAW,EAAA;AAAM,KAAA,CAAA;AAEnF,IAAA,MAAMC,GAAM,GAAA;AACVT,QAAAA,GAAAA;AACAI,QAAAA;AACF,KAAA;IAEAM,8BAAyB,CAAA;AAAEhB,QAAAA,OAAAA;AAASe,QAAAA,GAAAA;AAAKjB,QAAAA;AAAK,KAAA,CAAA;AAChD;AAEA,SAASmB,sBAAsBnB,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,iBAAS,EAAA,EAAA;AACzEJ,IAAAA,sBAAAA,CAAuBC,IAAME,EAAAA,OAAAA,CAAAA;AAC7BA,IAAAA,OAAAA,CAAQkB,KAAK,CAACpB,IAAAA,CAAAA;AAChB;;;;"}
1
+ {"version":3,"file":"bin.js","sources":["../src/bin.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { createLogger } from './services';\nimport { CLIContext } from './types';\nimport { buildStrapiCloudCommands } from './index';\n\nfunction loadStrapiCloudCommand(argv = process.argv, command = new Command()) {\n // Initial program setup\n command.storeOptionsAsProperties(false).allowUnknownOption(true);\n\n // Help command\n command.helpOption('-h, --help', 'Display help for command');\n command.addHelpCommand('help [command]', 'Display help for command');\n\n const cwd = process.cwd();\n\n const hasDebug = argv.includes('--debug');\n const hasSilent = argv.includes('--silent');\n\n const logger = createLogger({ debug: hasDebug, silent: hasSilent, timestamp: false });\n\n const ctx = {\n cwd,\n logger,\n } satisfies CLIContext;\n\n buildStrapiCloudCommands({ command, ctx, argv });\n}\n\nfunction runStrapiCloudCommand(argv = process.argv, command = new Command()) {\n loadStrapiCloudCommand(argv, command);\n command.parse(argv);\n}\n\nexport { runStrapiCloudCommand };\n"],"names":["loadStrapiCloudCommand","argv","process","command","Command","storeOptionsAsProperties","allowUnknownOption","helpOption","addHelpCommand","cwd","hasDebug","includes","hasSilent","logger","createLogger","debug","silent","timestamp","ctx","buildStrapiCloudCommands","runStrapiCloudCommand","parse"],"mappings":";;;;;;;;;;;;;;;AAKA,SAASA,uBAAuBC,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,iBAAS,EAAA,EAAA;;AAE1ED,IAAAA,OAAAA,CAAQE,wBAAwB,CAAC,KAAOC,CAAAA,CAAAA,kBAAkB,CAAC,IAAA,CAAA;;IAG3DH,OAAQI,CAAAA,UAAU,CAAC,YAAc,EAAA,0BAAA,CAAA;IACjCJ,OAAQK,CAAAA,cAAc,CAAC,gBAAkB,EAAA,0BAAA,CAAA;IAEzC,MAAMC,GAAAA,GAAMP,QAAQO,GAAG,EAAA;IAEvB,MAAMC,QAAAA,GAAWT,IAAKU,CAAAA,QAAQ,CAAC,SAAA,CAAA;IAC/B,MAAMC,SAAAA,GAAYX,IAAKU,CAAAA,QAAQ,CAAC,UAAA,CAAA;AAEhC,IAAA,MAAME,WAASC,mBAAa,CAAA;QAAEC,KAAOL,EAAAA,QAAAA;QAAUM,MAAQJ,EAAAA,SAAAA;QAAWK,SAAW,EAAA;AAAM,KAAA,CAAA;AAEnF,IAAA,MAAMC,GAAM,GAAA;AACVT,QAAAA,GAAAA;AACAI,gBAAAA;AACF,KAAA;IAEAM,8BAAyB,CAAA;AAAEhB,QAAAA,OAAAA;AAASe,QAAAA,GAAAA;AAAKjB,QAAAA;AAAK,KAAA,CAAA;AAChD;AAEA,SAASmB,sBAAsBnB,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,iBAAS,EAAA,EAAA;AACzEJ,IAAAA,sBAAAA,CAAuBC,IAAME,EAAAA,OAAAA,CAAAA;AAC7BA,IAAAA,OAAAA,CAAQkB,KAAK,CAACpB,IAAAA,CAAAA;AAChB;;;;"}
package/dist/bin.mjs CHANGED
@@ -2,27 +2,14 @@ import { Command } from 'commander';
2
2
  import 'axios';
3
3
  import 'fs-extra';
4
4
  import 'os';
5
- import { b as buildStrapiCloudCommands, c as createLogger } from './chunks/index-Cs4iEXVp.mjs';
5
+ import './config/api.mjs';
6
6
  import 'path';
7
7
  import 'xdg-app-paths';
8
8
  import 'lodash';
9
9
  import 'jwks-rsa';
10
10
  import 'jsonwebtoken';
11
- import 'crypto';
12
- import 'inquirer';
13
- import 'boxen';
14
- import 'chalk';
15
- import 'node:crypto';
16
- import '@strapi/utils';
17
- import 'tar';
18
- import 'minimatch';
19
- import 'lodash/fp';
20
- import 'fast-safe-stringify';
21
- import 'ora';
22
- import 'cli-progress';
23
- import 'pkg-up';
24
- import 'yup';
25
- import 'eventsource';
11
+ import { createLogger } from './services/logger.mjs';
12
+ import { buildStrapiCloudCommands } from './index.mjs';
26
13
 
27
14
  function loadStrapiCloudCommand(argv = process.argv, command = new Command()) {
28
15
  // Initial program setup
package/dist/bin.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.mjs","sources":["../src/bin.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { createLogger } from './services';\nimport { CLIContext } from './types';\nimport { buildStrapiCloudCommands } from './index';\n\nfunction loadStrapiCloudCommand(argv = process.argv, command = new Command()) {\n // Initial program setup\n command.storeOptionsAsProperties(false).allowUnknownOption(true);\n\n // Help command\n command.helpOption('-h, --help', 'Display help for command');\n command.addHelpCommand('help [command]', 'Display help for command');\n\n const cwd = process.cwd();\n\n const hasDebug = argv.includes('--debug');\n const hasSilent = argv.includes('--silent');\n\n const logger = createLogger({ debug: hasDebug, silent: hasSilent, timestamp: false });\n\n const ctx = {\n cwd,\n logger,\n } satisfies CLIContext;\n\n buildStrapiCloudCommands({ command, ctx, argv });\n}\n\nfunction runStrapiCloudCommand(argv = process.argv, command = new Command()) {\n loadStrapiCloudCommand(argv, command);\n command.parse(argv);\n}\n\nexport { runStrapiCloudCommand };\n"],"names":["loadStrapiCloudCommand","argv","process","command","Command","storeOptionsAsProperties","allowUnknownOption","helpOption","addHelpCommand","cwd","hasDebug","includes","hasSilent","logger","createLogger","debug","silent","timestamp","ctx","buildStrapiCloudCommands","runStrapiCloudCommand","parse"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAASA,uBAAuBC,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,OAAS,EAAA,EAAA;;AAE1ED,IAAAA,OAAAA,CAAQE,wBAAwB,CAAC,KAAOC,CAAAA,CAAAA,kBAAkB,CAAC,IAAA,CAAA;;IAG3DH,OAAQI,CAAAA,UAAU,CAAC,YAAc,EAAA,0BAAA,CAAA;IACjCJ,OAAQK,CAAAA,cAAc,CAAC,gBAAkB,EAAA,0BAAA,CAAA;IAEzC,MAAMC,GAAAA,GAAMP,QAAQO,GAAG,EAAA;IAEvB,MAAMC,QAAAA,GAAWT,IAAKU,CAAAA,QAAQ,CAAC,SAAA,CAAA;IAC/B,MAAMC,SAAAA,GAAYX,IAAKU,CAAAA,QAAQ,CAAC,UAAA,CAAA;AAEhC,IAAA,MAAME,SAASC,YAAa,CAAA;QAAEC,KAAOL,EAAAA,QAAAA;QAAUM,MAAQJ,EAAAA,SAAAA;QAAWK,SAAW,EAAA;AAAM,KAAA,CAAA;AAEnF,IAAA,MAAMC,GAAM,GAAA;AACVT,QAAAA,GAAAA;AACAI,QAAAA;AACF,KAAA;IAEAM,wBAAyB,CAAA;AAAEhB,QAAAA,OAAAA;AAASe,QAAAA,GAAAA;AAAKjB,QAAAA;AAAK,KAAA,CAAA;AAChD;AAEA,SAASmB,sBAAsBnB,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,OAAS,EAAA,EAAA;AACzEJ,IAAAA,sBAAAA,CAAuBC,IAAME,EAAAA,OAAAA,CAAAA;AAC7BA,IAAAA,OAAAA,CAAQkB,KAAK,CAACpB,IAAAA,CAAAA;AAChB;;;;"}
1
+ {"version":3,"file":"bin.mjs","sources":["../src/bin.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { createLogger } from './services';\nimport { CLIContext } from './types';\nimport { buildStrapiCloudCommands } from './index';\n\nfunction loadStrapiCloudCommand(argv = process.argv, command = new Command()) {\n // Initial program setup\n command.storeOptionsAsProperties(false).allowUnknownOption(true);\n\n // Help command\n command.helpOption('-h, --help', 'Display help for command');\n command.addHelpCommand('help [command]', 'Display help for command');\n\n const cwd = process.cwd();\n\n const hasDebug = argv.includes('--debug');\n const hasSilent = argv.includes('--silent');\n\n const logger = createLogger({ debug: hasDebug, silent: hasSilent, timestamp: false });\n\n const ctx = {\n cwd,\n logger,\n } satisfies CLIContext;\n\n buildStrapiCloudCommands({ command, ctx, argv });\n}\n\nfunction runStrapiCloudCommand(argv = process.argv, command = new Command()) {\n loadStrapiCloudCommand(argv, command);\n command.parse(argv);\n}\n\nexport { runStrapiCloudCommand };\n"],"names":["loadStrapiCloudCommand","argv","process","command","Command","storeOptionsAsProperties","allowUnknownOption","helpOption","addHelpCommand","cwd","hasDebug","includes","hasSilent","logger","createLogger","debug","silent","timestamp","ctx","buildStrapiCloudCommands","runStrapiCloudCommand","parse"],"mappings":";;;;;;;;;;;;;AAKA,SAASA,uBAAuBC,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,OAAS,EAAA,EAAA;;AAE1ED,IAAAA,OAAAA,CAAQE,wBAAwB,CAAC,KAAOC,CAAAA,CAAAA,kBAAkB,CAAC,IAAA,CAAA;;IAG3DH,OAAQI,CAAAA,UAAU,CAAC,YAAc,EAAA,0BAAA,CAAA;IACjCJ,OAAQK,CAAAA,cAAc,CAAC,gBAAkB,EAAA,0BAAA,CAAA;IAEzC,MAAMC,GAAAA,GAAMP,QAAQO,GAAG,EAAA;IAEvB,MAAMC,QAAAA,GAAWT,IAAKU,CAAAA,QAAQ,CAAC,SAAA,CAAA;IAC/B,MAAMC,SAAAA,GAAYX,IAAKU,CAAAA,QAAQ,CAAC,UAAA,CAAA;AAEhC,IAAA,MAAME,SAASC,YAAa,CAAA;QAAEC,KAAOL,EAAAA,QAAAA;QAAUM,MAAQJ,EAAAA,SAAAA;QAAWK,SAAW,EAAA;AAAM,KAAA,CAAA;AAEnF,IAAA,MAAMC,GAAM,GAAA;AACVT,QAAAA,GAAAA;AACAI,QAAAA;AACF,KAAA;IAEAM,wBAAyB,CAAA;AAAEhB,QAAAA,OAAAA;AAASe,QAAAA,GAAAA;AAAKjB,QAAAA;AAAK,KAAA,CAAA;AAChD;AAEA,SAASmB,sBAAsBnB,IAAOC,GAAAA,OAAAA,CAAQD,IAAI,EAAEE,OAAAA,GAAU,IAAIC,OAAS,EAAA,EAAA;AACzEJ,IAAAA,sBAAAA,CAAuBC,IAAME,EAAAA,OAAAA,CAAAA;AAC7BA,IAAAA,OAAAA,CAAQkB,KAAK,CAACpB,IAAAA,CAAAA;AAChB;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/cloud/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAS5E"}
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var helpers = require('../utils/helpers.js');
4
+ var action = require('../environment/list/action.js');
5
+
6
+ function defineCloudNamespace(command, ctx) {
7
+ const cloud = command.command('cloud').description('Manage Strapi Cloud projects');
8
+ // Define cloud namespace aliases:
9
+ cloud.command('environments').description('Alias for cloud environment list').action(()=>helpers.runAction('list', action)(ctx));
10
+ return cloud;
11
+ }
12
+
13
+ exports.defineCloudNamespace = defineCloudNamespace;
14
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sources":["../../src/cloud/command.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { runAction } from '../utils/helpers';\nimport listAction from '../environment/list/action';\n\nexport function defineCloudNamespace(command: Command, ctx: unknown): Command {\n const cloud = command.command('cloud').description('Manage Strapi Cloud projects');\n\n // Define cloud namespace aliases:\n cloud\n .command('environments')\n .description('Alias for cloud environment list')\n .action(() => runAction('list', listAction)(ctx));\n return cloud;\n}\n"],"names":["defineCloudNamespace","command","ctx","cloud","description","action","runAction","listAction"],"mappings":";;;;;AAIO,SAASA,oBAAAA,CAAqBC,OAAgB,EAAEC,GAAY,EAAA;AACjE,IAAA,MAAMC,QAAQF,OAAQA,CAAAA,OAAO,CAAC,OAAA,CAAA,CAASG,WAAW,CAAC,8BAAA,CAAA;;IAGnDD,KACGF,CAAAA,OAAO,CAAC,cAAA,CAAA,CACRG,WAAW,CAAC,kCACZC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,iBAAU,CAAA,MAAA,EAAQC,MAAYL,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;IAC9C,OAAOC,KAAAA;AACT;;;;"}
@@ -0,0 +1,12 @@
1
+ import { runAction } from '../utils/helpers.mjs';
2
+ import action from '../environment/list/action.mjs';
3
+
4
+ function defineCloudNamespace(command, ctx) {
5
+ const cloud = command.command('cloud').description('Manage Strapi Cloud projects');
6
+ // Define cloud namespace aliases:
7
+ cloud.command('environments').description('Alias for cloud environment list').action(()=>runAction('list', action)(ctx));
8
+ return cloud;
9
+ }
10
+
11
+ export { defineCloudNamespace };
12
+ //# sourceMappingURL=command.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.mjs","sources":["../../src/cloud/command.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { runAction } from '../utils/helpers';\nimport listAction from '../environment/list/action';\n\nexport function defineCloudNamespace(command: Command, ctx: unknown): Command {\n const cloud = command.command('cloud').description('Manage Strapi Cloud projects');\n\n // Define cloud namespace aliases:\n cloud\n .command('environments')\n .description('Alias for cloud environment list')\n .action(() => runAction('list', listAction)(ctx));\n return cloud;\n}\n"],"names":["defineCloudNamespace","command","ctx","cloud","description","action","runAction","listAction"],"mappings":";;;AAIO,SAASA,oBAAAA,CAAqBC,OAAgB,EAAEC,GAAY,EAAA;AACjE,IAAA,MAAMC,QAAQF,OAAQA,CAAAA,OAAO,CAAC,OAAA,CAAA,CAASG,WAAW,CAAC,8BAAA,CAAA;;IAGnDD,KACGF,CAAAA,OAAO,CAAC,cAAA,CAAA,CACRG,WAAW,CAAC,kCACZC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,SAAU,CAAA,MAAA,EAAQC,MAAYL,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;IAC9C,OAAOC,KAAAA;AACT;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/config/api.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;;;CAGrB,CAAC"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var utils = require('@strapi/utils');
4
+
5
+ const apiConfig = {
6
+ apiBaseUrl: utils.env('STRAPI_CLI_CLOUD_API', 'https://cloud-cli-api.strapi.io'),
7
+ dashboardBaseUrl: utils.env('STRAPI_CLI_CLOUD_DASHBOARD', 'https://cloud.strapi.io')
8
+ };
9
+
10
+ exports.apiConfig = apiConfig;
11
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sources":["../../src/config/api.ts"],"sourcesContent":["import { env } from '@strapi/utils';\n\nexport const apiConfig = {\n apiBaseUrl: env('STRAPI_CLI_CLOUD_API', 'https://cloud-cli-api.strapi.io'),\n dashboardBaseUrl: env('STRAPI_CLI_CLOUD_DASHBOARD', 'https://cloud.strapi.io'),\n};\n"],"names":["apiConfig","apiBaseUrl","env","dashboardBaseUrl"],"mappings":";;;;MAEaA,SAAY,GAAA;AACvBC,IAAAA,UAAAA,EAAYC,UAAI,sBAAwB,EAAA,iCAAA,CAAA;AACxCC,IAAAA,gBAAAA,EAAkBD,UAAI,4BAA8B,EAAA,yBAAA;AACtD;;;;"}
@@ -0,0 +1,9 @@
1
+ import { env } from '@strapi/utils';
2
+
3
+ const apiConfig = {
4
+ apiBaseUrl: env('STRAPI_CLI_CLOUD_API', 'https://cloud-cli-api.strapi.io'),
5
+ dashboardBaseUrl: env('STRAPI_CLI_CLOUD_DASHBOARD', 'https://cloud.strapi.io')
6
+ };
7
+
8
+ export { apiConfig };
9
+ //# sourceMappingURL=api.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.mjs","sources":["../../src/config/api.ts"],"sourcesContent":["import { env } from '@strapi/utils';\n\nexport const apiConfig = {\n apiBaseUrl: env('STRAPI_CLI_CLOUD_API', 'https://cloud-cli-api.strapi.io'),\n dashboardBaseUrl: env('STRAPI_CLI_CLOUD_DASHBOARD', 'https://cloud.strapi.io'),\n};\n"],"names":["apiConfig","apiBaseUrl","env","dashboardBaseUrl"],"mappings":";;MAEaA,SAAY,GAAA;AACvBC,IAAAA,UAAAA,EAAYC,IAAI,sBAAwB,EAAA,iCAAA,CAAA;AACxCC,IAAAA,gBAAAA,EAAkBD,IAAI,4BAA8B,EAAA,yBAAA;AACtD;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/config/local.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAE7C,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAYF,wBAAsB,iBAAiB,oBAItC;AAaD,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAS3D;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,WAAW,iBAItD"}
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ var path = require('path');
4
+ var os = require('os');
5
+ var fse = require('fs-extra');
6
+ var XDGAppPaths = require('xdg-app-paths');
7
+
8
+ const APP_FOLDER_NAME = 'com.strapi.cli';
9
+ const CONFIG_FILENAME = 'config.json';
10
+ async function checkDirectoryExists(directoryPath) {
11
+ try {
12
+ const fsStat = await fse.lstat(directoryPath);
13
+ return fsStat.isDirectory();
14
+ } catch (e) {
15
+ return false;
16
+ }
17
+ }
18
+ // Determine storage path based on the operating system
19
+ async function getTmpStoragePath() {
20
+ const storagePath = path.join(os.tmpdir(), APP_FOLDER_NAME);
21
+ await fse.ensureDir(storagePath);
22
+ return storagePath;
23
+ }
24
+ async function getConfigPath() {
25
+ const configDirs = XDGAppPaths(APP_FOLDER_NAME).configDirs();
26
+ const configPath = configDirs.find(checkDirectoryExists);
27
+ if (!configPath) {
28
+ await fse.ensureDir(configDirs[0]);
29
+ return configDirs[0];
30
+ }
31
+ return configPath;
32
+ }
33
+ async function getLocalConfig() {
34
+ const configPath = await getConfigPath();
35
+ const configFilePath = path.join(configPath, CONFIG_FILENAME);
36
+ await fse.ensureFile(configFilePath);
37
+ try {
38
+ return await fse.readJSON(configFilePath, {
39
+ encoding: 'utf8',
40
+ throws: true
41
+ });
42
+ } catch (e) {
43
+ return {};
44
+ }
45
+ }
46
+ async function saveLocalConfig(data) {
47
+ const configPath = await getConfigPath();
48
+ const configFilePath = path.join(configPath, CONFIG_FILENAME);
49
+ await fse.writeJson(configFilePath, data, {
50
+ encoding: 'utf8',
51
+ spaces: 2,
52
+ mode: 0o600
53
+ });
54
+ }
55
+
56
+ exports.CONFIG_FILENAME = CONFIG_FILENAME;
57
+ exports.getLocalConfig = getLocalConfig;
58
+ exports.getTmpStoragePath = getTmpStoragePath;
59
+ exports.saveLocalConfig = saveLocalConfig;
60
+ //# sourceMappingURL=local.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.js","sources":["../../src/config/local.ts"],"sourcesContent":["import path from 'path';\nimport os from 'os';\nimport fse from 'fs-extra';\nimport XDGAppPaths from 'xdg-app-paths';\n\nconst APP_FOLDER_NAME = 'com.strapi.cli';\n\nexport const CONFIG_FILENAME = 'config.json';\n\nexport type LocalConfig = {\n token?: string;\n deviceId?: string;\n};\n\nasync function checkDirectoryExists(directoryPath: string) {\n try {\n const fsStat = await fse.lstat(directoryPath);\n return fsStat.isDirectory();\n } catch (e) {\n return false;\n }\n}\n\n// Determine storage path based on the operating system\nexport async function getTmpStoragePath() {\n const storagePath = path.join(os.tmpdir(), APP_FOLDER_NAME);\n await fse.ensureDir(storagePath);\n return storagePath;\n}\n\nasync function getConfigPath() {\n const configDirs = XDGAppPaths(APP_FOLDER_NAME).configDirs();\n const configPath = configDirs.find(checkDirectoryExists);\n\n if (!configPath) {\n await fse.ensureDir(configDirs[0]);\n return configDirs[0];\n }\n return configPath;\n}\n\nexport async function getLocalConfig(): Promise<LocalConfig> {\n const configPath = await getConfigPath();\n const configFilePath = path.join(configPath, CONFIG_FILENAME);\n await fse.ensureFile(configFilePath);\n try {\n return await fse.readJSON(configFilePath, { encoding: 'utf8', throws: true });\n } catch (e) {\n return {};\n }\n}\n\nexport async function saveLocalConfig(data: LocalConfig) {\n const configPath = await getConfigPath();\n const configFilePath = path.join(configPath, CONFIG_FILENAME);\n await fse.writeJson(configFilePath, data, { encoding: 'utf8', spaces: 2, mode: 0o600 });\n}\n"],"names":["APP_FOLDER_NAME","CONFIG_FILENAME","checkDirectoryExists","directoryPath","fsStat","fse","lstat","isDirectory","e","getTmpStoragePath","storagePath","path","join","os","tmpdir","ensureDir","getConfigPath","configDirs","XDGAppPaths","configPath","find","getLocalConfig","configFilePath","ensureFile","readJSON","encoding","throws","saveLocalConfig","data","writeJson","spaces","mode"],"mappings":";;;;;;;AAKA,MAAMA,eAAkB,GAAA,gBAAA;AAEjB,MAAMC,kBAAkB;AAO/B,eAAeC,qBAAqBC,aAAqB,EAAA;IACvD,IAAI;AACF,QAAA,MAAMC,MAAS,GAAA,MAAMC,GAAIC,CAAAA,KAAK,CAACH,aAAAA,CAAAA;AAC/B,QAAA,OAAOC,OAAOG,WAAW,EAAA;AAC3B,KAAA,CAAE,OAAOC,CAAG,EAAA;QACV,OAAO,KAAA;AACT;AACF;AAEA;AACO,eAAeC,iBAAAA,GAAAA;AACpB,IAAA,MAAMC,cAAcC,IAAKC,CAAAA,IAAI,CAACC,EAAAA,CAAGC,MAAM,EAAId,EAAAA,eAAAA,CAAAA;IAC3C,MAAMK,GAAAA,CAAIU,SAAS,CAACL,WAAAA,CAAAA;IACpB,OAAOA,WAAAA;AACT;AAEA,eAAeM,aAAAA,GAAAA;IACb,MAAMC,UAAAA,GAAaC,WAAYlB,CAAAA,eAAAA,CAAAA,CAAiBiB,UAAU,EAAA;IAC1D,MAAME,UAAAA,GAAaF,UAAWG,CAAAA,IAAI,CAAClB,oBAAAA,CAAAA;AAEnC,IAAA,IAAI,CAACiB,UAAY,EAAA;AACf,QAAA,MAAMd,GAAIU,CAAAA,SAAS,CAACE,UAAU,CAAC,CAAE,CAAA,CAAA;QACjC,OAAOA,UAAU,CAAC,CAAE,CAAA;AACtB;IACA,OAAOE,UAAAA;AACT;AAEO,eAAeE,cAAAA,GAAAA;AACpB,IAAA,MAAMF,aAAa,MAAMH,aAAAA,EAAAA;AACzB,IAAA,MAAMM,cAAiBX,GAAAA,IAAAA,CAAKC,IAAI,CAACO,UAAYlB,EAAAA,eAAAA,CAAAA;IAC7C,MAAMI,GAAAA,CAAIkB,UAAU,CAACD,cAAAA,CAAAA;IACrB,IAAI;AACF,QAAA,OAAO,MAAMjB,GAAAA,CAAImB,QAAQ,CAACF,cAAgB,EAAA;YAAEG,QAAU,EAAA,MAAA;YAAQC,MAAQ,EAAA;AAAK,SAAA,CAAA;AAC7E,KAAA,CAAE,OAAOlB,CAAG,EAAA;AACV,QAAA,OAAO,EAAC;AACV;AACF;AAEO,eAAemB,gBAAgBC,IAAiB,EAAA;AACrD,IAAA,MAAMT,aAAa,MAAMH,aAAAA,EAAAA;AACzB,IAAA,MAAMM,cAAiBX,GAAAA,IAAAA,CAAKC,IAAI,CAACO,UAAYlB,EAAAA,eAAAA,CAAAA;AAC7C,IAAA,MAAMI,GAAIwB,CAAAA,SAAS,CAACP,cAAAA,EAAgBM,IAAM,EAAA;QAAEH,QAAU,EAAA,MAAA;QAAQK,MAAQ,EAAA,CAAA;QAAGC,IAAM,EAAA;AAAM,KAAA,CAAA;AACvF;;;;;;;"}
@@ -0,0 +1,55 @@
1
+ import path__default from 'path';
2
+ import os from 'os';
3
+ import fse__default from 'fs-extra';
4
+ import XDGAppPaths from 'xdg-app-paths';
5
+
6
+ const APP_FOLDER_NAME = 'com.strapi.cli';
7
+ const CONFIG_FILENAME = 'config.json';
8
+ async function checkDirectoryExists(directoryPath) {
9
+ try {
10
+ const fsStat = await fse__default.lstat(directoryPath);
11
+ return fsStat.isDirectory();
12
+ } catch (e) {
13
+ return false;
14
+ }
15
+ }
16
+ // Determine storage path based on the operating system
17
+ async function getTmpStoragePath() {
18
+ const storagePath = path__default.join(os.tmpdir(), APP_FOLDER_NAME);
19
+ await fse__default.ensureDir(storagePath);
20
+ return storagePath;
21
+ }
22
+ async function getConfigPath() {
23
+ const configDirs = XDGAppPaths(APP_FOLDER_NAME).configDirs();
24
+ const configPath = configDirs.find(checkDirectoryExists);
25
+ if (!configPath) {
26
+ await fse__default.ensureDir(configDirs[0]);
27
+ return configDirs[0];
28
+ }
29
+ return configPath;
30
+ }
31
+ async function getLocalConfig() {
32
+ const configPath = await getConfigPath();
33
+ const configFilePath = path__default.join(configPath, CONFIG_FILENAME);
34
+ await fse__default.ensureFile(configFilePath);
35
+ try {
36
+ return await fse__default.readJSON(configFilePath, {
37
+ encoding: 'utf8',
38
+ throws: true
39
+ });
40
+ } catch (e) {
41
+ return {};
42
+ }
43
+ }
44
+ async function saveLocalConfig(data) {
45
+ const configPath = await getConfigPath();
46
+ const configFilePath = path__default.join(configPath, CONFIG_FILENAME);
47
+ await fse__default.writeJson(configFilePath, data, {
48
+ encoding: 'utf8',
49
+ spaces: 2,
50
+ mode: 0o600
51
+ });
52
+ }
53
+
54
+ export { CONFIG_FILENAME, getLocalConfig, getTmpStoragePath, saveLocalConfig };
55
+ //# sourceMappingURL=local.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.mjs","sources":["../../src/config/local.ts"],"sourcesContent":["import path from 'path';\nimport os from 'os';\nimport fse from 'fs-extra';\nimport XDGAppPaths from 'xdg-app-paths';\n\nconst APP_FOLDER_NAME = 'com.strapi.cli';\n\nexport const CONFIG_FILENAME = 'config.json';\n\nexport type LocalConfig = {\n token?: string;\n deviceId?: string;\n};\n\nasync function checkDirectoryExists(directoryPath: string) {\n try {\n const fsStat = await fse.lstat(directoryPath);\n return fsStat.isDirectory();\n } catch (e) {\n return false;\n }\n}\n\n// Determine storage path based on the operating system\nexport async function getTmpStoragePath() {\n const storagePath = path.join(os.tmpdir(), APP_FOLDER_NAME);\n await fse.ensureDir(storagePath);\n return storagePath;\n}\n\nasync function getConfigPath() {\n const configDirs = XDGAppPaths(APP_FOLDER_NAME).configDirs();\n const configPath = configDirs.find(checkDirectoryExists);\n\n if (!configPath) {\n await fse.ensureDir(configDirs[0]);\n return configDirs[0];\n }\n return configPath;\n}\n\nexport async function getLocalConfig(): Promise<LocalConfig> {\n const configPath = await getConfigPath();\n const configFilePath = path.join(configPath, CONFIG_FILENAME);\n await fse.ensureFile(configFilePath);\n try {\n return await fse.readJSON(configFilePath, { encoding: 'utf8', throws: true });\n } catch (e) {\n return {};\n }\n}\n\nexport async function saveLocalConfig(data: LocalConfig) {\n const configPath = await getConfigPath();\n const configFilePath = path.join(configPath, CONFIG_FILENAME);\n await fse.writeJson(configFilePath, data, { encoding: 'utf8', spaces: 2, mode: 0o600 });\n}\n"],"names":["APP_FOLDER_NAME","CONFIG_FILENAME","checkDirectoryExists","directoryPath","fsStat","fse","lstat","isDirectory","e","getTmpStoragePath","storagePath","path","join","os","tmpdir","ensureDir","getConfigPath","configDirs","XDGAppPaths","configPath","find","getLocalConfig","configFilePath","ensureFile","readJSON","encoding","throws","saveLocalConfig","data","writeJson","spaces","mode"],"mappings":";;;;;AAKA,MAAMA,eAAkB,GAAA,gBAAA;AAEjB,MAAMC,kBAAkB;AAO/B,eAAeC,qBAAqBC,aAAqB,EAAA;IACvD,IAAI;AACF,QAAA,MAAMC,MAAS,GAAA,MAAMC,YAAIC,CAAAA,KAAK,CAACH,aAAAA,CAAAA;AAC/B,QAAA,OAAOC,OAAOG,WAAW,EAAA;AAC3B,KAAA,CAAE,OAAOC,CAAG,EAAA;QACV,OAAO,KAAA;AACT;AACF;AAEA;AACO,eAAeC,iBAAAA,GAAAA;AACpB,IAAA,MAAMC,cAAcC,aAAKC,CAAAA,IAAI,CAACC,EAAAA,CAAGC,MAAM,EAAId,EAAAA,eAAAA,CAAAA;IAC3C,MAAMK,YAAAA,CAAIU,SAAS,CAACL,WAAAA,CAAAA;IACpB,OAAOA,WAAAA;AACT;AAEA,eAAeM,aAAAA,GAAAA;IACb,MAAMC,UAAAA,GAAaC,WAAYlB,CAAAA,eAAAA,CAAAA,CAAiBiB,UAAU,EAAA;IAC1D,MAAME,UAAAA,GAAaF,UAAWG,CAAAA,IAAI,CAAClB,oBAAAA,CAAAA;AAEnC,IAAA,IAAI,CAACiB,UAAY,EAAA;AACf,QAAA,MAAMd,YAAIU,CAAAA,SAAS,CAACE,UAAU,CAAC,CAAE,CAAA,CAAA;QACjC,OAAOA,UAAU,CAAC,CAAE,CAAA;AACtB;IACA,OAAOE,UAAAA;AACT;AAEO,eAAeE,cAAAA,GAAAA;AACpB,IAAA,MAAMF,aAAa,MAAMH,aAAAA,EAAAA;AACzB,IAAA,MAAMM,cAAiBX,GAAAA,aAAAA,CAAKC,IAAI,CAACO,UAAYlB,EAAAA,eAAAA,CAAAA;IAC7C,MAAMI,YAAAA,CAAIkB,UAAU,CAACD,cAAAA,CAAAA;IACrB,IAAI;AACF,QAAA,OAAO,MAAMjB,YAAAA,CAAImB,QAAQ,CAACF,cAAgB,EAAA;YAAEG,QAAU,EAAA,MAAA;YAAQC,MAAQ,EAAA;AAAK,SAAA,CAAA;AAC7E,KAAA,CAAE,OAAOlB,CAAG,EAAA;AACV,QAAA,OAAO,EAAC;AACV;AACF;AAEO,eAAemB,gBAAgBC,IAAiB,EAAA;AACrD,IAAA,MAAMT,aAAa,MAAMH,aAAAA,EAAAA;AACzB,IAAA,MAAMM,cAAiBX,GAAAA,aAAAA,CAAKC,IAAI,CAACO,UAAYlB,EAAAA,eAAAA,CAAAA;AAC7C,IAAA,MAAMI,YAAIwB,CAAAA,SAAS,CAACP,cAAAA,EAAgBM,IAAM,EAAA;QAAEH,QAAU,EAAA,MAAA;QAAQK,MAAQ,EAAA,CAAA;QAAGC,IAAM,EAAA;AAAM,KAAA,CAAA;AACvF;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/create-project/action.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAgC,MAAM,UAAU,CAAC;8BAyD9C,UAAU;AAArC,wBAyCE"}
@@ -0,0 +1,95 @@
1
+ 'use strict';
2
+
3
+ var inquirer = require('inquirer');
4
+ var axios = require('axios');
5
+ var fp = require('lodash/fp');
6
+ var cliApi = require('../services/cli-api.js');
7
+ var strapiInfoSave = require('../services/strapi-info-save.js');
8
+ var token = require('../services/token.js');
9
+ require('chalk');
10
+ require('fast-safe-stringify');
11
+ require('ora');
12
+ require('cli-progress');
13
+ var getProjectNameFromPkg = require('./utils/get-project-name-from-pkg.js');
14
+ var action$1 = require('../login/action.js');
15
+ var projectQuestions_utils = require('./utils/project-questions.utils.js');
16
+
17
+ async function handleError(ctx, error) {
18
+ const { logger } = ctx;
19
+ logger.debug(error);
20
+ if (error instanceof axios.AxiosError) {
21
+ const errorMessage = typeof error.response?.data === 'string' ? error.response.data : null;
22
+ switch(error.response?.status){
23
+ case 403:
24
+ logger.error(errorMessage || 'You do not have permission to create a project. Please contact support for assistance.');
25
+ return;
26
+ case 400:
27
+ logger.error(errorMessage || 'Invalid input. Please check your inputs and try again.');
28
+ return;
29
+ case 503:
30
+ logger.error('Strapi Cloud project creation is currently unavailable. Please try again later.');
31
+ return;
32
+ default:
33
+ if (errorMessage) {
34
+ logger.error(errorMessage);
35
+ return;
36
+ }
37
+ break;
38
+ }
39
+ }
40
+ logger.error('We encountered an issue while creating your project. Please try again in a moment. If the problem persists, contact support for assistance.');
41
+ }
42
+ async function createProject(ctx, cloudApi, projectInput) {
43
+ const { logger } = ctx;
44
+ const spinner = logger.spinner('Setting up your project...').start();
45
+ try {
46
+ const { data } = await cloudApi.createProject(projectInput);
47
+ await strapiInfoSave.save({
48
+ project: data
49
+ });
50
+ spinner.succeed('Project created successfully!');
51
+ return data;
52
+ } catch (e) {
53
+ spinner.fail('An error occurred while creating the project on Strapi Cloud.');
54
+ throw e;
55
+ }
56
+ }
57
+ var action = (async (ctx)=>{
58
+ const { logger } = ctx;
59
+ const { getValidToken, eraseToken } = await token.tokenServiceFactory(ctx);
60
+ const token$1 = await getValidToken(ctx, action$1.promptLogin);
61
+ if (!token$1) {
62
+ return;
63
+ }
64
+ const cloudApi = await cliApi.cloudApiFactory(ctx, token$1);
65
+ const { data: config } = await cloudApi.config();
66
+ const projectName = await getProjectNameFromPkg.getProjectNameFromPackageJson(ctx);
67
+ const defaultAnswersMapper = projectQuestions_utils.questionDefaultValuesMapper({
68
+ name: projectName,
69
+ nodeVersion: projectQuestions_utils.getProjectNodeVersionDefault
70
+ });
71
+ const questions = defaultAnswersMapper(config.projectCreation.questions);
72
+ const defaultValues = {
73
+ ...config.projectCreation.defaults,
74
+ ...projectQuestions_utils.getDefaultsFromQuestions(questions)
75
+ };
76
+ const projectAnswersDefaulted = fp.defaults(defaultValues);
77
+ const projectAnswers = await inquirer.prompt(questions);
78
+ const projectInput = projectAnswersDefaulted(projectAnswers);
79
+ try {
80
+ return await createProject(ctx, cloudApi, projectInput);
81
+ } catch (e) {
82
+ if (e instanceof axios.AxiosError && e.response?.status === 401) {
83
+ logger.warn('Oops! Your session has expired. Please log in again to retry.');
84
+ await eraseToken();
85
+ if (await action$1.promptLogin(ctx)) {
86
+ return await createProject(ctx, cloudApi, projectInput);
87
+ }
88
+ } else {
89
+ await handleError(ctx, e);
90
+ }
91
+ }
92
+ });
93
+
94
+ module.exports = action;
95
+ //# sourceMappingURL=action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.js","sources":["../../src/create-project/action.ts"],"sourcesContent":["import inquirer from 'inquirer';\nimport { AxiosError } from 'axios';\nimport { defaults } from 'lodash/fp';\nimport type { CLIContext, ProjectAnswers, ProjectInput } from '../types';\nimport { cloudApiFactory, local, tokenServiceFactory } from '../services';\nimport { getProjectNameFromPackageJson } from './utils/get-project-name-from-pkg';\nimport { promptLogin } from '../login/action';\nimport {\n getDefaultsFromQuestions,\n getProjectNodeVersionDefault,\n questionDefaultValuesMapper,\n} from './utils/project-questions.utils';\n\nasync function handleError(ctx: CLIContext, error: Error) {\n const { logger } = ctx;\n logger.debug(error);\n if (error instanceof AxiosError) {\n const errorMessage = typeof error.response?.data === 'string' ? error.response.data : null;\n switch (error.response?.status) {\n case 403:\n logger.error(\n errorMessage ||\n 'You do not have permission to create a project. Please contact support for assistance.'\n );\n return;\n case 400:\n logger.error(errorMessage || 'Invalid input. Please check your inputs and try again.');\n return;\n case 503:\n logger.error(\n 'Strapi Cloud project creation is currently unavailable. Please try again later.'\n );\n return;\n default:\n if (errorMessage) {\n logger.error(errorMessage);\n return;\n }\n break;\n }\n }\n logger.error(\n 'We encountered an issue while creating your project. Please try again in a moment. If the problem persists, contact support for assistance.'\n );\n}\n\nasync function createProject(ctx: CLIContext, cloudApi: any, projectInput: ProjectInput) {\n const { logger } = ctx;\n const spinner = logger.spinner('Setting up your project...').start();\n try {\n const { data } = await cloudApi.createProject(projectInput);\n await local.save({ project: data });\n spinner.succeed('Project created successfully!');\n return data;\n } catch (e: Error | unknown) {\n spinner.fail('An error occurred while creating the project on Strapi Cloud.');\n throw e;\n }\n}\n\nexport default async (ctx: CLIContext) => {\n const { logger } = ctx;\n const { getValidToken, eraseToken } = await tokenServiceFactory(ctx);\n\n const token = await getValidToken(ctx, promptLogin);\n if (!token) {\n return;\n }\n\n const cloudApi = await cloudApiFactory(ctx, token);\n const { data: config } = await cloudApi.config();\n const projectName = await getProjectNameFromPackageJson(ctx);\n\n const defaultAnswersMapper = questionDefaultValuesMapper({\n name: projectName,\n nodeVersion: getProjectNodeVersionDefault,\n });\n const questions = defaultAnswersMapper(config.projectCreation.questions);\n const defaultValues = {\n ...config.projectCreation.defaults,\n ...getDefaultsFromQuestions(questions),\n };\n\n const projectAnswersDefaulted = defaults(defaultValues);\n const projectAnswers = await inquirer.prompt<ProjectAnswers>(questions);\n\n const projectInput: ProjectInput = projectAnswersDefaulted(projectAnswers);\n\n try {\n return await createProject(ctx, cloudApi, projectInput);\n } catch (e: Error | unknown) {\n if (e instanceof AxiosError && e.response?.status === 401) {\n logger.warn('Oops! Your session has expired. Please log in again to retry.');\n await eraseToken();\n if (await promptLogin(ctx)) {\n return await createProject(ctx, cloudApi, projectInput);\n }\n } else {\n await handleError(ctx, e as Error);\n }\n }\n};\n"],"names":["handleError","ctx","error","logger","debug","AxiosError","errorMessage","response","data","status","createProject","cloudApi","projectInput","spinner","start","local","project","succeed","e","fail","getValidToken","eraseToken","tokenServiceFactory","token","promptLogin","cloudApiFactory","config","projectName","getProjectNameFromPackageJson","defaultAnswersMapper","questionDefaultValuesMapper","name","nodeVersion","getProjectNodeVersionDefault","questions","projectCreation","defaultValues","defaults","getDefaultsFromQuestions","projectAnswersDefaulted","projectAnswers","inquirer","prompt","warn"],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ import inquirer from 'inquirer';
2
+ import { AxiosError } from 'axios';
3
+ import { defaults } from 'lodash/fp';
4
+ import { cloudApiFactory } from '../services/cli-api.mjs';
5
+ import { save } from '../services/strapi-info-save.mjs';
6
+ import { tokenServiceFactory } from '../services/token.mjs';
7
+ import 'chalk';
8
+ import 'fast-safe-stringify';
9
+ import 'ora';
10
+ import 'cli-progress';
11
+ import { getProjectNameFromPackageJson } from './utils/get-project-name-from-pkg.mjs';
12
+ import { promptLogin } from '../login/action.mjs';
13
+ import { getDefaultsFromQuestions, questionDefaultValuesMapper, getProjectNodeVersionDefault } from './utils/project-questions.utils.mjs';
14
+
15
+ async function handleError(ctx, error) {
16
+ const { logger } = ctx;
17
+ logger.debug(error);
18
+ if (error instanceof AxiosError) {
19
+ const errorMessage = typeof error.response?.data === 'string' ? error.response.data : null;
20
+ switch(error.response?.status){
21
+ case 403:
22
+ logger.error(errorMessage || 'You do not have permission to create a project. Please contact support for assistance.');
23
+ return;
24
+ case 400:
25
+ logger.error(errorMessage || 'Invalid input. Please check your inputs and try again.');
26
+ return;
27
+ case 503:
28
+ logger.error('Strapi Cloud project creation is currently unavailable. Please try again later.');
29
+ return;
30
+ default:
31
+ if (errorMessage) {
32
+ logger.error(errorMessage);
33
+ return;
34
+ }
35
+ break;
36
+ }
37
+ }
38
+ logger.error('We encountered an issue while creating your project. Please try again in a moment. If the problem persists, contact support for assistance.');
39
+ }
40
+ async function createProject(ctx, cloudApi, projectInput) {
41
+ const { logger } = ctx;
42
+ const spinner = logger.spinner('Setting up your project...').start();
43
+ try {
44
+ const { data } = await cloudApi.createProject(projectInput);
45
+ await save({
46
+ project: data
47
+ });
48
+ spinner.succeed('Project created successfully!');
49
+ return data;
50
+ } catch (e) {
51
+ spinner.fail('An error occurred while creating the project on Strapi Cloud.');
52
+ throw e;
53
+ }
54
+ }
55
+ var action = (async (ctx)=>{
56
+ const { logger } = ctx;
57
+ const { getValidToken, eraseToken } = await tokenServiceFactory(ctx);
58
+ const token = await getValidToken(ctx, promptLogin);
59
+ if (!token) {
60
+ return;
61
+ }
62
+ const cloudApi = await cloudApiFactory(ctx, token);
63
+ const { data: config } = await cloudApi.config();
64
+ const projectName = await getProjectNameFromPackageJson(ctx);
65
+ const defaultAnswersMapper = questionDefaultValuesMapper({
66
+ name: projectName,
67
+ nodeVersion: getProjectNodeVersionDefault
68
+ });
69
+ const questions = defaultAnswersMapper(config.projectCreation.questions);
70
+ const defaultValues = {
71
+ ...config.projectCreation.defaults,
72
+ ...getDefaultsFromQuestions(questions)
73
+ };
74
+ const projectAnswersDefaulted = defaults(defaultValues);
75
+ const projectAnswers = await inquirer.prompt(questions);
76
+ const projectInput = projectAnswersDefaulted(projectAnswers);
77
+ try {
78
+ return await createProject(ctx, cloudApi, projectInput);
79
+ } catch (e) {
80
+ if (e instanceof AxiosError && e.response?.status === 401) {
81
+ logger.warn('Oops! Your session has expired. Please log in again to retry.');
82
+ await eraseToken();
83
+ if (await promptLogin(ctx)) {
84
+ return await createProject(ctx, cloudApi, projectInput);
85
+ }
86
+ } else {
87
+ await handleError(ctx, e);
88
+ }
89
+ }
90
+ });
91
+
92
+ export { action as default };
93
+ //# sourceMappingURL=action.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.mjs","sources":["../../src/create-project/action.ts"],"sourcesContent":["import inquirer from 'inquirer';\nimport { AxiosError } from 'axios';\nimport { defaults } from 'lodash/fp';\nimport type { CLIContext, ProjectAnswers, ProjectInput } from '../types';\nimport { cloudApiFactory, local, tokenServiceFactory } from '../services';\nimport { getProjectNameFromPackageJson } from './utils/get-project-name-from-pkg';\nimport { promptLogin } from '../login/action';\nimport {\n getDefaultsFromQuestions,\n getProjectNodeVersionDefault,\n questionDefaultValuesMapper,\n} from './utils/project-questions.utils';\n\nasync function handleError(ctx: CLIContext, error: Error) {\n const { logger } = ctx;\n logger.debug(error);\n if (error instanceof AxiosError) {\n const errorMessage = typeof error.response?.data === 'string' ? error.response.data : null;\n switch (error.response?.status) {\n case 403:\n logger.error(\n errorMessage ||\n 'You do not have permission to create a project. Please contact support for assistance.'\n );\n return;\n case 400:\n logger.error(errorMessage || 'Invalid input. Please check your inputs and try again.');\n return;\n case 503:\n logger.error(\n 'Strapi Cloud project creation is currently unavailable. Please try again later.'\n );\n return;\n default:\n if (errorMessage) {\n logger.error(errorMessage);\n return;\n }\n break;\n }\n }\n logger.error(\n 'We encountered an issue while creating your project. Please try again in a moment. If the problem persists, contact support for assistance.'\n );\n}\n\nasync function createProject(ctx: CLIContext, cloudApi: any, projectInput: ProjectInput) {\n const { logger } = ctx;\n const spinner = logger.spinner('Setting up your project...').start();\n try {\n const { data } = await cloudApi.createProject(projectInput);\n await local.save({ project: data });\n spinner.succeed('Project created successfully!');\n return data;\n } catch (e: Error | unknown) {\n spinner.fail('An error occurred while creating the project on Strapi Cloud.');\n throw e;\n }\n}\n\nexport default async (ctx: CLIContext) => {\n const { logger } = ctx;\n const { getValidToken, eraseToken } = await tokenServiceFactory(ctx);\n\n const token = await getValidToken(ctx, promptLogin);\n if (!token) {\n return;\n }\n\n const cloudApi = await cloudApiFactory(ctx, token);\n const { data: config } = await cloudApi.config();\n const projectName = await getProjectNameFromPackageJson(ctx);\n\n const defaultAnswersMapper = questionDefaultValuesMapper({\n name: projectName,\n nodeVersion: getProjectNodeVersionDefault,\n });\n const questions = defaultAnswersMapper(config.projectCreation.questions);\n const defaultValues = {\n ...config.projectCreation.defaults,\n ...getDefaultsFromQuestions(questions),\n };\n\n const projectAnswersDefaulted = defaults(defaultValues);\n const projectAnswers = await inquirer.prompt<ProjectAnswers>(questions);\n\n const projectInput: ProjectInput = projectAnswersDefaulted(projectAnswers);\n\n try {\n return await createProject(ctx, cloudApi, projectInput);\n } catch (e: Error | unknown) {\n if (e instanceof AxiosError && e.response?.status === 401) {\n logger.warn('Oops! Your session has expired. Please log in again to retry.');\n await eraseToken();\n if (await promptLogin(ctx)) {\n return await createProject(ctx, cloudApi, projectInput);\n }\n } else {\n await handleError(ctx, e as Error);\n }\n }\n};\n"],"names":["handleError","ctx","error","logger","debug","AxiosError","errorMessage","response","data","status","createProject","cloudApi","projectInput","spinner","start","local","project","succeed","e","fail","getValidToken","eraseToken","tokenServiceFactory","token","promptLogin","cloudApiFactory","config","projectName","getProjectNameFromPackageJson","defaultAnswersMapper","questionDefaultValuesMapper","name","nodeVersion","getProjectNodeVersionDefault","questions","projectCreation","defaultValues","defaults","getDefaultsFromQuestions","projectAnswersDefaulted","projectAnswers","inquirer","prompt","warn"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/create-project/command.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD;;GAEG;AACH,QAAA,MAAM,OAAO,EAAE,kBAMd,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var commander = require('commander');
4
+ var helpers = require('../utils/helpers.js');
5
+ var action = require('./action.js');
6
+
7
+ /**
8
+ * `$ create project in Strapi cloud`
9
+ */ const command = ({ ctx })=>{
10
+ return commander.createCommand('cloud:create-project').description('Create a Strapi Cloud project').option('-d, --debug', 'Enable debugging mode with verbose logs').option('-s, --silent', "Don't log anything").action(()=>helpers.runAction('cloud:create-project', action)(ctx));
11
+ };
12
+
13
+ module.exports = command;
14
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sources":["../../src/create-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 * `$ create project in Strapi cloud`\n */\nconst command: StrapiCloudCommand = ({ ctx }) => {\n return createCommand('cloud:create-project')\n .description('Create a Strapi Cloud project')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('cloud:create-project', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","createCommand","description","option","action","runAction"],"mappings":";;;;;;AAKA;;AAEC,IACKA,MAAAA,OAAAA,GAA8B,CAAC,EAAEC,GAAG,EAAE,GAAA;AAC1C,IAAA,OAAOC,wBAAc,sBAClBC,CAAAA,CAAAA,WAAW,CAAC,+BACZC,CAAAA,CAAAA,MAAM,CAAC,aAAe,EAAA,yCAAA,CAAA,CACtBA,MAAM,CAAC,gBAAgB,oBACvBC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,iBAAAA,CAAU,wBAAwBD,MAAQJ,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAC5D;;;;"}
@@ -0,0 +1,12 @@
1
+ import { createCommand } from 'commander';
2
+ import { runAction } from '../utils/helpers.mjs';
3
+ import action from './action.mjs';
4
+
5
+ /**
6
+ * `$ create project in Strapi cloud`
7
+ */ const command = ({ ctx })=>{
8
+ return createCommand('cloud:create-project').description('Create a Strapi Cloud project').option('-d, --debug', 'Enable debugging mode with verbose logs').option('-s, --silent', "Don't log anything").action(()=>runAction('cloud:create-project', action)(ctx));
9
+ };
10
+
11
+ export { command as default };
12
+ //# sourceMappingURL=command.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.mjs","sources":["../../src/create-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 * `$ create project in Strapi cloud`\n */\nconst command: StrapiCloudCommand = ({ ctx }) => {\n return createCommand('cloud:create-project')\n .description('Create a Strapi Cloud project')\n .option('-d, --debug', 'Enable debugging mode with verbose logs')\n .option('-s, --silent', \"Don't log anything\")\n .action(() => runAction('cloud:create-project', action)(ctx));\n};\n\nexport default command;\n"],"names":["command","ctx","createCommand","description","option","action","runAction"],"mappings":";;;;AAKA;;AAEC,IACKA,MAAAA,OAAAA,GAA8B,CAAC,EAAEC,GAAG,EAAE,GAAA;AAC1C,IAAA,OAAOC,cAAc,sBAClBC,CAAAA,CAAAA,WAAW,CAAC,+BACZC,CAAAA,CAAAA,MAAM,CAAC,aAAe,EAAA,yCAAA,CAAA,CACtBA,MAAM,CAAC,gBAAgB,oBACvBC,CAAAA,CAAAA,MAAM,CAAC,IAAMC,SAAAA,CAAU,wBAAwBD,MAAQJ,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAC5D;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/create-project/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAEvD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;;AAE3B,wBAK4B"}
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var action = require('./action.js');
6
+ var command = require('./command.js');
7
+
8
+ var createProject = {
9
+ name: 'create-project',
10
+ description: 'Create a new project',
11
+ action,
12
+ command
13
+ };
14
+
15
+ exports.action = action;
16
+ exports.command = command;
17
+ exports.default = createProject;
18
+ //# sourceMappingURL=index.js.map