@squiz/dxp-cli-next 5.33.0-develop.1 → 5.33.0-develop.10
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/README.md +1 -0
- package/bin/dxp.js +6 -1
- package/dist/dxp.js +4480 -0
- package/package.json +36 -30
- package/lib/ApiService.d.ts +0 -39
- package/lib/ApiService.js +0 -120
- package/lib/ApiService.spec.d.ts +0 -1
- package/lib/ApiService.spec.js +0 -182
- package/lib/ApplicationConfig.d.ts +0 -7
- package/lib/ApplicationConfig.js +0 -38
- package/lib/ApplicationConfig.spec.d.ts +0 -1
- package/lib/ApplicationConfig.spec.js +0 -84
- package/lib/ApplicationStore.d.ts +0 -13
- package/lib/ApplicationStore.js +0 -53
- package/lib/__tests__/cmp/dev-mode.spec.d.ts +0 -1
- package/lib/__tests__/cmp/dev-mode.spec.js +0 -54
- package/lib/__tests__/helpers.d.ts +0 -17
- package/lib/__tests__/helpers.js +0 -54
- package/lib/__tests__/integration/main.spec.d.ts +0 -1
- package/lib/__tests__/integration/main.spec.js +0 -45
- package/lib/__tests__/smoke/validate.spec.d.ts +0 -1
- package/lib/__tests__/smoke/validate.spec.js +0 -37
- package/lib/__tests__/unit/cli.d.ts +0 -0
- package/lib/__tests__/unit/cli.js +0 -7
- package/lib/auth/index.d.ts +0 -3
- package/lib/auth/index.js +0 -14
- package/lib/auth/login/login.d.ts +0 -22
- package/lib/auth/login/login.js +0 -268
- package/lib/auth/login/login.spec.d.ts +0 -1
- package/lib/auth/login/login.spec.js +0 -179
- package/lib/auth/logout/logout.d.ts +0 -3
- package/lib/auth/logout/logout.js +0 -115
- package/lib/auth/logout/logout.spec.d.ts +0 -1
- package/lib/auth/logout/logout.spec.js +0 -67
- package/lib/cdp/constants.d.ts +0 -1
- package/lib/cdp/constants.js +0 -4
- package/lib/cdp/index.d.ts +0 -3
- package/lib/cdp/index.js +0 -16
- package/lib/cdp/instance/activate/activate.d.ts +0 -5
- package/lib/cdp/instance/activate/activate.js +0 -107
- package/lib/cdp/instance/activate/activate.spec.d.ts +0 -1
- package/lib/cdp/instance/activate/activate.spec.js +0 -274
- package/lib/cdp/instance/instanceCommand.d.ts +0 -3
- package/lib/cdp/instance/instanceCommand.js +0 -15
- package/lib/cdp/schema/deploy/deploy.const.d.ts +0 -5
- package/lib/cdp/schema/deploy/deploy.const.js +0 -8
- package/lib/cdp/schema/deploy/deploy.d.ts +0 -4
- package/lib/cdp/schema/deploy/deploy.js +0 -107
- package/lib/cdp/schema/deploy/deploy.spec.d.ts +0 -1
- package/lib/cdp/schema/deploy/deploy.spec.js +0 -137
- package/lib/cdp/schema/schemaCommand.d.ts +0 -3
- package/lib/cdp/schema/schemaCommand.js +0 -15
- package/lib/cdp/utils.d.ts +0 -23
- package/lib/cdp/utils.js +0 -133
- package/lib/cmp/deploy.d.ts +0 -3
- package/lib/cmp/deploy.js +0 -124
- package/lib/cmp/dev-mode-ui.d.ts +0 -4
- package/lib/cmp/dev-mode-ui.js +0 -51
- package/lib/cmp/dev-mode.d.ts +0 -4
- package/lib/cmp/dev-mode.js +0 -58
- package/lib/cmp/edge-components/compiler.d.ts +0 -13
- package/lib/cmp/edge-components/compiler.js +0 -55
- package/lib/cmp/index.d.ts +0 -3
- package/lib/cmp/index.js +0 -18
- package/lib/cmp/init.d.ts +0 -3
- package/lib/cmp/init.js +0 -105
- package/lib/cmp/utils/definitions.d.ts +0 -481
- package/lib/cmp/utils/definitions.js +0 -262
- package/lib/cmp/utils/definitions.spec.d.ts +0 -1
- package/lib/cmp/utils/definitions.spec.js +0 -503
- package/lib/constants.d.ts +0 -1
- package/lib/constants.js +0 -4
- package/lib/datastore/blueprint/add/add.d.ts +0 -3
- package/lib/datastore/blueprint/add/add.js +0 -119
- package/lib/datastore/blueprint/add/add.spec.d.ts +0 -1
- package/lib/datastore/blueprint/add/add.spec.js +0 -134
- package/lib/datastore/blueprint/blueprintCommand.d.ts +0 -3
- package/lib/datastore/blueprint/blueprintCommand.js +0 -21
- package/lib/datastore/blueprint/list/list.d.ts +0 -3
- package/lib/datastore/blueprint/list/list.js +0 -76
- package/lib/datastore/blueprint/list/list.spec.d.ts +0 -1
- package/lib/datastore/blueprint/list/list.spec.js +0 -51
- package/lib/datastore/blueprint/rename/rename.d.ts +0 -3
- package/lib/datastore/blueprint/rename/rename.js +0 -93
- package/lib/datastore/blueprint/rename/rename.spec.d.ts +0 -1
- package/lib/datastore/blueprint/rename/rename.spec.js +0 -142
- package/lib/datastore/blueprint/update/update.d.ts +0 -3
- package/lib/datastore/blueprint/update/update.js +0 -89
- package/lib/datastore/blueprint/update/update.spec.d.ts +0 -1
- package/lib/datastore/blueprint/update/update.spec.js +0 -99
- package/lib/datastore/bundle/bundle.d.ts +0 -3
- package/lib/datastore/bundle/bundle.js +0 -176
- package/lib/datastore/bundle/bundle.spec.d.ts +0 -1
- package/lib/datastore/bundle/bundle.spec.js +0 -94
- package/lib/datastore/index.d.ts +0 -3
- package/lib/datastore/index.js +0 -16
- package/lib/datastore/simulator/add/add.d.ts +0 -3
- package/lib/datastore/simulator/add/add.js +0 -125
- package/lib/datastore/simulator/add/add.spec.d.ts +0 -1
- package/lib/datastore/simulator/add/add.spec.js +0 -114
- package/lib/datastore/simulator/clear/clear.d.ts +0 -3
- package/lib/datastore/simulator/clear/clear.js +0 -70
- package/lib/datastore/simulator/clear/clear.spec.d.ts +0 -1
- package/lib/datastore/simulator/clear/clear.spec.js +0 -224
- package/lib/datastore/simulator/list/list.d.ts +0 -3
- package/lib/datastore/simulator/list/list.js +0 -115
- package/lib/datastore/simulator/list/list.spec.d.ts +0 -1
- package/lib/datastore/simulator/list/list.spec.js +0 -95
- package/lib/datastore/simulator/pause/pause.d.ts +0 -3
- package/lib/datastore/simulator/pause/pause.js +0 -84
- package/lib/datastore/simulator/pause/pause.spec.d.ts +0 -1
- package/lib/datastore/simulator/pause/pause.spec.js +0 -90
- package/lib/datastore/simulator/remove/remove.d.ts +0 -3
- package/lib/datastore/simulator/remove/remove.js +0 -68
- package/lib/datastore/simulator/remove/remove.spec.d.ts +0 -1
- package/lib/datastore/simulator/remove/remove.spec.js +0 -224
- package/lib/datastore/simulator/resume/resume.d.ts +0 -3
- package/lib/datastore/simulator/resume/resume.js +0 -84
- package/lib/datastore/simulator/resume/resume.spec.d.ts +0 -1
- package/lib/datastore/simulator/resume/resume.spec.js +0 -90
- package/lib/datastore/simulator/simulatorCommand.d.ts +0 -3
- package/lib/datastore/simulator/simulatorCommand.js +0 -27
- package/lib/datastore/simulator/upgrade/upgrade.d.ts +0 -3
- package/lib/datastore/simulator/upgrade/upgrade.js +0 -157
- package/lib/datastore/simulator/upgrade/upgrade.spec.d.ts +0 -1
- package/lib/datastore/simulator/upgrade/upgrade.spec.js +0 -199
- package/lib/datastore/simulator/utils.d.ts +0 -29
- package/lib/datastore/simulator/utils.js +0 -218
- package/lib/datastore/simulator/utils.spec.d.ts +0 -1
- package/lib/datastore/simulator/utils.spec.js +0 -201
- package/lib/datastore/utils.d.ts +0 -20
- package/lib/datastore/utils.js +0 -241
- package/lib/datastore/utils.spec.d.ts +0 -1
- package/lib/datastore/utils.spec.js +0 -113
- package/lib/dxp.d.ts +0 -1
- package/lib/dxp.js +0 -57
- package/lib/job-runner/index.d.ts +0 -3
- package/lib/job-runner/index.js +0 -22
- package/lib/job-runner/job/listJobs/listJobs.d.ts +0 -3
- package/lib/job-runner/job/listJobs/listJobs.js +0 -66
- package/lib/job-runner/job/listJobs/listJobs.spec.d.ts +0 -1
- package/lib/job-runner/job/listJobs/listJobs.spec.js +0 -42
- package/lib/job-runner/job/uploadJob/uploadJob.d.ts +0 -3
- package/lib/job-runner/job/uploadJob/uploadJob.js +0 -56
- package/lib/job-runner/job/uploadJob/uploadJob.spec.d.ts +0 -1
- package/lib/job-runner/job/uploadJob/uploadJob.spec.js +0 -42
- package/lib/job-runner/jobContext/listJobContexts.d.ts +0 -3
- package/lib/job-runner/jobContext/listJobContexts.js +0 -66
- package/lib/job-runner/jobContext/listJobContexts.spec.d.ts +0 -1
- package/lib/job-runner/jobContext/listJobContexts.spec.js +0 -58
- package/lib/job-runner/jobExecution/beginJob/beginJob.d.ts +0 -3
- package/lib/job-runner/jobExecution/beginJob/beginJob.js +0 -68
- package/lib/job-runner/jobExecution/beginJob/beginJob.spec.d.ts +0 -1
- package/lib/job-runner/jobExecution/beginJob/beginJob.spec.js +0 -62
- package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.d.ts +0 -3
- package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.js +0 -67
- package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.spec.d.ts +0 -1
- package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.spec.js +0 -64
- package/lib/job-runner/jobExecution/terminateJob/terminateJob.d.ts +0 -3
- package/lib/job-runner/jobExecution/terminateJob/terminateJob.js +0 -64
- package/lib/job-runner/jobExecution/terminateJob/terminateJob.spec.d.ts +0 -1
- package/lib/job-runner/jobExecution/terminateJob/terminateJob.spec.js +0 -61
- package/lib/job-runner/utils.d.ts +0 -19
- package/lib/job-runner/utils.js +0 -145
- package/lib/job-runner/utils.spec.d.ts +0 -1
- package/lib/job-runner/utils.spec.js +0 -116
- package/lib/migration/create/create.d.ts +0 -3
- package/lib/migration/create/create.js +0 -56
- package/lib/migration/create/create.spec.d.ts +0 -1
- package/lib/migration/create/create.spec.js +0 -280
- package/lib/migration/get/get.d.ts +0 -3
- package/lib/migration/get/get.js +0 -46
- package/lib/migration/get/get.spec.d.ts +0 -1
- package/lib/migration/get/get.spec.js +0 -287
- package/lib/migration/index.d.ts +0 -3
- package/lib/migration/index.js +0 -24
- package/lib/migration/list/list.d.ts +0 -3
- package/lib/migration/list/list.js +0 -45
- package/lib/migration/list/list.spec.d.ts +0 -1
- package/lib/migration/list/list.spec.js +0 -138
- package/lib/migration/next/next.d.ts +0 -3
- package/lib/migration/next/next.js +0 -75
- package/lib/migration/next/next.spec.d.ts +0 -1
- package/lib/migration/next/next.spec.js +0 -253
- package/lib/migration/pre/pre.d.ts +0 -3
- package/lib/migration/pre/pre.js +0 -54
- package/lib/migration/pre/pre.spec.d.ts +0 -1
- package/lib/migration/pre/pre.spec.js +0 -269
- package/lib/migration/revert/revert.d.ts +0 -3
- package/lib/migration/revert/revert.js +0 -47
- package/lib/migration/revert/revert.spec.d.ts +0 -1
- package/lib/migration/revert/revert.spec.js +0 -153
- package/lib/migration/settings/settings.d.ts +0 -3
- package/lib/migration/settings/settings.js +0 -63
- package/lib/migration/settings/settings.spec.d.ts +0 -1
- package/lib/migration/settings/settings.spec.js +0 -339
- package/lib/migration/types/common.types.d.ts +0 -29
- package/lib/migration/types/common.types.js +0 -2
- package/lib/migration/types/createMigration.types.d.ts +0 -10
- package/lib/migration/types/createMigration.types.js +0 -2
- package/lib/migration/types/getMigration.types.d.ts +0 -5
- package/lib/migration/types/getMigration.types.js +0 -2
- package/lib/migration/types/index.d.ts +0 -7
- package/lib/migration/types/index.js +0 -23
- package/lib/migration/types/listMigrations.types.d.ts +0 -2
- package/lib/migration/types/listMigrations.types.js +0 -2
- package/lib/migration/types/nextStage.types.d.ts +0 -10
- package/lib/migration/types/nextStage.types.js +0 -2
- package/lib/migration/types/preMigration.types.d.ts +0 -10
- package/lib/migration/types/preMigration.types.js +0 -2
- package/lib/migration/types/revert.types.d.ts +0 -6
- package/lib/migration/types/revert.types.js +0 -2
- package/lib/migration/types/settings.types.d.ts +0 -15
- package/lib/migration/types/settings.types.js +0 -2
- package/lib/migration/utils/common.d.ts +0 -39
- package/lib/migration/utils/common.js +0 -134
- package/lib/migration/utils/common.spec.d.ts +0 -1
- package/lib/migration/utils/common.spec.js +0 -165
- package/lib/migration/utils/createMigration.d.ts +0 -33
- package/lib/migration/utils/createMigration.js +0 -125
- package/lib/migration/utils/createMigration.spec.d.ts +0 -1
- package/lib/migration/utils/createMigration.spec.js +0 -259
- package/lib/migration/utils/getMigration.d.ts +0 -2
- package/lib/migration/utils/getMigration.js +0 -41
- package/lib/migration/utils/getMigration.spec.d.ts +0 -1
- package/lib/migration/utils/getMigration.spec.js +0 -156
- package/lib/migration/utils/index.d.ts +0 -9
- package/lib/migration/utils/index.js +0 -25
- package/lib/migration/utils/listMigrations.d.ts +0 -3
- package/lib/migration/utils/listMigrations.js +0 -41
- package/lib/migration/utils/listMigrations.spec.d.ts +0 -1
- package/lib/migration/utils/listMigrations.spec.js +0 -108
- package/lib/migration/utils/loadCctIdsFromFile.d.ts +0 -1
- package/lib/migration/utils/loadCctIdsFromFile.js +0 -32
- package/lib/migration/utils/loadCctIdsFromFile.spec.d.ts +0 -1
- package/lib/migration/utils/loadCctIdsFromFile.spec.js +0 -91
- package/lib/migration/utils/loadStageOptionsFromFile.d.ts +0 -1
- package/lib/migration/utils/loadStageOptionsFromFile.js +0 -32
- package/lib/migration/utils/loadStageOptionsFromFile.spec.d.ts +0 -1
- package/lib/migration/utils/loadStageOptionsFromFile.spec.js +0 -77
- package/lib/migration/utils/nextStage.d.ts +0 -2
- package/lib/migration/utils/nextStage.js +0 -45
- package/lib/migration/utils/nextStage.spec.d.ts +0 -1
- package/lib/migration/utils/nextStage.spec.js +0 -151
- package/lib/migration/utils/options.d.ts +0 -15
- package/lib/migration/utils/options.js +0 -106
- package/lib/migration/utils/options.spec.d.ts +0 -1
- package/lib/migration/utils/options.spec.js +0 -115
- package/lib/migration/utils/promptForMorphConfirmation.d.ts +0 -5
- package/lib/migration/utils/promptForMorphConfirmation.js +0 -55
- package/lib/migration/utils/promptForMorphConfirmation.spec.d.ts +0 -1
- package/lib/migration/utils/promptForMorphConfirmation.spec.js +0 -101
- package/lib/migration/utils/revertMigration.d.ts +0 -2
- package/lib/migration/utils/revertMigration.js +0 -38
- package/lib/migration/utils/revertMigration.spec.d.ts +0 -1
- package/lib/migration/utils/revertMigration.spec.js +0 -95
- package/lib/migration/utils/setMigrationSettings.d.ts +0 -2
- package/lib/migration/utils/setMigrationSettings.js +0 -52
- package/lib/migration/utils/setMigrationSettings.spec.d.ts +0 -1
- package/lib/migration/utils/setMigrationSettings.spec.js +0 -163
- package/lib/page/index.d.ts +0 -3
- package/lib/page/index.js +0 -12
- package/lib/page/layouts/deploy/deploy.d.ts +0 -5
- package/lib/page/layouts/deploy/deploy.js +0 -157
- package/lib/page/layouts/deploy/deploy.spec.d.ts +0 -1
- package/lib/page/layouts/deploy/deploy.spec.js +0 -319
- package/lib/page/layouts/dev/dev.d.ts +0 -5
- package/lib/page/layouts/dev/dev.js +0 -84
- package/lib/page/layouts/dev/dev.spec.d.ts +0 -1
- package/lib/page/layouts/dev/dev.spec.js +0 -271
- package/lib/page/layouts/layouts.d.ts +0 -3
- package/lib/page/layouts/layouts.js +0 -17
- package/lib/page/layouts/layouts.spec.d.ts +0 -1
- package/lib/page/layouts/layouts.spec.js +0 -29
- package/lib/page/layouts/validation/index.d.ts +0 -3
- package/lib/page/layouts/validation/index.js +0 -9
- package/lib/page/layouts/validation/property-consistency.d.ts +0 -7
- package/lib/page/layouts/validation/property-consistency.js +0 -92
- package/lib/page/layouts/validation/property-consistency.spec.d.ts +0 -1
- package/lib/page/layouts/validation/property-consistency.spec.js +0 -305
- package/lib/page/layouts/validation/validateLayoutFormat.d.ts +0 -2
- package/lib/page/layouts/validation/validateLayoutFormat.js +0 -27
- package/lib/page/layouts/validation/validateLayoutFormat.spec.d.ts +0 -1
- package/lib/page/layouts/validation/validateLayoutFormat.spec.js +0 -42
- package/lib/page/layouts/validation/zone-consistency.d.ts +0 -7
- package/lib/page/layouts/validation/zone-consistency.js +0 -50
- package/lib/page/layouts/validation/zone-consistency.spec.d.ts +0 -1
- package/lib/page/layouts/validation/zone-consistency.spec.js +0 -99
- package/lib/page/templates/validation.d.ts +0 -11
- package/lib/page/templates/validation.js +0 -30
- package/lib/page/templates/validation.spec.d.ts +0 -1
- package/lib/page/templates/validation.spec.js +0 -89
- package/lib/page/utils/definitions.d.ts +0 -552
- package/lib/page/utils/definitions.js +0 -241
- package/lib/page/utils/definitions.spec.d.ts +0 -1
- package/lib/page/utils/definitions.spec.js +0 -749
- package/lib/page/utils/normalize.d.ts +0 -8
- package/lib/page/utils/normalize.js +0 -54
- package/lib/page/utils/normalize.spec.d.ts +0 -1
- package/lib/page/utils/normalize.spec.js +0 -315
- package/lib/page/utils/parse-args.d.ts +0 -44
- package/lib/page/utils/parse-args.js +0 -119
- package/lib/page/utils/parse-args.spec.d.ts +0 -1
- package/lib/page/utils/parse-args.spec.js +0 -284
- package/lib/page/utils/render.d.ts +0 -51
- package/lib/page/utils/render.js +0 -112
- package/lib/page/utils/render.spec.d.ts +0 -1
- package/lib/page/utils/render.spec.js +0 -134
- package/lib/page/utils/server.d.ts +0 -12
- package/lib/page/utils/server.js +0 -201
- package/lib/page/utils/server.spec.d.ts +0 -1
- package/lib/page/utils/server.spec.js +0 -275
- package/lib/porter/constants.d.ts +0 -11
- package/lib/porter/constants.js +0 -14
- package/lib/porter/index.d.ts +0 -3
- package/lib/porter/index.js +0 -24
- package/lib/porter/port/abort/abort.d.ts +0 -3
- package/lib/porter/port/abort/abort.js +0 -80
- package/lib/porter/port/abort/abort.spec.d.ts +0 -1
- package/lib/porter/port/abort/abort.spec.js +0 -182
- package/lib/porter/port/get/get.d.ts +0 -3
- package/lib/porter/port/get/get.js +0 -96
- package/lib/porter/port/get/get.spec.d.ts +0 -1
- package/lib/porter/port/get/get.spec.js +0 -277
- package/lib/porter/port/start/start.d.ts +0 -3
- package/lib/porter/port/start/start.js +0 -82
- package/lib/porter/port/start/start.spec.d.ts +0 -1
- package/lib/porter/port/start/start.spec.js +0 -198
- package/lib/porter/project/add/add.d.ts +0 -3
- package/lib/porter/project/add/add.js +0 -138
- package/lib/porter/project/add/add.spec.d.ts +0 -1
- package/lib/porter/project/add/add.spec.js +0 -269
- package/lib/porter/project/get/get.d.ts +0 -3
- package/lib/porter/project/get/get.js +0 -65
- package/lib/porter/project/get/get.spec.d.ts +0 -1
- package/lib/porter/project/get/get.spec.js +0 -185
- package/lib/porter/project/remove/remove.d.ts +0 -3
- package/lib/porter/project/remove/remove.js +0 -69
- package/lib/porter/project/remove/remove.spec.d.ts +0 -1
- package/lib/porter/project/remove/remove.spec.js +0 -201
- package/lib/porter/types.d.ts +0 -5
- package/lib/porter/types.js +0 -2
- package/lib/porter/utils/BuildDXPUrl/BuildDXPUrl.d.ts +0 -4
- package/lib/porter/utils/BuildDXPUrl/BuildDXPUrl.js +0 -34
- package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.d.ts +0 -1
- package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.js +0 -21
- package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.spec.d.ts +0 -1
- package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.spec.js +0 -52
- package/lib/porter/utils/CoreUtils/CoreUtils.d.ts +0 -2
- package/lib/porter/utils/CoreUtils/CoreUtils.js +0 -13
- package/lib/porter/utils/CoreUtils/CoreUtils.spec.d.ts +0 -1
- package/lib/porter/utils/CoreUtils/CoreUtils.spec.js +0 -36
- package/lib/porter/utils/DoesPathExist/DoesPathExist.d.ts +0 -1
- package/lib/porter/utils/DoesPathExist/DoesPathExist.js +0 -27
- package/lib/porter/utils/DoesPathExist/DoesPathExist.spec.d.ts +0 -1
- package/lib/porter/utils/DoesPathExist/DoesPathExist.spec.js +0 -40
- package/lib/porter/utils/ErrorUtils/ErrorUtils.d.ts +0 -4
- package/lib/porter/utils/ErrorUtils/ErrorUtils.js +0 -66
- package/lib/porter/utils/ErrorUtils/ErrorUtils.spec.d.ts +0 -1
- package/lib/porter/utils/ErrorUtils/ErrorUtils.spec.js +0 -176
- package/lib/porter/utils/GetProjectConfig/GetProjectConfig.d.ts +0 -2
- package/lib/porter/utils/GetProjectConfig/GetProjectConfig.js +0 -33
- package/lib/porter/utils/GetProjectConfig/GetProjectConfig.spec.d.ts +0 -1
- package/lib/porter/utils/GetProjectConfig/GetProjectConfig.spec.js +0 -50
- package/lib/porter/utils/GetProjectName/GetProjectName.d.ts +0 -4
- package/lib/porter/utils/GetProjectName/GetProjectName.js +0 -30
- package/lib/porter/utils/GetProjectName/GetProjectName.spec.d.ts +0 -1
- package/lib/porter/utils/GetProjectName/GetProjectName.spec.js +0 -91
- package/lib/porter/utils/index.d.ts +0 -7
- package/lib/porter/utils/index.js +0 -23
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const commander_1 = require("commander");
|
|
13
|
-
const options_1 = require("./options");
|
|
14
|
-
describe('options', () => {
|
|
15
|
-
describe('getParamOption', () => {
|
|
16
|
-
it('should create a mandatory option with correct flags and description', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
-
const option = (0, options_1.getParamOption)(options_1.OptionName.ASSET_ID);
|
|
18
|
-
const command = new commander_1.Command().exitOverride().addOption(option);
|
|
19
|
-
expect(option.flags).toBe('--asset-id <string>');
|
|
20
|
-
expect(option.description).toBe('The ID of the asset to be migrated');
|
|
21
|
-
// Test that the option is mandatory by trying to parse without it
|
|
22
|
-
yield expect(command.parseAsync(['node', 'dxp-cli'])).rejects.toThrow();
|
|
23
|
-
}));
|
|
24
|
-
it('should create an optional option when makeOptionMandatory is false', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
25
|
-
const option = (0, options_1.getParamOption)(options_1.OptionName.TENANT, false);
|
|
26
|
-
const command = new commander_1.Command().exitOverride().addOption(option);
|
|
27
|
-
expect(option.flags).toBe('--tenant <string>');
|
|
28
|
-
expect(option.description).toBe('Tenant ID to run against. If not provided will use configured tenant from login');
|
|
29
|
-
// Test that the option is optional by parsing without it
|
|
30
|
-
yield expect(command.parseAsync(['node', 'dxp-cli'])).resolves.not.toThrow();
|
|
31
|
-
}));
|
|
32
|
-
it('should throw error for invalid option name', () => {
|
|
33
|
-
expect(() => {
|
|
34
|
-
(0, options_1.getParamOption)('invalid-option');
|
|
35
|
-
}).toThrow('Param invalid-option not found');
|
|
36
|
-
});
|
|
37
|
-
it('should create all valid options with correct properties', () => {
|
|
38
|
-
const options = [
|
|
39
|
-
{
|
|
40
|
-
name: options_1.OptionName.ASSET_ID,
|
|
41
|
-
flags: '--asset-id <string>',
|
|
42
|
-
description: 'The ID of the asset to be migrated',
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
name: options_1.OptionName.PREVIEW_ASSET_ID,
|
|
46
|
-
flags: '--preview-asset-id <string>',
|
|
47
|
-
description: 'The ID of the folder that will be used as the parent of the migrated asset generated during the Preview stage',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: options_1.OptionName.MATRIX_URL,
|
|
51
|
-
flags: '--matrix-url <string>',
|
|
52
|
-
description: 'Matrix URL for the migration',
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
name: options_1.OptionName.TENANT,
|
|
56
|
-
flags: '--tenant <string>',
|
|
57
|
-
description: 'Tenant ID to run against. If not provided will use configured tenant from login',
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
name: options_1.OptionName.MIGRATION_ID,
|
|
61
|
-
flags: '--migration-id <string>',
|
|
62
|
-
description: 'The ID of the migration created',
|
|
63
|
-
},
|
|
64
|
-
];
|
|
65
|
-
options.forEach(({ name, flags, description }) => {
|
|
66
|
-
const option = (0, options_1.getParamOption)(name);
|
|
67
|
-
expect(option.flags).toBe(flags);
|
|
68
|
-
expect(option.description).toBe(description);
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
describe('addOverrideUrlOption', () => {
|
|
73
|
-
let command;
|
|
74
|
-
const originalEnv = process.env.ENABLE_OVERRIDE_MIGRATION_URL;
|
|
75
|
-
beforeEach(() => {
|
|
76
|
-
command = new commander_1.Command().exitOverride();
|
|
77
|
-
process.env.ENABLE_OVERRIDE_MIGRATION_URL = 'false';
|
|
78
|
-
});
|
|
79
|
-
afterEach(() => {
|
|
80
|
-
process.env.ENABLE_OVERRIDE_MIGRATION_URL = originalEnv;
|
|
81
|
-
});
|
|
82
|
-
it('should not add override URL option when environment variable is not set to true', () => {
|
|
83
|
-
(0, options_1.addOverrideUrlOption)(command);
|
|
84
|
-
expect(command.opts()).toEqual({});
|
|
85
|
-
});
|
|
86
|
-
it('should add override URL option to existing command options', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
87
|
-
process.env.ENABLE_OVERRIDE_MIGRATION_URL = 'true';
|
|
88
|
-
command.addOption((0, options_1.getParamOption)(options_1.OptionName.ASSET_ID));
|
|
89
|
-
(0, options_1.addOverrideUrlOption)(command);
|
|
90
|
-
yield command.parseAsync([
|
|
91
|
-
'node',
|
|
92
|
-
'dxp-cli',
|
|
93
|
-
'--asset-id',
|
|
94
|
-
'123',
|
|
95
|
-
'--overrideUrl',
|
|
96
|
-
'https://custom.url',
|
|
97
|
-
]);
|
|
98
|
-
expect(command.opts()).toEqual({
|
|
99
|
-
assetId: '123',
|
|
100
|
-
overrideUrl: 'https://custom.url',
|
|
101
|
-
});
|
|
102
|
-
}));
|
|
103
|
-
it('should parse override URL option correctly', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
104
|
-
process.env.ENABLE_OVERRIDE_MIGRATION_URL = 'true';
|
|
105
|
-
(0, options_1.addOverrideUrlOption)(command);
|
|
106
|
-
yield command.parseAsync([
|
|
107
|
-
'node',
|
|
108
|
-
'dxp-cli',
|
|
109
|
-
'--overrideUrl',
|
|
110
|
-
'https://custom.url',
|
|
111
|
-
]);
|
|
112
|
-
expect(command.opts()).toEqual({ overrideUrl: 'https://custom.url' });
|
|
113
|
-
}));
|
|
114
|
-
});
|
|
115
|
-
});
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.promptForMorphConfirmation = void 0;
|
|
16
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
17
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
18
|
-
/**
|
|
19
|
-
* Prompts the user for confirmation when about to trigger morph stages.
|
|
20
|
-
* Returns true if user has chosen to confirm.
|
|
21
|
-
*/
|
|
22
|
-
function promptForMorphConfirmation(stage, status, assetId) {
|
|
23
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
let message;
|
|
25
|
-
let abortMessage;
|
|
26
|
-
if (stage === 'preview' && status === 'complete') {
|
|
27
|
-
message = `You are about to morph the live asset (${assetId}). Do you wish to continue? [y/N]`;
|
|
28
|
-
abortMessage = 'Morph stage not run';
|
|
29
|
-
}
|
|
30
|
-
else if (stage === 'morph' && status === 'awaiting-confirmation') {
|
|
31
|
-
message = `You are about to permanently delete the standard page bodycopies for asset ${assetId}, please ensure that the client has confirmed the live asset is functioning as expected. This can NOT be undone. Do you wish to continue? [y/N]`;
|
|
32
|
-
abortMessage = 'Morph cleanup not run';
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
const choice = yield inquirer_1.default.prompt([
|
|
38
|
-
{
|
|
39
|
-
type: 'list',
|
|
40
|
-
name: 'confirm',
|
|
41
|
-
message,
|
|
42
|
-
choices: [
|
|
43
|
-
{ name: 'No', value: false },
|
|
44
|
-
{ name: 'Yes', value: true },
|
|
45
|
-
],
|
|
46
|
-
default: false, // Default answer is No
|
|
47
|
-
},
|
|
48
|
-
]);
|
|
49
|
-
if (!choice.confirm) {
|
|
50
|
-
console.log(chalk_1.default.yellow(abortMessage));
|
|
51
|
-
}
|
|
52
|
-
return choice.confirm;
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
exports.promptForMorphConfirmation = promptForMorphConfirmation;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const promptForMorphConfirmation_1 = require("./promptForMorphConfirmation");
|
|
16
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
17
|
-
jest.mock('inquirer', () => ({
|
|
18
|
-
prompt: jest.fn(),
|
|
19
|
-
}));
|
|
20
|
-
const mockConsoleLog = jest.spyOn(console, 'log').mockImplementation();
|
|
21
|
-
const mockPrompt = require('inquirer').prompt;
|
|
22
|
-
describe('promptForMorphConfirmation', () => {
|
|
23
|
-
beforeEach(() => {
|
|
24
|
-
jest.clearAllMocks();
|
|
25
|
-
});
|
|
26
|
-
afterAll(() => {
|
|
27
|
-
mockConsoleLog.mockRestore();
|
|
28
|
-
});
|
|
29
|
-
describe('Preview to Morph stage', () => {
|
|
30
|
-
it('should prompt for confirmation when stage is preview and status is complete', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
31
|
-
mockPrompt.mockResolvedValue({ confirm: true });
|
|
32
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('preview', 'complete', 'asset123');
|
|
33
|
-
expect(mockPrompt).toHaveBeenCalledWith([
|
|
34
|
-
{
|
|
35
|
-
type: 'list',
|
|
36
|
-
name: 'confirm',
|
|
37
|
-
message: 'You are about to morph the live asset (asset123). Do you wish to continue? [y/N]',
|
|
38
|
-
choices: [
|
|
39
|
-
{ name: 'No', value: false },
|
|
40
|
-
{ name: 'Yes', value: true },
|
|
41
|
-
],
|
|
42
|
-
default: false,
|
|
43
|
-
},
|
|
44
|
-
]);
|
|
45
|
-
expect(result).toBe(true);
|
|
46
|
-
expect(mockConsoleLog).not.toHaveBeenCalled();
|
|
47
|
-
}));
|
|
48
|
-
it('should return false and show abort message when user selects No for preview stage', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
49
|
-
mockPrompt.mockResolvedValue({ confirm: false });
|
|
50
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('preview', 'complete', 'asset456');
|
|
51
|
-
expect(result).toBe(false);
|
|
52
|
-
expect(mockConsoleLog).toHaveBeenCalledWith(chalk_1.default.yellow('Morph stage not run'));
|
|
53
|
-
}));
|
|
54
|
-
});
|
|
55
|
-
describe('Morph Cleanup stage', () => {
|
|
56
|
-
it('should prompt for confirmation when stage is morph and status is awaiting-confirmation', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
|
-
mockPrompt.mockResolvedValue({ confirm: true });
|
|
58
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('morph', 'awaiting-confirmation', 'asset789');
|
|
59
|
-
expect(mockPrompt).toHaveBeenCalledWith([
|
|
60
|
-
{
|
|
61
|
-
type: 'list',
|
|
62
|
-
name: 'confirm',
|
|
63
|
-
message: 'You are about to permanently delete the standard page bodycopies for asset asset789, please ensure that the client has confirmed the live asset is functioning as expected. This can NOT be undone. Do you wish to continue? [y/N]',
|
|
64
|
-
choices: [
|
|
65
|
-
{ name: 'No', value: false },
|
|
66
|
-
{ name: 'Yes', value: true },
|
|
67
|
-
],
|
|
68
|
-
default: false,
|
|
69
|
-
},
|
|
70
|
-
]);
|
|
71
|
-
expect(result).toBe(true);
|
|
72
|
-
expect(mockConsoleLog).not.toHaveBeenCalled();
|
|
73
|
-
}));
|
|
74
|
-
it('should return false and show abort message when user selects No for morph cleanup stage', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
75
|
-
mockPrompt.mockResolvedValue({ confirm: false });
|
|
76
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('morph', 'awaiting-confirmation', 'asset999');
|
|
77
|
-
expect(result).toBe(false);
|
|
78
|
-
expect(mockConsoleLog).toHaveBeenCalledWith(chalk_1.default.yellow('Morph cleanup not run'));
|
|
79
|
-
}));
|
|
80
|
-
});
|
|
81
|
-
describe('Other stages', () => {
|
|
82
|
-
it('should return true without prompting for preview stage with non-complete status', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
83
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('preview', 'running', 'asset123');
|
|
84
|
-
expect(result).toBe(true);
|
|
85
|
-
expect(mockPrompt).not.toHaveBeenCalled();
|
|
86
|
-
expect(mockConsoleLog).not.toHaveBeenCalled();
|
|
87
|
-
}));
|
|
88
|
-
it('should return true without prompting for other stages', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
89
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('export-to-json', 'complete', 'asset123');
|
|
90
|
-
expect(result).toBe(true);
|
|
91
|
-
expect(mockPrompt).not.toHaveBeenCalled();
|
|
92
|
-
expect(mockConsoleLog).not.toHaveBeenCalled();
|
|
93
|
-
}));
|
|
94
|
-
it('should return true without prompting for unknown stage and status combinations', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
95
|
-
const result = yield (0, promptForMorphConfirmation_1.promptForMorphConfirmation)('unknown', 'unknown-status', 'asset123');
|
|
96
|
-
expect(result).toBe(true);
|
|
97
|
-
expect(mockPrompt).not.toHaveBeenCalled();
|
|
98
|
-
expect(mockConsoleLog).not.toHaveBeenCalled();
|
|
99
|
-
}));
|
|
100
|
-
});
|
|
101
|
-
});
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.revertMigration = void 0;
|
|
13
|
-
const ApiService_1 = require("../../ApiService");
|
|
14
|
-
const _1 = require(".");
|
|
15
|
-
function revertMigration(options) {
|
|
16
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
-
const apiService = new ApiService_1.ApiService({
|
|
18
|
-
validateStatus: _1.validateAxiosStatus,
|
|
19
|
-
});
|
|
20
|
-
const migrationUrl = yield (0, _1.buildMigrationUrl)(options.tenant, options.overrideUrl);
|
|
21
|
-
try {
|
|
22
|
-
const response = yield apiService.client.post(`${migrationUrl}/${options.migrationId}/assets/${options.assetId}/rollback`, {}, {
|
|
23
|
-
headers: yield (0, _1.getMigrationHeaders)(options.tenant),
|
|
24
|
-
});
|
|
25
|
-
if (response.status !== 200) {
|
|
26
|
-
throw new Error(`Failed to revert migration: ${response.status}`);
|
|
27
|
-
}
|
|
28
|
-
return response.data;
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
if (error instanceof Error) {
|
|
32
|
-
throw error;
|
|
33
|
-
}
|
|
34
|
-
throw new Error(`Failed to revert migration: ${error}`);
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
exports.revertMigration = revertMigration;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const ApiService_1 = require("../../ApiService");
|
|
13
|
-
const revertMigration_1 = require("./revertMigration");
|
|
14
|
-
const _1 = require(".");
|
|
15
|
-
// Mock dependencies
|
|
16
|
-
jest.mock('../../ApiService');
|
|
17
|
-
jest.mock('.', () => ({
|
|
18
|
-
buildMigrationUrl: jest.fn(),
|
|
19
|
-
getMigrationHeaders: jest.fn(),
|
|
20
|
-
}));
|
|
21
|
-
const mockApiService = ApiService_1.ApiService;
|
|
22
|
-
const mockBuildMigrationUrl = _1.buildMigrationUrl;
|
|
23
|
-
const mockGetMigrationHeaders = _1.getMigrationHeaders;
|
|
24
|
-
describe('revertMigration', () => {
|
|
25
|
-
const mockOptions = {
|
|
26
|
-
migrationId: 'migration-123',
|
|
27
|
-
assetId: 'asset-456',
|
|
28
|
-
tenant: 'test-tenant',
|
|
29
|
-
};
|
|
30
|
-
const mockApiServiceInstance = {
|
|
31
|
-
client: {
|
|
32
|
-
post: jest.fn(),
|
|
33
|
-
},
|
|
34
|
-
};
|
|
35
|
-
beforeEach(() => {
|
|
36
|
-
jest.clearAllMocks();
|
|
37
|
-
mockApiService.mockImplementation(() => mockApiServiceInstance);
|
|
38
|
-
mockBuildMigrationUrl.mockResolvedValue('https://migration.example.com');
|
|
39
|
-
mockGetMigrationHeaders.mockResolvedValue({
|
|
40
|
-
'Content-Type': 'application/json',
|
|
41
|
-
'x-dxp-tenant': 'test-tenant',
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
it('should revert migration successfully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
const mockResponse = {
|
|
46
|
-
status: 200,
|
|
47
|
-
data: { message: 'Migration reverted successfully' },
|
|
48
|
-
};
|
|
49
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
50
|
-
const result = yield (0, revertMigration_1.revertMigration)(mockOptions);
|
|
51
|
-
expect(result).toEqual({ message: 'Migration reverted successfully' });
|
|
52
|
-
expect(mockBuildMigrationUrl).toHaveBeenCalledWith(mockOptions.tenant, undefined);
|
|
53
|
-
expect(mockGetMigrationHeaders).toHaveBeenCalledWith(mockOptions.tenant);
|
|
54
|
-
expect(mockApiServiceInstance.client.post).toHaveBeenCalledWith('https://migration.example.com/migration-123/assets/asset-456/rollback', {}, {
|
|
55
|
-
headers: {
|
|
56
|
-
'Content-Type': 'application/json',
|
|
57
|
-
'x-dxp-tenant': 'test-tenant',
|
|
58
|
-
},
|
|
59
|
-
});
|
|
60
|
-
}));
|
|
61
|
-
it('should handle non-success status codes', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
62
|
-
const mockResponse = {
|
|
63
|
-
status: 400,
|
|
64
|
-
data: {},
|
|
65
|
-
};
|
|
66
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
67
|
-
yield expect((0, revertMigration_1.revertMigration)(mockOptions)).rejects.toThrow('Failed to revert migration: 400');
|
|
68
|
-
}));
|
|
69
|
-
it('should handle API service errors', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
70
|
-
const error = new Error('Network error');
|
|
71
|
-
mockApiServiceInstance.client.post.mockRejectedValue(error);
|
|
72
|
-
yield expect((0, revertMigration_1.revertMigration)(mockOptions)).rejects.toThrow('Network error');
|
|
73
|
-
}));
|
|
74
|
-
it('should handle unknown errors', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
75
|
-
mockApiServiceInstance.client.post.mockRejectedValue('Unknown error');
|
|
76
|
-
yield expect((0, revertMigration_1.revertMigration)(mockOptions)).rejects.toThrow('Failed to revert migration: Unknown error');
|
|
77
|
-
}));
|
|
78
|
-
it('should use override URL when provided', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
79
|
-
const mockResponse = {
|
|
80
|
-
status: 200,
|
|
81
|
-
data: { message: 'Migration reverted successfully' },
|
|
82
|
-
};
|
|
83
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
84
|
-
mockBuildMigrationUrl.mockResolvedValue('https://custom.migration.url');
|
|
85
|
-
const optionsWithOverride = Object.assign(Object.assign({}, mockOptions), { overrideUrl: 'https://custom.migration.url' });
|
|
86
|
-
yield (0, revertMigration_1.revertMigration)(optionsWithOverride);
|
|
87
|
-
expect(mockBuildMigrationUrl).toHaveBeenCalledWith(mockOptions.tenant, 'https://custom.migration.url');
|
|
88
|
-
expect(mockApiServiceInstance.client.post).toHaveBeenCalledWith('https://custom.migration.url/migration-123/assets/asset-456/rollback', {}, {
|
|
89
|
-
headers: {
|
|
90
|
-
'Content-Type': 'application/json',
|
|
91
|
-
'x-dxp-tenant': 'test-tenant',
|
|
92
|
-
},
|
|
93
|
-
});
|
|
94
|
-
}));
|
|
95
|
-
});
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.setMigrationSettings = void 0;
|
|
13
|
-
const ApiService_1 = require("../../ApiService");
|
|
14
|
-
const _1 = require(".");
|
|
15
|
-
function setMigrationSettings(options) {
|
|
16
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
-
const apiService = new ApiService_1.ApiService({
|
|
18
|
-
validateStatus: _1.validateAxiosStatus,
|
|
19
|
-
});
|
|
20
|
-
const migrationUrl = yield (0, _1.buildMigrationUrl)(options.tenant, options.overrideUrl, 'settings');
|
|
21
|
-
try {
|
|
22
|
-
const payload = Object.assign({ matrixUrl: options.matrixUrl, matrixIdentifier: options.matrixIdentifier, matrixKey: options.matrixKey, contentApiKey: options.contentApiKey }, (options.stageOptions && { stageOptions: options.stageOptions }));
|
|
23
|
-
const response = yield apiService.client.post(migrationUrl, payload, {
|
|
24
|
-
headers: yield (0, _1.getMigrationHeaders)(options.tenant),
|
|
25
|
-
});
|
|
26
|
-
if (response.status !== 200 && response.status !== 201) {
|
|
27
|
-
throw new Error(`Migration settings update failed with status: ${response.status}`);
|
|
28
|
-
}
|
|
29
|
-
if (!(response === null || response === void 0 ? void 0 : response.data)) {
|
|
30
|
-
throw new Error('No data returned from migration service');
|
|
31
|
-
}
|
|
32
|
-
const responseData = {
|
|
33
|
-
matrixUrl: response.data.matrixUrl,
|
|
34
|
-
matrixIdentifier: response.data.matrixIdentifier,
|
|
35
|
-
matrixKey: response.data.matrixKey
|
|
36
|
-
? (0, _1.redactKey)(response.data.matrixKey, 3)
|
|
37
|
-
: '',
|
|
38
|
-
contentApiKey: response.data.contentApiKey
|
|
39
|
-
? (0, _1.redactKey)(response.data.contentApiKey, 3)
|
|
40
|
-
: '',
|
|
41
|
-
};
|
|
42
|
-
return responseData;
|
|
43
|
-
}
|
|
44
|
-
catch (error) {
|
|
45
|
-
if (error instanceof Error) {
|
|
46
|
-
throw error;
|
|
47
|
-
}
|
|
48
|
-
throw new Error(`Failed to set migration settings: ${error}`);
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
exports.setMigrationSettings = setMigrationSettings;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const ApiService_1 = require("../../ApiService");
|
|
13
|
-
const setMigrationSettings_1 = require("./setMigrationSettings");
|
|
14
|
-
const _1 = require(".");
|
|
15
|
-
// Mock dependencies
|
|
16
|
-
jest.mock('../../ApiService');
|
|
17
|
-
jest.mock('../../ApplicationConfig');
|
|
18
|
-
jest.mock('.', () => ({
|
|
19
|
-
buildMigrationUrl: jest.fn(),
|
|
20
|
-
getMigrationHeaders: jest.fn(),
|
|
21
|
-
redactKey: jest.fn(),
|
|
22
|
-
}));
|
|
23
|
-
jest.mock('path');
|
|
24
|
-
jest.mock('child_process');
|
|
25
|
-
jest.mock('axios');
|
|
26
|
-
jest.mock('../../ApplicationConfig');
|
|
27
|
-
jest.mock('../../ApiService');
|
|
28
|
-
// Mock global fetch
|
|
29
|
-
const mockFetch = jest.fn();
|
|
30
|
-
global.fetch = mockFetch;
|
|
31
|
-
const mockApiService = ApiService_1.ApiService;
|
|
32
|
-
const mockBuildMigrationUrl = _1.buildMigrationUrl;
|
|
33
|
-
const mockGetMigrationHeaders = _1.getMigrationHeaders;
|
|
34
|
-
const mockRedactKey = _1.redactKey;
|
|
35
|
-
describe('setMigrationSettings', () => {
|
|
36
|
-
let mockApiServiceInstance;
|
|
37
|
-
let mockOptions;
|
|
38
|
-
beforeEach(() => {
|
|
39
|
-
jest.clearAllMocks();
|
|
40
|
-
mockApiServiceInstance = {
|
|
41
|
-
client: {
|
|
42
|
-
post: jest.fn(),
|
|
43
|
-
},
|
|
44
|
-
};
|
|
45
|
-
mockApiService.mockImplementation(() => mockApiServiceInstance);
|
|
46
|
-
mockOptions = {
|
|
47
|
-
tenant: 'test-tenant',
|
|
48
|
-
matrixUrl: 'https://matrix.example.com',
|
|
49
|
-
matrixIdentifier: 'test-identifier',
|
|
50
|
-
matrixKey: 'test-key-123',
|
|
51
|
-
contentApiKey: 'test-content-api-key-456',
|
|
52
|
-
};
|
|
53
|
-
mockBuildMigrationUrl.mockResolvedValue('https://migration.example.com');
|
|
54
|
-
mockGetMigrationHeaders.mockResolvedValue({
|
|
55
|
-
'Content-Type': 'application/json',
|
|
56
|
-
'x-dxp-tenant': 'test-tenant',
|
|
57
|
-
});
|
|
58
|
-
mockRedactKey.mockImplementation(key => `***${key.slice(-3)}`);
|
|
59
|
-
});
|
|
60
|
-
it('should set migration settings successfully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
61
|
-
const mockResponse = {
|
|
62
|
-
status: 200,
|
|
63
|
-
data: {
|
|
64
|
-
matrixUrl: 'https://matrix.example.com',
|
|
65
|
-
matrixIdentifier: 'test-identifier',
|
|
66
|
-
matrixKey: 'test-key-123',
|
|
67
|
-
contentApiKey: 'test-content-api-key-456',
|
|
68
|
-
},
|
|
69
|
-
};
|
|
70
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
71
|
-
const result = yield (0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }));
|
|
72
|
-
expect(result).toEqual({
|
|
73
|
-
matrixUrl: 'https://matrix.example.com',
|
|
74
|
-
matrixIdentifier: 'test-identifier',
|
|
75
|
-
matrixKey: '***123',
|
|
76
|
-
contentApiKey: '***456',
|
|
77
|
-
});
|
|
78
|
-
expect(mockBuildMigrationUrl).toHaveBeenCalledWith('test-tenant', undefined, 'settings');
|
|
79
|
-
expect(mockGetMigrationHeaders).toHaveBeenCalledWith('test-tenant');
|
|
80
|
-
expect(mockApiServiceInstance.client.post).toHaveBeenCalledWith('https://migration.example.com', {
|
|
81
|
-
matrixUrl: 'https://matrix.example.com',
|
|
82
|
-
matrixIdentifier: 'test-identifier',
|
|
83
|
-
matrixKey: 'test-key-123',
|
|
84
|
-
contentApiKey: 'test-content-api-key-456',
|
|
85
|
-
stageOptions: {},
|
|
86
|
-
}, {
|
|
87
|
-
headers: {
|
|
88
|
-
'Content-Type': 'application/json',
|
|
89
|
-
'x-dxp-tenant': 'test-tenant',
|
|
90
|
-
},
|
|
91
|
-
});
|
|
92
|
-
}));
|
|
93
|
-
it('should handle override URL when provided', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
94
|
-
const optionsWithOverride = Object.assign(Object.assign({}, mockOptions), { overrideUrl: 'https://custom.migration.url' });
|
|
95
|
-
mockBuildMigrationUrl.mockResolvedValue('https://custom.migration.url');
|
|
96
|
-
const mockResponse = {
|
|
97
|
-
status: 201,
|
|
98
|
-
data: {
|
|
99
|
-
matrixUrl: 'https://matrix.example.com',
|
|
100
|
-
matrixIdentifier: 'test-identifier',
|
|
101
|
-
matrixKey: 'test-key-123',
|
|
102
|
-
contentApiKey: 'test-content-api-key-456',
|
|
103
|
-
},
|
|
104
|
-
};
|
|
105
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
106
|
-
yield (0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, optionsWithOverride), { stageOptions: {} }));
|
|
107
|
-
expect(mockBuildMigrationUrl).toHaveBeenCalledWith('test-tenant', 'https://custom.migration.url', 'settings');
|
|
108
|
-
}));
|
|
109
|
-
it('should handle non-success status codes', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
110
|
-
const mockResponse = {
|
|
111
|
-
status: 400,
|
|
112
|
-
data: {},
|
|
113
|
-
};
|
|
114
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
115
|
-
yield expect((0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }))).rejects.toThrow('Migration settings update failed with status: 400');
|
|
116
|
-
}));
|
|
117
|
-
it('should handle missing response data', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
118
|
-
const mockResponse = {
|
|
119
|
-
status: 200,
|
|
120
|
-
data: null,
|
|
121
|
-
};
|
|
122
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
123
|
-
yield expect((0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }))).rejects.toThrow('No data returned from migration service');
|
|
124
|
-
}));
|
|
125
|
-
it('should handle API service errors', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
126
|
-
const error = new Error('Network error');
|
|
127
|
-
mockApiServiceInstance.client.post.mockRejectedValue(error);
|
|
128
|
-
yield expect((0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }))).rejects.toThrow('Network error');
|
|
129
|
-
}));
|
|
130
|
-
it('should handle unknown errors', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
131
|
-
mockApiServiceInstance.client.post.mockRejectedValue('Unknown error');
|
|
132
|
-
yield expect((0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }))).rejects.toThrow('Failed to set migration settings: Unknown error');
|
|
133
|
-
}));
|
|
134
|
-
it('should redact matrix key in response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
135
|
-
const mockResponse = {
|
|
136
|
-
status: 200,
|
|
137
|
-
data: {
|
|
138
|
-
matrixUrl: 'https://matrix.example.com',
|
|
139
|
-
matrixIdentifier: 'test-identifier',
|
|
140
|
-
matrixKey: 'test-key-123',
|
|
141
|
-
contentApiKey: 'test-content-api-key-456',
|
|
142
|
-
},
|
|
143
|
-
};
|
|
144
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
145
|
-
mockRedactKey.mockReturnValue('***123');
|
|
146
|
-
const result = yield (0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }));
|
|
147
|
-
expect(result.matrixKey).toBe('***123');
|
|
148
|
-
expect(mockRedactKey).toHaveBeenCalledWith('test-key-123', 3);
|
|
149
|
-
}));
|
|
150
|
-
it('should handle missing matrix key in response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
151
|
-
const mockResponse = {
|
|
152
|
-
status: 200,
|
|
153
|
-
data: {
|
|
154
|
-
matrixUrl: 'https://matrix.example.com',
|
|
155
|
-
matrixIdentifier: 'test-identifier',
|
|
156
|
-
},
|
|
157
|
-
};
|
|
158
|
-
mockApiServiceInstance.client.post.mockResolvedValue(mockResponse);
|
|
159
|
-
const result = yield (0, setMigrationSettings_1.setMigrationSettings)(Object.assign(Object.assign({}, mockOptions), { stageOptions: {} }));
|
|
160
|
-
expect(result.matrixKey).toBe('');
|
|
161
|
-
expect(mockRedactKey).not.toHaveBeenCalled();
|
|
162
|
-
}));
|
|
163
|
-
});
|
package/lib/page/index.d.ts
DELETED