@joystick.js/cli-canary 0.0.0-canary.65 → 0.0.0-canary.650

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 (561) hide show
  1. package/.build/getFilesToBuild.js +1 -1
  2. package/.build/index.js +3 -3
  3. package/dist/cli.js +1 -69
  4. package/dist/commands/build/definition.js +1 -0
  5. package/dist/commands/build/index.js +1 -0
  6. package/dist/commands/create/build_package_json.js +1 -0
  7. package/dist/commands/create/definition.js +1 -0
  8. package/dist/commands/create/index.js +2 -0
  9. package/dist/commands/create/template/api/index.js +6 -0
  10. package/dist/commands/create/template/email/base.css +1 -0
  11. package/dist/commands/create/template/email/base.html +1 -0
  12. package/dist/commands/create/template/email/reset_password.js +20 -0
  13. package/dist/commands/create/template/i18n/en-US.js +14 -0
  14. package/dist/commands/create/template/index.client.js +1 -0
  15. package/dist/commands/create/template/index.css +34 -0
  16. package/dist/{functions/create/templates → commands/create/template}/index.html +2 -3
  17. package/dist/{functions/create/templates → commands/create/template}/index.server.js +6 -6
  18. package/dist/commands/create/template/public/apple-touch-icon-152x152.png +0 -0
  19. package/dist/commands/create/template/public/favicon.ico +0 -0
  20. package/dist/commands/create/template/public/joystick_logo.webp +0 -0
  21. package/dist/{functions/create/templates → commands/create/template}/public/manifest.json +4 -4
  22. package/dist/commands/create/template/public/splash-screen-1024x1024.png +0 -0
  23. package/{src/functions/create/templates → dist/commands/create/template}/ui/components/button/index.js +14 -6
  24. package/{src/functions/create/templates → dist/commands/create/template}/ui/layouts/app/index.js +2 -2
  25. package/dist/commands/create/template/ui/pages/error/index.js +50 -0
  26. package/dist/commands/create/template/ui/pages/index/index.js +121 -0
  27. package/dist/commands/help/definition.js +1 -0
  28. package/dist/commands/help/index.js +19 -0
  29. package/dist/commands/index.js +1 -0
  30. package/dist/commands/logout/definition.js +1 -0
  31. package/dist/commands/logout/index.js +3 -0
  32. package/dist/commands/push/cdn_mirrors.js +1 -0
  33. package/dist/commands/push/check_if_settings_valid.js +1 -0
  34. package/dist/commands/push/create_version.js +1 -0
  35. package/dist/commands/push/definition.js +1 -0
  36. package/dist/commands/push/get_app_domain.js +1 -0
  37. package/dist/commands/push/get_deployment.js +1 -0
  38. package/dist/commands/push/get_provision_domain.js +1 -0
  39. package/dist/commands/push/get_session_token.js +1 -0
  40. package/dist/commands/push/get_settings_file.js +1 -0
  41. package/dist/commands/push/handle_initial_deployment.js +1 -0
  42. package/dist/commands/push/handle_version_deployment.js +1 -0
  43. package/dist/commands/push/index.js +8 -0
  44. package/dist/commands/push/prompts/confirm_deployment.js +17 -0
  45. package/dist/commands/push/prompts/session_token.js +5 -0
  46. package/dist/commands/push/upload_build_to_cdn.js +1 -0
  47. package/dist/commands/push/validate_deployment.js +1 -0
  48. package/dist/commands/push/validate_push_config.js +1 -0
  49. package/dist/commands/start/definition.js +1 -0
  50. package/dist/commands/start/index.js +1 -0
  51. package/dist/commands/test/definition.js +1 -0
  52. package/dist/commands/test/index.js +1 -0
  53. package/dist/commands/update/definition.js +1 -0
  54. package/dist/commands/update/index.js +1 -0
  55. package/dist/commands/use/definition.js +1 -0
  56. package/dist/commands/use/index.js +1 -0
  57. package/dist/index.js +1 -7
  58. package/dist/lib/build/browser_path_exclusions.js +1 -0
  59. package/dist/lib/build/browser_paths.js +1 -0
  60. package/dist/lib/build/build_files.js +3 -0
  61. package/dist/lib/build/copy_paths.js +1 -0
  62. package/dist/lib/build/get_code_frame.js +1 -0
  63. package/dist/lib/build/get_file_operation.js +1 -0
  64. package/dist/lib/build/get_files_to_build.js +1 -0
  65. package/dist/lib/build/get_path_platform.js +1 -0
  66. package/dist/lib/build/get_platform_safe_path.js +1 -0
  67. package/dist/lib/build/get_tar_ignore_list.js +2 -0
  68. package/dist/lib/build/index.js +3 -0
  69. package/dist/lib/build/master_ignore_list.js +1 -0
  70. package/dist/lib/build/minify_file.js +1 -0
  71. package/dist/lib/build/node_paths.js +1 -0
  72. package/dist/lib/build/on_warn.js +10 -0
  73. package/dist/lib/build/plugins/bootstrap_component.js +33 -0
  74. package/dist/lib/build/plugins/generate_file_dependency_map.js +1 -0
  75. package/dist/lib/build/plugins/index.js +1 -0
  76. package/dist/lib/build/plugins/set_component_id.js +2 -0
  77. package/dist/lib/build/plugins/update_file_map.js +1 -0
  78. package/dist/lib/build/plugins/warn_node_environment.js +3 -0
  79. package/dist/lib/cli_log.js +13 -0
  80. package/dist/lib/color_log.js +1 -0
  81. package/dist/lib/command_exists.js +1 -0
  82. package/dist/lib/constants.js +1 -4
  83. package/dist/lib/debounce.js +1 -0
  84. package/dist/lib/decrypt_buffer.js +1 -0
  85. package/dist/lib/development_server/ava_config.js +1 -0
  86. package/dist/lib/development_server/check_if_port_occupied.js +1 -0
  87. package/dist/lib/development_server/cleanup.js +1 -0
  88. package/dist/lib/development_server/databases/mongodb/available_query_parameters.js +1 -0
  89. package/dist/lib/development_server/databases/mongodb/build_connection_string.js +1 -0
  90. package/dist/lib/development_server/databases/mongodb/build_query_parameters.js +1 -0
  91. package/dist/lib/development_server/databases/mongodb/check_connection.js +2 -0
  92. package/dist/lib/development_server/databases/mongodb/connect.js +1 -0
  93. package/dist/lib/development_server/databases/mongodb/index.js +5 -0
  94. package/dist/lib/development_server/databases/postgresql/check_connection.js +2 -0
  95. package/dist/lib/development_server/databases/postgresql/connect.js +1 -0
  96. package/dist/lib/development_server/databases/postgresql/index.js +2 -0
  97. package/dist/lib/development_server/databases/provider_map.js +1 -0
  98. package/dist/lib/development_server/get_database_process_ids.js +1 -0
  99. package/dist/lib/development_server/get_translations.js +1 -0
  100. package/dist/lib/development_server/hmr_server.js +1 -0
  101. package/dist/lib/development_server/index.js +10 -0
  102. package/dist/lib/development_server/kill_process_ids.js +1 -0
  103. package/dist/lib/development_server/run_tests.js +2 -0
  104. package/dist/lib/development_server/start_app_server.js +1 -0
  105. package/dist/lib/development_server/start_databases.js +1 -0
  106. package/dist/lib/development_server/start_hmr_server.js +1 -0
  107. package/dist/lib/development_server/watch_for_changes/browser_path_exclusions.js +1 -0
  108. package/dist/lib/development_server/watch_for_changes/browser_paths.js +1 -0
  109. package/dist/lib/development_server/watch_for_changes/get_after_run_tasks.js +1 -0
  110. package/dist/lib/development_server/watch_for_changes/get_file_codependencies.js +1 -0
  111. package/dist/lib/development_server/watch_for_changes/get_platform_safe_path.js +1 -0
  112. package/dist/lib/development_server/watch_for_changes/index.js +1 -0
  113. package/dist/lib/development_server/watch_for_changes/node_paths.js +1 -0
  114. package/dist/lib/development_server/watch_for_changes/read_file_dependency_map.js +1 -0
  115. package/dist/lib/development_server/watch_for_changes/watch_paths.js +1 -0
  116. package/dist/lib/dynamic_import.js +1 -0
  117. package/dist/lib/encrypt_buffer.js +1 -0
  118. package/dist/lib/generate_id.js +1 -0
  119. package/dist/lib/get_files_in_path.js +1 -0
  120. package/dist/lib/get_platform_safe_path.js +1 -0
  121. package/dist/lib/get_process_id_from_port.js +2 -0
  122. package/dist/lib/is_valid_json_string.js +1 -0
  123. package/dist/lib/kill_port_process.js +1 -0
  124. package/dist/lib/kill_process_id.js +1 -0
  125. package/dist/lib/load_settings.js +1 -0
  126. package/dist/lib/loader.js +2 -82
  127. package/dist/lib/log_bars.js +1 -0
  128. package/dist/lib/node_path_polyfills.js +1 -0
  129. package/dist/lib/parse_args.js +1 -0
  130. package/dist/lib/parse_options.js +1 -0
  131. package/dist/lib/path_exists.js +1 -0
  132. package/dist/lib/rainbow_road.js +1 -0
  133. package/dist/lib/required_files.js +1 -0
  134. package/dist/lib/serialize_query_parameters.js +1 -0
  135. package/dist/lib/types.js +1 -6
  136. package/increment_version.js +3 -0
  137. package/package.json +18 -36
  138. package/src/cli.js +63 -46
  139. package/src/commands/build/definition.js +58 -0
  140. package/src/commands/build/index.js +7 -0
  141. package/src/commands/create/build_package_json.js +20 -0
  142. package/src/commands/create/definition.js +35 -0
  143. package/src/commands/create/index.js +80 -0
  144. package/src/commands/create/template/api/index.js +6 -0
  145. package/src/commands/create/template/email/base.css +1 -0
  146. package/src/commands/create/template/email/base.html +1 -0
  147. package/src/commands/create/template/email/reset_password.js +20 -0
  148. package/src/commands/create/template/i18n/en-US.js +14 -0
  149. package/src/commands/create/template/index.client.js +1 -0
  150. package/src/commands/create/template/index.css +34 -0
  151. package/src/{functions/create/templates → commands/create/template}/index.html +2 -3
  152. package/src/{functions/create/templates → commands/create/template}/index.server.js +6 -6
  153. package/src/commands/create/template/public/apple-touch-icon-152x152.png +0 -0
  154. package/src/commands/create/template/public/favicon.ico +0 -0
  155. package/src/commands/create/template/public/joystick_logo.webp +0 -0
  156. package/src/{functions/create/templates → commands/create/template}/public/manifest.json +4 -4
  157. package/src/commands/create/template/public/splash-screen-1024x1024.png +0 -0
  158. package/{dist/functions/create/templates → src/commands/create/template}/ui/components/button/index.js +14 -6
  159. package/{dist/functions/create/templates → src/commands/create/template}/ui/layouts/app/index.js +2 -2
  160. package/src/commands/create/template/ui/pages/error/index.js +50 -0
  161. package/src/commands/create/template/ui/pages/index/index.js +121 -0
  162. package/src/commands/help/definition.js +12 -0
  163. package/src/commands/help/index.js +48 -0
  164. package/src/commands/index.js +23 -0
  165. package/src/commands/logout/definition.js +10 -0
  166. package/src/commands/logout/index.js +20 -0
  167. package/src/commands/push/cdn_mirrors.js +7 -0
  168. package/src/commands/push/check_if_settings_valid.js +10 -0
  169. package/src/commands/push/create_version.js +20 -0
  170. package/src/commands/push/definition.js +43 -0
  171. package/src/commands/push/get_app_domain.js +11 -0
  172. package/src/commands/push/get_deployment.js +19 -0
  173. package/src/commands/push/get_provision_domain.js +9 -0
  174. package/src/commands/push/get_session_token.js +31 -0
  175. package/src/commands/push/get_settings_file.js +47 -0
  176. package/src/commands/push/handle_initial_deployment.js +24 -0
  177. package/src/commands/push/handle_version_deployment.js +23 -0
  178. package/src/commands/push/index.js +190 -0
  179. package/src/commands/push/prompts/confirm_deployment.js +73 -0
  180. package/src/commands/push/prompts/session_token.js +11 -0
  181. package/src/commands/push/upload_build_to_cdn.js +59 -0
  182. package/src/commands/push/validate_deployment.js +19 -0
  183. package/src/commands/push/validate_push_config.js +18 -0
  184. package/src/commands/start/definition.js +58 -0
  185. package/src/commands/start/index.js +11 -0
  186. package/src/commands/test/definition.js +28 -0
  187. package/src/commands/test/index.js +12 -0
  188. package/src/commands/update/definition.js +28 -0
  189. package/src/commands/update/index.js +29 -0
  190. package/src/commands/use/definition.js +19 -0
  191. package/src/commands/use/index.js +70 -0
  192. package/src/index.js +0 -0
  193. package/src/lib/build/browser_path_exclusions.js +8 -0
  194. package/src/lib/build/browser_paths.js +11 -0
  195. package/src/lib/build/build_files.js +161 -0
  196. package/src/{functions/start/filesToCopy.js → lib/build/copy_paths.js} +3 -1
  197. package/src/lib/build/get_code_frame.js +11 -0
  198. package/src/lib/build/get_file_operation.js +25 -0
  199. package/src/lib/build/get_files_to_build.js +36 -0
  200. package/src/lib/build/get_path_platform.js +32 -0
  201. package/src/lib/build/get_platform_safe_path.js +6 -0
  202. package/src/lib/build/get_tar_ignore_list.js +41 -0
  203. package/src/lib/build/index.js +101 -0
  204. package/src/lib/build/master_ignore_list.js +14 -0
  205. package/src/lib/build/minify_file.js +15 -0
  206. package/src/lib/build/node_paths.js +17 -0
  207. package/src/lib/build/on_warn.js +70 -0
  208. package/src/lib/build/plugins/bootstrap_component.js +191 -0
  209. package/src/lib/build/plugins/generate_file_dependency_map.js +20 -0
  210. package/src/lib/build/plugins/index.js +26 -0
  211. package/src/lib/build/plugins/set_component_id.js +89 -0
  212. package/src/lib/build/plugins/update_file_map.js +98 -0
  213. package/src/lib/build/plugins/warn_node_environment.js +20 -0
  214. package/src/lib/{CLILog.js → cli_log.js} +12 -8
  215. package/src/lib/color_log.js +7 -0
  216. package/src/lib/command_exists.js +16 -0
  217. package/src/lib/constants.js +11 -1
  218. package/src/lib/debounce.js +9 -0
  219. package/src/lib/decrypt_buffer.js +12 -0
  220. package/src/lib/development_server/ava_config.js +14 -0
  221. package/src/lib/development_server/check_if_port_occupied.js +31 -0
  222. package/src/lib/development_server/cleanup.js +15 -0
  223. package/src/lib/{dev/databases/mongodb/availableQueryParameters.js → development_server/databases/mongodb/available_query_parameters.js} +3 -1
  224. package/src/lib/development_server/databases/mongodb/build_connection_string.js +31 -0
  225. package/src/lib/development_server/databases/mongodb/build_query_parameters.js +17 -0
  226. package/src/lib/development_server/databases/mongodb/check_connection.js +41 -0
  227. package/src/lib/development_server/databases/mongodb/connect.js +27 -0
  228. package/src/lib/development_server/databases/mongodb/index.js +103 -0
  229. package/src/lib/development_server/databases/postgresql/check_connection.js +56 -0
  230. package/src/lib/development_server/databases/postgresql/connect.js +33 -0
  231. package/src/lib/development_server/databases/postgresql/index.js +126 -0
  232. package/src/lib/development_server/databases/provider_map.js +15 -0
  233. package/src/lib/development_server/get_database_process_ids.js +28 -0
  234. package/src/lib/development_server/get_translations.js +85 -0
  235. package/src/lib/development_server/hmr_server.js +94 -0
  236. package/src/lib/development_server/index.js +394 -0
  237. package/src/lib/development_server/kill_process_ids.js +8 -0
  238. package/src/lib/development_server/run_tests.js +84 -0
  239. package/src/lib/development_server/start_app_server.js +55 -0
  240. package/src/lib/development_server/start_databases.js +108 -0
  241. package/src/lib/development_server/start_hmr_server.js +36 -0
  242. package/src/lib/development_server/watch_for_changes/browser_path_exclusions.js +8 -0
  243. package/src/lib/development_server/watch_for_changes/browser_paths.js +11 -0
  244. package/src/lib/development_server/watch_for_changes/get_after_run_tasks.js +24 -0
  245. package/src/lib/development_server/watch_for_changes/get_file_codependencies.js +44 -0
  246. package/src/lib/development_server/watch_for_changes/get_platform_safe_path.js +6 -0
  247. package/src/lib/development_server/watch_for_changes/index.js +216 -0
  248. package/src/lib/development_server/watch_for_changes/node_paths.js +16 -0
  249. package/src/lib/development_server/watch_for_changes/read_file_dependency_map.js +18 -0
  250. package/src/lib/development_server/watch_for_changes/watch_paths.js +21 -0
  251. package/src/lib/dynamic_import.js +6 -0
  252. package/src/lib/encrypt_buffer.js +10 -0
  253. package/src/lib/generate_id.js +15 -0
  254. package/src/lib/get_files_in_path.js +25 -0
  255. package/src/lib/get_platform_safe_path.js +8 -0
  256. package/src/lib/get_process_id_from_port.js +26 -0
  257. package/src/lib/is_valid_json_string.js +10 -0
  258. package/src/lib/kill_port_process.js +12 -0
  259. package/src/lib/kill_process_id.js +19 -0
  260. package/src/lib/load_settings.js +43 -0
  261. package/src/lib/loader.js +4 -77
  262. package/src/lib/log_bars.js +7 -0
  263. package/src/lib/node_path_polyfills.js +23 -0
  264. package/src/lib/parse_args.js +16 -0
  265. package/src/lib/parse_options.js +16 -0
  266. package/src/lib/path_exists.js +11 -0
  267. package/src/lib/{rainbowRoad.js → rainbow_road.js} +4 -2
  268. package/src/lib/{dev/requiredFiles.js → required_files.js} +3 -1
  269. package/src/lib/serialize_query_parameters.js +7 -0
  270. package/src/lib/types.js +59 -2
  271. package/HMRNOTES.txt +0 -23
  272. package/README.md +0 -7
  273. package/_package.json +0 -55
  274. package/canary.js +0 -12
  275. package/dist/functions/build/getTarIgnoreList.js +0 -25
  276. package/dist/functions/build/index.js +0 -54
  277. package/dist/functions/create/buildPackageJSON.js +0 -20
  278. package/dist/functions/create/index.js +0 -193
  279. package/dist/functions/create/templates/api/index.js +0 -4
  280. package/dist/functions/create/templates/i18n/en-US.js +0 -4
  281. package/dist/functions/create/templates/index.client.js +0 -7
  282. package/dist/functions/create/templates/index.css +0 -20
  283. package/dist/functions/create/templates/public/apple-touch-icon-152x152.png +0 -0
  284. package/dist/functions/create/templates/public/favicon.ico +0 -0
  285. package/dist/functions/create/templates/public/splash-screen-1024x1024.png +0 -0
  286. package/dist/functions/create/templates/ui/pages/error/index.js +0 -31
  287. package/dist/functions/create/templates/ui/pages/index/index.js +0 -94
  288. package/dist/functions/index.js +0 -243
  289. package/dist/functions/logout/index.js +0 -20
  290. package/dist/functions/push/checkIfProvisionAvailable.js +0 -19
  291. package/dist/functions/push/deploy/index.js +0 -173
  292. package/dist/functions/push/deploy/initial.js +0 -100
  293. package/dist/functions/push/deploy/version.js +0 -100
  294. package/dist/functions/push/domains.js +0 -23
  295. package/dist/functions/push/getAvailableCDN.js +0 -23
  296. package/dist/functions/push/getDeployment.js +0 -41
  297. package/dist/functions/push/getDeploymentSummary.js +0 -38
  298. package/dist/functions/push/getInstanceSizeRegions.js +0 -37
  299. package/dist/functions/push/getInstanceSizesForRegion.js +0 -34
  300. package/dist/functions/push/getProviderInstanceSizes.js +0 -34
  301. package/dist/functions/push/getProviderRegions.js +0 -36
  302. package/dist/functions/push/getProvidersWithConnectionStatus.js +0 -20
  303. package/dist/functions/push/getSessionToken.js +0 -23
  304. package/dist/functions/push/getUserFromSessionToken.js +0 -37
  305. package/dist/functions/push/index.js +0 -210
  306. package/dist/functions/push/loginToCheatCode.js +0 -33
  307. package/dist/functions/push/pingProvisionAPI.js +0 -31
  308. package/dist/functions/push/prompts.js +0 -332
  309. package/dist/functions/push/providerMap.js +0 -11
  310. package/dist/functions/push/providers.js +0 -9
  311. package/dist/functions/reset/index.js +0 -0
  312. package/dist/functions/reset/reset.js +0 -127
  313. package/dist/functions/start/bootstrapLayoutComponent.js +0 -54
  314. package/dist/functions/start/bootstrapPageComponent.js +0 -51
  315. package/dist/functions/start/buildFile.js +0 -85
  316. package/dist/functions/start/buildFiles.js +0 -76
  317. package/dist/functions/start/buildPlugins.js +0 -183
  318. package/dist/functions/start/checkIfPortAvailable.js +0 -18
  319. package/dist/functions/start/cleanup/index.js +0 -18
  320. package/dist/functions/start/databases/mongodb/availableQueryParameters.js +0 -42
  321. package/dist/functions/start/databases/mongodb/buildConnectionString.js +0 -22
  322. package/dist/functions/start/databases/mongodb/buildQueryParameters.js +0 -14
  323. package/dist/functions/start/databases/mongodb/checkConnection.js +0 -35
  324. package/dist/functions/start/databases/mongodb/connect.js +0 -25
  325. package/dist/functions/start/databases/mongodb/index.js +0 -93
  326. package/dist/functions/start/databases/postgresql/checkConnection.js +0 -41
  327. package/dist/functions/start/databases/postgresql/connect.js +0 -27
  328. package/dist/functions/start/databases/postgresql/index.js +0 -106
  329. package/dist/functions/start/databases/redis.js +0 -0
  330. package/dist/functions/start/databases/startProvider.js +0 -16
  331. package/dist/functions/start/fileDependencyMapper.js +0 -22
  332. package/dist/functions/start/filesToCopy.js +0 -18
  333. package/dist/functions/start/generateId.js +0 -74
  334. package/dist/functions/start/getCodependenciesForFile.js +0 -64
  335. package/dist/functions/start/getFilesToBuild.js +0 -39
  336. package/dist/functions/start/getProcessIdFromPort.js +0 -60
  337. package/dist/functions/start/hmrServer.js +0 -66
  338. package/dist/functions/start/index.js +0 -31
  339. package/dist/functions/start/isWindows.js +0 -5
  340. package/dist/functions/start/minifyFile.js +0 -12
  341. package/dist/functions/start/onWarn.js +0 -63
  342. package/dist/functions/start/readFileDependencyMap.js +0 -16
  343. package/dist/functions/start/removeDeletedDependenciesFromMap.js +0 -18
  344. package/dist/functions/start/setComponentId.js +0 -46
  345. package/dist/functions/start/updateFileMap.js +0 -67
  346. package/dist/functions/test/index.js +0 -30
  347. package/dist/functions/update/index.js +0 -21
  348. package/dist/functions/use/index.js +0 -61
  349. package/dist/lib/CLILog.js +0 -49
  350. package/dist/lib/build/browserPathExclusions.js +0 -7
  351. package/dist/lib/build/browserPaths.js +0 -11
  352. package/dist/lib/build/buildFile.js +0 -84
  353. package/dist/lib/build/buildFiles.js +0 -238
  354. package/dist/lib/build/buildPlugins.js +0 -186
  355. package/dist/lib/build/getCodeFrame.js +0 -9
  356. package/dist/lib/build/minifyFile.js +0 -12
  357. package/dist/lib/build/nodePathExclusions.js +0 -7
  358. package/dist/lib/build/nodePaths.js +0 -11
  359. package/dist/lib/build/onWarn.js +0 -63
  360. package/dist/lib/build/removeDeletedDependenciesFromMap.js +0 -18
  361. package/dist/lib/build/setComponentId.js +0 -46
  362. package/dist/lib/build/updateFileMap.js +0 -67
  363. package/dist/lib/buildResolvePlugin.js +0 -21
  364. package/dist/lib/checkIfValidJSON.js +0 -11
  365. package/dist/lib/colorLog.js +0 -7
  366. package/dist/lib/dev/cleanup.js +0 -30
  367. package/dist/lib/dev/databases/mongodb/availableQueryParameters.js +0 -42
  368. package/dist/lib/dev/databases/mongodb/buildConnectionString.js +0 -22
  369. package/dist/lib/dev/databases/mongodb/buildQueryParameters.js +0 -14
  370. package/dist/lib/dev/databases/mongodb/checkConnection.js +0 -38
  371. package/dist/lib/dev/databases/mongodb/connect.js +0 -25
  372. package/dist/lib/dev/databases/mongodb/index.js +0 -93
  373. package/dist/lib/dev/databases/postgresql/checkConnection.js +0 -41
  374. package/dist/lib/dev/databases/postgresql/connect.js +0 -27
  375. package/dist/lib/dev/databases/postgresql/index.js +0 -106
  376. package/dist/lib/dev/databases/providerMap.js +0 -15
  377. package/dist/lib/dev/getCodependenciesForFile.js +0 -64
  378. package/dist/lib/dev/getFilesToBuild.js +0 -38
  379. package/dist/lib/dev/index.js +0 -452
  380. package/dist/lib/dev/isWindows.js +0 -5
  381. package/dist/lib/dev/loadSettings.js +0 -79
  382. package/dist/lib/dev/readFileDependencyMap.js +0 -16
  383. package/dist/lib/dev/requiredFiles.js +0 -18
  384. package/dist/lib/dev/runBuild.js +0 -30
  385. package/dist/lib/dev/runTests.js +0 -30
  386. package/dist/lib/dev/startApp.js +0 -70
  387. package/dist/lib/dev/startDatabases.js +0 -109
  388. package/dist/lib/dev/startHMR.js +0 -55
  389. package/dist/lib/dev/updateFileMap.js +0 -67
  390. package/dist/lib/dev/validateProject.js +0 -0
  391. package/dist/lib/dev/watchlist.js +0 -15
  392. package/dist/lib/filesToCopy.js +0 -18
  393. package/dist/lib/generateId.js +0 -74
  394. package/dist/lib/getArgs.js +0 -14
  395. package/dist/lib/getOptions.js +0 -15
  396. package/dist/lib/getPlatformSafePath.js +0 -7
  397. package/dist/lib/getProcessIdFromPort.js +0 -60
  398. package/dist/lib/getProvider.js +0 -8
  399. package/dist/lib/help.js +0 -56
  400. package/dist/lib/isObject.js +0 -6
  401. package/dist/lib/isValidJSONString.js +0 -11
  402. package/dist/lib/isWindows.js +0 -5
  403. package/dist/lib/killProcesses.js +0 -0
  404. package/dist/lib/loadSettings.js +0 -33
  405. package/dist/lib/masterIgnoreList.js +0 -16
  406. package/dist/lib/nodeEnvironment.js +0 -9
  407. package/dist/lib/nodeEnvironments.js +0 -8
  408. package/dist/lib/parseCookiesFromLogin.js +0 -18
  409. package/dist/lib/rainbowRoad.js +0 -7
  410. package/dist/lib/readDirectorySync.js +0 -14
  411. package/dist/lib/regexes.js +0 -14
  412. package/dist/lib/replaceBackslashesWithForwardSlashes.js +0 -8
  413. package/dist/lib/replaceFileProtocol.js +0 -8
  414. package/dist/lib/serializeQueryParameters.js +0 -8
  415. package/dist/lib/settings.js +0 -4
  416. package/dist/lib/validateDatabasesFromSettings.js +0 -34
  417. package/dist/lib/wait.js +0 -8
  418. package/release.js +0 -40
  419. package/src/functions/build/getTarIgnoreList.js +0 -30
  420. package/src/functions/build/index.js +0 -63
  421. package/src/functions/create/buildPackageJSON.js +0 -18
  422. package/src/functions/create/index.js +0 -209
  423. package/src/functions/create/templates/api/index.js +0 -4
  424. package/src/functions/create/templates/i18n/en-US.js +0 -4
  425. package/src/functions/create/templates/index.client.js +0 -7
  426. package/src/functions/create/templates/index.css +0 -20
  427. package/src/functions/create/templates/public/apple-touch-icon-152x152.png +0 -0
  428. package/src/functions/create/templates/public/favicon.ico +0 -0
  429. package/src/functions/create/templates/public/splash-screen-1024x1024.png +0 -0
  430. package/src/functions/create/templates/ui/pages/error/index.js +0 -31
  431. package/src/functions/create/templates/ui/pages/index/index.js +0 -94
  432. package/src/functions/index.js +0 -243
  433. package/src/functions/logout/index.js +0 -20
  434. package/src/functions/push/checkIfProvisionAvailable.js +0 -20
  435. package/src/functions/push/deploy/index.js +0 -199
  436. package/src/functions/push/deploy/initial.js +0 -108
  437. package/src/functions/push/deploy/version.js +0 -108
  438. package/src/functions/push/domains.js +0 -23
  439. package/src/functions/push/getAvailableCDN.js +0 -27
  440. package/src/functions/push/getDeployment.js +0 -43
  441. package/src/functions/push/getDeploymentSummary.js +0 -39
  442. package/src/functions/push/getInstanceSizeRegions.js +0 -40
  443. package/src/functions/push/getInstanceSizesForRegion.js +0 -35
  444. package/src/functions/push/getProviderInstanceSizes.js +0 -35
  445. package/src/functions/push/getProviderRegions.js +0 -39
  446. package/src/functions/push/getProvidersWithConnectionStatus.js +0 -25
  447. package/src/functions/push/getSessionToken.js +0 -26
  448. package/src/functions/push/getUserFromSessionToken.js +0 -39
  449. package/src/functions/push/index.js +0 -245
  450. package/src/functions/push/loginToCheatCode.js +0 -34
  451. package/src/functions/push/pingProvisionAPI.js +0 -33
  452. package/src/functions/push/prompts.js +0 -276
  453. package/src/functions/push/providerMap.js +0 -8
  454. package/src/functions/push/providers.js +0 -6
  455. package/src/functions/reset/index.js +0 -0
  456. package/src/functions/reset/reset.js +0 -163
  457. package/src/functions/start/bootstrapLayoutComponent.js +0 -57
  458. package/src/functions/start/bootstrapPageComponent.js +0 -54
  459. package/src/functions/start/buildFile.js +0 -97
  460. package/src/functions/start/buildFiles.js +0 -101
  461. package/src/functions/start/buildPlugins.js +0 -215
  462. package/src/functions/start/checkIfPortAvailable.js +0 -21
  463. package/src/functions/start/cleanup/index.js +0 -23
  464. package/src/functions/start/databases/mongodb/availableQueryParameters.js +0 -39
  465. package/src/functions/start/databases/mongodb/buildConnectionString.js +0 -28
  466. package/src/functions/start/databases/mongodb/buildQueryParameters.js +0 -15
  467. package/src/functions/start/databases/mongodb/checkConnection.js +0 -36
  468. package/src/functions/start/databases/mongodb/connect.js +0 -25
  469. package/src/functions/start/databases/mongodb/index.js +0 -108
  470. package/src/functions/start/databases/postgresql/checkConnection.js +0 -43
  471. package/src/functions/start/databases/postgresql/connect.js +0 -27
  472. package/src/functions/start/databases/postgresql/index.js +0 -127
  473. package/src/functions/start/databases/redis.js +0 -0
  474. package/src/functions/start/databases/startProvider.js +0 -15
  475. package/src/functions/start/fileDependencyMapper.js +0 -24
  476. package/src/functions/start/generateId.js +0 -73
  477. package/src/functions/start/getCodependenciesForFile.js +0 -84
  478. package/src/functions/start/getFilesToBuild.js +0 -49
  479. package/src/functions/start/getProcessIdFromPort.js +0 -92
  480. package/src/functions/start/hmrServer.js +0 -78
  481. package/src/functions/start/index.js +0 -701
  482. package/src/functions/start/isWindows.js +0 -3
  483. package/src/functions/start/minifyFile.js +0 -10
  484. package/src/functions/start/onWarn.js +0 -68
  485. package/src/functions/start/readFileDependencyMap.js +0 -19
  486. package/src/functions/start/removeDeletedDependenciesFromMap.js +0 -19
  487. package/src/functions/start/setComponentId.js +0 -58
  488. package/src/functions/start/updateFileMap.js +0 -100
  489. package/src/functions/test/index.js +0 -34
  490. package/src/functions/update/index.js +0 -20
  491. package/src/functions/use/index.js +0 -62
  492. package/src/lib/build/browserPathExclusions.js +0 -5
  493. package/src/lib/build/browserPaths.js +0 -9
  494. package/src/lib/build/buildFile.js +0 -91
  495. package/src/lib/build/buildFiles.js +0 -270
  496. package/src/lib/build/buildPlugins.js +0 -222
  497. package/src/lib/build/getCodeFrame.js +0 -7
  498. package/src/lib/build/minifyFile.js +0 -10
  499. package/src/lib/build/nodePathExclusions.js +0 -5
  500. package/src/lib/build/nodePaths.js +0 -9
  501. package/src/lib/build/onWarn.js +0 -68
  502. package/src/lib/build/removeDeletedDependenciesFromMap.js +0 -19
  503. package/src/lib/build/setComponentId.js +0 -58
  504. package/src/lib/build/updateFileMap.js +0 -100
  505. package/src/lib/buildResolvePlugin.js +0 -32
  506. package/src/lib/checkIfValidJSON.js +0 -8
  507. package/src/lib/colorLog.js +0 -5
  508. package/src/lib/dev/cleanup.js +0 -34
  509. package/src/lib/dev/databases/mongodb/buildConnectionString.js +0 -28
  510. package/src/lib/dev/databases/mongodb/buildQueryParameters.js +0 -15
  511. package/src/lib/dev/databases/mongodb/checkConnection.js +0 -40
  512. package/src/lib/dev/databases/mongodb/connect.js +0 -25
  513. package/src/lib/dev/databases/mongodb/index.js +0 -108
  514. package/src/lib/dev/databases/postgresql/checkConnection.js +0 -43
  515. package/src/lib/dev/databases/postgresql/connect.js +0 -27
  516. package/src/lib/dev/databases/postgresql/index.js +0 -127
  517. package/src/lib/dev/databases/providerMap.js +0 -13
  518. package/src/lib/dev/getCodependenciesForFile.js +0 -84
  519. package/src/lib/dev/getFilesToBuild.js +0 -47
  520. package/src/lib/dev/index.js +0 -560
  521. package/src/lib/dev/isWindows.js +0 -3
  522. package/src/lib/dev/loadSettings.js +0 -90
  523. package/src/lib/dev/readFileDependencyMap.js +0 -19
  524. package/src/lib/dev/runBuild.js +0 -33
  525. package/src/lib/dev/runTests.js +0 -33
  526. package/src/lib/dev/startApp.js +0 -79
  527. package/src/lib/dev/startDatabases.js +0 -131
  528. package/src/lib/dev/startHMR.js +0 -62
  529. package/src/lib/dev/updateFileMap.js +0 -100
  530. package/src/lib/dev/validateProject.js +0 -0
  531. package/src/lib/dev/watchlist.js +0 -13
  532. package/src/lib/filesToCopy.js +0 -15
  533. package/src/lib/generateId.js +0 -73
  534. package/src/lib/getArgs.js +0 -14
  535. package/src/lib/getOptions.js +0 -12
  536. package/src/lib/getProcessIdFromPort.js +0 -92
  537. package/src/lib/getProvider.js +0 -5
  538. package/src/lib/help.js +0 -56
  539. package/src/lib/isObject.js +0 -3
  540. package/src/lib/isValidJSONString.js +0 -8
  541. package/src/lib/killProcesses.js +0 -5
  542. package/src/lib/loadSettings.js +0 -40
  543. package/src/lib/masterIgnoreList.js +0 -13
  544. package/src/lib/nodeEnvironment.js +0 -6
  545. package/src/lib/nodeEnvironments.js +0 -8
  546. package/src/lib/parseCookiesFromLogin.js +0 -21
  547. package/src/lib/readDirectorySync.js +0 -13
  548. package/src/lib/regexes.js +0 -7
  549. package/src/lib/replaceBackslashesWithForwardSlashes.js +0 -8
  550. package/src/lib/replaceFileProtocol.js +0 -8
  551. package/src/lib/serializeQueryParameters.js +0 -5
  552. package/src/lib/settings.js +0 -1
  553. package/src/lib/validateDatabasesFromSettings.js +0 -37
  554. package/src/lib/wait.js +0 -5
  555. package/storage/.verdaccio-db.json +0 -1
  556. /package/{src/lib → .build}/getPlatformSafePath.js +0 -0
  557. /package/{src/lib → .build}/isWindows.js +0 -0
  558. /package/dist/{functions/create/templates → commands/create/template}/public/service-worker.js +0 -0
  559. /package/dist/{functions/create/templates → commands/create/template}/settings.development.json +0 -0
  560. /package/src/{functions/create/templates → commands/create/template}/public/service-worker.js +0 -0
  561. /package/src/{functions/create/templates → commands/create/template}/settings.development.json +0 -0
@@ -1,245 +0,0 @@
1
- import fs from "fs";
2
- import inquirer from "inquirer";
3
- import chalk from "chalk";
4
- import CLILog from "../../lib/CLILog.js";
5
- import prompts from "./prompts.js";
6
- import getDeployment from "../../lib/getDeployment.js";
7
- import getDeploymentSummary from "./getDeploymentSummary.js";
8
- import providerMap from "./providerMap.js";
9
- import Loader from "../../lib/loader.js";
10
- import getSessionToken from "./getSessionToken.js";
11
- import getUserFromSessionToken from "./getUserFromSessionToken.js";
12
- import colorLog from "../../lib/colorLog.js";
13
- import checkIfProvisionAvailable from "./checkIfProvisionAvailable.js ";
14
- import deploy from './deploy/index.js';
15
-
16
- const warnUnfeasibleDeployment = (deploymentToInitialize = {}, deploymentSummary = {}) => {
17
- try {
18
- const totalInstancesRequested =
19
- deploymentToInitialize?.loadBalancerInstances +
20
- deploymentToInitialize?.appInstances;
21
- const deploymentFeasible =
22
- totalInstancesRequested <= deploymentSummary?.limits?.available;
23
-
24
- if (!deploymentFeasible) {
25
- CLILog(
26
- `${chalk.yellowBright(
27
- `Cannot push with this configuration as it would exceed the instance limits set by your selected provider (${
28
- providerMap[deploymentToInitialize?.provider]
29
- }).`
30
- )} Your account there is limited to ${
31
- deploymentSummary?.limits?.account
32
- } instances (currently using ${
33
- deploymentSummary?.limits?.existing
34
- }).\n\n You requested ${totalInstancesRequested} instances which would go over your account limit. Please adjust your configuration (or request an increase from your provider) and try again.`,
35
- {
36
- padding: " ",
37
- level: "danger",
38
- docs: "https://cheatcode.co/docs/push/provider-limits",
39
- }
40
- );
41
- process.exit(0);
42
- }
43
- } catch (exception) {
44
- throw new Error(`[actionName.warnUnfeasibleDeployment] ${exception.message}`);
45
- }
46
- };
47
-
48
- const getDeploymentToInitialize = async (user, loginSessionToken) => {
49
- try {
50
- const deploymentToInitialize = await inquirer.prompt(
51
- prompts.initialDeployment(user, loginSessionToken)
52
- );
53
-
54
- return {
55
- ...deploymentToInitialize,
56
- loadBalancerInstances: deploymentToInitialize?.loadBalancerInstances || 1,
57
- appInstances: deploymentToInitialize?.appInstances || 2,
58
- };
59
- } catch (exception) {
60
- throw new Error(`[actionName.getDeploymentToInitialize] ${exception.message}`);
61
- }
62
- };
63
-
64
- const handleDeployment = async ({
65
- isInitialDeployment = false,
66
- loginSessionToken = "",
67
- domain = "",
68
- deployment = {},
69
- user = {},
70
- environment = "production",
71
- server = 'production',
72
- }) => {
73
- try {
74
- let confirmation = null; // NOTE: Do this here because of the guard below to check if we're running an initial deployment.
75
- let deploymentToInitialize = null;
76
-
77
- if (isInitialDeployment) {
78
- const loader = new Loader({ padding: " ", defaultMessage: "" });
79
- deploymentToInitialize = await getDeploymentToInitialize(user, loginSessionToken);
80
-
81
- await checkIfProvisionAvailable();
82
-
83
- console.log("\n");
84
- loader.text("Building deployment summary...");
85
-
86
- const deploymentSummary = await getDeploymentSummary(
87
- deploymentToInitialize,
88
- loginSessionToken,
89
- domain
90
- );
91
-
92
- loader.stop();
93
-
94
- warnUnfeasibleDeployment(deploymentToInitialize, deploymentSummary);
95
-
96
- const response = await inquirer.prompt(
97
- prompts.confirmInitialDeployment(
98
- deploymentToInitialize,
99
- deploymentSummary?.costs
100
- )
101
- );
102
-
103
- confirmation = response.confirmation;
104
- }
105
-
106
- if (!confirmation) {
107
- process.exit();
108
- }
109
-
110
- await deploy({
111
- environment,
112
- loginSessionToken,
113
- isInitialDeployment,
114
- deployment: {
115
- _id: deployment?._id,
116
- environment: deployment?.environment,
117
- domain,
118
- ...(deploymentToInitialize || {}),
119
- },
120
- server,
121
- });
122
-
123
- return Promise.resolve();
124
- } catch (exception) {
125
- throw new Error(`[push.handleDeployment] ${exception.message}`);
126
- }
127
- };
128
-
129
- const getDomain = async (domainFromOptions = '') => {
130
- try {
131
- let domain = domainFromOptions;
132
-
133
- if (!domain) {
134
- domain = await inquirer
135
- .prompt(prompts.domain())
136
- .then((answers) => answers?.domain);
137
- }
138
-
139
- return domain;
140
- } catch (exception) {
141
- throw new Error(`[push.getDomain] ${exception.message}`);
142
- }
143
- };
144
-
145
- const onboardingWarning = (user = null) => {
146
- try {
147
- if (!user?.onboarding?.complete && user?.onboarding?.step < 4) {
148
- console.log(
149
- chalk.yellowBright(
150
- `\nPlease visit push.cheatcode.co to finish setting up your account before deploying.\n`
151
- )
152
- );
153
- process.exit(0);
154
- }
155
- } catch (exception) {
156
- throw new Error(`[push.onboardingWarning] ${exception.message}`);
157
- }
158
- };
159
-
160
- const noUserWarning = (user = null) => {
161
- try {
162
- if (!user) {
163
- console.log(
164
- chalk.redBright(
165
- `\nUser not found. Please try again. If this is a mistake, please contact push@cheatcode.co for assistance.\n`
166
- )
167
- );
168
-
169
- process.exit();
170
- }
171
- } catch (exception) {
172
- throw new Error(`[push.noUserWarning] ${exception.message}`);
173
- }
174
- };
175
-
176
- const getUser = async (loginSessionToken = '') => {
177
- try {
178
- const user = await getUserFromSessionToken(loginSessionToken);
179
-
180
- if (user) {
181
- colorLog(`\n✔ Logged in as ${user?.emailAddress}\n`, "greenBright");
182
- }
183
-
184
- return user;
185
- } catch (exception) {
186
- throw new Error(`[push.getUser] ${exception.message}`);
187
- }
188
- };
189
-
190
- const checkForJoystickFolder = () => {
191
- try {
192
- const hasJoystickFolder = fs.existsSync(".joystick");
193
-
194
- if (!hasJoystickFolder) {
195
- CLILog(
196
- "This is not a Joystick project. A .joystick folder could not be found.",
197
- {
198
- level: "danger",
199
- docs: "https://github.com/cheatcode/joystick",
200
- }
201
- );
202
-
203
- process.exit(0);
204
- }
205
- } catch (exception) {
206
- throw new Error(`[push.checkForJoystickFolder] ${exception.message}`);
207
- }
208
- };
209
-
210
- export default async (args = {}, options = {}) => {
211
- try {
212
- checkForJoystickFolder();
213
- await checkIfProvisionAvailable();
214
-
215
- const loginSessionToken = await getSessionToken();
216
- const user = await getUser(loginSessionToken);
217
-
218
- noUserWarning(user);
219
- onboardingWarning(user);
220
-
221
- const domain = await getDomain(options?.domain);
222
- await checkIfProvisionAvailable();
223
-
224
- const deployment = await getDeployment({
225
- domain,
226
- loginSessionToken,
227
- environment: options?.environment,
228
- });
229
-
230
- await handleDeployment({
231
- isInitialDeployment: deployment?.status === "undeployed",
232
- loginSessionToken,
233
- domain,
234
- deployment,
235
- user,
236
- environment: options?.environment || "production",
237
- server: options?.server,
238
- });
239
-
240
- return Promise.resolve();
241
- } catch (exception) {
242
- console.warn(exception);
243
- throw new Error(`[push] ${exception.message}`);
244
- }
245
- };
@@ -1,34 +0,0 @@
1
- import fetch from 'node-fetch';
2
- import checkIfValidJSON from './checkIfValidJSON.js';
3
- import CLILog from './CLILog.js';
4
- import domains from './domains.js';
5
-
6
- export default (emailAddress = '', password = '') => {
7
- return fetch(`${domains.provision}/api/cli/login`, {
8
- method: 'POST',
9
- headers: {
10
- 'content-type': 'application/json',
11
- },
12
- body: JSON.stringify({
13
- emailAddress,
14
- password,
15
- })
16
- }).then(async (response) => {
17
- const text = await response.text();
18
- const data = checkIfValidJSON(text);
19
-
20
- if (data?.error) {
21
- CLILog(
22
- data?.error?.message,
23
- {
24
- level: 'danger',
25
- docs: 'https://cheatcode.co/docs/push/authentication'
26
- }
27
- );
28
-
29
- process.exit(0);
30
- }
31
-
32
- return data?.data?.token;
33
- });
34
- };
@@ -1,33 +0,0 @@
1
- import fetch from 'node-fetch';
2
- import chalk from 'chalk';
3
- import domains from "./domains.js";
4
- import CLILog from "../../lib/CLILog.js";
5
- import checkIfValidJSON from '../../lib/checkIfValidJSON.js';
6
-
7
- export default (provider = '', loginSessionToken = '') => {
8
- const url = new URL(`${domains.provision}/api/cli/ping`);
9
- return fetch(url, { method: 'GET' }).then(async (response) => {
10
- const text = await response.text();
11
- const data = checkIfValidJSON(text);
12
-
13
- console.log('PING', data);
14
-
15
- if (data?.error) {
16
- CLILog(
17
- data.error?.message,
18
- {
19
- level: 'danger',
20
- docs: 'https://cheatcode.co/docs/push/deployment-tokens'
21
- }
22
- );
23
-
24
- process.exit(0);
25
- }
26
-
27
- return data?.data?.ping;
28
- }).catch((error) => {
29
- if (!error?.message?.includes('ECONNREFUSED')) {
30
- console.warn(error);
31
- }
32
- });
33
- };
@@ -1,276 +0,0 @@
1
- import chalk from 'chalk';
2
- import AsciiTable from 'ascii-table';
3
- import currencyFormatter from 'currency-formatter';
4
- import getProvidersWithConnectionStatus from '../../lib/getProvidersWithConnectionStatus.js';
5
- import loginToCheatCode from './loginToCheatCode.js';
6
- import domains from './domains.js';
7
- import getProvider from '../../lib/getProvider.js';
8
- import getProviderInstanceSizes from './getProviderInstanceSizes.js';
9
- import getInstanceSizeRegions from './getInstanceSizeRegions.js';
10
- import providers from '../../lib/providers.js';
11
- import getProviderRegions from './getProviderRegions.js';
12
- import getInstanceSizesForRegion from './getInstanceSizesForRegion.js';
13
- import checkIfProvisionAvailable from './checkIfProvisionAvailable.js';
14
-
15
- const table = new AsciiTable();
16
-
17
- export default {
18
- login: () => [
19
- {
20
- name: 'loginType',
21
- type: 'list',
22
- prefix: '',
23
- message: `\n ${chalk.greenBright('>')} How do you want to login?\n`,
24
- choices: [
25
- { name: `Email`, value: 'email' },
26
- { name: `Github`, value: 'oauth' },
27
- { name: `Bitbucket`, value: 'oauth' },
28
- { name: `Gitlab`, value: 'oauth' },
29
- ],
30
- },
31
- {
32
- name: 'emailAddress',
33
- type: 'text',
34
- prefix: '',
35
- when: (answers = {}) => {
36
- return answers?.loginType === 'email';
37
- },
38
- message: `\n ${chalk.greenBright('>')} What is your Email Address?\n`,
39
- },
40
- {
41
- name: 'password',
42
- type: 'text',
43
- prefix: '',
44
- when: (answers = {}) => {
45
- return answers?.loginType === 'email' && !!answers?.emailAddress;
46
- },
47
- message: `\n ${chalk.greenBright('>')} What is your Password?\n`,
48
- },
49
- {
50
- name: 'oauth',
51
- type: 'text',
52
- prefix: `\n\n ${chalk.yellowBright('Visit http://localhost:2600/login?cli=true in your browser to login and then copy/paste the value displayed below:')}\n`,
53
- when: (answers = {}) => {
54
- return answers?.loginType === 'oauth';
55
- },
56
- message: `\n ${chalk.greenBright('>')} Paste the token displayed at the URL above:\n`,
57
- },
58
- ],
59
- token: () => [
60
- {
61
- name: 'token',
62
- type: 'text',
63
- prefix: '',
64
- message: `\n ${chalk.greenBright('>')} What is your Deployment Token?\n`,
65
- suffix: `\n ${chalk.yellowBright(`What does this mean?`)}\n Deployment Tokens identify the Deploy account where your deployment will live.\n\n ${chalk.yellowBright(`Documentation:`)}\n ${chalk.blue('https://cheatcode.co/docs/push/tokens')}\n\n`,
66
- },
67
- ],
68
- domain: () => [
69
- {
70
- name: 'domain',
71
- type: 'text',
72
- prefix: '',
73
- message: `\n ${chalk.greenBright('>')} What is your domain name?`,
74
- suffix: ' (e.g., app.myapp.com)',
75
- }
76
- ],
77
- initialDeployment: (user = {}, loginSessionToken = '') => {
78
- const providers = getProvidersWithConnectionStatus(user);
79
- return [
80
- {
81
- name: 'provider',
82
- type: 'list',
83
- prefix: '',
84
- message: `\n ${chalk.greenBright('>')} Where do you want to host the initial deployment?`,
85
- loop: false,
86
- suffix: `
87
- \n ${chalk.yellowBright(`What does this mean?`)}\n Select the hosting provider where your deployment's load balancers and app instances will be created.\n This can be scaled to include additional providers later.\n\n ${chalk.yellowBright(`Documentation:`)}\n ${chalk.blue('https://cheatcode.co/docs/push/hosting-providers')}
88
- \n`,
89
- choices: providers.map((provider) => {
90
- return {
91
- ...provider,
92
- name: `${provider?.name} ${chalk[provider?.connectedAs.includes('Not') ? 'gray' : 'greenBright'](`(${provider?.connectedAs})`)}`,
93
- };
94
- }),
95
- },
96
- {
97
- name: 'providerLoginPrompt',
98
- type: 'text',
99
- prefix: '\n\n',
100
- suffix: '\n',
101
- when: (answers = {}) => {
102
- const provider = getProvider(providers, answers?.provider);
103
- return provider && provider.connectedAs?.includes('Not');
104
- },
105
- message: (answers = {}) => {
106
- const provider = getProvider(providers, answers?.provider);
107
- return `\n
108
- ${chalk.yellowBright(`Please visit the URL below in your browser to connect your ${provider?.name} account:\n
109
- ${chalk.greenBright(`${domains?.site}/api/oauth/${answers?.provider}/connect?target=cli`)}`)}\n
110
- After you've connected your account, head back here and press the Enter/Return key to continue.
111
- `
112
- },
113
- validate: async (input = '', answers = {}) => {
114
- // NOTE: Fetch user again to verify that the requested provider was connected.
115
- const userLogin = await loginToCheatCode();
116
- const connection = userLogin?.user[answers?.provider];
117
- const provider = getProvider(providers, answers?.provider);
118
-
119
- if (connection) {
120
- return true;
121
- }
122
-
123
- return `${provider?.name} not connected. Please visit the URL above to connect your account to CheatCode.`;
124
- },
125
- },
126
- {
127
- name: 'loadBalancerInstances',
128
- default: 1,
129
- type: 'number',
130
- prefix: '',
131
- message: `\n ${chalk.greenBright('>')} How many load balancer instances do you want to start with?`,
132
- suffix: ` -- (press enter to use recommendation of 1)`,
133
- },
134
- {
135
- name: 'appInstances',
136
- type: 'number',
137
- default: 2,
138
- prefix: '',
139
- message: `\n ${chalk.greenBright('>')} How many app instances do you want to start with?`,
140
- suffix: ` -- (press enter to use recommendation of 2)`,
141
- },
142
- {
143
- name: 'loadBalancer_region',
144
- type: 'list',
145
- prefix: '',
146
- message: `\n ${chalk.greenBright('>')} Select a Region for Your Load Balancer Instances`,
147
- suffix: `
148
- \n ${chalk.yellowBright(`What is this?`)}\n The location of the data center where your load balancer instances will live. The continent where your choosen region is located will determine the regions available for your app instances. \n\n ${chalk.yellowBright(`Recommendations:`)}\n ${chalk.blue('https://cheatcode.co/docs/push/scaling#regions')}
149
- \n`,
150
- loop: false,
151
- choices: async (answers = {}) => {
152
- await checkIfProvisionAvailable();
153
- const regions = await getProviderRegions(
154
- answers?.provider,
155
- loginSessionToken,
156
- );
157
-
158
- return (regions || []).map((region) => {
159
- return {
160
- name: `${chalk.blue(`[${region?.id}]`)} -- ${region?.name} ${chalk.magentaBright(`(${region?.continent?.name})`)}`,
161
- value: region?.id,
162
- };
163
- });
164
- },
165
- },
166
- {
167
- name: 'loadBalancer_size',
168
- type: 'list',
169
- prefix: '',
170
- message: `\n ${chalk.greenBright('>')} Select a Size for Your Load Balancer Instances`,
171
- suffix: `
172
- \n ${chalk.yellowBright(`What is this?`)}\n Load balancers distribute inbound internet traffic to your app instances. \n\n ${chalk.yellowBright(`Recommendations:`)}\n ${chalk.blue('https://cheatcode.co/docs/push/scaling#load-balancer-instances')}
173
- \n`,
174
- loop: false,
175
- choices: async (answers = {}) => {
176
- await checkIfProvisionAvailable();
177
- const sizes = await getInstanceSizesForRegion(answers?.provider, answers?.loadBalancer_region, loginSessionToken);
178
- return (sizes || []).map((size) => {
179
- return {
180
- name: `${chalk.blue(`[${size?.name}]`)} -- ${chalk.white(`${size?.vcpus} ${size?.vcpus > 1 ? 'VCPUs' : 'VCPU'} + ${size?.memory / 1024}GB RAM + ${size?.disk > 1000 ? `${size?.disk / 1000}TB` : `${size?.disk}GB`} Disk`)} ${chalk.gray('=')} $${chalk.greenBright(`${size?.pricePerMonth}/mo`)}`,
181
- value: size?.id,
182
- };
183
- });
184
- },
185
- },
186
- {
187
- name: 'app_region',
188
- type: 'list',
189
- prefix: '',
190
- message: `\n ${chalk.greenBright('>')} Select a Region for Your App Instances`,
191
- suffix: `
192
- \n ${chalk.yellowBright(`What is this?`)}\n The location of the data center where your app instances will live. \n\n ${chalk.yellowBright(`Recommendations:`)}\n ${chalk.blue('https://cheatcode.co/docs/push/scaling#regions')}
193
- \n`,
194
- loop: false,
195
- choices: async (answers = {}) => {
196
- await checkIfProvisionAvailable();
197
- const regions = await getProviderRegions(
198
- answers?.provider,
199
- loginSessionToken,
200
- );
201
-
202
- return (regions || []).map((region) => {
203
- return {
204
- name: `${chalk.blue(`[${region?.id}]`)} -- ${region?.name} ${chalk.magentaBright(`(${region?.continent?.name})`)}`,
205
- value: region?.id,
206
- };
207
- });
208
- },
209
- },
210
- {
211
- name: 'app_size',
212
- type: 'list',
213
- prefix: '',
214
- message: `\n ${chalk.greenBright('>')} Select a Size for Your App Instances`,
215
- suffix: `
216
- \n ${chalk.yellowBright(`What is this?`)}\n App instances are running copies of your app. \n\n ${chalk.yellowBright(`Recommendations:`)}\n ${chalk.blue('https://cheatcode.co/docs/push/scaling#app-instances')}
217
- \n`,
218
- loop: false,
219
- choices: async (answers = {}) => {
220
- await checkIfProvisionAvailable();
221
- const sizes = await getInstanceSizesForRegion(answers?.provider, answers?.app_region, loginSessionToken);
222
- return (sizes || []).map((size) => {
223
- return {
224
- name: `${chalk.blue(`[${size?.name}]`)} -- ${chalk.white(`${size?.vcpus} ${size?.vcpus > 1 ? 'VCPUs' : 'VCPU'} + ${size?.memory / 1024}GB RAM + ${size?.disk > 1000 ? `${size?.disk / 1000}TB` : `${size?.disk}GB`} Disk`)} ${chalk.gray('=')} $${chalk.greenBright(`${size?.pricePerMonth}/mo`)}`,
225
- value: size?.id,
226
- };
227
- });
228
- },
229
- },
230
- ];
231
- },
232
- confirmInitialDeployment: (answers = {}, costs = []) => {
233
- const provider = providers?.find(({ value }) => value === answers?.provider);
234
- const loadBalancerCosts = costs?.find(({ type }) => type === 'loadBalancers');
235
- const instanceCosts = costs?.find(({ type }) => type === 'instances');
236
- const totalMonthlyCost = [
237
- ...(costs || []),
238
- { type: 'objectStorage', monthly: 5, annually: 60 }
239
- ].reduce((total = 0, cost = {}) => {
240
- total += cost.monthly;
241
- return total;
242
- }, 0);
243
- const totalAnnualCost = [
244
- ...(costs || []),
245
- { type: 'objectStorage', monthly: 5, annually: 60 }
246
- ].reduce((total = 0, cost = {}) => {
247
- total += cost.annually;
248
- return total;
249
- }, 0);
250
-
251
- const isAbnormal = totalMonthlyCost > 100;
252
-
253
- return [
254
- {
255
- name: 'confirmation',
256
- type: 'confirm',
257
- prefix: '',
258
- message: `\n ${chalk.greenBright('>')} Run this deployment?`,
259
- suffix: `
260
- \n${table
261
- .removeBorder()
262
- .addRow(chalk.blue('Provider'), `${chalk.greenBright(provider?.name)}\n`)
263
- .addRow(chalk.white('---'), `\n`)
264
- .addRow(chalk.blue('Load Balancers'), `${chalk.yellowBright(`(${answers?.loadBalancerInstances}x)`)} ${answers?.loadBalancer_size} ${chalk.gray(`[${answers?.loadBalancer_region}]`)} = ${chalk.greenBright(`${currencyFormatter.format(loadBalancerCosts?.monthly, { code: 'USD' })}/mo`)}`)
265
- .addRow(chalk.blue('App Instances'), `${chalk.yellowBright(`(${answers?.appInstances}x)`)} ${answers?.app_size} ${chalk.gray(`[${answers?.app_region}]`)} = ${chalk.greenBright(`${currencyFormatter.format(instanceCosts?.monthly, { code: 'USD' })}/mo`)}\n`)
266
- .addRow(chalk.blue('Build Storage'), `${chalk.greenBright(`${currencyFormatter.format(5, { code: 'USD' })}/mo`)}\n`)
267
- .addRow(chalk.white('---'), `\n`)
268
- .addRow(chalk.magenta('Est. Total Monthly Cost'), chalk.greenBright(`${currencyFormatter.format(totalMonthlyCost, { code: 'USD' })}/mo`))
269
- .addRow(chalk.magenta('Est. Total Annual Cost'), chalk.greenBright(`${currencyFormatter.format(totalAnnualCost, { code: 'USD' })}/yr`))
270
- .toString()}
271
- ${isAbnormal ? `\n\n ${chalk.yellowBright(`!!! >>> These costs are ${chalk.magenta('high')}. Be absolutely ${chalk.magenta('CERTAIN')} you want to run this deployment. <<< !!!`)}
272
- \n ` : '\n'}`,
273
- },
274
- ];
275
- },
276
- };
@@ -1,8 +0,0 @@
1
- export default {
2
- // aws: 'AWS',
3
- // azure: 'Azure',
4
- // google: 'Google',
5
- digitalOcean: 'Digital Ocean',
6
- linode: 'Linode',
7
- vultr: 'Vultr',
8
- };
@@ -1,6 +0,0 @@
1
- export default [
2
- // { name: 'AWS', value: 'aws' },
3
- { name: 'Digital Ocean', value: 'digitalOcean' },
4
- { name: 'Linode', value: 'linode' },
5
- { name: 'Vultr', value: 'vultr' },
6
- ];
File without changes