@joystick.js/cli-canary 0.0.0-canary.66 → 0.0.0-canary.661
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.
- package/.build/getFilesToBuild.js +1 -1
- package/.build/index.js +3 -3
- package/dist/cli.js +1 -69
- package/dist/commands/build/definition.js +1 -0
- package/dist/commands/build/index.js +1 -0
- package/dist/commands/create/build_package_json.js +1 -0
- package/dist/commands/create/definition.js +1 -0
- package/dist/commands/create/index.js +2 -0
- package/dist/commands/create/template/api/index.js +6 -0
- package/dist/commands/create/template/email/base.css +1 -0
- package/dist/commands/create/template/email/base.html +1 -0
- package/dist/commands/create/template/email/reset_password.js +20 -0
- package/dist/commands/create/template/i18n/en-US.js +14 -0
- package/dist/commands/create/template/index.client.js +1 -0
- package/dist/commands/create/template/index.css +34 -0
- package/dist/{functions/create/templates → commands/create/template}/index.html +2 -3
- package/dist/{functions/create/templates → commands/create/template}/index.server.js +6 -6
- package/dist/commands/create/template/public/apple-touch-icon-152x152.png +0 -0
- package/dist/commands/create/template/public/favicon.ico +0 -0
- package/dist/commands/create/template/public/joystick_logo.webp +0 -0
- package/dist/{functions/create/templates → commands/create/template}/public/manifest.json +4 -4
- package/dist/commands/create/template/public/splash-screen-1024x1024.png +0 -0
- package/{src/functions/create/templates → dist/commands/create/template}/ui/components/button/index.js +14 -6
- package/{src/functions/create/templates → dist/commands/create/template}/ui/layouts/app/index.js +2 -2
- package/dist/commands/create/template/ui/pages/error/index.js +50 -0
- package/dist/commands/create/template/ui/pages/index/index.js +121 -0
- package/dist/commands/help/definition.js +1 -0
- package/dist/commands/help/index.js +19 -0
- package/dist/commands/index.js +1 -0
- package/dist/commands/logout/definition.js +1 -0
- package/dist/commands/logout/index.js +3 -0
- package/dist/commands/push/cdn_mirrors.js +1 -0
- package/dist/commands/push/check_if_settings_valid.js +1 -0
- package/dist/commands/push/create_version.js +1 -0
- package/dist/commands/push/definition.js +1 -0
- package/dist/commands/push/get_app_domain.js +1 -0
- package/dist/commands/push/get_deployment.js +1 -0
- package/dist/commands/push/get_provision_domain.js +1 -0
- package/dist/commands/push/get_session_token.js +1 -0
- package/dist/commands/push/get_settings_file.js +1 -0
- package/dist/commands/push/handle_initial_deployment.js +1 -0
- package/dist/commands/push/handle_version_deployment.js +1 -0
- package/dist/commands/push/index.js +8 -0
- package/dist/commands/push/prompts/confirm_deployment.js +17 -0
- package/dist/commands/push/prompts/session_token.js +5 -0
- package/dist/commands/push/upload_build_to_cdn.js +1 -0
- package/dist/commands/push/validate_deployment.js +1 -0
- package/dist/commands/push/validate_push_config.js +1 -0
- package/dist/commands/start/definition.js +1 -0
- package/dist/commands/start/index.js +1 -0
- package/dist/commands/test/definition.js +1 -0
- package/dist/commands/test/index.js +1 -0
- package/dist/commands/update/definition.js +1 -0
- package/dist/commands/update/index.js +1 -0
- package/dist/commands/use/definition.js +1 -0
- package/dist/commands/use/index.js +1 -0
- package/dist/index.js +1 -7
- package/dist/lib/build/browser_path_exclusions.js +1 -0
- package/dist/lib/build/browser_paths.js +1 -0
- package/dist/lib/build/build_files.js +3 -0
- package/dist/lib/build/copy_paths.js +1 -0
- package/dist/lib/build/get_code_frame.js +1 -0
- package/dist/lib/build/get_file_operation.js +1 -0
- package/dist/lib/build/get_files_to_build.js +1 -0
- package/dist/lib/build/get_path_platform.js +1 -0
- package/dist/lib/build/get_platform_safe_path.js +1 -0
- package/dist/lib/build/get_tar_ignore_list.js +2 -0
- package/dist/lib/build/index.js +3 -0
- package/dist/lib/build/master_ignore_list.js +1 -0
- package/dist/lib/build/minify_file.js +1 -0
- package/dist/lib/build/node_paths.js +1 -0
- package/dist/lib/build/on_warn.js +10 -0
- package/dist/lib/build/plugins/bootstrap_component.js +33 -0
- package/dist/lib/build/plugins/generate_file_dependency_map.js +1 -0
- package/dist/lib/build/plugins/index.js +1 -0
- package/dist/lib/build/plugins/set_component_id.js +2 -0
- package/dist/lib/build/plugins/update_file_map.js +1 -0
- package/dist/lib/build/plugins/warn_node_environment.js +3 -0
- package/dist/lib/cli_log.js +13 -0
- package/dist/lib/color_log.js +1 -0
- package/dist/lib/command_exists.js +1 -0
- package/dist/lib/constants.js +1 -4
- package/dist/lib/debounce.js +1 -0
- package/dist/lib/decrypt_buffer.js +1 -0
- package/dist/lib/development_server/ava_config.js +1 -0
- package/dist/lib/development_server/check_if_port_occupied.js +1 -0
- package/dist/lib/development_server/cleanup.js +1 -0
- package/dist/lib/development_server/databases/mongodb/available_query_parameters.js +1 -0
- package/dist/lib/development_server/databases/mongodb/build_connection_string.js +1 -0
- package/dist/lib/development_server/databases/mongodb/build_query_parameters.js +1 -0
- package/dist/lib/development_server/databases/mongodb/check_connection.js +2 -0
- package/dist/lib/development_server/databases/mongodb/connect.js +1 -0
- package/dist/lib/development_server/databases/mongodb/index.js +5 -0
- package/dist/lib/development_server/databases/postgresql/check_connection.js +2 -0
- package/dist/lib/development_server/databases/postgresql/connect.js +1 -0
- package/dist/lib/development_server/databases/postgresql/index.js +2 -0
- package/dist/lib/development_server/databases/provider_map.js +1 -0
- package/dist/lib/development_server/get_database_process_ids.js +1 -0
- package/dist/lib/development_server/get_translations.js +1 -0
- package/dist/lib/development_server/hmr_server.js +1 -0
- package/dist/lib/development_server/index.js +10 -0
- package/dist/lib/development_server/kill_process_ids.js +1 -0
- package/dist/lib/development_server/run_tests.js +2 -0
- package/dist/lib/development_server/start_app_server.js +1 -0
- package/dist/lib/development_server/start_databases.js +1 -0
- package/dist/lib/development_server/start_hmr_server.js +1 -0
- package/dist/lib/development_server/watch_for_changes/browser_path_exclusions.js +1 -0
- package/dist/lib/development_server/watch_for_changes/browser_paths.js +1 -0
- package/dist/lib/development_server/watch_for_changes/get_after_run_tasks.js +1 -0
- package/dist/lib/development_server/watch_for_changes/get_file_codependencies.js +1 -0
- package/dist/lib/development_server/watch_for_changes/get_platform_safe_path.js +1 -0
- package/dist/lib/development_server/watch_for_changes/index.js +1 -0
- package/dist/lib/development_server/watch_for_changes/node_paths.js +1 -0
- package/dist/lib/development_server/watch_for_changes/read_file_dependency_map.js +1 -0
- package/dist/lib/development_server/watch_for_changes/watch_paths.js +1 -0
- package/dist/lib/dynamic_import.js +1 -0
- package/dist/lib/encrypt_buffer.js +1 -0
- package/dist/lib/generate_id.js +1 -0
- package/dist/lib/get_files_in_path.js +1 -0
- package/dist/lib/get_platform_safe_path.js +1 -0
- package/dist/lib/get_process_id_from_port.js +2 -0
- package/dist/lib/is_valid_json_string.js +1 -0
- package/dist/lib/kill_port_process.js +1 -0
- package/dist/lib/kill_process_id.js +1 -0
- package/dist/lib/load_settings.js +1 -0
- package/dist/lib/loader.js +2 -82
- package/dist/lib/log_bars.js +1 -0
- package/dist/lib/node_path_polyfills.js +1 -0
- package/dist/lib/parse_args.js +1 -0
- package/dist/lib/parse_options.js +1 -0
- package/dist/lib/path_exists.js +1 -0
- package/dist/lib/rainbow_road.js +1 -0
- package/dist/lib/replace_in_files.js +1 -0
- package/dist/lib/required_files.js +1 -0
- package/dist/lib/serialize_query_parameters.js +1 -0
- package/dist/lib/types.js +1 -6
- package/increment_version.js +3 -0
- package/package.json +18 -37
- package/src/cli.js +63 -46
- package/src/commands/build/definition.js +58 -0
- package/src/commands/build/index.js +7 -0
- package/src/commands/create/build_package_json.js +20 -0
- package/src/commands/create/definition.js +35 -0
- package/src/commands/create/index.js +71 -0
- package/src/commands/create/template/api/index.js +6 -0
- package/src/commands/create/template/email/base.css +1 -0
- package/src/commands/create/template/email/base.html +1 -0
- package/src/commands/create/template/email/reset_password.js +20 -0
- package/src/commands/create/template/i18n/en-US.js +14 -0
- package/src/commands/create/template/index.client.js +1 -0
- package/src/commands/create/template/index.css +34 -0
- package/src/{functions/create/templates → commands/create/template}/index.html +2 -3
- package/src/{functions/create/templates → commands/create/template}/index.server.js +6 -6
- package/src/commands/create/template/public/apple-touch-icon-152x152.png +0 -0
- package/src/commands/create/template/public/favicon.ico +0 -0
- package/src/commands/create/template/public/joystick_logo.webp +0 -0
- package/src/{functions/create/templates → commands/create/template}/public/manifest.json +4 -4
- package/src/commands/create/template/public/splash-screen-1024x1024.png +0 -0
- package/{dist/functions/create/templates → src/commands/create/template}/ui/components/button/index.js +14 -6
- package/{dist/functions/create/templates → src/commands/create/template}/ui/layouts/app/index.js +2 -2
- package/src/commands/create/template/ui/pages/error/index.js +50 -0
- package/src/commands/create/template/ui/pages/index/index.js +121 -0
- package/src/commands/help/definition.js +12 -0
- package/src/commands/help/index.js +48 -0
- package/src/commands/index.js +23 -0
- package/src/commands/logout/definition.js +10 -0
- package/src/commands/logout/index.js +20 -0
- package/src/commands/push/cdn_mirrors.js +7 -0
- package/src/commands/push/check_if_settings_valid.js +10 -0
- package/src/commands/push/create_version.js +20 -0
- package/src/commands/push/definition.js +43 -0
- package/src/commands/push/get_app_domain.js +11 -0
- package/src/commands/push/get_deployment.js +19 -0
- package/src/commands/push/get_provision_domain.js +9 -0
- package/src/commands/push/get_session_token.js +31 -0
- package/src/commands/push/get_settings_file.js +47 -0
- package/src/commands/push/handle_initial_deployment.js +24 -0
- package/src/commands/push/handle_version_deployment.js +23 -0
- package/src/commands/push/index.js +190 -0
- package/src/commands/push/prompts/confirm_deployment.js +73 -0
- package/src/commands/push/prompts/session_token.js +11 -0
- package/src/commands/push/upload_build_to_cdn.js +59 -0
- package/src/commands/push/validate_deployment.js +19 -0
- package/src/commands/push/validate_push_config.js +18 -0
- package/src/commands/start/definition.js +58 -0
- package/src/commands/start/index.js +11 -0
- package/src/commands/test/definition.js +28 -0
- package/src/commands/test/index.js +12 -0
- package/src/commands/update/definition.js +28 -0
- package/src/commands/update/index.js +29 -0
- package/src/commands/use/definition.js +19 -0
- package/src/commands/use/index.js +54 -0
- package/src/index.js +0 -0
- package/src/lib/build/browser_path_exclusions.js +8 -0
- package/src/lib/build/browser_paths.js +11 -0
- package/src/lib/build/build_files.js +161 -0
- package/src/{functions/start/filesToCopy.js → lib/build/copy_paths.js} +3 -1
- package/src/lib/build/get_code_frame.js +11 -0
- package/src/lib/build/get_file_operation.js +25 -0
- package/src/lib/build/get_files_to_build.js +36 -0
- package/src/lib/build/get_path_platform.js +32 -0
- package/src/lib/build/get_platform_safe_path.js +6 -0
- package/src/lib/build/get_tar_ignore_list.js +41 -0
- package/src/lib/build/index.js +101 -0
- package/src/lib/build/master_ignore_list.js +14 -0
- package/src/lib/build/minify_file.js +15 -0
- package/src/lib/build/node_paths.js +17 -0
- package/src/lib/build/on_warn.js +70 -0
- package/src/lib/build/plugins/bootstrap_component.js +191 -0
- package/src/lib/build/plugins/generate_file_dependency_map.js +20 -0
- package/src/lib/build/plugins/index.js +26 -0
- package/src/lib/build/plugins/set_component_id.js +89 -0
- package/src/lib/build/plugins/update_file_map.js +98 -0
- package/src/lib/build/plugins/warn_node_environment.js +20 -0
- package/src/lib/{CLILog.js → cli_log.js} +12 -8
- package/src/lib/color_log.js +7 -0
- package/src/lib/command_exists.js +16 -0
- package/src/lib/constants.js +11 -1
- package/src/lib/debounce.js +9 -0
- package/src/lib/decrypt_buffer.js +12 -0
- package/src/lib/development_server/ava_config.js +14 -0
- package/src/lib/development_server/check_if_port_occupied.js +31 -0
- package/src/lib/development_server/cleanup.js +15 -0
- package/src/lib/{dev/databases/mongodb/availableQueryParameters.js → development_server/databases/mongodb/available_query_parameters.js} +3 -1
- package/src/lib/development_server/databases/mongodb/build_connection_string.js +31 -0
- package/src/lib/development_server/databases/mongodb/build_query_parameters.js +17 -0
- package/src/lib/development_server/databases/mongodb/check_connection.js +41 -0
- package/src/lib/development_server/databases/mongodb/connect.js +27 -0
- package/src/lib/development_server/databases/mongodb/index.js +118 -0
- package/src/lib/development_server/databases/postgresql/check_connection.js +56 -0
- package/src/lib/development_server/databases/postgresql/connect.js +33 -0
- package/src/lib/development_server/databases/postgresql/index.js +126 -0
- package/src/lib/development_server/databases/provider_map.js +15 -0
- package/src/lib/development_server/get_database_process_ids.js +28 -0
- package/src/lib/development_server/get_translations.js +85 -0
- package/src/lib/development_server/hmr_server.js +94 -0
- package/src/lib/development_server/index.js +394 -0
- package/src/lib/development_server/kill_process_ids.js +8 -0
- package/src/lib/development_server/run_tests.js +84 -0
- package/src/lib/development_server/start_app_server.js +55 -0
- package/src/lib/development_server/start_databases.js +108 -0
- package/src/lib/development_server/start_hmr_server.js +36 -0
- package/src/lib/development_server/watch_for_changes/browser_path_exclusions.js +8 -0
- package/src/lib/development_server/watch_for_changes/browser_paths.js +11 -0
- package/src/lib/development_server/watch_for_changes/get_after_run_tasks.js +31 -0
- package/src/lib/development_server/watch_for_changes/get_file_codependencies.js +48 -0
- package/src/lib/development_server/watch_for_changes/get_platform_safe_path.js +6 -0
- package/src/lib/development_server/watch_for_changes/index.js +216 -0
- package/src/lib/development_server/watch_for_changes/node_paths.js +16 -0
- package/src/lib/development_server/watch_for_changes/read_file_dependency_map.js +18 -0
- package/src/lib/development_server/watch_for_changes/watch_paths.js +21 -0
- package/src/lib/dynamic_import.js +6 -0
- package/src/lib/encrypt_buffer.js +10 -0
- package/src/lib/generate_id.js +15 -0
- package/src/lib/get_files_in_path.js +25 -0
- package/src/lib/get_platform_safe_path.js +8 -0
- package/src/lib/get_process_id_from_port.js +26 -0
- package/src/lib/is_valid_json_string.js +10 -0
- package/src/lib/kill_port_process.js +12 -0
- package/src/lib/kill_process_id.js +19 -0
- package/src/lib/load_settings.js +43 -0
- package/src/lib/loader.js +4 -77
- package/src/lib/log_bars.js +7 -0
- package/src/lib/node_path_polyfills.js +23 -0
- package/src/lib/parse_args.js +16 -0
- package/src/lib/parse_options.js +16 -0
- package/src/lib/path_exists.js +11 -0
- package/src/lib/{rainbowRoad.js → rainbow_road.js} +4 -2
- package/src/lib/replace_in_files.js +40 -0
- package/src/lib/{dev/requiredFiles.js → required_files.js} +3 -1
- package/src/lib/serialize_query_parameters.js +7 -0
- package/src/lib/types.js +59 -2
- package/HMRNOTES.txt +0 -23
- package/README.md +0 -7
- package/_package.json +0 -55
- package/canary.js +0 -12
- package/dist/functions/build/getTarIgnoreList.js +0 -25
- package/dist/functions/build/index.js +0 -54
- package/dist/functions/create/buildPackageJSON.js +0 -20
- package/dist/functions/create/index.js +0 -193
- package/dist/functions/create/templates/api/index.js +0 -4
- package/dist/functions/create/templates/i18n/en-US.js +0 -4
- package/dist/functions/create/templates/index.client.js +0 -7
- package/dist/functions/create/templates/index.css +0 -20
- package/dist/functions/create/templates/public/apple-touch-icon-152x152.png +0 -0
- package/dist/functions/create/templates/public/favicon.ico +0 -0
- package/dist/functions/create/templates/public/splash-screen-1024x1024.png +0 -0
- package/dist/functions/create/templates/ui/pages/error/index.js +0 -31
- package/dist/functions/create/templates/ui/pages/index/index.js +0 -94
- package/dist/functions/index.js +0 -243
- package/dist/functions/logout/index.js +0 -20
- package/dist/functions/push/checkIfProvisionAvailable.js +0 -19
- package/dist/functions/push/deploy/index.js +0 -173
- package/dist/functions/push/deploy/initial.js +0 -100
- package/dist/functions/push/deploy/version.js +0 -100
- package/dist/functions/push/domains.js +0 -23
- package/dist/functions/push/getAvailableCDN.js +0 -23
- package/dist/functions/push/getDeployment.js +0 -41
- package/dist/functions/push/getDeploymentSummary.js +0 -38
- package/dist/functions/push/getInstanceSizeRegions.js +0 -37
- package/dist/functions/push/getInstanceSizesForRegion.js +0 -34
- package/dist/functions/push/getProviderInstanceSizes.js +0 -34
- package/dist/functions/push/getProviderRegions.js +0 -36
- package/dist/functions/push/getProvidersWithConnectionStatus.js +0 -20
- package/dist/functions/push/getSessionToken.js +0 -23
- package/dist/functions/push/getUserFromSessionToken.js +0 -37
- package/dist/functions/push/index.js +0 -210
- package/dist/functions/push/loginToCheatCode.js +0 -33
- package/dist/functions/push/pingProvisionAPI.js +0 -31
- package/dist/functions/push/prompts.js +0 -332
- package/dist/functions/push/providerMap.js +0 -11
- package/dist/functions/push/providers.js +0 -9
- package/dist/functions/reset/index.js +0 -0
- package/dist/functions/reset/reset.js +0 -127
- package/dist/functions/start/bootstrapLayoutComponent.js +0 -54
- package/dist/functions/start/bootstrapPageComponent.js +0 -51
- package/dist/functions/start/buildFile.js +0 -85
- package/dist/functions/start/buildFiles.js +0 -76
- package/dist/functions/start/buildPlugins.js +0 -183
- package/dist/functions/start/checkIfPortAvailable.js +0 -18
- package/dist/functions/start/cleanup/index.js +0 -18
- package/dist/functions/start/databases/mongodb/availableQueryParameters.js +0 -42
- package/dist/functions/start/databases/mongodb/buildConnectionString.js +0 -22
- package/dist/functions/start/databases/mongodb/buildQueryParameters.js +0 -14
- package/dist/functions/start/databases/mongodb/checkConnection.js +0 -35
- package/dist/functions/start/databases/mongodb/connect.js +0 -25
- package/dist/functions/start/databases/mongodb/index.js +0 -93
- package/dist/functions/start/databases/postgresql/checkConnection.js +0 -41
- package/dist/functions/start/databases/postgresql/connect.js +0 -27
- package/dist/functions/start/databases/postgresql/index.js +0 -106
- package/dist/functions/start/databases/redis.js +0 -0
- package/dist/functions/start/databases/startProvider.js +0 -16
- package/dist/functions/start/fileDependencyMapper.js +0 -22
- package/dist/functions/start/filesToCopy.js +0 -18
- package/dist/functions/start/generateId.js +0 -74
- package/dist/functions/start/getCodependenciesForFile.js +0 -64
- package/dist/functions/start/getFilesToBuild.js +0 -39
- package/dist/functions/start/getProcessIdFromPort.js +0 -60
- package/dist/functions/start/hmrServer.js +0 -66
- package/dist/functions/start/index.js +0 -31
- package/dist/functions/start/isWindows.js +0 -5
- package/dist/functions/start/minifyFile.js +0 -12
- package/dist/functions/start/onWarn.js +0 -63
- package/dist/functions/start/readFileDependencyMap.js +0 -16
- package/dist/functions/start/removeDeletedDependenciesFromMap.js +0 -18
- package/dist/functions/start/setComponentId.js +0 -46
- package/dist/functions/start/updateFileMap.js +0 -67
- package/dist/functions/test/index.js +0 -30
- package/dist/functions/update/index.js +0 -21
- package/dist/functions/use/index.js +0 -61
- package/dist/lib/CLILog.js +0 -49
- package/dist/lib/build/browserPathExclusions.js +0 -7
- package/dist/lib/build/browserPaths.js +0 -11
- package/dist/lib/build/buildFile.js +0 -84
- package/dist/lib/build/buildFiles.js +0 -238
- package/dist/lib/build/buildPlugins.js +0 -186
- package/dist/lib/build/getCodeFrame.js +0 -9
- package/dist/lib/build/minifyFile.js +0 -12
- package/dist/lib/build/nodePathExclusions.js +0 -7
- package/dist/lib/build/nodePaths.js +0 -11
- package/dist/lib/build/onWarn.js +0 -63
- package/dist/lib/build/removeDeletedDependenciesFromMap.js +0 -18
- package/dist/lib/build/setComponentId.js +0 -46
- package/dist/lib/build/updateFileMap.js +0 -67
- package/dist/lib/buildResolvePlugin.js +0 -21
- package/dist/lib/checkIfValidJSON.js +0 -11
- package/dist/lib/colorLog.js +0 -7
- package/dist/lib/dev/cleanup.js +0 -30
- package/dist/lib/dev/databases/mongodb/availableQueryParameters.js +0 -42
- package/dist/lib/dev/databases/mongodb/buildConnectionString.js +0 -22
- package/dist/lib/dev/databases/mongodb/buildQueryParameters.js +0 -14
- package/dist/lib/dev/databases/mongodb/checkConnection.js +0 -38
- package/dist/lib/dev/databases/mongodb/connect.js +0 -25
- package/dist/lib/dev/databases/mongodb/index.js +0 -93
- package/dist/lib/dev/databases/postgresql/checkConnection.js +0 -41
- package/dist/lib/dev/databases/postgresql/connect.js +0 -27
- package/dist/lib/dev/databases/postgresql/index.js +0 -106
- package/dist/lib/dev/databases/providerMap.js +0 -15
- package/dist/lib/dev/getCodependenciesForFile.js +0 -64
- package/dist/lib/dev/getFilesToBuild.js +0 -38
- package/dist/lib/dev/index.js +0 -452
- package/dist/lib/dev/isWindows.js +0 -5
- package/dist/lib/dev/loadSettings.js +0 -79
- package/dist/lib/dev/readFileDependencyMap.js +0 -16
- package/dist/lib/dev/requiredFiles.js +0 -18
- package/dist/lib/dev/runBuild.js +0 -30
- package/dist/lib/dev/runTests.js +0 -30
- package/dist/lib/dev/startApp.js +0 -79
- package/dist/lib/dev/startDatabases.js +0 -109
- package/dist/lib/dev/startHMR.js +0 -55
- package/dist/lib/dev/updateFileMap.js +0 -67
- package/dist/lib/dev/validateProject.js +0 -0
- package/dist/lib/dev/watchlist.js +0 -15
- package/dist/lib/filesToCopy.js +0 -18
- package/dist/lib/generateId.js +0 -74
- package/dist/lib/getArgs.js +0 -14
- package/dist/lib/getOptions.js +0 -15
- package/dist/lib/getPlatformSafePath.js +0 -7
- package/dist/lib/getProcessIdFromPort.js +0 -60
- package/dist/lib/getProvider.js +0 -8
- package/dist/lib/help.js +0 -56
- package/dist/lib/isObject.js +0 -6
- package/dist/lib/isValidJSONString.js +0 -11
- package/dist/lib/isWindows.js +0 -5
- package/dist/lib/killProcesses.js +0 -0
- package/dist/lib/loadSettings.js +0 -33
- package/dist/lib/masterIgnoreList.js +0 -16
- package/dist/lib/nodeEnvironment.js +0 -9
- package/dist/lib/nodeEnvironments.js +0 -8
- package/dist/lib/parseCookiesFromLogin.js +0 -18
- package/dist/lib/rainbowRoad.js +0 -7
- package/dist/lib/readDirectorySync.js +0 -14
- package/dist/lib/regexes.js +0 -14
- package/dist/lib/replaceBackslashesWithForwardSlashes.js +0 -8
- package/dist/lib/replaceFileProtocol.js +0 -8
- package/dist/lib/serializeQueryParameters.js +0 -8
- package/dist/lib/settings.js +0 -4
- package/dist/lib/validateDatabasesFromSettings.js +0 -34
- package/dist/lib/wait.js +0 -8
- package/release.js +0 -40
- package/src/functions/build/getTarIgnoreList.js +0 -30
- package/src/functions/build/index.js +0 -63
- package/src/functions/create/buildPackageJSON.js +0 -18
- package/src/functions/create/index.js +0 -209
- package/src/functions/create/templates/api/index.js +0 -4
- package/src/functions/create/templates/i18n/en-US.js +0 -4
- package/src/functions/create/templates/index.client.js +0 -7
- package/src/functions/create/templates/index.css +0 -20
- package/src/functions/create/templates/public/apple-touch-icon-152x152.png +0 -0
- package/src/functions/create/templates/public/favicon.ico +0 -0
- package/src/functions/create/templates/public/splash-screen-1024x1024.png +0 -0
- package/src/functions/create/templates/ui/pages/error/index.js +0 -31
- package/src/functions/create/templates/ui/pages/index/index.js +0 -94
- package/src/functions/index.js +0 -243
- package/src/functions/logout/index.js +0 -20
- package/src/functions/push/checkIfProvisionAvailable.js +0 -20
- package/src/functions/push/deploy/index.js +0 -199
- package/src/functions/push/deploy/initial.js +0 -108
- package/src/functions/push/deploy/version.js +0 -108
- package/src/functions/push/domains.js +0 -23
- package/src/functions/push/getAvailableCDN.js +0 -27
- package/src/functions/push/getDeployment.js +0 -43
- package/src/functions/push/getDeploymentSummary.js +0 -39
- package/src/functions/push/getInstanceSizeRegions.js +0 -40
- package/src/functions/push/getInstanceSizesForRegion.js +0 -35
- package/src/functions/push/getProviderInstanceSizes.js +0 -35
- package/src/functions/push/getProviderRegions.js +0 -39
- package/src/functions/push/getProvidersWithConnectionStatus.js +0 -25
- package/src/functions/push/getSessionToken.js +0 -26
- package/src/functions/push/getUserFromSessionToken.js +0 -39
- package/src/functions/push/index.js +0 -245
- package/src/functions/push/loginToCheatCode.js +0 -34
- package/src/functions/push/pingProvisionAPI.js +0 -33
- package/src/functions/push/prompts.js +0 -276
- package/src/functions/push/providerMap.js +0 -8
- package/src/functions/push/providers.js +0 -6
- package/src/functions/reset/index.js +0 -0
- package/src/functions/reset/reset.js +0 -163
- package/src/functions/start/bootstrapLayoutComponent.js +0 -57
- package/src/functions/start/bootstrapPageComponent.js +0 -54
- package/src/functions/start/buildFile.js +0 -97
- package/src/functions/start/buildFiles.js +0 -101
- package/src/functions/start/buildPlugins.js +0 -215
- package/src/functions/start/checkIfPortAvailable.js +0 -21
- package/src/functions/start/cleanup/index.js +0 -23
- package/src/functions/start/databases/mongodb/availableQueryParameters.js +0 -39
- package/src/functions/start/databases/mongodb/buildConnectionString.js +0 -28
- package/src/functions/start/databases/mongodb/buildQueryParameters.js +0 -15
- package/src/functions/start/databases/mongodb/checkConnection.js +0 -36
- package/src/functions/start/databases/mongodb/connect.js +0 -25
- package/src/functions/start/databases/mongodb/index.js +0 -108
- package/src/functions/start/databases/postgresql/checkConnection.js +0 -43
- package/src/functions/start/databases/postgresql/connect.js +0 -27
- package/src/functions/start/databases/postgresql/index.js +0 -127
- package/src/functions/start/databases/redis.js +0 -0
- package/src/functions/start/databases/startProvider.js +0 -15
- package/src/functions/start/fileDependencyMapper.js +0 -24
- package/src/functions/start/generateId.js +0 -73
- package/src/functions/start/getCodependenciesForFile.js +0 -84
- package/src/functions/start/getFilesToBuild.js +0 -49
- package/src/functions/start/getProcessIdFromPort.js +0 -92
- package/src/functions/start/hmrServer.js +0 -78
- package/src/functions/start/index.js +0 -701
- package/src/functions/start/isWindows.js +0 -3
- package/src/functions/start/minifyFile.js +0 -10
- package/src/functions/start/onWarn.js +0 -68
- package/src/functions/start/readFileDependencyMap.js +0 -19
- package/src/functions/start/removeDeletedDependenciesFromMap.js +0 -19
- package/src/functions/start/setComponentId.js +0 -58
- package/src/functions/start/updateFileMap.js +0 -100
- package/src/functions/test/index.js +0 -34
- package/src/functions/update/index.js +0 -20
- package/src/functions/use/index.js +0 -62
- package/src/lib/build/browserPathExclusions.js +0 -5
- package/src/lib/build/browserPaths.js +0 -9
- package/src/lib/build/buildFile.js +0 -91
- package/src/lib/build/buildFiles.js +0 -270
- package/src/lib/build/buildPlugins.js +0 -222
- package/src/lib/build/getCodeFrame.js +0 -7
- package/src/lib/build/minifyFile.js +0 -10
- package/src/lib/build/nodePathExclusions.js +0 -5
- package/src/lib/build/nodePaths.js +0 -9
- package/src/lib/build/onWarn.js +0 -68
- package/src/lib/build/removeDeletedDependenciesFromMap.js +0 -19
- package/src/lib/build/setComponentId.js +0 -58
- package/src/lib/build/updateFileMap.js +0 -100
- package/src/lib/buildResolvePlugin.js +0 -32
- package/src/lib/checkIfValidJSON.js +0 -8
- package/src/lib/colorLog.js +0 -5
- package/src/lib/dev/cleanup.js +0 -34
- package/src/lib/dev/databases/mongodb/buildConnectionString.js +0 -28
- package/src/lib/dev/databases/mongodb/buildQueryParameters.js +0 -15
- package/src/lib/dev/databases/mongodb/checkConnection.js +0 -40
- package/src/lib/dev/databases/mongodb/connect.js +0 -25
- package/src/lib/dev/databases/mongodb/index.js +0 -108
- package/src/lib/dev/databases/postgresql/checkConnection.js +0 -43
- package/src/lib/dev/databases/postgresql/connect.js +0 -27
- package/src/lib/dev/databases/postgresql/index.js +0 -127
- package/src/lib/dev/databases/providerMap.js +0 -13
- package/src/lib/dev/getCodependenciesForFile.js +0 -84
- package/src/lib/dev/getFilesToBuild.js +0 -47
- package/src/lib/dev/index.js +0 -560
- package/src/lib/dev/isWindows.js +0 -3
- package/src/lib/dev/loadSettings.js +0 -90
- package/src/lib/dev/readFileDependencyMap.js +0 -19
- package/src/lib/dev/runBuild.js +0 -33
- package/src/lib/dev/runTests.js +0 -33
- package/src/lib/dev/startApp.js +0 -89
- package/src/lib/dev/startDatabases.js +0 -131
- package/src/lib/dev/startHMR.js +0 -62
- package/src/lib/dev/updateFileMap.js +0 -100
- package/src/lib/dev/validateProject.js +0 -0
- package/src/lib/dev/watchlist.js +0 -13
- package/src/lib/filesToCopy.js +0 -15
- package/src/lib/generateId.js +0 -73
- package/src/lib/getArgs.js +0 -14
- package/src/lib/getOptions.js +0 -12
- package/src/lib/getProcessIdFromPort.js +0 -92
- package/src/lib/getProvider.js +0 -5
- package/src/lib/help.js +0 -56
- package/src/lib/isObject.js +0 -3
- package/src/lib/isValidJSONString.js +0 -8
- package/src/lib/killProcesses.js +0 -5
- package/src/lib/loadSettings.js +0 -40
- package/src/lib/masterIgnoreList.js +0 -13
- package/src/lib/nodeEnvironment.js +0 -6
- package/src/lib/nodeEnvironments.js +0 -8
- package/src/lib/parseCookiesFromLogin.js +0 -21
- package/src/lib/readDirectorySync.js +0 -13
- package/src/lib/regexes.js +0 -7
- package/src/lib/replaceBackslashesWithForwardSlashes.js +0 -8
- package/src/lib/replaceFileProtocol.js +0 -8
- package/src/lib/serializeQueryParameters.js +0 -5
- package/src/lib/settings.js +0 -1
- package/src/lib/validateDatabasesFromSettings.js +0 -37
- package/src/lib/wait.js +0 -5
- package/storage/.verdaccio-db.json +0 -1
- /package/{src/lib → .build}/getPlatformSafePath.js +0 -0
- /package/{src/lib → .build}/isWindows.js +0 -0
- /package/dist/{functions/create/templates → commands/create/template}/public/service-worker.js +0 -0
- /package/dist/{functions/create/templates → commands/create/template}/settings.development.json +0 -0
- /package/src/{functions/create/templates → commands/create/template}/public/service-worker.js +0 -0
- /package/src/{functions/create/templates → commands/create/template}/settings.development.json +0 -0
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import * as acorn from "acorn";
|
|
3
|
-
|
|
4
|
-
const getImportsAndRequires = (map = {}) => {
|
|
5
|
-
const { body } = map;
|
|
6
|
-
|
|
7
|
-
const imports =
|
|
8
|
-
body &&
|
|
9
|
-
body.filter(({ type }) => {
|
|
10
|
-
return type === "ImportDeclaration";
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
const requires =
|
|
14
|
-
body &&
|
|
15
|
-
body.filter((statement) => {
|
|
16
|
-
const type = statement && statement.type;
|
|
17
|
-
const declarations = (statement && statement.declarations) || [];
|
|
18
|
-
|
|
19
|
-
const isVariableDeclaration = type === "VariableDeclaration";
|
|
20
|
-
|
|
21
|
-
const hasRequireStatement = declarations.some((declaration) => {
|
|
22
|
-
const isVariableDeclarator = declaration.type === "VariableDeclarator";
|
|
23
|
-
const calleeName =
|
|
24
|
-
declaration &&
|
|
25
|
-
declaration.init &&
|
|
26
|
-
declaration.init.callee &&
|
|
27
|
-
declaration.init.callee.name;
|
|
28
|
-
return isVariableDeclarator && calleeName === "require";
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
return isVariableDeclaration && hasRequireStatement;
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
return {
|
|
35
|
-
imports: imports.map((importDeclaration) => {
|
|
36
|
-
return {
|
|
37
|
-
path:
|
|
38
|
-
importDeclaration &&
|
|
39
|
-
importDeclaration.source &&
|
|
40
|
-
importDeclaration.source.value,
|
|
41
|
-
};
|
|
42
|
-
}),
|
|
43
|
-
requires: requires.map((requireDeclaration) => {
|
|
44
|
-
const declarations = requireDeclaration.declarations;
|
|
45
|
-
const declaration = declarations && declarations[0];
|
|
46
|
-
|
|
47
|
-
return {
|
|
48
|
-
path:
|
|
49
|
-
declaration &&
|
|
50
|
-
declaration.init &&
|
|
51
|
-
declaration.init.arguments &&
|
|
52
|
-
declaration.init.arguments[0] &&
|
|
53
|
-
declaration.init.arguments[0].value,
|
|
54
|
-
};
|
|
55
|
-
}),
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
const parseFileToAST = (source = "") => {
|
|
60
|
-
return acorn.parse(source, {
|
|
61
|
-
ecmaVersion: "latest",
|
|
62
|
-
sourceType: "module",
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
const readFileDependencyMap = () => {
|
|
67
|
-
const fileDependencyMapPath = `.joystick/build/fileMap.json`;
|
|
68
|
-
|
|
69
|
-
if (fs.existsSync(fileDependencyMapPath)) {
|
|
70
|
-
const fileDependencyMapAsJSON = fs.readFileSync(
|
|
71
|
-
fileDependencyMapPath,
|
|
72
|
-
"utf-8"
|
|
73
|
-
);
|
|
74
|
-
const fileMap = fileDependencyMapAsJSON
|
|
75
|
-
? JSON.parse(fileDependencyMapAsJSON)
|
|
76
|
-
: {};
|
|
77
|
-
|
|
78
|
-
return fileMap;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
return {};
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
export default (path = "", source = "") => {
|
|
85
|
-
try {
|
|
86
|
-
const fileDependencyMap = readFileDependencyMap();
|
|
87
|
-
const fileAST = parseFileToAST(source);
|
|
88
|
-
const imports = fileAST ? getImportsAndRequires(fileAST) : [];
|
|
89
|
-
|
|
90
|
-
fileDependencyMap[path] = imports;
|
|
91
|
-
|
|
92
|
-
fs.writeFileSync(
|
|
93
|
-
`.joystick/build/fileMap.json`,
|
|
94
|
-
JSON.stringify(fileDependencyMap, null, 2)
|
|
95
|
-
);
|
|
96
|
-
} catch (exception) {
|
|
97
|
-
// Do nothing. This exists to handle acorn parsing errors that are also picked
|
|
98
|
-
// up by the esbuild parser (we want to defer to esbuild).
|
|
99
|
-
}
|
|
100
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
// TODO: None of these plugin-level methods give us the info we need. They *should*
|
|
2
|
-
// but it's not defined (which means at best it's inconsistent).
|
|
3
|
-
//
|
|
4
|
-
// TODO: Just run a full build of the parent path where the file is located, or,
|
|
5
|
-
// build the entire app again. That has an n(0) problem that we'll have to solve
|
|
6
|
-
// but I think we can figure it out in time (or invent a custom a solution).
|
|
7
|
-
|
|
8
|
-
export default function myExample() {
|
|
9
|
-
return {
|
|
10
|
-
name: "joystick-build-resolve", // this name will show up in warnings and errors
|
|
11
|
-
buildEnd() {
|
|
12
|
-
const moduleIds = Array.from(this.getModuleIds());
|
|
13
|
-
const modules = moduleIds
|
|
14
|
-
.map((moduleId) => this.getModuleInfo(moduleId))
|
|
15
|
-
.filter(({ id }) => {
|
|
16
|
-
const ignorePaths = ["node_modules", "dist"];
|
|
17
|
-
const noResolvePaths = ["/ui", "/api"];
|
|
18
|
-
|
|
19
|
-
if (
|
|
20
|
-
!ignorePaths.some((path) => id.includes(path)) &&
|
|
21
|
-
noResolvePaths.some((path) => id.includes(path))
|
|
22
|
-
) {
|
|
23
|
-
return true;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
return false;
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
return null;
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
}
|
package/src/lib/colorLog.js
DELETED
package/src/lib/dev/cleanup.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/* eslint-disable consistent-return */
|
|
2
|
-
|
|
3
|
-
const actionMethod = () => {
|
|
4
|
-
try {
|
|
5
|
-
// Perform a single step in your action here.
|
|
6
|
-
} catch (exception) {
|
|
7
|
-
throw new Error(`[cleanup.actionMethod] ${exception.message}`);
|
|
8
|
-
}
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const validateOptions = (options) => {
|
|
12
|
-
try {
|
|
13
|
-
if (!options) throw new Error('options object is required.');
|
|
14
|
-
if (!options.someOption) throw new Error('options.someOption is required.');
|
|
15
|
-
} catch (exception) {
|
|
16
|
-
throw new Error(`[cleanup.validateOptions] ${exception.message}`);
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
const cleanup = (options, { resolve, reject }) => {
|
|
21
|
-
try {
|
|
22
|
-
validateOptions(options);
|
|
23
|
-
// Call action methods in sequence here.
|
|
24
|
-
resolve();
|
|
25
|
-
} catch (exception) {
|
|
26
|
-
reject(`[cleanup] ${exception.message}`);
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
export default (options) =>
|
|
31
|
-
new Promise((resolve, reject) => {
|
|
32
|
-
cleanup(options, { resolve, reject });
|
|
33
|
-
});
|
|
34
|
-
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import buildQueryParameters from "./buildQueryParameters.js";
|
|
2
|
-
import serializeQueryParameters from "../../../../lib/serializeQueryParameters.js";
|
|
3
|
-
|
|
4
|
-
export default (connection = {}) => {
|
|
5
|
-
let connectionString = "mongodb://";
|
|
6
|
-
|
|
7
|
-
if (connection && (connection.username || connection.password)) {
|
|
8
|
-
connectionString = `${connectionString}${connection.username || connection.password ? `${connection.username || ""}${!!connection.username && !!connection.password ? ':' : ''}${connection.password || ""}@` : ''}`;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
if (connection && connection.hosts && Array.isArray(connection.hosts)) {
|
|
12
|
-
connectionString = `${connectionString}${connection.hosts
|
|
13
|
-
.map((host) => `${host.hostname}:${host.port}`)
|
|
14
|
-
.join(",")}`;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
if (connection && connection.database) {
|
|
18
|
-
connectionString = `${connectionString}/${connection.database}`;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const queryParameters = buildQueryParameters(connection);
|
|
22
|
-
|
|
23
|
-
if (Object.keys(queryParameters)?.length > 0 ) {
|
|
24
|
-
connectionString = `${connectionString}?${serializeQueryParameters(queryParameters)}`;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
return connectionString;
|
|
28
|
-
};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import availableQueryParameters from "./availableQueryParameters.js";
|
|
2
|
-
|
|
3
|
-
export default (connection = {}) => {
|
|
4
|
-
const queryParameters = {};
|
|
5
|
-
|
|
6
|
-
for (let i = 0; i < availableQueryParameters.length; i += 1) {
|
|
7
|
-
const availableParameter = availableQueryParameters[i];
|
|
8
|
-
|
|
9
|
-
if (connection && connection[availableParameter]) {
|
|
10
|
-
queryParameters[availableParameter] = connection[availableParameter];
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
return queryParameters;
|
|
15
|
-
};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { MongoClient } from "mongodb";
|
|
2
|
-
import chalk from "chalk";
|
|
3
|
-
import fs from 'fs';
|
|
4
|
-
import buildConnectionString from "./buildConnectionString.js";
|
|
5
|
-
|
|
6
|
-
export default async (connection = {}, options = {}) => {
|
|
7
|
-
const connectionString = buildConnectionString(connection);
|
|
8
|
-
console.log({
|
|
9
|
-
connectionString
|
|
10
|
-
})
|
|
11
|
-
|
|
12
|
-
try {
|
|
13
|
-
const connectionOptions = {
|
|
14
|
-
connectTimeoutMS: 3000,
|
|
15
|
-
socketTimeoutMS: 3000,
|
|
16
|
-
useNewUrlParser: true,
|
|
17
|
-
useUnifiedTopology: true,
|
|
18
|
-
ssl: false,
|
|
19
|
-
...(options || {}),
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
if (options?.ca) {
|
|
23
|
-
connectionOptions.ca = fs.readFileSync(options?.ca);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const connection = await MongoClient.connect(connectionString, connectionOptions);
|
|
27
|
-
|
|
28
|
-
connection.close();
|
|
29
|
-
|
|
30
|
-
return true;
|
|
31
|
-
} catch (exception) {
|
|
32
|
-
console.warn(exception);
|
|
33
|
-
console.warn(
|
|
34
|
-
chalk.yellowBright(
|
|
35
|
-
`\nFailed to connect to MongoDB. Please double-check connection settings and try again.`
|
|
36
|
-
)
|
|
37
|
-
);
|
|
38
|
-
process.exit(1);
|
|
39
|
-
}
|
|
40
|
-
};
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import checkConnection from "./checkConnection.js";
|
|
2
|
-
import mongodb from "./index.js";
|
|
3
|
-
|
|
4
|
-
export default async (settings = {}, port = 2610) => {
|
|
5
|
-
const hasConnection = settings.connection && Object.keys(settings.connection).length > 0;
|
|
6
|
-
|
|
7
|
-
if (hasConnection) {
|
|
8
|
-
await checkConnection(settings.connection, settings.options);
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
return {
|
|
12
|
-
pid: !hasConnection ? await mongodb(port) : null,
|
|
13
|
-
connection: hasConnection ? settings.connection : {
|
|
14
|
-
hosts: [
|
|
15
|
-
{
|
|
16
|
-
hostname: "127.0.0.1",
|
|
17
|
-
port,
|
|
18
|
-
},
|
|
19
|
-
],
|
|
20
|
-
database: "app",
|
|
21
|
-
username: "",
|
|
22
|
-
password: "",
|
|
23
|
-
},
|
|
24
|
-
};
|
|
25
|
-
};
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import commandExists from "command-exists";
|
|
3
|
-
import child_process from "child_process";
|
|
4
|
-
import { kill as killPortProcess } from 'cross-port-killer';
|
|
5
|
-
import isWindows from "../../isWindows.js";
|
|
6
|
-
import CLILog from "../../../../lib/CLILog.js";
|
|
7
|
-
import getProcessIdFromPort from "../../../getProcessIdFromPort.js";
|
|
8
|
-
|
|
9
|
-
const getMongoProcessId = async (port = 2601) => {
|
|
10
|
-
const pids = await getProcessIdFromPort(port);
|
|
11
|
-
return pids.tcp && pids.tcp[0];
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
const warnMongoDBMissing = () => {
|
|
15
|
-
CLILog(
|
|
16
|
-
`MongoDB is not installed on this computer.\n\n Download MongoDB at https://www.mongodb.com/try/download/community\n\n After you've installed MongoDB, run joystick start again, or, remove MongoDB from your config.databases array in your settings.development.json file to skip starting it up.`, {
|
|
17
|
-
level: 'danger',
|
|
18
|
-
docs: 'https://github.com/cheatcode/joystick#databases',
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const checkIfMongoDBExists = () => {
|
|
23
|
-
if (isWindows) {
|
|
24
|
-
const mongodbVersions = fs
|
|
25
|
-
.readdirSync(`C:\\Program Files\\MongoDB\\Server\\`)
|
|
26
|
-
.sort()
|
|
27
|
-
.reverse();
|
|
28
|
-
|
|
29
|
-
return mongodbVersions && mongodbVersions.length > 0;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return commandExists.sync("mongod");
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const startMongoDBProcess = (mongodbPort = 2610, dataDirectoryExists = false, resolveAfterRestart = null) => {
|
|
36
|
-
return new Promise((resolve) => {
|
|
37
|
-
const databaseProcessFlags = [
|
|
38
|
-
'--port',
|
|
39
|
-
mongodbPort,
|
|
40
|
-
'--dbpath',
|
|
41
|
-
`./.joystick/data/mongodb_${mongodbPort}`,
|
|
42
|
-
'--quiet',
|
|
43
|
-
'--replSet',
|
|
44
|
-
`joystick_${mongodbPort}`,
|
|
45
|
-
];
|
|
46
|
-
|
|
47
|
-
const databaseProcess = child_process.spawn(
|
|
48
|
-
`mongod`,
|
|
49
|
-
databaseProcessFlags.filter((command) => !!command),
|
|
50
|
-
);
|
|
51
|
-
|
|
52
|
-
databaseProcess.stdout.on('data', async (data) => {
|
|
53
|
-
const stdout = data?.toString();
|
|
54
|
-
|
|
55
|
-
if (stdout.includes('Waiting for connections')) {
|
|
56
|
-
child_process.exec(`mongo --eval "rs.initiate()" --verbose --port ${mongodbPort}`, async (error, stdout, stderr) => {
|
|
57
|
-
if (error || stderr) {
|
|
58
|
-
console.warn(error || stderr);
|
|
59
|
-
} else {
|
|
60
|
-
const processId = await getMongoProcessId(mongodbPort);
|
|
61
|
-
return resolve(processId);
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
const setupDataDirectory = (mongodbPort = 2610) => {
|
|
70
|
-
// NOTE: MongoDB was originally started as a standalone server. To enable additional functionality,
|
|
71
|
-
// we moved to a replica set config which necessitated multiple data directories in order to support
|
|
72
|
-
// running the same app on multiple ports (a limitation of MongoDB).
|
|
73
|
-
const legacyDataDirectoryExists = fs.existsSync(".joystick/data/mongodb");
|
|
74
|
-
const dataDirectoryExists = fs.existsSync(`.joystick/data/mongodb_${mongodbPort}`);
|
|
75
|
-
|
|
76
|
-
if (legacyDataDirectoryExists && !dataDirectoryExists) {
|
|
77
|
-
fs.renameSync('.joystick/data/mongodb', `.joystick/data/mongodb_${mongodbPort}`);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
if (!dataDirectoryExists) {
|
|
81
|
-
fs.mkdirSync(`.joystick/data/mongodb_${mongodbPort}`, { recursive: true });
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return dataDirectoryExists;
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
const startMongoDB = async (mongodbPort = 2610) => {
|
|
88
|
-
const mongodbExists = checkIfMongoDBExists();
|
|
89
|
-
|
|
90
|
-
if (!mongodbExists) {
|
|
91
|
-
process.loader.stop();
|
|
92
|
-
warnMongoDBMissing();
|
|
93
|
-
process.exit(1);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
const dataDirectoryExists = setupDataDirectory(mongodbPort);
|
|
97
|
-
|
|
98
|
-
try {
|
|
99
|
-
await killPortProcess(mongodbPort);
|
|
100
|
-
const mongodbProcessId = await startMongoDBProcess(mongodbPort, dataDirectoryExists);
|
|
101
|
-
return mongodbProcessId;
|
|
102
|
-
} catch (exception) {
|
|
103
|
-
console.warn(exception);
|
|
104
|
-
process.exit(1);
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
export default async (port = 2610) => await startMongoDB(port);
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import postgresql from "pg";
|
|
2
|
-
import chalk from "chalk";
|
|
3
|
-
|
|
4
|
-
const { Client } = postgresql;
|
|
5
|
-
|
|
6
|
-
const testQuery = (client = {}) => {
|
|
7
|
-
return new Promise((resolve, reject) => {
|
|
8
|
-
client.query('SELECT NOW()', (error) => {
|
|
9
|
-
if (error) {
|
|
10
|
-
reject();
|
|
11
|
-
} else {
|
|
12
|
-
resolve();
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
client.end()
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
export default async (connection) => {
|
|
21
|
-
try {
|
|
22
|
-
const host = connection?.hosts && connection?.hosts[0];
|
|
23
|
-
const client = new Client({
|
|
24
|
-
user: connection?.username,
|
|
25
|
-
host: host?.hostname,
|
|
26
|
-
database: connection?.database,
|
|
27
|
-
password: connection?.password,
|
|
28
|
-
port: host?.port,
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
client.connect();
|
|
32
|
-
await testQuery(client);
|
|
33
|
-
|
|
34
|
-
return true;
|
|
35
|
-
} catch (exception) {
|
|
36
|
-
console.warn(
|
|
37
|
-
chalk.yellowBright(
|
|
38
|
-
`\nFailed to connect to PostgreSQL. Please double-check connection settings and try again.`
|
|
39
|
-
)
|
|
40
|
-
);
|
|
41
|
-
process.exit(1);
|
|
42
|
-
}
|
|
43
|
-
};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import os from 'os';
|
|
2
|
-
import checkConnection from "./checkConnection.js";
|
|
3
|
-
import postgresql from "./index.js";
|
|
4
|
-
|
|
5
|
-
export default async (settings = {}, port = 2610) => {
|
|
6
|
-
const hasConnection = settings.connection && Object.keys(settings.connection).length > 0;
|
|
7
|
-
|
|
8
|
-
if (hasConnection) {
|
|
9
|
-
await checkConnection(settings.connection, settings.options);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
return {
|
|
13
|
-
pid: !hasConnection ? await postgresql(port) : null,
|
|
14
|
-
connection: hasConnection ? settings.connection : {
|
|
15
|
-
hosts: [
|
|
16
|
-
{
|
|
17
|
-
hostname: "127.0.0.1",
|
|
18
|
-
port,
|
|
19
|
-
},
|
|
20
|
-
],
|
|
21
|
-
database: "app",
|
|
22
|
-
// NOTE: PostgreSQL creates a default superuser based on the OS username.
|
|
23
|
-
username: (os.userInfo() || {}).username || "",
|
|
24
|
-
password: "",
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
};
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import chalk from "chalk";
|
|
3
|
-
import util from "util";
|
|
4
|
-
import commandExists from "command-exists";
|
|
5
|
-
import child_process from "child_process";
|
|
6
|
-
import { kill as killPortProcess } from 'cross-port-killer';
|
|
7
|
-
import getProcessIdFromPort from "../../../getProcessIdFromPort.js";
|
|
8
|
-
import CLILog from "../../../CLILog.js";
|
|
9
|
-
|
|
10
|
-
const exec = util.promisify(child_process.exec);
|
|
11
|
-
|
|
12
|
-
const getPostgreSQLProcessId = async (port = 2610) => {
|
|
13
|
-
const pids = await getProcessIdFromPort(port);
|
|
14
|
-
return pids.tcp && pids.tcp[0];
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
const setupDataDirectory = (postgresqlPort = 2610) => {
|
|
18
|
-
const legacyDataDirectoryExists = fs.existsSync(".joystick/data/postgresql");
|
|
19
|
-
let dataDirectoryExists = fs.existsSync(`.joystick/data/postgresql_${postgresqlPort}`);
|
|
20
|
-
|
|
21
|
-
if (legacyDataDirectoryExists && !dataDirectoryExists) {
|
|
22
|
-
fs.renameSync('.joystick/data/postgresql', `.joystick/data/postgresql_${postgresqlPort}`);
|
|
23
|
-
dataDirectoryExists = true;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
if (!dataDirectoryExists) {
|
|
27
|
-
fs.mkdirSync(`.joystick/data/postgresql_${postgresqlPort}`, { recursive: true });
|
|
28
|
-
dataDirectoryExists = true;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return dataDirectoryExists;
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const warnPostgreSQLIsMissing = () => {
|
|
35
|
-
CLILog(
|
|
36
|
-
'PostgreSQL is not installed on this computer. You can download PostgreSQL at https://www.postgresql.org/download. After you\'ve installed PostgreSQL, run joystick start again, or, remove PostgreSQL from your databases list in your settings.development.json file to skip startup.',
|
|
37
|
-
{
|
|
38
|
-
level: 'danger',
|
|
39
|
-
docs: 'https://cheatcode.co/docs/joystick/cli#databases'
|
|
40
|
-
}
|
|
41
|
-
);
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
const checkIfPostgreSQLExists = () => {
|
|
45
|
-
return commandExists.sync("psql");
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
const checkIfPostgreSQLControlExists = () => {
|
|
49
|
-
return commandExists.sync("pg_ctl");
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
const startPostgreSQL = async (port = 2610) => {
|
|
53
|
-
const postgreSQLExists = checkIfPostgreSQLExists();
|
|
54
|
-
|
|
55
|
-
if (!postgreSQLExists) {
|
|
56
|
-
process.loader.stop();
|
|
57
|
-
warnPostgreSQLIsMissing();
|
|
58
|
-
process.exit(1);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
const postgreSQLControlExists = checkIfPostgreSQLControlExists();
|
|
62
|
-
|
|
63
|
-
if (!postgreSQLControlExists) {
|
|
64
|
-
CLILog(
|
|
65
|
-
'PostgreSQL is installed on this computer, but pg_ctl (what Joystick uses to start and manage PostgreSQL) is not in your command line\'s PATH variable. Add pg_ctl to your command line\'s PATH, restart your command line, and try again.',
|
|
66
|
-
{
|
|
67
|
-
level: 'danger',
|
|
68
|
-
docs: 'https://cheatcode.co/docs/joystick/postgresql#path'
|
|
69
|
-
}
|
|
70
|
-
);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
try {
|
|
74
|
-
const dataDirectoryExists = setupDataDirectory(port);
|
|
75
|
-
|
|
76
|
-
if (!dataDirectoryExists && postgreSQLControlExists) {
|
|
77
|
-
await exec(
|
|
78
|
-
`pg_ctl init -D .joystick/data/postgresql_${port}`
|
|
79
|
-
);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
const postgreSQLPort = port;
|
|
83
|
-
await killPortProcess(postgreSQLPort);
|
|
84
|
-
|
|
85
|
-
const databaseProcess = child_process.spawn(
|
|
86
|
-
`pg_ctl`,
|
|
87
|
-
[
|
|
88
|
-
'-o',
|
|
89
|
-
`"-p ${postgreSQLPort}"`,
|
|
90
|
-
'-D',
|
|
91
|
-
`.joystick/data/postgresql_${port}`,
|
|
92
|
-
'start',
|
|
93
|
-
].filter((command) => !!command),
|
|
94
|
-
);
|
|
95
|
-
|
|
96
|
-
return new Promise((resolve) => {
|
|
97
|
-
databaseProcess.stdout.on('data', async (data) => {
|
|
98
|
-
const stdout = data?.toString();
|
|
99
|
-
if (stdout.includes('database system is ready to accept connections')) {
|
|
100
|
-
const processId = await getPostgreSQLProcessId(postgreSQLPort);
|
|
101
|
-
const createAppDatabaseProcess = child_process.exec(`createdb -h 127.0.0.1 -p ${postgreSQLPort} app`);
|
|
102
|
-
|
|
103
|
-
createAppDatabaseProcess.stderr.on('data', (error) => {
|
|
104
|
-
// NOTE: PostgreSQL does not have a clean way to create database if it doesn't exist. Use this as a hack
|
|
105
|
-
// to get around the "already exists" error (if the database exists, it's not an issue).
|
|
106
|
-
if (error && error.includes('database "app" already exists')) {
|
|
107
|
-
resolve(processId);
|
|
108
|
-
} else {
|
|
109
|
-
console.log(error);
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
|
|
113
|
-
createAppDatabaseProcess.stdout.on('data', () => {
|
|
114
|
-
resolve(processId);
|
|
115
|
-
});
|
|
116
|
-
|
|
117
|
-
return processId;
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
});
|
|
121
|
-
} catch (exception) {
|
|
122
|
-
console.warn(exception);
|
|
123
|
-
process.exit(1);
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
export default async (port = 2610) => await startPostgreSQL(port);
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import connectMongoDB from './mongodb/connect.js';
|
|
2
|
-
import connectPostgreSQL from './postgresql/connect.js';
|
|
3
|
-
|
|
4
|
-
export default {
|
|
5
|
-
mongodb: {
|
|
6
|
-
name: 'MongoDB',
|
|
7
|
-
connect: connectMongoDB,
|
|
8
|
-
},
|
|
9
|
-
postgresql: {
|
|
10
|
-
name: 'PostgreSQL',
|
|
11
|
-
connect: connectPostgreSQL,
|
|
12
|
-
},
|
|
13
|
-
};
|