@joystick.js/cli-canary 0.0.0-canary.67 → 0.0.0-canary.670
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 +9 -0
- package/dist/commands/create/template/email/base.html +10 -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 +9 -0
- package/src/commands/create/template/email/base.html +10 -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} +7 -5
- 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 -70
- 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 -79
- 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,84 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import readFileDependencyMap from "./readFileDependencyMap.js";
|
|
3
|
-
|
|
4
|
-
const findCodependenciesInMap = (pathVariations = [], map = {}) => {
|
|
5
|
-
return Object.entries(map)
|
|
6
|
-
.filter(([codependentPath, codependentDependencies]) => {
|
|
7
|
-
const hasMatchingImports =
|
|
8
|
-
codependentDependencies &&
|
|
9
|
-
codependentDependencies.imports &&
|
|
10
|
-
codependentDependencies.imports.some((codependentDependency) => {
|
|
11
|
-
return pathVariations.some((pathVariation) => {
|
|
12
|
-
return codependentDependency.path.includes(pathVariation);
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
const hasMatchingRequires =
|
|
17
|
-
codependentDependencies &&
|
|
18
|
-
codependentDependencies.requires &&
|
|
19
|
-
codependentDependencies.requires.some((codependentDependency) => {
|
|
20
|
-
return pathVariations.some((pathVariation) => {
|
|
21
|
-
return codependentDependency.path.includes(pathVariation);
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
return hasMatchingImports || hasMatchingRequires;
|
|
26
|
-
})
|
|
27
|
-
.map(([matchingCodependentPath]) => {
|
|
28
|
-
return matchingCodependentPath.replace(`${process.cwd()}/`, "");
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
const getPathVariations = (path = "") => {
|
|
33
|
-
const pathParts = path.split("/");
|
|
34
|
-
const variations = [];
|
|
35
|
-
const lastPathPart = pathParts && pathParts[pathParts.length - 1];
|
|
36
|
-
|
|
37
|
-
pathParts.forEach((pathPart, pathPartIndex) => {
|
|
38
|
-
let base = `${pathPart}`;
|
|
39
|
-
|
|
40
|
-
variations.push(`/${pathPart}`);
|
|
41
|
-
|
|
42
|
-
pathParts.slice(pathPartIndex + 1, pathParts.length).forEach((part) => {
|
|
43
|
-
base = base += `/${part}`;
|
|
44
|
-
variations.push(base);
|
|
45
|
-
if (part.includes(".")) {
|
|
46
|
-
variations.push(base.split(".")[0]);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
if (lastPathPart?.includes('.')) {
|
|
52
|
-
variations.push(`./${lastPathPart}`);
|
|
53
|
-
variations.push(`./${lastPathPart?.split('.')[0]}`);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
variations.push(`./${pathParts[0]}`);
|
|
57
|
-
variations.push(`./${pathParts[0]}/index`);
|
|
58
|
-
variations.push(`./${pathParts[0]}/index.js`);
|
|
59
|
-
|
|
60
|
-
// TODO: This may wreak havoc eventually, but going to let it slide
|
|
61
|
-
// for now.
|
|
62
|
-
variations.push(`/index`);
|
|
63
|
-
variations.push(`/index.js`);
|
|
64
|
-
|
|
65
|
-
return variations;
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
export default (pathToFind = "") => {
|
|
69
|
-
const pathVariations = getPathVariations(pathToFind);
|
|
70
|
-
const fileDependencyMap = readFileDependencyMap();
|
|
71
|
-
const codpendencies = findCodependenciesInMap(
|
|
72
|
-
pathVariations,
|
|
73
|
-
fileDependencyMap
|
|
74
|
-
);
|
|
75
|
-
|
|
76
|
-
return {
|
|
77
|
-
existing: codpendencies.filter((codependency) => {
|
|
78
|
-
return !!fs.existsSync(codependency);
|
|
79
|
-
}),
|
|
80
|
-
deleted: codpendencies.filter((codependency) => {
|
|
81
|
-
return !fs.existsSync(codependency);
|
|
82
|
-
}),
|
|
83
|
-
};
|
|
84
|
-
};
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import { join } from "path";
|
|
3
|
-
import masterIgnoreList from "../masterIgnoreList.js";
|
|
4
|
-
|
|
5
|
-
const getFileListFromPath = (directoryPath = '', files = []) => {
|
|
6
|
-
const filesInDirectory = fs.readdirSync(directoryPath);
|
|
7
|
-
const filesWithDirectoryPathPrefix = filesInDirectory.map((filePathInDirectory = '') => {
|
|
8
|
-
return join(directoryPath, filePathInDirectory);
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
files.push(...filesWithDirectoryPathPrefix);
|
|
12
|
-
|
|
13
|
-
filesWithDirectoryPathPrefix.forEach((filePathWithDirectoryPrefix = '') => {
|
|
14
|
-
const pathIsDirectory = fs.statSync(filePathWithDirectoryPrefix).isDirectory();
|
|
15
|
-
|
|
16
|
-
if (pathIsDirectory) {
|
|
17
|
-
getFileListFromPath(filePathWithDirectoryPrefix, files);
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
return files;
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export default (excludedPaths = [], context = null) => {
|
|
25
|
-
const files = getFileListFromPath("./");
|
|
26
|
-
|
|
27
|
-
const masterIgnoreListFilteredForContext = context && context === 'start' ? masterIgnoreList?.filter((fileToIgnore) => {
|
|
28
|
-
return !fileToIgnore.includes('settings');
|
|
29
|
-
}) : masterIgnoreList;
|
|
30
|
-
|
|
31
|
-
return files
|
|
32
|
-
.filter((path) => {
|
|
33
|
-
const isExcluded = excludedPaths.some((excludedPath) => {
|
|
34
|
-
return path.includes(excludedPath);
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
return !isExcluded;
|
|
38
|
-
})
|
|
39
|
-
.filter((path) => {
|
|
40
|
-
return !masterIgnoreListFilteredForContext.some((excludedPath) => {
|
|
41
|
-
return path.includes(excludedPath);
|
|
42
|
-
});
|
|
43
|
-
})
|
|
44
|
-
.filter((path) => {
|
|
45
|
-
return !fs.lstatSync(path).isDirectory();
|
|
46
|
-
});
|
|
47
|
-
};
|
package/src/lib/dev/index.js
DELETED
|
@@ -1,560 +0,0 @@
|
|
|
1
|
-
/* eslint-disable consistent-return */
|
|
2
|
-
|
|
3
|
-
import fs from 'fs';
|
|
4
|
-
import path, { dirname } from "path";
|
|
5
|
-
import { fileURLToPath } from "url";
|
|
6
|
-
import child_process from "child_process";
|
|
7
|
-
import chokidar from "chokidar";
|
|
8
|
-
import CLILog from "../CLILog.js";
|
|
9
|
-
import loadSettings from "./loadSettings.js";
|
|
10
|
-
import Loader from "../loader.js";
|
|
11
|
-
import startDatabases from "./startDatabases.js";
|
|
12
|
-
import runTests from "./runTests.js";
|
|
13
|
-
import cleanup from "./cleanup.js";
|
|
14
|
-
import startHMR from "./startHMR.js";
|
|
15
|
-
import startApp from "./startApp.js";
|
|
16
|
-
import requiredFiles from "./requiredFiles.js";
|
|
17
|
-
import watchlist from "./watchlist.js";
|
|
18
|
-
import getFilesToBuild from "./getFilesToBuild.js";
|
|
19
|
-
import buildFiles from "../build/buildFiles.js";
|
|
20
|
-
import filesToCopy from "../filesToCopy.js";
|
|
21
|
-
import { SETTINGS_FILE_NAME_REGEX } from "../regexes.js";
|
|
22
|
-
import getCodependenciesForFile from "./getCodependenciesForFile.js";
|
|
23
|
-
import removeDeletedDependenciesFromMap from "../build/removeDeletedDependenciesFromMap.js";
|
|
24
|
-
import chalk from "chalk";
|
|
25
|
-
|
|
26
|
-
const getDatabaseProcessIds = () => {
|
|
27
|
-
try {
|
|
28
|
-
const databaseProcessIds = [];
|
|
29
|
-
const databases = Object.entries(process._databases || {});
|
|
30
|
-
|
|
31
|
-
for (let i = 0; i < databases?.length; i += 1) {
|
|
32
|
-
const [_provider, providerConnection] = databases[i];
|
|
33
|
-
|
|
34
|
-
if (providerConnection?.pid) {
|
|
35
|
-
databaseProcessIds.push(providerConnection.pid);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
if (!providerConnection?.pid) {
|
|
39
|
-
const providerConnections = Object.entries(providerConnection);
|
|
40
|
-
|
|
41
|
-
for (let pc = 0; pc < providerConnections?.length; pc += 1) {
|
|
42
|
-
const [_connectionName, connection] = providerConnections[pc];
|
|
43
|
-
|
|
44
|
-
if (connection?.pid) {
|
|
45
|
-
databaseProcessIds.push(connection.pid);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return databaseProcessIds;
|
|
52
|
-
} catch (exception) {
|
|
53
|
-
throw new Error(`[dev.getDatabaseProcessIds] ${exception.message}`);
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
const handleSignalEvents = (processIds = [], nodeMajorVersion = 0, __dirname = '') => {
|
|
58
|
-
try {
|
|
59
|
-
const execArgv = ["--no-warnings"];
|
|
60
|
-
|
|
61
|
-
if (nodeMajorVersion < 19) {
|
|
62
|
-
execArgv.push("--experimental-specifier-resolution=node");
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
const cleanupProcess = child_process.fork(
|
|
66
|
-
path.resolve(`${__dirname}/cleanup/index.js`),
|
|
67
|
-
[],
|
|
68
|
-
{
|
|
69
|
-
// NOTE: Run in detached mode so when parent process dies, the child still runs
|
|
70
|
-
// and cleanup completes.
|
|
71
|
-
detached: true,
|
|
72
|
-
execArgv,
|
|
73
|
-
// NOTE: Pipe stdin, stdout, and stderr. IPC establishes a message channel so we
|
|
74
|
-
// communicate with the child_process.
|
|
75
|
-
silent: true,
|
|
76
|
-
}
|
|
77
|
-
);
|
|
78
|
-
|
|
79
|
-
process.on("SIGINT", async () => {
|
|
80
|
-
const databaseProcessIds = getDatabaseProcessIds();
|
|
81
|
-
cleanupProcess.send(JSON.stringify(({ processIds: [...processIds, ...databaseProcessIds] })));
|
|
82
|
-
process.exit();
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
process.on("SIGTERM", async () => {
|
|
86
|
-
const databaseProcessIds = getDatabaseProcessIds();
|
|
87
|
-
cleanupProcess.send(JSON.stringify(({ processIds: [...processIds, ...databaseProcessIds] })));
|
|
88
|
-
process.exit();
|
|
89
|
-
});
|
|
90
|
-
} catch (exception) {
|
|
91
|
-
throw new Error(`[dev.handleSignalEvents] ${exception.message}`);
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
const handleServerProcessMessages = () => {
|
|
96
|
-
try {
|
|
97
|
-
process.serverProcess.on("message", (message) => {
|
|
98
|
-
const processMessages = ["SERVER_CLOSED"];
|
|
99
|
-
|
|
100
|
-
if (!processMessages.includes(message)) {
|
|
101
|
-
process.loader.stable(message);
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
} catch (exception) {
|
|
105
|
-
throw new Error(`[dev.handleServerProcessMessages] ${exception.message}`);
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
const handleServerProcessSTDIO = () => {
|
|
110
|
-
try {
|
|
111
|
-
if (process.serverProcess) {
|
|
112
|
-
process.serverProcess.on("error", (error) => {
|
|
113
|
-
console.log(error);
|
|
114
|
-
});
|
|
115
|
-
|
|
116
|
-
process.serverProcess.stdout.on("data", (data) => {
|
|
117
|
-
const message = data.toString();
|
|
118
|
-
|
|
119
|
-
if (message && message.includes("App running at:")) {
|
|
120
|
-
process.loader.stable(message);
|
|
121
|
-
} else {
|
|
122
|
-
if (message && !message.includes("BUILD_ERROR")) {
|
|
123
|
-
console.log(message);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
|
|
128
|
-
process.serverProcess.stderr.on("data", (data) => {
|
|
129
|
-
process.loader.stop();
|
|
130
|
-
|
|
131
|
-
CLILog(data.toString(), {
|
|
132
|
-
level: "danger",
|
|
133
|
-
docs: "https://cheatcode.co/docs/joystick",
|
|
134
|
-
});
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
} catch (exception) {
|
|
138
|
-
throw new Error(`[dev.handleServerProcessSTDIO] ${exception.message}`);
|
|
139
|
-
}
|
|
140
|
-
};
|
|
141
|
-
|
|
142
|
-
const handleAddOrChangeFile = async (context = {}, path = '') => {
|
|
143
|
-
try {
|
|
144
|
-
if (context.isAddingOrChangingFile) {
|
|
145
|
-
const codependencies = await getCodependenciesForFile(path);
|
|
146
|
-
const fileResults = await buildFiles(
|
|
147
|
-
[path, ...(codependencies?.existing || [])],
|
|
148
|
-
null,
|
|
149
|
-
process.env.NODE_ENV
|
|
150
|
-
);
|
|
151
|
-
|
|
152
|
-
const fileResultsHaveErrors = fileResults
|
|
153
|
-
.filter((result) => !!result)
|
|
154
|
-
.map(({ success }) => success)
|
|
155
|
-
.includes(false);
|
|
156
|
-
|
|
157
|
-
removeDeletedDependenciesFromMap(codependencies.deleted);
|
|
158
|
-
|
|
159
|
-
if (process.serverProcess && fileResultsHaveErrors) {
|
|
160
|
-
// NOTE: If there's a build error while the app is running, relay it to
|
|
161
|
-
// the app's server process to display an error page in the browser.
|
|
162
|
-
process.serverProcess.send(
|
|
163
|
-
JSON.stringify({
|
|
164
|
-
error: "BUILD_ERROR",
|
|
165
|
-
paths: fileResults
|
|
166
|
-
.filter(({ success }) => !success)
|
|
167
|
-
.map(({ path: pathWithError, error }) => ({
|
|
168
|
-
path: pathWithError,
|
|
169
|
-
error,
|
|
170
|
-
})),
|
|
171
|
-
})
|
|
172
|
-
);
|
|
173
|
-
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
if (!fileResultsHaveErrors) {
|
|
178
|
-
process.initialBuildComplete = true;
|
|
179
|
-
|
|
180
|
-
if (context.isUIUpdate) {
|
|
181
|
-
handleNotifyHMRClients(context.isHTMLUpdate);
|
|
182
|
-
} else {
|
|
183
|
-
handleRestartApplicationProcess();
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
return;
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
} catch (exception) {
|
|
190
|
-
throw new Error(`[dev.handleAddOrChangeFile] ${exception.message}`);
|
|
191
|
-
}
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
const handleAddDirectory = (context = {}, path = '') => {
|
|
195
|
-
try {
|
|
196
|
-
if (context.isAddDirectory) {
|
|
197
|
-
fs.mkdirSync(`./.joystick/build/${path}`);
|
|
198
|
-
|
|
199
|
-
if (context.isUIUpdate) {
|
|
200
|
-
handleNotifyHMRClients(context.isHTMLUpdate);
|
|
201
|
-
} else {
|
|
202
|
-
handleRestartApplicationProcess();
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
} catch (exception) {
|
|
206
|
-
throw new Error(`[dev.handleAddDirectory] ${exception.message}`);
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
|
|
210
|
-
const handleCopyFile = (context = {}, path = '') => {
|
|
211
|
-
try {
|
|
212
|
-
if (context.isFileToCopy && !context.isDirectory) {
|
|
213
|
-
fs.writeFileSync(`./.joystick/build/${path}`, fs.readFileSync(path));
|
|
214
|
-
|
|
215
|
-
if (context.isUIUpdate) {
|
|
216
|
-
handleNotifyHMRClients(context.isHTMLUpdate);
|
|
217
|
-
} else {
|
|
218
|
-
handleRestartApplicationProcess();
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
} catch (exception) {
|
|
222
|
-
throw new Error(`[dev.handleCopyFile] ${exception.message}`);
|
|
223
|
-
}
|
|
224
|
-
};
|
|
225
|
-
|
|
226
|
-
const handleCopyDirectory = (context = {}, path = '') => {
|
|
227
|
-
try {
|
|
228
|
-
if (context.isFileToCopy && context.isDirectory && !context.isExistingDirectoryInBuild) {
|
|
229
|
-
fs.mkdirSync(`./.joystick/build/${path}`);
|
|
230
|
-
|
|
231
|
-
if (context.isUIUpdate) {
|
|
232
|
-
handleNotifyHMRClients(context.isHTMLUpdate);
|
|
233
|
-
} else {
|
|
234
|
-
handleRestartApplicationProcess();
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
} catch (exception) {
|
|
238
|
-
throw new Error(`[dev.handleCopyDirectory] ${exception.message}`);
|
|
239
|
-
}
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
const handleRestartApplicationProcess = () => {
|
|
243
|
-
try {
|
|
244
|
-
// Perform a single step in your action here.
|
|
245
|
-
} catch (exception) {
|
|
246
|
-
throw new Error(`[dev.handleRestartApplicationProcess] ${exception.message}`);
|
|
247
|
-
}
|
|
248
|
-
};
|
|
249
|
-
|
|
250
|
-
const handleNotifyHMRClients = (indexHTMLChanged = false) => {
|
|
251
|
-
try {
|
|
252
|
-
if (process.hmrProcess) {
|
|
253
|
-
const settings = loadSettings(process.env.NODE_ENV);
|
|
254
|
-
process.hmrProcess.send(
|
|
255
|
-
JSON.stringify({
|
|
256
|
-
type: "RESTART_SERVER",
|
|
257
|
-
settings,
|
|
258
|
-
indexHTMLChanged,
|
|
259
|
-
})
|
|
260
|
-
);
|
|
261
|
-
}
|
|
262
|
-
} catch (exception) {
|
|
263
|
-
throw new Error(`[dev.handleNotifyHMRClients] ${exception.message}`);
|
|
264
|
-
}
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
const getWatchChangeContext = (event = '', path = '') => {
|
|
268
|
-
try {
|
|
269
|
-
const isHTMLUpdate = path === "index.html";
|
|
270
|
-
const isUIPath = path?.includes("ui/") || path === 'index.css' || isHTMLUpdate;
|
|
271
|
-
// TODO: Flimsy. May want to wait until HMR and server are up to do the builds/watching.
|
|
272
|
-
const isUIUpdate = (process.hmrProcess && process.hmrProcess.hasConnections && isUIPath) || false;
|
|
273
|
-
const isSettingsUpdate = path?.match(SETTINGS_FILE_NAME_REGEX)?.length > 0;
|
|
274
|
-
const isDirectory = fs.statSync(path).isDirectory();
|
|
275
|
-
const isFile = fs.statSync(path).isFile();
|
|
276
|
-
const isExistingDirectoryInSource = isDirectory && fs.existsSync(path);
|
|
277
|
-
const isExistingDirectoryInBuild = !!fs.existsSync(`./.joystick/build/${path}`);
|
|
278
|
-
const isAddDirectory = event === 'addDir' && isExistingDirectoryInSource && !isExistingDirectoryInBuild;
|
|
279
|
-
const isFileToCopy = !!filesToCopy.find((fileToCopy) => fileToCopy.path === path);
|
|
280
|
-
const isExistingFileInSource = isFile && fs.existsSync(path);
|
|
281
|
-
const isAddingOrChangingFile = event === 'add' && isExistingFileInSource;
|
|
282
|
-
|
|
283
|
-
return {
|
|
284
|
-
isHTMLUpdate,
|
|
285
|
-
isUIPath,
|
|
286
|
-
isUIUpdate,
|
|
287
|
-
isSettingsUpdate,
|
|
288
|
-
isDirectory,
|
|
289
|
-
isFile,
|
|
290
|
-
isExistingDirectoryInSource,
|
|
291
|
-
isExistingDirectoryInBuild,
|
|
292
|
-
isAddDirectory,
|
|
293
|
-
isFileToCopy,
|
|
294
|
-
isExistingFileInSource,
|
|
295
|
-
isAddingOrChangingFile,
|
|
296
|
-
};
|
|
297
|
-
} catch (exception) {
|
|
298
|
-
throw new Error(`[dev.getWatchChangeContext] ${exception.message}`);
|
|
299
|
-
}
|
|
300
|
-
};
|
|
301
|
-
|
|
302
|
-
const startFileWatcher = (options = {}) => {
|
|
303
|
-
try {
|
|
304
|
-
const watcher = chokidar.watch(
|
|
305
|
-
watchlist.map(({ path }) => path),
|
|
306
|
-
{ ignoreInitial: true }
|
|
307
|
-
);
|
|
308
|
-
|
|
309
|
-
watcher.on('all', async (event, path) => {
|
|
310
|
-
// NOTE: Do this here in case a required file/folder goes missing inbetween builds.
|
|
311
|
-
checkForRequiredFiles();
|
|
312
|
-
|
|
313
|
-
process.loader.text("Rebuilding app...");
|
|
314
|
-
|
|
315
|
-
const watchChangeContext = getWatchChangeContext(event, path);
|
|
316
|
-
|
|
317
|
-
handleCopyDirectory(watchChangeContext, path);
|
|
318
|
-
handleCopyFile(watchChangeContext, path);
|
|
319
|
-
handleAddDirectory(watchChangeContext, path);
|
|
320
|
-
await handleAddOrChangeFile(watchChangeContext, path);
|
|
321
|
-
|
|
322
|
-
if (watchChangeContext?.isSettingsUpdate) {
|
|
323
|
-
await loadSettings({
|
|
324
|
-
environment: options.environment,
|
|
325
|
-
process: options.process,
|
|
326
|
-
});
|
|
327
|
-
}
|
|
328
|
-
});
|
|
329
|
-
} catch (exception) {
|
|
330
|
-
throw new Error(`[dev.startFileWatcher] ${exception.message}`);
|
|
331
|
-
}
|
|
332
|
-
};
|
|
333
|
-
|
|
334
|
-
const runInitialBuild = async (buildSettings = {}) => {
|
|
335
|
-
try {
|
|
336
|
-
process.loader.text('Building app...');
|
|
337
|
-
|
|
338
|
-
const filesToBuild = getFilesToBuild(buildSettings?.excludedPaths, "start");
|
|
339
|
-
const fileResults = await buildFiles({
|
|
340
|
-
files: filesToBuild,
|
|
341
|
-
environment: process.env.NODE_ENV
|
|
342
|
-
});
|
|
343
|
-
|
|
344
|
-
const hasErrors = [...fileResults]
|
|
345
|
-
.filter((result) => !!result)
|
|
346
|
-
.map(({ success }) => success)
|
|
347
|
-
.includes(false);
|
|
348
|
-
|
|
349
|
-
// NOTE: If the initial build fails, exit the startup process.
|
|
350
|
-
if (hasErrors) {
|
|
351
|
-
console.log(chalk.redBright('Failed to start app. Correct the errors above and run joystick start again.\n'));
|
|
352
|
-
process.exit(1);
|
|
353
|
-
}
|
|
354
|
-
} catch (exception) {
|
|
355
|
-
console.warn(exception);
|
|
356
|
-
throw new Error(`[dev.runInitialBuild] ${exception.message}`);
|
|
357
|
-
}
|
|
358
|
-
};
|
|
359
|
-
|
|
360
|
-
const initProcess = (options = {}) => {
|
|
361
|
-
try {
|
|
362
|
-
process.title = options?.environment === 'test' ? "joystick_test" : 'joystick';
|
|
363
|
-
process.loader = new Loader({
|
|
364
|
-
defaultMessage: options?.environment === 'test' ? "Initializing test environment..." : "Starting app...",
|
|
365
|
-
});
|
|
366
|
-
|
|
367
|
-
process.env.LOGS_PATH = options?.logs || null;
|
|
368
|
-
process.env.NODE_ENV = options?.environment || "development";
|
|
369
|
-
process.env.PORT = options?.port ? parseInt(options?.port, 10) : 2600;
|
|
370
|
-
process.env.IS_DEBUG_MODE = options?.debug;
|
|
371
|
-
|
|
372
|
-
} catch (exception) {
|
|
373
|
-
throw new Error(`[dev.initProcess] ${exception.message}`);
|
|
374
|
-
}
|
|
375
|
-
};
|
|
376
|
-
|
|
377
|
-
const checkForRequiredFiles = () => {
|
|
378
|
-
try {
|
|
379
|
-
const missingFiles = [];
|
|
380
|
-
|
|
381
|
-
for (let i = 0; i < requiredFiles?.length; i += 1) {
|
|
382
|
-
const requiredFile = requiredFiles[i];
|
|
383
|
-
const exists = fs.existsSync(`${process.cwd()}/${requiredFile.path}`);
|
|
384
|
-
const stats = exists && fs.statSync(`${process.cwd()}/${requiredFile.path}`);
|
|
385
|
-
|
|
386
|
-
if (requiredFile && requiredFile.type === "file" && (!exists || (exists && !stats.isFile()))) {
|
|
387
|
-
missingFiles.push({ type: 'file', path: requiredFile.path });
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
if (requiredFile && requiredFile.type === "directory" && (!exists || (exists && !stats.isDirectory()))) {
|
|
391
|
-
missingFiles.push({ type: 'directory', path: requiredFile.path });
|
|
392
|
-
}
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
if (missingFiles?.length > 0) {
|
|
396
|
-
const files = missingFiles?.filter((path) => path.type === 'file');
|
|
397
|
-
const directories = missingFiles?.filter((path) => path.type === 'directory');
|
|
398
|
-
|
|
399
|
-
let error = `The following paths are missing and required in a Joystick project:\n\n`;
|
|
400
|
-
|
|
401
|
-
if (files?.length > 0) {
|
|
402
|
-
error += ` > Required Files:\n\n`;
|
|
403
|
-
|
|
404
|
-
for (let i = 0; i < files?.length; i += 1) {
|
|
405
|
-
const file = files[i];
|
|
406
|
-
error += ` /${file.path}\n`;
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
if (directories?.length > 0) {
|
|
411
|
-
error += ` > Required Directories:\n\n`;
|
|
412
|
-
|
|
413
|
-
for (let i = 0; i < directories?.length; i += 1) {
|
|
414
|
-
const file = directories[i];
|
|
415
|
-
error += ` /${file.path}\n`;
|
|
416
|
-
}
|
|
417
|
-
}
|
|
418
|
-
|
|
419
|
-
CLILog(error, {
|
|
420
|
-
level: "danger",
|
|
421
|
-
docs: "https://cheatcode.co/docs/joystick/structure",
|
|
422
|
-
});
|
|
423
|
-
|
|
424
|
-
process.exit(0);
|
|
425
|
-
}
|
|
426
|
-
} catch (exception) {
|
|
427
|
-
throw new Error(`[dev.checkForRequiredFiles] ${exception.message}`);
|
|
428
|
-
}
|
|
429
|
-
};
|
|
430
|
-
|
|
431
|
-
const warnInvalidJoystickEnvironment = () => {
|
|
432
|
-
try {
|
|
433
|
-
const hasJoystickFolder = fs.existsSync(`${process.cwd()}/.joystick`);
|
|
434
|
-
const hasTestsFolder = fs.existsSync(`${process.cwd()}/tests`);
|
|
435
|
-
|
|
436
|
-
if (process.env.NODE_ENV === 'test' && (!hasJoystickFolder || !hasTestsFolder)) {
|
|
437
|
-
CLILog(
|
|
438
|
-
"joystick test must be run in a directory with a .joystick folder and tests folder.",
|
|
439
|
-
{
|
|
440
|
-
level: "danger",
|
|
441
|
-
docs: "https://cheatcode.co/docs/joystick/cli/test",
|
|
442
|
-
}
|
|
443
|
-
);
|
|
444
|
-
|
|
445
|
-
process.exit(0);
|
|
446
|
-
}
|
|
447
|
-
|
|
448
|
-
if (process.env.NODE_ENV !== 'test' && !hasJoystickFolder) {
|
|
449
|
-
CLILog(
|
|
450
|
-
"joystick start must be run in a directory with a .joystick folder.",
|
|
451
|
-
{
|
|
452
|
-
level: "danger",
|
|
453
|
-
docs: "https://cheatcode.co/docs/joystick/cli/start",
|
|
454
|
-
}
|
|
455
|
-
);
|
|
456
|
-
|
|
457
|
-
process.exit(0);
|
|
458
|
-
}
|
|
459
|
-
} catch (exception) {
|
|
460
|
-
throw new Error(`[dev.warnInvalidJoystickEnvironment] ${exception.message}`);
|
|
461
|
-
}
|
|
462
|
-
};
|
|
463
|
-
|
|
464
|
-
const validateOptions = (options) => {
|
|
465
|
-
try {
|
|
466
|
-
if (!options) throw new Error('options object is required.');
|
|
467
|
-
if (!options.environment) throw new Error('options.environment is required.');
|
|
468
|
-
} catch (exception) {
|
|
469
|
-
throw new Error(`[dev.validateOptions] ${exception.message}`);
|
|
470
|
-
}
|
|
471
|
-
};
|
|
472
|
-
|
|
473
|
-
const dev = async (options, { resolve, reject }) => {
|
|
474
|
-
try {
|
|
475
|
-
validateOptions(options);
|
|
476
|
-
initProcess(options);
|
|
477
|
-
|
|
478
|
-
const nodeMajorVersion = parseInt(
|
|
479
|
-
process?.version?.split(".")[0]?.replace("v", ""),
|
|
480
|
-
10
|
|
481
|
-
);
|
|
482
|
-
|
|
483
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
484
|
-
const __dirname = dirname(__filename);
|
|
485
|
-
|
|
486
|
-
warnInvalidJoystickEnvironment();
|
|
487
|
-
checkForRequiredFiles();
|
|
488
|
-
|
|
489
|
-
const settings = await loadSettings({
|
|
490
|
-
environment: options.environment,
|
|
491
|
-
});
|
|
492
|
-
|
|
493
|
-
await startDatabases({
|
|
494
|
-
environment: options.environment,
|
|
495
|
-
port: options.port,
|
|
496
|
-
settings: settings.parsed
|
|
497
|
-
});
|
|
498
|
-
|
|
499
|
-
await runInitialBuild(settings?.parsed?.config?.build);
|
|
500
|
-
await startFileWatcher(options);
|
|
501
|
-
|
|
502
|
-
const serverProcess = await startApp({
|
|
503
|
-
nodeMajorVersion,
|
|
504
|
-
port: options?.port,
|
|
505
|
-
});
|
|
506
|
-
|
|
507
|
-
if (serverProcess) {
|
|
508
|
-
process.serverProcess = serverProcess;
|
|
509
|
-
handleServerProcessSTDIO();
|
|
510
|
-
handleServerProcessMessages();
|
|
511
|
-
}
|
|
512
|
-
|
|
513
|
-
// NOTE: Scope this out here so we can reference the processId below.
|
|
514
|
-
let hmrProcess;
|
|
515
|
-
|
|
516
|
-
if (options?.environment !== 'test') {
|
|
517
|
-
hmrProcess = await startHMR({
|
|
518
|
-
nodeMajorVersion,
|
|
519
|
-
__dirname,
|
|
520
|
-
});
|
|
521
|
-
}
|
|
522
|
-
|
|
523
|
-
handleSignalEvents(
|
|
524
|
-
[serverProcess.pid, hmrProcess.pid],
|
|
525
|
-
nodeMajorVersion,
|
|
526
|
-
__dirname
|
|
527
|
-
);
|
|
528
|
-
//
|
|
529
|
-
// if (options?.environment === 'test') {
|
|
530
|
-
// await runTests(options);
|
|
531
|
-
// await cleanup();
|
|
532
|
-
// }
|
|
533
|
-
|
|
534
|
-
/*
|
|
535
|
-
TODO:
|
|
536
|
-
|
|
537
|
-
- [x] Make sure we're in a Joystick project.
|
|
538
|
-
- [x] If environment === 'test', check that both a .joystick fo lder exists AND a /tests folder
|
|
539
|
-
exists. If no /tests, log out docs on how to scaffold your tests.
|
|
540
|
-
- [x] Load settings.<environment>.json.
|
|
541
|
-
- [x] Start databases relative to options.environment (development|test) from settings.<environment>.json.
|
|
542
|
-
- [x] Run the initial build
|
|
543
|
-
- [x] Start the file watcher
|
|
544
|
-
- [ ] Start the app as normal from the build directory.
|
|
545
|
-
- [ ] If environment === 'test', run the tests.
|
|
546
|
-
- [ ] If environment === 'test', after tests, run process.exit(0).
|
|
547
|
-
*/
|
|
548
|
-
|
|
549
|
-
resolve();
|
|
550
|
-
} catch (exception) {
|
|
551
|
-
console.warn(exception);
|
|
552
|
-
reject(`[dev] ${exception.message}`);
|
|
553
|
-
}
|
|
554
|
-
};
|
|
555
|
-
|
|
556
|
-
export default (options) =>
|
|
557
|
-
new Promise((resolve, reject) => {
|
|
558
|
-
dev(options, { resolve, reject });
|
|
559
|
-
});
|
|
560
|
-
|
package/src/lib/dev/isWindows.js
DELETED