@hubspot/cli 7.7.21-experimental.1 → 7.7.23-experimental.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/__tests__/migrate.test.js +27 -29
- package/api/migrate.js +14 -22
- package/bin/cli.js +92 -97
- package/bin/hs +2 -2
- package/bin/hscms +2 -2
- package/bin/silenceErrors.js +1 -2
- package/commands/__tests__/account.test.js +29 -34
- package/commands/__tests__/auth.test.js +11 -16
- package/commands/__tests__/cms.test.js +15 -20
- package/commands/__tests__/config.test.js +14 -19
- package/commands/__tests__/create.test.js +10 -15
- package/commands/__tests__/customObject.test.js +14 -19
- package/commands/__tests__/doctor.test.js +43 -48
- package/commands/__tests__/feedback.test.js +7 -45
- package/commands/__tests__/fetch.test.js +29 -28
- package/commands/__tests__/filemanager.test.js +14 -19
- package/commands/__tests__/function.test.js +16 -21
- package/commands/__tests__/getStarted.test.js +45 -50
- package/commands/__tests__/hubdb.test.js +17 -22
- package/commands/__tests__/init.test.js +12 -17
- package/commands/__tests__/lint.test.js +13 -18
- package/commands/__tests__/list.test.js +18 -23
- package/commands/__tests__/logs.test.js +28 -27
- package/commands/__tests__/mcp.test.js +14 -19
- package/commands/__tests__/mv.test.js +14 -52
- package/commands/__tests__/open.test.js +13 -51
- package/commands/__tests__/project.test.js +44 -49
- package/commands/__tests__/remove.test.js +13 -51
- package/commands/__tests__/sandbox.test.js +14 -19
- package/commands/__tests__/secret.test.js +16 -21
- package/commands/__tests__/testAccount.test.js +16 -21
- package/commands/__tests__/theme.test.js +15 -20
- package/commands/account/__tests__/auth.test.js +11 -16
- package/commands/account/__tests__/clean.test.js +12 -17
- package/commands/account/__tests__/createOverride.test.js +10 -15
- package/commands/account/__tests__/info.test.js +11 -16
- package/commands/account/__tests__/list.test.js +11 -16
- package/commands/account/__tests__/remove.test.js +13 -18
- package/commands/account/__tests__/removeOverride.js +8 -13
- package/commands/account/__tests__/rename.test.js +15 -20
- package/commands/account/__tests__/use.test.js +10 -15
- package/commands/account/auth.d.ts +1 -1
- package/commands/account/auth.js +65 -67
- package/commands/account/clean.d.ts +1 -1
- package/commands/account/clean.js +55 -60
- package/commands/account/createOverride.d.ts +1 -1
- package/commands/account/createOverride.js +52 -57
- package/commands/account/info.d.ts +1 -1
- package/commands/account/info.js +33 -35
- package/commands/account/list.d.ts +1 -1
- package/commands/account/list.js +43 -45
- package/commands/account/remove.d.ts +1 -1
- package/commands/account/remove.js +37 -42
- package/commands/account/removeOverride.d.ts +1 -1
- package/commands/account/removeOverride.js +38 -43
- package/commands/account/rename.d.ts +1 -1
- package/commands/account/rename.js +18 -20
- package/commands/account/use.d.ts +1 -1
- package/commands/account/use.js +29 -31
- package/commands/account.d.ts +1 -1
- package/commands/account.js +23 -28
- package/commands/app/__tests__/migrate.test.js +29 -34
- package/commands/app/migrate.d.ts +2 -2
- package/commands/app/migrate.js +40 -43
- package/commands/app/secret/__tests__/add.test.js +6 -11
- package/commands/app/secret/__tests__/delete.test.js +6 -11
- package/commands/app/secret/__tests__/list.test.js +6 -11
- package/commands/app/secret/__tests__/update.test.js +6 -11
- package/commands/app/secret/add.d.ts +1 -1
- package/commands/app/secret/add.js +28 -30
- package/commands/app/secret/delete.d.ts +1 -1
- package/commands/app/secret/delete.js +34 -36
- package/commands/app/secret/list.d.ts +1 -1
- package/commands/app/secret/list.js +25 -27
- package/commands/app/secret/update.d.ts +1 -1
- package/commands/app/secret/update.js +32 -34
- package/commands/app/secret.d.ts +1 -1
- package/commands/app/secret.js +12 -17
- package/commands/app.d.ts +1 -1
- package/commands/app.js +6 -16
- package/commands/auth.d.ts +1 -1
- package/commands/auth.js +70 -72
- package/commands/cms/convertFields.d.ts +1 -1
- package/commands/cms/convertFields.js +34 -39
- package/commands/cms/getReactModule.d.ts +1 -1
- package/commands/cms/getReactModule.js +32 -37
- package/commands/cms/lighthouseScore.d.ts +1 -1
- package/commands/cms/lighthouseScore.js +67 -72
- package/commands/cms.d.ts +1 -1
- package/commands/cms.js +11 -16
- package/commands/completion.d.ts +1 -1
- package/commands/completion.js +10 -15
- package/commands/config/migrate.d.ts +1 -1
- package/commands/config/migrate.js +27 -32
- package/commands/config/set.d.ts +2 -1
- package/commands/config/set.js +40 -32
- package/commands/config.d.ts +1 -1
- package/commands/config.js +8 -13
- package/commands/create/api-sample.d.ts +1 -1
- package/commands/create/api-sample.js +28 -33
- package/commands/create/app.d.ts +1 -1
- package/commands/create/app.js +3 -5
- package/commands/create/function.d.ts +1 -1
- package/commands/create/function.js +9 -11
- package/commands/create/index.d.ts +1 -1
- package/commands/create/index.js +19 -24
- package/commands/create/module.d.ts +1 -1
- package/commands/create/module.js +12 -14
- package/commands/create/react-app.d.ts +1 -1
- package/commands/create/react-app.js +3 -5
- package/commands/create/template.d.ts +1 -1
- package/commands/create/template.js +12 -14
- package/commands/create/vue-app.d.ts +1 -1
- package/commands/create/vue-app.js +3 -5
- package/commands/create/webpack-serverless.d.ts +1 -1
- package/commands/create/webpack-serverless.js +3 -5
- package/commands/create/website-theme.d.ts +1 -1
- package/commands/create/website-theme.js +5 -7
- package/commands/create.d.ts +2 -2
- package/commands/create.js +30 -35
- package/commands/customObject/__tests__/create.test.js +13 -18
- package/commands/customObject/__tests__/schema.test.js +18 -23
- package/commands/customObject/create.d.ts +1 -1
- package/commands/customObject/create.js +28 -30
- package/commands/customObject/schema/__tests__/create.test.js +13 -18
- package/commands/customObject/schema/__tests__/delete.test.js +13 -18
- package/commands/customObject/schema/__tests__/fetch-all.test.js +13 -18
- package/commands/customObject/schema/__tests__/fetch.test.js +13 -18
- package/commands/customObject/schema/__tests__/list.test.js +13 -18
- package/commands/customObject/schema/__tests__/update.test.js +13 -18
- package/commands/customObject/schema/create.d.ts +1 -1
- package/commands/customObject/schema/create.js +28 -30
- package/commands/customObject/schema/delete.d.ts +1 -1
- package/commands/customObject/schema/delete.js +24 -26
- package/commands/customObject/schema/fetch-all.d.ts +1 -1
- package/commands/customObject/schema/fetch-all.js +22 -24
- package/commands/customObject/schema/fetch.d.ts +1 -1
- package/commands/customObject/schema/fetch.js +24 -26
- package/commands/customObject/schema/list.d.ts +1 -1
- package/commands/customObject/schema/list.js +13 -15
- package/commands/customObject/schema/update.d.ts +1 -1
- package/commands/customObject/schema/update.js +32 -34
- package/commands/customObject/schema.d.ts +1 -1
- package/commands/customObject/schema.js +17 -22
- package/commands/customObject.d.ts +1 -1
- package/commands/customObject.js +13 -18
- package/commands/doctor.d.ts +1 -1
- package/commands/doctor.js +28 -33
- package/commands/feedback.d.ts +1 -1
- package/commands/feedback.js +19 -24
- package/commands/fetch.d.ts +1 -1
- package/commands/fetch.js +28 -30
- package/commands/filemanager/__tests__/fetch.test.js +17 -22
- package/commands/filemanager/__tests__/upload.test.js +15 -20
- package/commands/filemanager/fetch.d.ts +1 -1
- package/commands/filemanager/fetch.js +23 -25
- package/commands/filemanager/upload.d.ts +1 -1
- package/commands/filemanager/upload.js +39 -44
- package/commands/filemanager.d.ts +1 -1
- package/commands/filemanager.js +8 -13
- package/commands/function/deploy.d.ts +1 -1
- package/commands/function/deploy.js +35 -40
- package/commands/function/list.d.ts +1 -1
- package/commands/function/list.js +24 -29
- package/commands/function/server.d.ts +1 -1
- package/commands/function/server.js +15 -17
- package/commands/function.d.ts +1 -1
- package/commands/function.js +12 -18
- package/commands/getStarted.d.ts +1 -1
- package/commands/getStarted.js +119 -125
- package/commands/hubdb/__tests__/clear.test.js +13 -18
- package/commands/hubdb/__tests__/create.test.js +13 -18
- package/commands/hubdb/__tests__/delete.test.js +13 -18
- package/commands/hubdb/__tests__/fetch.test.js +13 -18
- package/commands/hubdb/__tests__/list.test.js +23 -28
- package/commands/hubdb/clear.d.ts +1 -1
- package/commands/hubdb/clear.js +20 -22
- package/commands/hubdb/create.d.ts +1 -1
- package/commands/hubdb/create.js +30 -35
- package/commands/hubdb/delete.d.ts +1 -1
- package/commands/hubdb/delete.js +24 -26
- package/commands/hubdb/fetch.d.ts +1 -1
- package/commands/hubdb/fetch.js +17 -19
- package/commands/hubdb/list.d.ts +1 -1
- package/commands/hubdb/list.js +33 -35
- package/commands/hubdb.d.ts +1 -1
- package/commands/hubdb.js +18 -24
- package/commands/init.d.ts +1 -1
- package/commands/init.js +83 -88
- package/commands/lint.d.ts +1 -1
- package/commands/lint.js +24 -26
- package/commands/list.d.ts +1 -1
- package/commands/list.js +32 -37
- package/commands/logs.d.ts +1 -1
- package/commands/logs.js +35 -37
- package/commands/mcp/__tests__/setup.test.js +7 -12
- package/commands/mcp/__tests__/start.test.js +7 -12
- package/commands/mcp/setup.d.ts +1 -1
- package/commands/mcp/setup.js +17 -19
- package/commands/mcp/start.d.ts +1 -1
- package/commands/mcp/start.js +29 -34
- package/commands/mcp.d.ts +1 -1
- package/commands/mcp.js +7 -12
- package/commands/module/marketplace-validate.d.ts +1 -1
- package/commands/module/marketplace-validate.js +21 -26
- package/commands/module.d.ts +1 -1
- package/commands/module.js +7 -13
- package/commands/mv.d.ts +1 -1
- package/commands/mv.js +20 -22
- package/commands/open.d.ts +1 -1
- package/commands/open.js +19 -21
- package/commands/project/__tests__/add.test.js +10 -15
- package/commands/project/__tests__/create.test.js +14 -19
- package/commands/project/__tests__/deploy.test.js +96 -134
- package/commands/project/__tests__/devUnifiedFlow.test.js +133 -139
- package/commands/project/__tests__/download.test.js +14 -19
- package/commands/project/__tests__/installDeps.test.js +32 -70
- package/commands/project/__tests__/listBuilds.test.js +14 -19
- package/commands/project/__tests__/logs.test.js +56 -94
- package/commands/project/__tests__/migrate.test.js +25 -30
- package/commands/project/__tests__/migrateApp.test.js +17 -22
- package/commands/project/__tests__/open.test.js +16 -21
- package/commands/project/__tests__/profile.test.js +14 -19
- package/commands/project/__tests__/upload.test.js +18 -23
- package/commands/project/__tests__/watch.test.js +14 -19
- package/commands/project/add.d.ts +1 -1
- package/commands/project/add.js +34 -36
- package/commands/project/cloneApp.d.ts +1 -1
- package/commands/project/cloneApp.js +67 -72
- package/commands/project/create.d.ts +2 -2
- package/commands/project/create.js +63 -68
- package/commands/project/deploy.d.ts +1 -1
- package/commands/project/deploy.js +67 -69
- package/commands/project/dev/deprecatedFlow.d.ts +2 -2
- package/commands/project/dev/deprecatedFlow.js +52 -58
- package/commands/project/dev/index.d.ts +1 -1
- package/commands/project/dev/index.js +44 -47
- package/commands/project/dev/unifiedFlow.d.ts +3 -3
- package/commands/project/dev/unifiedFlow.js +62 -68
- package/commands/project/download.d.ts +1 -1
- package/commands/project/download.js +35 -40
- package/commands/project/installDeps.d.ts +1 -1
- package/commands/project/installDeps.js +29 -34
- package/commands/project/listBuilds.d.ts +1 -1
- package/commands/project/listBuilds.js +40 -45
- package/commands/project/logs.d.ts +1 -1
- package/commands/project/logs.js +52 -54
- package/commands/project/migrate.d.ts +1 -1
- package/commands/project/migrate.js +24 -26
- package/commands/project/migrateApp.d.ts +2 -2
- package/commands/project/migrateApp.js +18 -20
- package/commands/project/open.d.ts +1 -1
- package/commands/project/open.js +25 -30
- package/commands/project/profile/add.d.ts +1 -1
- package/commands/project/profile/add.js +68 -73
- package/commands/project/profile/delete.d.ts +1 -1
- package/commands/project/profile/delete.js +51 -56
- package/commands/project/profile.d.ts +1 -1
- package/commands/project/profile.js +9 -14
- package/commands/project/upload.d.ts +1 -1
- package/commands/project/upload.js +50 -55
- package/commands/project/validate.d.ts +1 -1
- package/commands/project/validate.js +35 -40
- package/commands/project/watch.d.ts +1 -1
- package/commands/project/watch.js +59 -61
- package/commands/project.d.ts +1 -1
- package/commands/project.js +38 -43
- package/commands/remove.d.ts +1 -1
- package/commands/remove.js +15 -17
- package/commands/sandbox/__tests__/create.test.js +15 -20
- package/commands/sandbox/__tests__/delete.test.js +15 -20
- package/commands/sandbox/create.d.ts +1 -1
- package/commands/sandbox/create.js +67 -69
- package/commands/sandbox/delete.d.ts +1 -1
- package/commands/sandbox/delete.js +94 -96
- package/commands/sandbox.d.ts +1 -1
- package/commands/sandbox.js +9 -14
- package/commands/secret/__tests__/addSecret.test.js +13 -18
- package/commands/secret/__tests__/deleteSecret.test.js +13 -18
- package/commands/secret/__tests__/listSecret.test.js +13 -18
- package/commands/secret/__tests__/updateSecret.test.js +13 -18
- package/commands/secret/addSecret.d.ts +1 -1
- package/commands/secret/addSecret.js +26 -28
- package/commands/secret/deleteSecret.d.ts +1 -1
- package/commands/secret/deleteSecret.js +27 -29
- package/commands/secret/listSecret.d.ts +1 -1
- package/commands/secret/listSecret.js +19 -21
- package/commands/secret/updateSecret.d.ts +1 -1
- package/commands/secret/updateSecret.js +25 -27
- package/commands/secret.d.ts +1 -1
- package/commands/secret.js +13 -18
- package/commands/testAccount/__tests__/create.test.js +17 -22
- package/commands/testAccount/__tests__/createConfig.test.js +6 -11
- package/commands/testAccount/__tests__/delete.test.js +15 -20
- package/commands/testAccount/create.d.ts +1 -1
- package/commands/testAccount/create.js +45 -53
- package/commands/testAccount/createConfig.d.ts +1 -1
- package/commands/testAccount/createConfig.js +36 -41
- package/commands/testAccount/delete.d.ts +1 -1
- package/commands/testAccount/delete.js +17 -19
- package/commands/testAccount.d.ts +1 -1
- package/commands/testAccount.js +10 -15
- package/commands/theme/__tests__/generate-selectors.test.js +7 -12
- package/commands/theme/__tests__/marketplace-validate.test.js +14 -19
- package/commands/theme/__tests__/preview.test.js +12 -17
- package/commands/theme/generate-selectors.d.ts +1 -1
- package/commands/theme/generate-selectors.js +23 -28
- package/commands/theme/marketplace-validate.d.ts +1 -1
- package/commands/theme/marketplace-validate.js +19 -24
- package/commands/theme/preview.d.ts +1 -1
- package/commands/theme/preview.js +60 -65
- package/commands/theme.d.ts +1 -1
- package/commands/theme.js +11 -16
- package/commands/upload.d.ts +1 -1
- package/commands/upload.js +77 -82
- package/commands/watch.d.ts +1 -1
- package/commands/watch.js +45 -51
- package/lang/en.d.ts +10 -23
- package/lang/en.js +380 -399
- package/lib/__tests__/accountTypes.test.js +20 -22
- package/lib/__tests__/buildAccount.test.js +28 -63
- package/lib/__tests__/commonOpts.test.js +20 -22
- package/lib/__tests__/dependencyManagement.test.js +46 -51
- package/lib/__tests__/developerTestAccounts.test.js +27 -62
- package/lib/__tests__/hasFeature.test.js +6 -8
- package/lib/__tests__/npm.test.js +15 -20
- package/lib/__tests__/oauth.test.js +23 -28
- package/lib/__tests__/parsing.test.js +18 -20
- package/lib/__tests__/polling.test.js +24 -26
- package/lib/__tests__/process.test.js +14 -19
- package/lib/__tests__/projectProfiles.test.js +34 -39
- package/lib/__tests__/sandboxSync.test.js +30 -35
- package/lib/__tests__/sandboxes.test.js +29 -31
- package/lib/__tests__/serverlessLogs.test.js +8 -13
- package/lib/__tests__/usageTracking.test.js +33 -34
- package/lib/__tests__/validation.test.js +18 -20
- package/lib/__tests__/yargsUtils.test.js +17 -41
- package/lib/accountTypes.js +24 -34
- package/lib/app/__tests__/migrate.test.js +94 -99
- package/lib/app/__tests__/migrate_legacy.test.js +29 -31
- package/lib/app/migrate.d.ts +3 -3
- package/lib/app/migrate.js +127 -145
- package/lib/app/migrate_legacy.d.ts +1 -1
- package/lib/app/migrate_legacy.js +72 -78
- package/lib/app/urls.js +5 -9
- package/lib/buildAccount.d.ts +1 -1
- package/lib/buildAccount.js +71 -80
- package/lib/commonOpts.d.ts +1 -1
- package/lib/commonOpts.js +42 -59
- package/lib/configMigrate.js +34 -38
- package/lib/configOptions.d.ts +5 -0
- package/lib/configOptions.js +44 -40
- package/lib/constants.d.ts +4 -0
- package/lib/constants.js +35 -34
- package/lib/customObject.js +2 -6
- package/lib/dependencyManagement.js +37 -45
- package/lib/developerTestAccounts.d.ts +1 -1
- package/lib/developerTestAccounts.js +34 -39
- package/lib/doctor/Diagnosis.d.ts +1 -1
- package/lib/doctor/Diagnosis.js +25 -29
- package/lib/doctor/DiagnosticInfoBuilder.d.ts +1 -1
- package/lib/doctor/DiagnosticInfoBuilder.js +30 -37
- package/lib/doctor/Doctor.d.ts +1 -1
- package/lib/doctor/Doctor.js +94 -101
- package/lib/doctor/__tests__/Diagnosis.test.js +9 -14
- package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +29 -34
- package/lib/doctor/__tests__/Doctor.test.js +24 -26
- package/lib/enums/exitCodes.js +1 -4
- package/lib/errorHandlers/index.js +32 -41
- package/lib/errorHandlers/suppressError.d.ts +1 -1
- package/lib/errorHandlers/suppressError.js +28 -31
- package/lib/filesystem.js +8 -15
- package/lib/generateSelectors.js +18 -29
- package/lib/hasFeature.d.ts +1 -1
- package/lib/hasFeature.js +3 -6
- package/lib/interpolation.js +11 -18
- package/lib/lang.d.ts +1 -1
- package/lib/lang.js +22 -27
- package/lib/links.js +16 -24
- package/lib/marketplaceValidate.js +29 -39
- package/lib/mcp/setup.js +70 -82
- package/lib/middleware/__test__/configMiddleware.test.js +20 -55
- package/lib/middleware/__test__/gitMiddleware.test.js +7 -42
- package/lib/middleware/__test__/notificationsMiddleware.test.js +2 -4
- package/lib/middleware/__test__/requestMiddleware.test.js +6 -11
- package/lib/middleware/__test__/utils.test.js +9 -11
- package/lib/middleware/__test__/yargsChecksMiddleware.test.js +9 -44
- package/lib/middleware/autoUpdateMiddleware.js +33 -40
- package/lib/middleware/configMiddleware.js +36 -42
- package/lib/middleware/fireAlarmMiddleware.js +12 -18
- package/lib/middleware/gitMiddleware.js +5 -8
- package/lib/middleware/notificationsMiddleware.js +16 -23
- package/lib/middleware/requestMiddleware.js +4 -10
- package/lib/middleware/utils.js +1 -4
- package/lib/middleware/yargsChecksMiddleware.js +10 -13
- package/lib/npm.js +14 -23
- package/lib/oauth.js +29 -35
- package/lib/parsing.js +3 -6
- package/lib/polling.js +11 -15
- package/lib/process.js +11 -19
- package/lib/projectProfiles.d.ts +2 -2
- package/lib/projectProfiles.js +32 -42
- package/lib/projects/ProjectLogsManager.js +18 -21
- package/lib/projects/__tests__/AppDevModeInterface.test.js +140 -145
- package/lib/projects/__tests__/LocalDevProcess.test.js +68 -73
- package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +32 -37
- package/lib/projects/__tests__/ProjectLogsManager.test.js +56 -58
- package/lib/projects/__tests__/buildAndDeploy.test.js +7 -9
- package/lib/projects/__tests__/components.test.js +9 -14
- package/lib/projects/__tests__/projects.test.js +35 -40
- package/lib/projects/__tests__/structure.test.js +43 -81
- package/lib/projects/add/__tests__/legacyAddComponent.test.js +26 -28
- package/lib/projects/add/__tests__/v3AddComponent.test.js +25 -30
- package/lib/projects/add/legacyAddComponent.d.ts +1 -1
- package/lib/projects/add/legacyAddComponent.js +24 -30
- package/lib/projects/add/v3AddComponent.d.ts +1 -1
- package/lib/projects/add/v3AddComponent.js +36 -42
- package/lib/projects/buildAndDeploy.d.ts +1 -1
- package/lib/projects/buildAndDeploy.js +88 -97
- package/lib/projects/components.js +19 -25
- package/lib/projects/config.d.ts +1 -1
- package/lib/projects/config.js +32 -41
- package/lib/projects/create/__tests__/legacy.test.js +22 -57
- package/lib/projects/create/__tests__/v3.test.js +5 -7
- package/lib/projects/create/index.d.ts +3 -3
- package/lib/projects/create/index.js +19 -22
- package/lib/projects/create/legacy.d.ts +1 -1
- package/lib/projects/create/legacy.js +25 -31
- package/lib/projects/create/v3.d.ts +3 -3
- package/lib/projects/create/v3.js +49 -59
- package/lib/projects/ensureProjectExists.js +31 -37
- package/lib/projects/localDev/AppDevModeInterface.d.ts +3 -3
- package/lib/projects/localDev/AppDevModeInterface.js +58 -60
- package/lib/projects/localDev/DevServerManager.d.ts +1 -1
- package/lib/projects/localDev/DevServerManager.js +22 -24
- package/lib/projects/localDev/DevServerManagerV2.d.ts +2 -2
- package/lib/projects/localDev/DevServerManagerV2.js +15 -20
- package/lib/projects/localDev/LocalDevLogger.d.ts +1 -1
- package/lib/projects/localDev/LocalDevLogger.js +68 -64
- package/lib/projects/localDev/LocalDevManager.d.ts +1 -1
- package/lib/projects/localDev/LocalDevManager.js +106 -111
- package/lib/projects/localDev/LocalDevProcess.d.ts +5 -4
- package/lib/projects/localDev/LocalDevProcess.js +37 -30
- package/lib/projects/localDev/LocalDevState.d.ts +3 -3
- package/lib/projects/localDev/LocalDevState.js +3 -5
- package/lib/projects/localDev/LocalDevWatcher.d.ts +1 -1
- package/lib/projects/localDev/LocalDevWatcher.js +6 -11
- package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +1 -1
- package/lib/projects/localDev/LocalDevWebsocketServer.js +29 -27
- package/lib/projects/localDev/helpers.d.ts +3 -3
- package/lib/projects/localDev/helpers.js +156 -174
- package/lib/projects/structure.d.ts +4 -4
- package/lib/projects/structure.js +32 -78
- package/lib/projects/ui.js +10 -13
- package/lib/projects/upload.d.ts +2 -3
- package/lib/projects/upload.js +55 -65
- package/lib/projects/urls.d.ts +1 -1
- package/lib/projects/urls.js +15 -25
- package/lib/projects/watch.d.ts +1 -1
- package/lib/projects/watch.js +48 -54
- package/lib/prompts/__tests__/downloadProjectPrompt.test.js +9 -11
- package/lib/prompts/__tests__/projectsLogsPrompt.test.js +11 -16
- package/lib/prompts/accountNamePrompt.d.ts +1 -1
- package/lib/prompts/accountNamePrompt.js +26 -31
- package/lib/prompts/accountsPrompt.js +12 -15
- package/lib/prompts/cmsFieldPrompt.js +13 -19
- package/lib/prompts/createApiSamplePrompt.d.ts +1 -1
- package/lib/prompts/createApiSamplePrompt.js +9 -12
- package/lib/prompts/createDeveloperTestAccountConfigPrompt.d.ts +1 -1
- package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +23 -26
- package/lib/prompts/createFunctionPrompt.js +17 -20
- package/lib/prompts/createModulePrompt.js +12 -15
- package/lib/prompts/createTemplatePrompt.js +5 -8
- package/lib/prompts/downloadProjectPrompt.js +17 -20
- package/lib/prompts/installAppPrompt.js +19 -26
- package/lib/prompts/personalAccessKeyPrompt.d.ts +2 -2
- package/lib/prompts/personalAccessKeyPrompt.js +40 -47
- package/lib/prompts/previewPrompt.js +15 -22
- package/lib/prompts/projectAddPrompt.d.ts +1 -1
- package/lib/prompts/projectAddPrompt.js +14 -18
- package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -1
- package/lib/prompts/projectDevTargetAccountPrompt.js +48 -54
- package/lib/prompts/projectNameAndDestPrompt.d.ts +1 -1
- package/lib/prompts/projectNameAndDestPrompt.js +22 -29
- package/lib/prompts/projectNamePrompt.js +11 -14
- package/lib/prompts/projectsLogsPrompt.js +5 -8
- package/lib/prompts/promptUtils.d.ts +1 -1
- package/lib/prompts/promptUtils.js +17 -24
- package/lib/prompts/sandboxesPrompt.d.ts +1 -1
- package/lib/prompts/sandboxesPrompt.js +26 -30
- package/lib/prompts/secretPrompt.js +10 -15
- package/lib/prompts/selectAppPrompt.js +11 -14
- package/lib/prompts/selectHubDBTablePrompt.js +24 -30
- package/lib/prompts/selectProjectTemplatePrompt.d.ts +1 -1
- package/lib/prompts/selectProjectTemplatePrompt.js +10 -13
- package/lib/prompts/selectPublicAppForMigrationPrompt.js +22 -25
- package/lib/prompts/setAsDefaultAccountPrompt.js +13 -16
- package/lib/prompts/uploadPrompt.js +11 -17
- package/lib/sandboxSync.d.ts +1 -1
- package/lib/sandboxSync.js +58 -65
- package/lib/sandboxes.d.ts +1 -1
- package/lib/sandboxes.js +68 -76
- package/lib/schema.js +13 -20
- package/lib/serverlessLogs.js +45 -52
- package/lib/testUtils.js +4 -8
- package/lib/ui/SpinniesManager.d.ts +1 -1
- package/lib/ui/SpinniesManager.js +29 -34
- package/lib/ui/boxen.js +11 -14
- package/lib/ui/git.js +14 -20
- package/lib/ui/index.js +55 -73
- package/lib/ui/logger.js +10 -13
- package/lib/ui/serverlessFunctionLogs.js +14 -20
- package/lib/ui/spinniesUtils.js +24 -39
- package/lib/ui/supportHyperlinks.js +3 -6
- package/lib/ui/supportsColor.js +11 -17
- package/lib/ui/table.js +6 -13
- package/lib/upload.js +15 -21
- package/lib/usageTracking.js +35 -44
- package/lib/utils/hasFlag.js +2 -8
- package/lib/validation.js +48 -87
- package/lib/yargsUtils.d.ts +2 -1
- package/lib/yargsUtils.js +19 -16
- package/mcp-server/server.js +6 -8
- package/mcp-server/tools/index.js +13 -16
- package/mcp-server/tools/project/AddFeatureToProject.d.ts +1 -1
- package/mcp-server/tools/project/AddFeatureToProject.js +35 -39
- package/mcp-server/tools/project/CreateProjectTool.d.ts +1 -1
- package/mcp-server/tools/project/CreateProjectTool.js +46 -50
- package/mcp-server/tools/project/DeployProject.d.ts +1 -1
- package/mcp-server/tools/project/DeployProject.js +18 -22
- package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +1 -1
- package/mcp-server/tools/project/GuidedWalkthroughTool.js +21 -25
- package/mcp-server/tools/project/UploadProjectTools.d.ts +1 -1
- package/mcp-server/tools/project/UploadProjectTools.js +12 -19
- package/mcp-server/tools/project/ValidateProjectTool.d.ts +1 -1
- package/mcp-server/tools/project/ValidateProjectTool.js +13 -17
- package/mcp-server/tools/project/__tests__/AddFeatureToProject.test.js +12 -14
- package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +13 -15
- package/mcp-server/tools/project/__tests__/DeployProject.test.js +6 -8
- package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +4 -6
- package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +4 -6
- package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +4 -6
- package/mcp-server/tools/project/constants.js +3 -9
- package/mcp-server/types.js +1 -5
- package/mcp-server/utils/__tests__/command.test.js +9 -11
- package/mcp-server/utils/__tests__/project.test.js +12 -17
- package/mcp-server/utils/command.d.ts +1 -1
- package/mcp-server/utils/command.js +4 -11
- package/mcp-server/utils/content.d.ts +1 -1
- package/mcp-server/utils/content.js +2 -6
- package/mcp-server/utils/project.js +8 -14
- package/mcp-server/utils/toolUsageTracking.js +11 -14
- package/package.json +15 -11
- package/types/Cms.d.ts +1 -1
- package/types/Cms.js +1 -2
- package/types/LocalDev.d.ts +4 -4
- package/types/LocalDev.js +1 -2
- package/types/ProjectComponents.d.ts +2 -2
- package/types/ProjectComponents.js +1 -2
- package/types/Projects.d.ts +1 -1
- package/types/Projects.js +2 -5
- package/types/Prompts.js +1 -2
- package/types/Sandboxes.js +1 -2
- package/types/Yargs.js +1 -2
- package/commands/app/__tests__/install.test.d.ts +0 -1
- package/commands/app/__tests__/install.test.js +0 -52
- package/commands/app/install.d.ts +0 -8
- package/commands/app/install.js +0 -127
package/lib/ui/index.js
CHANGED
|
@@ -1,43 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
exports.uiAccountDescription = uiAccountDescription;
|
|
10
|
-
exports.uiInfoSection = uiInfoSection;
|
|
11
|
-
exports.uiCommandReference = uiCommandReference;
|
|
12
|
-
exports.uiFeatureHighlight = uiFeatureHighlight;
|
|
13
|
-
exports.uiBetaTag = uiBetaTag;
|
|
14
|
-
exports.uiDeprecatedTag = uiDeprecatedTag;
|
|
15
|
-
exports.uiCommandDisabledBanner = uiCommandDisabledBanner;
|
|
16
|
-
exports.uiDeprecatedDescription = uiDeprecatedDescription;
|
|
17
|
-
exports.uiDeprecatedMessage = uiDeprecatedMessage;
|
|
18
|
-
exports.indent = indent;
|
|
19
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
20
|
-
const config_1 = require("@hubspot/local-dev-lib/config");
|
|
21
|
-
const logger_1 = require("@hubspot/local-dev-lib/logger");
|
|
22
|
-
const supportHyperlinks_1 = require("./supportHyperlinks");
|
|
23
|
-
const supportsColor_1 = require("./supportsColor");
|
|
24
|
-
const lang_1 = require("../lang");
|
|
25
|
-
const { HUBSPOT_ACCOUNT_TYPE_STRINGS, } = require('@hubspot/local-dev-lib/constants/config');
|
|
26
|
-
exports.UI_COLORS = {
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { getAccountConfig } from '@hubspot/local-dev-lib/config';
|
|
3
|
+
import { logger } from '@hubspot/local-dev-lib/logger';
|
|
4
|
+
import { supportsHyperlinkModule } from './supportHyperlinks.js';
|
|
5
|
+
import { supportsColor } from './supportsColor.js';
|
|
6
|
+
import { i18n } from '../lang.js';
|
|
7
|
+
import { HUBSPOT_ACCOUNT_TYPE_STRINGS } from '@hubspot/local-dev-lib/constants/config';
|
|
8
|
+
export const UI_COLORS = {
|
|
27
9
|
SORBET: '#FF8F59',
|
|
28
10
|
MARIGOLD: '#f5c26b',
|
|
29
11
|
MARIGOLD_DARK: '#dbae60',
|
|
30
12
|
};
|
|
31
|
-
function uiLine() {
|
|
32
|
-
|
|
13
|
+
export function uiLine() {
|
|
14
|
+
logger.log('-'.repeat(50));
|
|
33
15
|
}
|
|
34
16
|
function getTerminalUISupport() {
|
|
35
17
|
return {
|
|
36
|
-
hyperlinks:
|
|
37
|
-
color:
|
|
18
|
+
hyperlinks: supportsHyperlinkModule.stdout,
|
|
19
|
+
color: supportsColor.stdout.hasBasic,
|
|
38
20
|
};
|
|
39
21
|
}
|
|
40
|
-
function uiLink(linkText, url) {
|
|
22
|
+
export function uiLink(linkText, url) {
|
|
41
23
|
const terminalUISupport = getTerminalUISupport();
|
|
42
24
|
const encodedUrl = encodeURI(url);
|
|
43
25
|
if (terminalUISupport.hyperlinks) {
|
|
@@ -49,14 +31,14 @@ function uiLink(linkText, url) {
|
|
|
49
31
|
linkText,
|
|
50
32
|
CLOSE_SEQUENCE,
|
|
51
33
|
].join('');
|
|
52
|
-
return terminalUISupport.color ?
|
|
34
|
+
return terminalUISupport.color ? chalk.cyan(result) : result;
|
|
53
35
|
}
|
|
54
36
|
return terminalUISupport.color
|
|
55
|
-
? `${linkText}: ${
|
|
37
|
+
? `${linkText}: ${chalk.reset.cyan(encodedUrl)}`
|
|
56
38
|
: `${linkText}: ${encodedUrl}`;
|
|
57
39
|
}
|
|
58
|
-
function uiAccountDescription(accountId, bold = true) {
|
|
59
|
-
const account =
|
|
40
|
+
export function uiAccountDescription(accountId, bold = true) {
|
|
41
|
+
const account = getAccountConfig(accountId || undefined);
|
|
60
42
|
let message;
|
|
61
43
|
if (account && account.accountType) {
|
|
62
44
|
message = `${account.name ? `${account.name} ` : ''}[${HUBSPOT_ACCOUNT_TYPE_STRINGS[account.accountType]}] (${accountId})`;
|
|
@@ -64,90 +46,90 @@ function uiAccountDescription(accountId, bold = true) {
|
|
|
64
46
|
else {
|
|
65
47
|
message = accountId ? accountId.toString() : '';
|
|
66
48
|
}
|
|
67
|
-
return bold ?
|
|
49
|
+
return bold ? chalk.bold(message) : message;
|
|
68
50
|
}
|
|
69
|
-
function uiInfoSection(title, logContent) {
|
|
51
|
+
export function uiInfoSection(title, logContent) {
|
|
70
52
|
uiLine();
|
|
71
|
-
|
|
72
|
-
|
|
53
|
+
logger.log(chalk.bold(title));
|
|
54
|
+
logger.log('');
|
|
73
55
|
logContent();
|
|
74
|
-
|
|
56
|
+
logger.log('');
|
|
75
57
|
uiLine();
|
|
76
58
|
}
|
|
77
|
-
function uiCommandReference(command, withQuotes = true) {
|
|
59
|
+
export function uiCommandReference(command, withQuotes = true) {
|
|
78
60
|
const terminalUISupport = getTerminalUISupport();
|
|
79
61
|
const commandReference = withQuotes ? `\`${command}\`` : command;
|
|
80
|
-
return
|
|
81
|
-
?
|
|
62
|
+
return chalk.bold(terminalUISupport.color
|
|
63
|
+
? chalk.hex(UI_COLORS.MARIGOLD_DARK)(commandReference)
|
|
82
64
|
: commandReference);
|
|
83
65
|
}
|
|
84
|
-
function uiFeatureHighlight(features, title) {
|
|
85
|
-
uiInfoSection(title ? title :
|
|
66
|
+
export function uiFeatureHighlight(features, title) {
|
|
67
|
+
uiInfoSection(title ? title : i18n(`lib.ui.featureHighlight.defaultTitle`), () => {
|
|
86
68
|
features.forEach((c, i) => {
|
|
87
69
|
const featureKey = `lib.ui.featureHighlight.featureKeys.${c}`;
|
|
88
|
-
const message =
|
|
89
|
-
command: uiCommandReference(
|
|
90
|
-
link: uiLink(
|
|
70
|
+
const message = i18n(`${featureKey}.message`, {
|
|
71
|
+
command: uiCommandReference(i18n(`${featureKey}.command`)),
|
|
72
|
+
link: uiLink(i18n(`${featureKey}.linkText`), i18n(`${featureKey}.url`)),
|
|
91
73
|
});
|
|
92
74
|
if (i !== 0) {
|
|
93
|
-
|
|
75
|
+
logger.log('');
|
|
94
76
|
}
|
|
95
|
-
|
|
77
|
+
logger.log(message);
|
|
96
78
|
});
|
|
97
79
|
});
|
|
98
80
|
}
|
|
99
|
-
function uiBetaTag(message, log = true) {
|
|
81
|
+
export function uiBetaTag(message, log = true) {
|
|
100
82
|
const terminalUISupport = getTerminalUISupport();
|
|
101
|
-
const tag =
|
|
102
|
-
const result = `${terminalUISupport.color ?
|
|
83
|
+
const tag = i18n(`lib.ui.betaTag`);
|
|
84
|
+
const result = `${terminalUISupport.color ? chalk.hex(UI_COLORS.SORBET)(tag) : tag} ${message}`;
|
|
103
85
|
if (log) {
|
|
104
|
-
|
|
86
|
+
logger.log(result);
|
|
105
87
|
return;
|
|
106
88
|
}
|
|
107
89
|
return result;
|
|
108
90
|
}
|
|
109
|
-
function uiDeprecatedTag(message, log = true) {
|
|
91
|
+
export function uiDeprecatedTag(message, log = true) {
|
|
110
92
|
const terminalUISupport = getTerminalUISupport();
|
|
111
|
-
const tag =
|
|
112
|
-
const result = `${terminalUISupport.color ?
|
|
93
|
+
const tag = i18n(`lib.ui.deprecatedTag`);
|
|
94
|
+
const result = `${terminalUISupport.color ? chalk.yellow(tag) : tag} ${message}`;
|
|
113
95
|
if (log) {
|
|
114
|
-
|
|
96
|
+
logger.log(result);
|
|
115
97
|
return;
|
|
116
98
|
}
|
|
117
99
|
return result;
|
|
118
100
|
}
|
|
119
|
-
function uiCommandDisabledBanner(command, url, message) {
|
|
101
|
+
export function uiCommandDisabledBanner(command, url, message) {
|
|
120
102
|
const tag = message ||
|
|
121
|
-
|
|
103
|
+
i18n(`lib.ui.disabledMessage`, {
|
|
122
104
|
command: uiCommandReference(command),
|
|
123
|
-
url: url ? uiLink(
|
|
105
|
+
url: url ? uiLink(i18n(`lib.ui.disabledUrlText`), url) : '',
|
|
124
106
|
npmCommand: uiCommandReference('npm i -g @hubspot/cli@latest'),
|
|
125
107
|
});
|
|
126
|
-
|
|
108
|
+
logger.log();
|
|
127
109
|
uiLine();
|
|
128
|
-
|
|
110
|
+
logger.error(tag);
|
|
129
111
|
uiLine();
|
|
130
|
-
|
|
112
|
+
logger.log();
|
|
131
113
|
}
|
|
132
|
-
function uiDeprecatedDescription(message, command, url) {
|
|
133
|
-
const tag =
|
|
114
|
+
export function uiDeprecatedDescription(message, command, url) {
|
|
115
|
+
const tag = i18n(`lib.ui.deprecatedDescription`, {
|
|
134
116
|
message,
|
|
135
117
|
command: uiCommandReference(command),
|
|
136
|
-
url: url ? uiLink(
|
|
118
|
+
url: url ? uiLink(i18n(`lib.ui.deprecatedUrlText`), url) : '',
|
|
137
119
|
});
|
|
138
120
|
return uiDeprecatedTag(tag);
|
|
139
121
|
}
|
|
140
|
-
function uiDeprecatedMessage(command, url, message) {
|
|
122
|
+
export function uiDeprecatedMessage(command, url, message) {
|
|
141
123
|
const tag = message ||
|
|
142
|
-
|
|
124
|
+
i18n(`lib.ui.deprecatedMessage`, {
|
|
143
125
|
command: uiCommandReference(command),
|
|
144
|
-
url: url ? uiLink(
|
|
126
|
+
url: url ? uiLink(i18n(`lib.ui.deprecatedUrlText`), url) : '',
|
|
145
127
|
});
|
|
146
|
-
|
|
128
|
+
logger.log();
|
|
147
129
|
uiDeprecatedTag(tag);
|
|
148
|
-
|
|
130
|
+
logger.log();
|
|
149
131
|
}
|
|
150
|
-
function indent(level) {
|
|
132
|
+
export function indent(level) {
|
|
151
133
|
const indentation = ' ';
|
|
152
134
|
return indentation.repeat(level);
|
|
153
135
|
}
|
package/lib/ui/logger.js
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.uiLogger = void 0;
|
|
4
|
-
const logger_1 = require("@hubspot/local-dev-lib/logger");
|
|
1
|
+
import { logger as _logger } from '@hubspot/local-dev-lib/logger';
|
|
5
2
|
// Wrapper around LDL logger to provide type checking
|
|
6
|
-
|
|
7
|
-
log: (message) =>
|
|
8
|
-
error: (message) =>
|
|
9
|
-
warn: (message) =>
|
|
10
|
-
success: (message) =>
|
|
11
|
-
info: (message) =>
|
|
12
|
-
debug:
|
|
13
|
-
group: (message) =>
|
|
14
|
-
groupEnd: () =>
|
|
3
|
+
export const uiLogger = {
|
|
4
|
+
log: (message) => _logger.log(message),
|
|
5
|
+
error: (message) => _logger.error(message),
|
|
6
|
+
warn: (message) => _logger.warn(message),
|
|
7
|
+
success: (message) => _logger.success(message),
|
|
8
|
+
info: (message) => _logger.info(message),
|
|
9
|
+
debug: _logger.debug,
|
|
10
|
+
group: (message) => _logger.group(message),
|
|
11
|
+
groupEnd: () => _logger.groupEnd(),
|
|
15
12
|
json: (json) => console.log(JSON.stringify(json, null, 2)),
|
|
16
13
|
};
|
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.outputLogs = outputLogs;
|
|
7
|
-
const moment_1 = __importDefault(require("moment"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const logger_1 = require("@hubspot/local-dev-lib/logger");
|
|
10
|
-
const lang_1 = require("../lang");
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { logger, Styles } from '@hubspot/local-dev-lib/logger';
|
|
4
|
+
import { i18n } from '../lang.js';
|
|
11
5
|
const SEPARATOR = ' - ';
|
|
12
6
|
const LOG_STATUS_COLORS = {
|
|
13
|
-
SUCCESS:
|
|
14
|
-
ERROR:
|
|
15
|
-
UNHANDLED_ERROR:
|
|
16
|
-
HANDLED_ERROR:
|
|
7
|
+
SUCCESS: Styles.success,
|
|
8
|
+
ERROR: Styles.error,
|
|
9
|
+
UNHANDLED_ERROR: Styles.error,
|
|
10
|
+
HANDLED_ERROR: Styles.error,
|
|
17
11
|
};
|
|
18
12
|
function errorHandler(log, options) {
|
|
19
13
|
return `${formatLogHeader(log, options)}${formatError(log, options)}`;
|
|
@@ -52,17 +46,17 @@ function formatStackTrace(log) {
|
|
|
52
46
|
.join('');
|
|
53
47
|
}
|
|
54
48
|
function formatTimestamp(log) {
|
|
55
|
-
return `${
|
|
49
|
+
return `${chalk.whiteBright(moment(log.createdAt).toISOString())}`;
|
|
56
50
|
}
|
|
57
51
|
function formatExecutionTime(log) {
|
|
58
|
-
return `${
|
|
52
|
+
return `${chalk.whiteBright('Execution Time:')} ${log.executionTime}ms`;
|
|
59
53
|
}
|
|
60
54
|
function processLog(log, options) {
|
|
61
55
|
try {
|
|
62
56
|
return logHandler[log.status](log, options);
|
|
63
57
|
}
|
|
64
58
|
catch (e) {
|
|
65
|
-
|
|
59
|
+
logger.error(i18n(`lib.ui.serverlessFunctionLogs.unableToProcessLog`, {
|
|
66
60
|
log: JSON.stringify(log),
|
|
67
61
|
}));
|
|
68
62
|
}
|
|
@@ -76,7 +70,7 @@ function isLogsResponse(logsResp) {
|
|
|
76
70
|
function processLogs(logsResp, options) {
|
|
77
71
|
const isLogsResp = isLogsResponse(logsResp);
|
|
78
72
|
if (!logsResp || (isLogsResp && logsResp.results.length === 0)) {
|
|
79
|
-
return
|
|
73
|
+
return i18n(`lib.ui.serverlessFunctionLogs.noLogsFound`);
|
|
80
74
|
}
|
|
81
75
|
else if (isLogsResp) {
|
|
82
76
|
return logsResp
|
|
@@ -87,6 +81,6 @@ function processLogs(logsResp, options) {
|
|
|
87
81
|
}
|
|
88
82
|
return processLog(logsResp, options);
|
|
89
83
|
}
|
|
90
|
-
function outputLogs(logsResp, options) {
|
|
91
|
-
|
|
84
|
+
export function outputLogs(logsResp, options) {
|
|
85
|
+
logger.log(processLogs(logsResp, options));
|
|
92
86
|
}
|
package/lib/ui/spinniesUtils.js
CHANGED
|
@@ -1,18 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.SPINNERS = exports.VALID_STATUSES = void 0;
|
|
7
|
-
exports.purgeSpinnerOptions = purgeSpinnerOptions;
|
|
8
|
-
exports.purgeSpinnersOptions = purgeSpinnersOptions;
|
|
9
|
-
exports.colorOptions = colorOptions;
|
|
10
|
-
exports.prefixOptions = prefixOptions;
|
|
11
|
-
exports.breakText = breakText;
|
|
12
|
-
exports.getLinesLength = getLinesLength;
|
|
13
|
-
exports.writeStream = writeStream;
|
|
14
|
-
exports.cleanStream = cleanStream;
|
|
15
|
-
exports.terminalSupportsUnicode = terminalSupportsUnicode;
|
|
16
1
|
/*
|
|
17
2
|
https://github.com/jbcarpanelli/spinnies
|
|
18
3
|
|
|
@@ -22,9 +7,9 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
|
22
7
|
|
|
23
8
|
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
24
9
|
**/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
10
|
+
import readline from 'readline';
|
|
11
|
+
import stripAnsi from 'strip-ansi';
|
|
12
|
+
export const VALID_STATUSES = [
|
|
28
13
|
'succeed',
|
|
29
14
|
'fail',
|
|
30
15
|
'spinning',
|
|
@@ -49,7 +34,7 @@ const VALID_COLORS = [
|
|
|
49
34
|
'cyanBright',
|
|
50
35
|
'whiteBright',
|
|
51
36
|
];
|
|
52
|
-
|
|
37
|
+
export const SPINNERS = {
|
|
53
38
|
dots: {
|
|
54
39
|
interval: 50,
|
|
55
40
|
frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],
|
|
@@ -59,11 +44,11 @@ exports.SPINNERS = {
|
|
|
59
44
|
frames: ['-', '_'],
|
|
60
45
|
},
|
|
61
46
|
};
|
|
62
|
-
function purgeSpinnerOptions(options) {
|
|
47
|
+
export function purgeSpinnerOptions(options) {
|
|
63
48
|
const { text, status, indent } = options;
|
|
64
49
|
const opts = { text, status, indent };
|
|
65
50
|
const colors = colorOptions(options);
|
|
66
|
-
if (!
|
|
51
|
+
if (!VALID_STATUSES.includes(status))
|
|
67
52
|
delete opts.status;
|
|
68
53
|
if (typeof text !== 'string')
|
|
69
54
|
delete opts.text;
|
|
@@ -71,7 +56,7 @@ function purgeSpinnerOptions(options) {
|
|
|
71
56
|
delete opts.indent;
|
|
72
57
|
return { ...colors, ...opts };
|
|
73
58
|
}
|
|
74
|
-
function purgeSpinnersOptions({ spinner, disableSpins, ...others }) {
|
|
59
|
+
export function purgeSpinnersOptions({ spinner, disableSpins, ...others }) {
|
|
75
60
|
const colors = colorOptions(others);
|
|
76
61
|
const prefixes = prefixOptions(others);
|
|
77
62
|
const disableSpinsOption = typeof disableSpins === 'boolean' ? { disableSpins } : {};
|
|
@@ -80,8 +65,8 @@ function purgeSpinnersOptions({ spinner, disableSpins, ...others }) {
|
|
|
80
65
|
}
|
|
81
66
|
function turnToValidSpinner(spinner = {}) {
|
|
82
67
|
const platformSpinner = terminalSupportsUnicode()
|
|
83
|
-
?
|
|
84
|
-
:
|
|
68
|
+
? SPINNERS.dots
|
|
69
|
+
: SPINNERS.dashes;
|
|
85
70
|
if (typeof spinner !== 'object') {
|
|
86
71
|
return platformSpinner;
|
|
87
72
|
}
|
|
@@ -101,7 +86,7 @@ function turnToValidSpinner(spinner = {}) {
|
|
|
101
86
|
}
|
|
102
87
|
return { interval, frames };
|
|
103
88
|
}
|
|
104
|
-
function colorOptions({ color, succeedColor, failColor, spinnerColor, }) {
|
|
89
|
+
export function colorOptions({ color, succeedColor, failColor, spinnerColor, }) {
|
|
105
90
|
const colors = {
|
|
106
91
|
color,
|
|
107
92
|
succeedColor,
|
|
@@ -115,7 +100,7 @@ function colorOptions({ color, succeedColor, failColor, spinnerColor, }) {
|
|
|
115
100
|
});
|
|
116
101
|
return colors;
|
|
117
102
|
}
|
|
118
|
-
function prefixOptions({ succeedPrefix, failPrefix, }) {
|
|
103
|
+
export function prefixOptions({ succeedPrefix, failPrefix, }) {
|
|
119
104
|
if (terminalSupportsUnicode()) {
|
|
120
105
|
succeedPrefix = succeedPrefix || '✓';
|
|
121
106
|
failPrefix = failPrefix || '✖';
|
|
@@ -126,7 +111,7 @@ function prefixOptions({ succeedPrefix, failPrefix, }) {
|
|
|
126
111
|
}
|
|
127
112
|
return { succeedPrefix, failPrefix };
|
|
128
113
|
}
|
|
129
|
-
function breakText(text, prefixLength) {
|
|
114
|
+
export function breakText(text, prefixLength) {
|
|
130
115
|
return text
|
|
131
116
|
.split('\n')
|
|
132
117
|
.map((line, index) => index === 0 ? breakLine(line, prefixLength) : breakLine(line, 0))
|
|
@@ -138,26 +123,26 @@ function breakLine(line, prefixLength) {
|
|
|
138
123
|
? `${line.substring(0, columns - prefixLength - 1)}\n${breakLine(line.substring(columns - prefixLength - 1, line.length), 0)}`
|
|
139
124
|
: line;
|
|
140
125
|
}
|
|
141
|
-
function getLinesLength(text, prefixLength) {
|
|
142
|
-
return (
|
|
126
|
+
export function getLinesLength(text, prefixLength) {
|
|
127
|
+
return stripAnsi(text)
|
|
143
128
|
.split('\n')
|
|
144
129
|
.map((line, index) => index === 0 ? line.length + prefixLength : line.length);
|
|
145
130
|
}
|
|
146
|
-
function writeStream(stream, output, rawLines) {
|
|
131
|
+
export function writeStream(stream, output, rawLines) {
|
|
147
132
|
stream.write(output);
|
|
148
|
-
|
|
133
|
+
readline.moveCursor(stream, 0, -rawLines.length);
|
|
149
134
|
}
|
|
150
|
-
function cleanStream(stream, rawLines) {
|
|
135
|
+
export function cleanStream(stream, rawLines) {
|
|
151
136
|
rawLines.forEach((lineLength, index) => {
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
137
|
+
readline.moveCursor(stream, lineLength, index);
|
|
138
|
+
readline.clearLine(stream, 1);
|
|
139
|
+
readline.moveCursor(stream, -lineLength, -index);
|
|
155
140
|
});
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
141
|
+
readline.moveCursor(stream, 0, rawLines.length);
|
|
142
|
+
readline.clearScreenDown(stream);
|
|
143
|
+
readline.moveCursor(stream, 0, -rawLines.length);
|
|
159
144
|
}
|
|
160
|
-
function terminalSupportsUnicode() {
|
|
145
|
+
export function terminalSupportsUnicode() {
|
|
161
146
|
// The default command prompt and powershell in Windows do not support Unicode characters.
|
|
162
147
|
// However, the VSCode integrated terminal and the Windows Terminal both do.
|
|
163
148
|
return (process.platform !== 'win32' ||
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.supportsHyperlinkModule = void 0;
|
|
4
|
-
const hasFlag_1 = require("../utils/hasFlag");
|
|
1
|
+
import { hasFlag } from '../utils/hasFlag.js';
|
|
5
2
|
//See https://github.com/jamestalmage/supports-hyperlinks (License: https://github.com/jamestalmage/supports-hyperlinks/blob/master/license)
|
|
6
3
|
function parseVersion(versionString) {
|
|
7
4
|
if (/^\d{3,4}$/.test(versionString)) {
|
|
@@ -22,7 +19,7 @@ function parseVersion(versionString) {
|
|
|
22
19
|
}
|
|
23
20
|
function supportsHyperlink(stream) {
|
|
24
21
|
const { env } = process;
|
|
25
|
-
if (
|
|
22
|
+
if (hasFlag('noHyperlinks')) {
|
|
26
23
|
return false;
|
|
27
24
|
}
|
|
28
25
|
if (stream && !stream.isTTY) {
|
|
@@ -55,7 +52,7 @@ function supportsHyperlink(stream) {
|
|
|
55
52
|
}
|
|
56
53
|
return false;
|
|
57
54
|
}
|
|
58
|
-
|
|
55
|
+
export const supportsHyperlinkModule = {
|
|
59
56
|
supportsHyperlink,
|
|
60
57
|
stdout: supportsHyperlink(process.stdout),
|
|
61
58
|
stderr: supportsHyperlink(process.stderr),
|
package/lib/ui/supportsColor.js
CHANGED
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
exports.supportsColor = void 0;
|
|
7
|
-
const process_1 = __importDefault(require("process"));
|
|
8
|
-
const os_1 = __importDefault(require("os"));
|
|
9
|
-
const tty_1 = __importDefault(require("tty"));
|
|
10
|
-
const hasFlag_1 = require("../utils/hasFlag");
|
|
11
|
-
const { env } = process_1.default;
|
|
1
|
+
import process from 'process';
|
|
2
|
+
import os from 'os';
|
|
3
|
+
import tty from 'tty';
|
|
4
|
+
import { hasFlag } from '../utils/hasFlag.js';
|
|
5
|
+
const { env } = process;
|
|
12
6
|
function translateLevel(level) {
|
|
13
7
|
if (level === 0) {
|
|
14
8
|
return {
|
|
@@ -33,13 +27,13 @@ function _supportsColor(haveStream, { streamIsTTY } = {}) {
|
|
|
33
27
|
if (env.TERM === 'dumb') {
|
|
34
28
|
return min;
|
|
35
29
|
}
|
|
36
|
-
if (
|
|
30
|
+
if (hasFlag('noColor')) {
|
|
37
31
|
return 0;
|
|
38
32
|
}
|
|
39
|
-
if (
|
|
33
|
+
if (process.platform === 'win32') {
|
|
40
34
|
// Windows 10 build 10586 is the first Windows release that supports 256 colors.
|
|
41
35
|
// Windows 10 build 14931 is the first release that supports 16m/TrueColor.
|
|
42
|
-
const osRelease =
|
|
36
|
+
const osRelease = os.release().split('.');
|
|
43
37
|
if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
|
|
44
38
|
return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
|
45
39
|
}
|
|
@@ -96,8 +90,8 @@ function createSupportsColor(stream, options = {}) {
|
|
|
96
90
|
});
|
|
97
91
|
return translateLevel(level);
|
|
98
92
|
}
|
|
99
|
-
|
|
93
|
+
export const supportsColor = {
|
|
100
94
|
createSupportsColor,
|
|
101
|
-
stdout: createSupportsColor({ isTTY:
|
|
102
|
-
stderr: createSupportsColor({ isTTY:
|
|
95
|
+
stdout: createSupportsColor({ isTTY: tty.isatty(1) }),
|
|
96
|
+
stderr: createSupportsColor({ isTTY: tty.isatty(2) }),
|
|
103
97
|
};
|
package/lib/ui/table.js
CHANGED
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getTableContents = getTableContents;
|
|
7
|
-
exports.getTableHeader = getTableHeader;
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const table_1 = require("table");
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { table } from 'table';
|
|
10
3
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
11
4
|
function isObject(item) {
|
|
12
5
|
return item && typeof item === 'object' && !Array.isArray(item);
|
|
@@ -59,12 +52,12 @@ const tableConfigDefaults = {
|
|
|
59
52
|
return false;
|
|
60
53
|
},
|
|
61
54
|
};
|
|
62
|
-
function getTableContents(
|
|
55
|
+
export function getTableContents(
|
|
63
56
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
64
57
|
tableData = [], tableConfig = {}) {
|
|
65
58
|
const mergedConfig = mergeDeep({}, tableConfigDefaults, tableConfig);
|
|
66
|
-
return
|
|
59
|
+
return table(tableData, mergedConfig);
|
|
67
60
|
}
|
|
68
|
-
function getTableHeader(headerItems) {
|
|
69
|
-
return headerItems.map(headerItem =>
|
|
61
|
+
export function getTableHeader(headerItems) {
|
|
62
|
+
return headerItems.map(headerItem => chalk.bold(headerItem));
|
|
70
63
|
}
|
package/lib/upload.js
CHANGED
|
@@ -1,49 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const fs_1 = require("@hubspot/local-dev-lib/fs");
|
|
9
|
-
const ignoreRules_1 = require("@hubspot/local-dev-lib/ignoreRules");
|
|
10
|
-
const handleFieldsJS_1 = require("@hubspot/local-dev-lib/cms/handleFieldsJS");
|
|
11
|
-
const path_2 = require("@hubspot/local-dev-lib/path");
|
|
12
|
-
const cmsFieldPrompt_1 = require("./prompts/cmsFieldPrompt");
|
|
13
|
-
const index_1 = require("./errorHandlers/index");
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { walk } from '@hubspot/local-dev-lib/fs';
|
|
3
|
+
import { createIgnoreFilter } from '@hubspot/local-dev-lib/ignoreRules';
|
|
4
|
+
import { isConvertableFieldJs } from '@hubspot/local-dev-lib/cms/handleFieldsJS';
|
|
5
|
+
import { isAllowedExtension } from '@hubspot/local-dev-lib/path';
|
|
6
|
+
import { fieldsJsPrompt } from './prompts/cmsFieldPrompt.js';
|
|
7
|
+
import { logError } from './errorHandlers/index.js';
|
|
14
8
|
/*
|
|
15
9
|
* Walks the src folder for files, filters them based on ignore filter.
|
|
16
10
|
* If convertFields is true then will check for any JS fields conflicts (i.e., JS fields file and fields.json file) and prompt to resolve
|
|
17
11
|
*/
|
|
18
|
-
async function getUploadableFileList(src, convertFields) {
|
|
12
|
+
export async function getUploadableFileList(src, convertFields) {
|
|
19
13
|
let filePaths = [];
|
|
20
14
|
try {
|
|
21
|
-
filePaths = await
|
|
15
|
+
filePaths = await walk(src);
|
|
22
16
|
}
|
|
23
17
|
catch (e) {
|
|
24
|
-
|
|
18
|
+
logError(e);
|
|
25
19
|
}
|
|
26
20
|
const allowedFiles = filePaths
|
|
27
21
|
.filter(file => {
|
|
28
|
-
if (!
|
|
22
|
+
if (!isAllowedExtension(file)) {
|
|
29
23
|
return false;
|
|
30
24
|
}
|
|
31
25
|
return true;
|
|
32
26
|
})
|
|
33
|
-
.filter(
|
|
27
|
+
.filter(createIgnoreFilter(false));
|
|
34
28
|
if (!convertFields) {
|
|
35
29
|
return allowedFiles;
|
|
36
30
|
}
|
|
37
31
|
const uploadableFiles = [];
|
|
38
32
|
let skipFiles = [];
|
|
39
33
|
for (const filePath of allowedFiles) {
|
|
40
|
-
const fileName =
|
|
34
|
+
const fileName = path.basename(filePath);
|
|
41
35
|
if (skipFiles.includes(filePath))
|
|
42
36
|
continue;
|
|
43
|
-
const isConvertable =
|
|
37
|
+
const isConvertable = isConvertableFieldJs(src, filePath, convertFields);
|
|
44
38
|
if (isConvertable || fileName == 'fields.json') {
|
|
45
39
|
// This prompt checks if there are multiple field files in the folder and gets user to choose.
|
|
46
|
-
const [choice, updatedSkipFiles] = await
|
|
40
|
+
const [choice, updatedSkipFiles] = await fieldsJsPrompt(filePath, src, skipFiles);
|
|
47
41
|
skipFiles = updatedSkipFiles;
|
|
48
42
|
// If they chose something other than the current file, move on.
|
|
49
43
|
if (choice !== filePath)
|