@squiz/dxp-cli-next 5.33.0-develop.4 → 5.33.0-develop.6
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/bin/dxp.js +6 -1
- package/dist/dxp.js +4319 -0
- package/package.json +37 -29
- 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/batch-get/batch-get.d.ts +0 -3
- package/lib/migration/batch-get/batch-get.js +0 -45
- package/lib/migration/batch-get/batch-get.spec.d.ts +0 -1
- package/lib/migration/batch-get/batch-get.spec.js +0 -182
- package/lib/migration/batch-next/batch-next.d.ts +0 -3
- package/lib/migration/batch-next/batch-next.js +0 -60
- package/lib/migration/batch-next/batch-next.spec.d.ts +0 -1
- package/lib/migration/batch-next/batch-next.spec.js +0 -251
- package/lib/migration/batch-revert/batch-revert.d.ts +0 -3
- package/lib/migration/batch-revert/batch-revert.js +0 -45
- package/lib/migration/batch-revert/batch-revert.spec.d.ts +0 -1
- package/lib/migration/batch-revert/batch-revert.spec.js +0 -197
- package/lib/migration/create/create.d.ts +0 -3
- package/lib/migration/create/create.js +0 -76
- package/lib/migration/create/create.spec.d.ts +0 -1
- package/lib/migration/create/create.spec.js +0 -308
- 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 -276
- package/lib/migration/index.d.ts +0 -3
- package/lib/migration/index.js +0 -32
- 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 -139
- package/lib/migration/mark-deployed/mark-deployed.d.ts +0 -3
- package/lib/migration/mark-deployed/mark-deployed.js +0 -55
- package/lib/migration/mark-deployed/mark-deployed.spec.d.ts +0 -1
- package/lib/migration/mark-deployed/mark-deployed.spec.js +0 -217
- 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 -254
- 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 -60
- package/lib/migration/types/common.types.js +0 -19
- package/lib/migration/types/createMigration.types.d.ts +0 -48
- package/lib/migration/types/createMigration.types.js +0 -2
- package/lib/migration/types/getMigration.types.d.ts +0 -9
- package/lib/migration/types/getMigration.types.js +0 -2
- package/lib/migration/types/index.d.ts +0 -8
- package/lib/migration/types/index.js +0 -24
- package/lib/migration/types/listMigrations.types.d.ts +0 -2
- package/lib/migration/types/listMigrations.types.js +0 -2
- package/lib/migration/types/markDeployed.types.d.ts +0 -20
- package/lib/migration/types/markDeployed.types.js +0 -2
- package/lib/migration/types/nextStage.types.d.ts +0 -31
- 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 -18
- 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 -53
- package/lib/migration/utils/common.js +0 -166
- package/lib/migration/utils/common.spec.d.ts +0 -1
- package/lib/migration/utils/common.spec.js +0 -236
- package/lib/migration/utils/createMigration.d.ts +0 -16
- package/lib/migration/utils/createMigration.js +0 -116
- package/lib/migration/utils/createMigration.spec.d.ts +0 -1
- package/lib/migration/utils/createMigration.spec.js +0 -260
- package/lib/migration/utils/getMigration.d.ts +0 -3
- package/lib/migration/utils/getMigration.js +0 -46
- package/lib/migration/utils/getMigration.spec.d.ts +0 -1
- package/lib/migration/utils/getMigration.spec.js +0 -295
- package/lib/migration/utils/index.d.ts +0 -10
- package/lib/migration/utils/index.js +0 -26
- 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 -109
- package/lib/migration/utils/loadAssetIdsFromFile.d.ts +0 -9
- package/lib/migration/utils/loadAssetIdsFromFile.js +0 -40
- package/lib/migration/utils/loadAssetIdsFromFile.spec.d.ts +0 -1
- package/lib/migration/utils/loadAssetIdsFromFile.spec.js +0 -91
- package/lib/migration/utils/loadStageOptionsFromFile.d.ts +0 -2
- 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/markComponentsDeployed.d.ts +0 -2
- package/lib/migration/utils/markComponentsDeployed.js +0 -37
- package/lib/migration/utils/markComponentsDeployed.spec.d.ts +0 -1
- package/lib/migration/utils/markComponentsDeployed.spec.js +0 -222
- package/lib/migration/utils/nextStage.d.ts +0 -3
- package/lib/migration/utils/nextStage.js +0 -55
- package/lib/migration/utils/nextStage.spec.d.ts +0 -1
- package/lib/migration/utils/nextStage.spec.js +0 -323
- package/lib/migration/utils/options.d.ts +0 -18
- package/lib/migration/utils/options.js +0 -136
- 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 -3
- package/lib/migration/utils/revertMigration.js +0 -58
- package/lib/migration/utils/revertMigration.spec.d.ts +0 -1
- package/lib/migration/utils/revertMigration.spec.js +0 -210
- 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 -307
- 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 -94
- 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 -596
- package/lib/page/utils/definitions.js +0 -247
- package/lib/page/utils/definitions.spec.d.ts +0 -1
- package/lib/page/utils/definitions.spec.js +0 -778
- 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 -309
- 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,284 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const parse_args_1 = require("./parse-args");
|
|
4
|
-
describe('parseZonesList', () => {
|
|
5
|
-
it('returns empty object when given empty string', () => {
|
|
6
|
-
const result = (0, parse_args_1.parseZonesList)('', {});
|
|
7
|
-
expect(result).toEqual({});
|
|
8
|
-
});
|
|
9
|
-
it('parses single zone with equals separator', () => {
|
|
10
|
-
const result = (0, parse_args_1.parseZonesList)('main=./main.html', {});
|
|
11
|
-
expect(result).toEqual({
|
|
12
|
-
main: ['./main.html'],
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
it('parses single zone with colon separator', () => {
|
|
16
|
-
const result = (0, parse_args_1.parseZonesList)('main:./main.html', {});
|
|
17
|
-
expect(result).toEqual({
|
|
18
|
-
main: ['./main.html'],
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
it('parses comma-separated zones with equals separator', () => {
|
|
22
|
-
const result = (0, parse_args_1.parseZonesList)('header=./header.html,main=./main.html,footer=./footer.html', {});
|
|
23
|
-
expect(result).toEqual({
|
|
24
|
-
header: ['./header.html'],
|
|
25
|
-
main: ['./main.html'],
|
|
26
|
-
footer: ['./footer.html'],
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
it('parses comma-separated zones with colon separator', () => {
|
|
30
|
-
const result = (0, parse_args_1.parseZonesList)('header:./header.html,main:./main.html,footer:./footer.html', {});
|
|
31
|
-
expect(result).toEqual({
|
|
32
|
-
header: ['./header.html'],
|
|
33
|
-
main: ['./main.html'],
|
|
34
|
-
footer: ['./footer.html'],
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
it('accumulates multiple values for the same zone', () => {
|
|
38
|
-
const previous = { main: ['./main.0.html'] };
|
|
39
|
-
const result = (0, parse_args_1.parseZonesList)('main=./main.1.html', previous);
|
|
40
|
-
expect(result).toEqual({
|
|
41
|
-
main: ['./main.0.html', './main.1.html'],
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
it('accumulates values from multiple zone flags', () => {
|
|
45
|
-
let result = (0, parse_args_1.parseZonesList)('main=./main.html', {});
|
|
46
|
-
result = (0, parse_args_1.parseZonesList)('sidebar=./sidebar.html', result);
|
|
47
|
-
result = (0, parse_args_1.parseZonesList)('footer=./footer.html', result);
|
|
48
|
-
expect(result).toEqual({
|
|
49
|
-
main: ['./main.html'],
|
|
50
|
-
sidebar: ['./sidebar.html'],
|
|
51
|
-
footer: ['./footer.html'],
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
it('handles mixed syntax with equals and colons', () => {
|
|
55
|
-
const result = (0, parse_args_1.parseZonesList)('header=./header.html,main:./main.html', {});
|
|
56
|
-
expect(result).toEqual({
|
|
57
|
-
header: ['./header.html'],
|
|
58
|
-
main: ['./main.html'],
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
it('ignores malformed inputs', () => {
|
|
62
|
-
const result = (0, parse_args_1.parseZonesList)('malformed,main=,=./file.html', {});
|
|
63
|
-
expect(result).toEqual({});
|
|
64
|
-
});
|
|
65
|
-
it('handles complex example with multiple formats', () => {
|
|
66
|
-
let result = (0, parse_args_1.parseZonesList)('header:./header.html', {});
|
|
67
|
-
result = (0, parse_args_1.parseZonesList)('main:./main.0.html,main:./main.1.html', result);
|
|
68
|
-
result = (0, parse_args_1.parseZonesList)('sidebar=./sidebar.0.html', result);
|
|
69
|
-
expect(result).toEqual({
|
|
70
|
-
header: ['./header.html'],
|
|
71
|
-
main: ['./main.0.html', './main.1.html'],
|
|
72
|
-
sidebar: ['./sidebar.0.html'],
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
describe('parsePropertiesList', () => {
|
|
77
|
-
it('returns empty object when given empty string', () => {
|
|
78
|
-
const result = (0, parse_args_1.parsePropertiesList)('', {});
|
|
79
|
-
expect(result).toEqual({});
|
|
80
|
-
});
|
|
81
|
-
it('parses single property with equals separator', () => {
|
|
82
|
-
const result = (0, parse_args_1.parsePropertiesList)('theme=dark', {});
|
|
83
|
-
expect(result).toEqual({
|
|
84
|
-
theme: 'dark',
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
it('parses single property with colon separator', () => {
|
|
88
|
-
const result = (0, parse_args_1.parsePropertiesList)('theme:dark', {});
|
|
89
|
-
expect(result).toEqual({
|
|
90
|
-
theme: 'dark',
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
it('parses comma-separated properties with equals separator', () => {
|
|
94
|
-
const result = (0, parse_args_1.parsePropertiesList)('theme=dark,containerSize=standard,sidebarPosition=right', {});
|
|
95
|
-
expect(result).toEqual({
|
|
96
|
-
theme: 'dark',
|
|
97
|
-
containerSize: 'standard',
|
|
98
|
-
sidebarPosition: 'right',
|
|
99
|
-
});
|
|
100
|
-
});
|
|
101
|
-
it('parses comma-separated properties with colon separator', () => {
|
|
102
|
-
const result = (0, parse_args_1.parsePropertiesList)('theme:dark,containerSize:standard,sidebarPosition:right', {});
|
|
103
|
-
expect(result).toEqual({
|
|
104
|
-
theme: 'dark',
|
|
105
|
-
containerSize: 'standard',
|
|
106
|
-
sidebarPosition: 'right',
|
|
107
|
-
});
|
|
108
|
-
});
|
|
109
|
-
it('later properties override earlier ones', () => {
|
|
110
|
-
let result = (0, parse_args_1.parsePropertiesList)('theme=light', {});
|
|
111
|
-
result = (0, parse_args_1.parsePropertiesList)('theme=dark', result);
|
|
112
|
-
expect(result).toEqual({
|
|
113
|
-
theme: 'dark',
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
it('accumulates values from multiple property flags', () => {
|
|
117
|
-
let result = (0, parse_args_1.parsePropertiesList)('theme=dark', {});
|
|
118
|
-
result = (0, parse_args_1.parsePropertiesList)('containerSize=standard', result);
|
|
119
|
-
result = (0, parse_args_1.parsePropertiesList)('sidebarPosition=right', result);
|
|
120
|
-
expect(result).toEqual({
|
|
121
|
-
theme: 'dark',
|
|
122
|
-
containerSize: 'standard',
|
|
123
|
-
sidebarPosition: 'right',
|
|
124
|
-
});
|
|
125
|
-
});
|
|
126
|
-
it('handles mixed syntax with equals and colons', () => {
|
|
127
|
-
const result = (0, parse_args_1.parsePropertiesList)('theme=dark,containerSize:standard', {});
|
|
128
|
-
expect(result).toEqual({
|
|
129
|
-
theme: 'dark',
|
|
130
|
-
containerSize: 'standard',
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
it('ignores malformed inputs', () => {
|
|
134
|
-
const result = (0, parse_args_1.parsePropertiesList)('malformed,theme=,=dark', {});
|
|
135
|
-
expect(result).toEqual({});
|
|
136
|
-
});
|
|
137
|
-
it('handles complex example with multiple formats', () => {
|
|
138
|
-
let result = (0, parse_args_1.parsePropertiesList)('containerSize:standard', {});
|
|
139
|
-
result = (0, parse_args_1.parsePropertiesList)('sidebarPosition=right,colorTheme=dark', result);
|
|
140
|
-
expect(result).toEqual({
|
|
141
|
-
containerSize: 'standard',
|
|
142
|
-
sidebarPosition: 'right',
|
|
143
|
-
colorTheme: 'dark',
|
|
144
|
-
});
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
describe('normalizeLayoutProperties', () => {
|
|
148
|
-
it('returns empty object when given no properties', () => {
|
|
149
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)({}, {});
|
|
150
|
-
expect(result).toEqual({});
|
|
151
|
-
});
|
|
152
|
-
it('returns properties unchanged when layoutDefinition has no properties', () => {
|
|
153
|
-
const properties = {
|
|
154
|
-
theme: 'dark',
|
|
155
|
-
size: 'large',
|
|
156
|
-
};
|
|
157
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, {});
|
|
158
|
-
expect(result).toEqual(properties);
|
|
159
|
-
});
|
|
160
|
-
it('converts string "true" to boolean true for boolean-type properties', () => {
|
|
161
|
-
const properties = {
|
|
162
|
-
showFooter: 'true',
|
|
163
|
-
};
|
|
164
|
-
const layoutDefinition = {
|
|
165
|
-
properties: {
|
|
166
|
-
showFooter: {
|
|
167
|
-
type: 'boolean',
|
|
168
|
-
},
|
|
169
|
-
},
|
|
170
|
-
};
|
|
171
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition);
|
|
172
|
-
expect(result).toEqual({
|
|
173
|
-
showFooter: true,
|
|
174
|
-
});
|
|
175
|
-
expect(typeof result.showFooter).toBe('boolean');
|
|
176
|
-
});
|
|
177
|
-
it('converts string "false" to boolean false for boolean-type properties', () => {
|
|
178
|
-
const properties = {
|
|
179
|
-
showFooter: 'false',
|
|
180
|
-
};
|
|
181
|
-
const layoutDefinition = {
|
|
182
|
-
properties: {
|
|
183
|
-
showFooter: {
|
|
184
|
-
type: 'boolean',
|
|
185
|
-
},
|
|
186
|
-
},
|
|
187
|
-
};
|
|
188
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition);
|
|
189
|
-
expect(result).toEqual({
|
|
190
|
-
showFooter: false,
|
|
191
|
-
});
|
|
192
|
-
expect(typeof result.showFooter).toBe('boolean');
|
|
193
|
-
});
|
|
194
|
-
it('leaves string properties unchanged for non-boolean types', () => {
|
|
195
|
-
const properties = {
|
|
196
|
-
theme: 'dark',
|
|
197
|
-
customTitle: 'My Title',
|
|
198
|
-
};
|
|
199
|
-
const layoutDefinition = {
|
|
200
|
-
properties: {
|
|
201
|
-
theme: {
|
|
202
|
-
type: 'string',
|
|
203
|
-
},
|
|
204
|
-
customTitle: {
|
|
205
|
-
type: 'string',
|
|
206
|
-
},
|
|
207
|
-
},
|
|
208
|
-
};
|
|
209
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition);
|
|
210
|
-
expect(result).toEqual(properties);
|
|
211
|
-
});
|
|
212
|
-
it('handles mixed boolean and string properties', () => {
|
|
213
|
-
const properties = {
|
|
214
|
-
showFooter: 'true',
|
|
215
|
-
showHeader: 'false',
|
|
216
|
-
theme: 'dark',
|
|
217
|
-
customTitle: 'Test',
|
|
218
|
-
};
|
|
219
|
-
const layoutDefinition = {
|
|
220
|
-
properties: {
|
|
221
|
-
showFooter: { type: 'boolean' },
|
|
222
|
-
showHeader: { type: 'boolean' },
|
|
223
|
-
theme: { type: 'string' },
|
|
224
|
-
customTitle: { type: 'string' },
|
|
225
|
-
},
|
|
226
|
-
};
|
|
227
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition);
|
|
228
|
-
expect(result).toEqual({
|
|
229
|
-
showFooter: true,
|
|
230
|
-
showHeader: false,
|
|
231
|
-
theme: 'dark',
|
|
232
|
-
customTitle: 'Test',
|
|
233
|
-
});
|
|
234
|
-
});
|
|
235
|
-
it('throws error for invalid boolean value', () => {
|
|
236
|
-
const properties = {
|
|
237
|
-
showFooter: 'yes',
|
|
238
|
-
};
|
|
239
|
-
const layoutDefinition = {
|
|
240
|
-
properties: {
|
|
241
|
-
showFooter: {
|
|
242
|
-
type: 'boolean',
|
|
243
|
-
},
|
|
244
|
-
},
|
|
245
|
-
};
|
|
246
|
-
expect(() => (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition)).toThrow('Invalid boolean value "yes" for property "showFooter". Must be "true" or "false".');
|
|
247
|
-
});
|
|
248
|
-
it('only normalizes properties that exist in layoutDefinition', () => {
|
|
249
|
-
const properties = {
|
|
250
|
-
showFooter: 'true',
|
|
251
|
-
unknownProperty: 'true',
|
|
252
|
-
};
|
|
253
|
-
const layoutDefinition = {
|
|
254
|
-
properties: {
|
|
255
|
-
showFooter: {
|
|
256
|
-
type: 'boolean',
|
|
257
|
-
},
|
|
258
|
-
},
|
|
259
|
-
};
|
|
260
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition);
|
|
261
|
-
expect(result).toEqual({
|
|
262
|
-
showFooter: true,
|
|
263
|
-
unknownProperty: 'true', // Left as string because not in layoutDefinition
|
|
264
|
-
});
|
|
265
|
-
});
|
|
266
|
-
it('preserves properties not present in layoutDefinition properties', () => {
|
|
267
|
-
const properties = {
|
|
268
|
-
showFooter: 'true',
|
|
269
|
-
theme: 'dark',
|
|
270
|
-
};
|
|
271
|
-
const layoutDefinition = {
|
|
272
|
-
properties: {
|
|
273
|
-
showFooter: {
|
|
274
|
-
type: 'boolean',
|
|
275
|
-
},
|
|
276
|
-
},
|
|
277
|
-
};
|
|
278
|
-
const result = (0, parse_args_1.normalizeLayoutProperties)(properties, layoutDefinition);
|
|
279
|
-
expect(result).toEqual({
|
|
280
|
-
showFooter: true,
|
|
281
|
-
theme: 'dark', // Preserved even though not in layoutDefinition
|
|
282
|
-
});
|
|
283
|
-
});
|
|
284
|
-
});
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
export interface LayoutDefinition {
|
|
2
|
-
name: string;
|
|
3
|
-
displayName?: string;
|
|
4
|
-
description?: string;
|
|
5
|
-
entry?: string;
|
|
6
|
-
template?: string;
|
|
7
|
-
zones: ZoneDefinition[];
|
|
8
|
-
properties?: Record<string, PropertyDefinition>;
|
|
9
|
-
}
|
|
10
|
-
export interface ExtendedLayoutDefinition extends LayoutDefinition {
|
|
11
|
-
template: string;
|
|
12
|
-
}
|
|
13
|
-
export interface ZoneDefinition {
|
|
14
|
-
key: string;
|
|
15
|
-
displayName: string;
|
|
16
|
-
description: string;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Layout option value types.
|
|
20
|
-
*/
|
|
21
|
-
export declare const LayoutOptionValueType: {
|
|
22
|
-
readonly stringEnum: "string-enum";
|
|
23
|
-
readonly boolean: "boolean";
|
|
24
|
-
readonly text: "text";
|
|
25
|
-
};
|
|
26
|
-
export declare type LayoutOptionValueType = typeof LayoutOptionValueType[keyof typeof LayoutOptionValueType];
|
|
27
|
-
export declare const LayoutOptionValueTypes: readonly ["string-enum", "boolean", "text"];
|
|
28
|
-
/**
|
|
29
|
-
* Layout property types.
|
|
30
|
-
*/
|
|
31
|
-
export declare const LayoutPropertyType: {
|
|
32
|
-
readonly string: "string";
|
|
33
|
-
readonly boolean: "boolean";
|
|
34
|
-
};
|
|
35
|
-
export declare type LayoutPropertyType = typeof LayoutPropertyType[keyof typeof LayoutPropertyType];
|
|
36
|
-
export interface PropertyDefinition {
|
|
37
|
-
title: string;
|
|
38
|
-
description: string;
|
|
39
|
-
type: LayoutPropertyType;
|
|
40
|
-
enum?: string[] | boolean[];
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Renders a layout using Handlebars templating
|
|
44
|
-
*
|
|
45
|
-
* @param templateContent The Handlebars template string
|
|
46
|
-
* @param zoneContents Content for each zone as single concatenated strings
|
|
47
|
-
* @param layoutProperties Properties for the layout (can include boolean values for boolean-type properties)
|
|
48
|
-
* @param layoutDefinition Optional layout definition object to pass to the template
|
|
49
|
-
* @returns The rendered HTML
|
|
50
|
-
*/
|
|
51
|
-
export declare function renderLayout(templateContent: string, zoneContents: Record<string, string>, layoutProperties: Record<string, string | boolean>, layoutDefinition?: ExtendedLayoutDefinition): Promise<string>;
|
package/lib/page/utils/render.js
DELETED
|
@@ -1,112 +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.renderLayout = exports.LayoutPropertyType = exports.LayoutOptionValueTypes = exports.LayoutOptionValueType = void 0;
|
|
16
|
-
const handlebars_1 = __importDefault(require("handlebars"));
|
|
17
|
-
/**
|
|
18
|
-
* Layout option value types.
|
|
19
|
-
*/
|
|
20
|
-
exports.LayoutOptionValueType = {
|
|
21
|
-
stringEnum: 'string-enum',
|
|
22
|
-
boolean: 'boolean',
|
|
23
|
-
text: 'text',
|
|
24
|
-
};
|
|
25
|
-
exports.LayoutOptionValueTypes = [
|
|
26
|
-
exports.LayoutOptionValueType.stringEnum,
|
|
27
|
-
exports.LayoutOptionValueType.boolean,
|
|
28
|
-
exports.LayoutOptionValueType.text,
|
|
29
|
-
];
|
|
30
|
-
/**
|
|
31
|
-
* Layout property types.
|
|
32
|
-
*/
|
|
33
|
-
exports.LayoutPropertyType = {
|
|
34
|
-
string: 'string',
|
|
35
|
-
boolean: 'boolean',
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Registers global Handlebars helpers
|
|
39
|
-
* TODO: Consider how these can be shared with page-contents-lib
|
|
40
|
-
*/
|
|
41
|
-
function registerGlobalHelpers() {
|
|
42
|
-
handlebars_1.default.registerHelper('toLowerCase', function (text) {
|
|
43
|
-
return typeof text === 'string' ? text.toLowerCase() : '';
|
|
44
|
-
});
|
|
45
|
-
handlebars_1.default.registerHelper('toUpperCase', function (text) {
|
|
46
|
-
return typeof text === 'string' ? text.toUpperCase() : '';
|
|
47
|
-
});
|
|
48
|
-
handlebars_1.default.registerHelper('ifEq', function (first, second, options) {
|
|
49
|
-
if (first === second) {
|
|
50
|
-
return options.fn(this);
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
return options.inverse(this);
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
handlebars_1.default.registerHelper('ifNotEq', function (first, second, options) {
|
|
57
|
-
if (first !== second) {
|
|
58
|
-
return options.fn(this);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
return options.inverse(this);
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
handlebars_1.default.registerHelper('stringify', function (object) {
|
|
65
|
-
return JSON.stringify(object);
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Renders a layout using Handlebars templating
|
|
70
|
-
*
|
|
71
|
-
* @param templateContent The Handlebars template string
|
|
72
|
-
* @param zoneContents Content for each zone as single concatenated strings
|
|
73
|
-
* @param layoutProperties Properties for the layout (can include boolean values for boolean-type properties)
|
|
74
|
-
* @param layoutDefinition Optional layout definition object to pass to the template
|
|
75
|
-
* @returns The rendered HTML
|
|
76
|
-
*/
|
|
77
|
-
function renderLayout(templateContent, zoneContents, layoutProperties, layoutDefinition) {
|
|
78
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
try {
|
|
80
|
-
registerGlobalHelpers();
|
|
81
|
-
const template = handlebars_1.default.compile(templateContent);
|
|
82
|
-
const zones = {};
|
|
83
|
-
for (const [zoneName, content] of Object.entries(zoneContents)) {
|
|
84
|
-
// Wrap the content in SafeString to prevent HTML escaping
|
|
85
|
-
zones[zoneName] = new handlebars_1.default.SafeString(content);
|
|
86
|
-
}
|
|
87
|
-
const flattenedProperties = {};
|
|
88
|
-
for (const [key, value] of Object.entries(layoutProperties)) {
|
|
89
|
-
const propertyValue = value;
|
|
90
|
-
if (propertyValue &&
|
|
91
|
-
typeof propertyValue === 'object' &&
|
|
92
|
-
'selectedValue' in propertyValue) {
|
|
93
|
-
flattenedProperties[key] = propertyValue.selectedValue;
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
flattenedProperties[key] = propertyValue;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
return template({
|
|
100
|
-
zones: zones,
|
|
101
|
-
// Still provide options for existing templates that use it
|
|
102
|
-
options: flattenedProperties,
|
|
103
|
-
properties: flattenedProperties,
|
|
104
|
-
layout: layoutDefinition,
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
catch (error) {
|
|
108
|
-
return `<div class="error">Error rendering template: ${error.message}</div>`;
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
exports.renderLayout = renderLayout;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,134 +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 render_1 = require("./render");
|
|
16
|
-
const handlebars_1 = __importDefault(require("handlebars"));
|
|
17
|
-
describe('renderLayout', () => {
|
|
18
|
-
beforeEach(() => {
|
|
19
|
-
jest.resetAllMocks();
|
|
20
|
-
});
|
|
21
|
-
it('should render a simple template with zone content', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
22
|
-
const templateContent = '<div class="container">{{zones.main}}</div>';
|
|
23
|
-
const zoneContents = {
|
|
24
|
-
main: '<p>Content 1</p><p>Content 2</p>',
|
|
25
|
-
};
|
|
26
|
-
const layoutProperties = {};
|
|
27
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, layoutProperties);
|
|
28
|
-
expect(result).toContain('<div class="container">');
|
|
29
|
-
expect(result).toContain('<p>Content 1</p>');
|
|
30
|
-
expect(result).toContain('<p>Content 2</p>');
|
|
31
|
-
}));
|
|
32
|
-
it('should apply layout properties to the template (with deprecated options support)', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
33
|
-
const templateContent = '<div class="container {{options.size}}">{{zones.main}}</div>';
|
|
34
|
-
const zoneContents = {
|
|
35
|
-
main: '<p>Content</p>',
|
|
36
|
-
};
|
|
37
|
-
const layoutProperties = {
|
|
38
|
-
size: 'large',
|
|
39
|
-
};
|
|
40
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, layoutProperties);
|
|
41
|
-
expect(result).toContain('<div class="container large">');
|
|
42
|
-
expect(result).toContain('<p>Content</p>');
|
|
43
|
-
}));
|
|
44
|
-
it('should handle multiple zones', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
const templateContent = `
|
|
46
|
-
<div class="container">
|
|
47
|
-
<div class="main">{{zones.main}}</div>
|
|
48
|
-
<div class="sidebar">{{zones.sidebar}}</div>
|
|
49
|
-
</div>
|
|
50
|
-
`;
|
|
51
|
-
const zoneContents = {
|
|
52
|
-
main: '<p>Main Content</p>',
|
|
53
|
-
sidebar: '<div>Sidebar Item 1</div><div>Sidebar Item 2</div>',
|
|
54
|
-
};
|
|
55
|
-
const layoutProperties = {};
|
|
56
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, layoutProperties);
|
|
57
|
-
expect(result).toContain('<div class="main"><p>Main Content</p></div>');
|
|
58
|
-
expect(result).toContain('<div class="sidebar"><div>Sidebar Item 1</div><div>Sidebar Item 2</div></div>');
|
|
59
|
-
}));
|
|
60
|
-
it('should handle complex option values with selectedValue property', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
61
|
-
const templateContent = `
|
|
62
|
-
<div class="theme-{{options.theme}}">
|
|
63
|
-
<div class="main">{{zones.main}}</div>
|
|
64
|
-
<div class="sidebar">{{zones.sidebar}}</div>
|
|
65
|
-
</div>
|
|
66
|
-
`;
|
|
67
|
-
const zoneContents = {
|
|
68
|
-
main: '<p>Content</p>',
|
|
69
|
-
};
|
|
70
|
-
const layoutProperties = {
|
|
71
|
-
theme: 'dark',
|
|
72
|
-
};
|
|
73
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, layoutProperties);
|
|
74
|
-
expect(result).toContain('<div class="theme-dark">');
|
|
75
|
-
}));
|
|
76
|
-
it('should use SafeString to prevent HTML escaping', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
77
|
-
const templateContent = '<div>{{zones.content}}</div>';
|
|
78
|
-
const zoneContents = {
|
|
79
|
-
content: '<strong>Bold Text</strong>',
|
|
80
|
-
};
|
|
81
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, {});
|
|
82
|
-
expect(result).toContain('<strong>Bold Text</strong>');
|
|
83
|
-
}));
|
|
84
|
-
it('should handle empty zone content gracefully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
85
|
-
const templateContent = '<div>{{zones.main}}</div>';
|
|
86
|
-
const zoneContents = {
|
|
87
|
-
main: '',
|
|
88
|
-
};
|
|
89
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, {});
|
|
90
|
-
expect(result).toEqual('<div></div>');
|
|
91
|
-
}));
|
|
92
|
-
it('should include layout definition in template data when provided', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
93
|
-
const templateContent = '<div class="{{layout.name}}">{{zones.main}}</div>';
|
|
94
|
-
const zoneContents = {
|
|
95
|
-
main: '<p>Content</p>',
|
|
96
|
-
};
|
|
97
|
-
const layoutDefinition = {
|
|
98
|
-
name: 'test-layout',
|
|
99
|
-
displayName: 'Test Layout',
|
|
100
|
-
template: templateContent,
|
|
101
|
-
zones: [
|
|
102
|
-
{
|
|
103
|
-
key: 'main',
|
|
104
|
-
displayName: 'Main Content',
|
|
105
|
-
description: 'Main content area',
|
|
106
|
-
},
|
|
107
|
-
],
|
|
108
|
-
};
|
|
109
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, {}, layoutDefinition);
|
|
110
|
-
expect(result).toContain('<div class="test-layout">');
|
|
111
|
-
}));
|
|
112
|
-
it('should handle rendering errors gracefully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
113
|
-
const templateContent = '{{#invalid}}Invalid Handlebars Syntax{{/invalid}}';
|
|
114
|
-
const zoneContents = { main: '<p>Content</p>' };
|
|
115
|
-
handlebars_1.default.compile = jest.fn().mockImplementation(() => {
|
|
116
|
-
throw new Error('Handlebars compilation error');
|
|
117
|
-
});
|
|
118
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, {});
|
|
119
|
-
expect(result).toContain('<div class="error">');
|
|
120
|
-
expect(result).toContain('Handlebars compilation error');
|
|
121
|
-
}));
|
|
122
|
-
it('should handle compilation errors during template execution', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
123
|
-
const templateContent = '{{invalidHelper}}';
|
|
124
|
-
const zoneContents = { main: '<p>Content</p>' };
|
|
125
|
-
handlebars_1.default.compile = jest.fn().mockImplementation(() => {
|
|
126
|
-
return () => {
|
|
127
|
-
throw new Error('Template execution error');
|
|
128
|
-
};
|
|
129
|
-
});
|
|
130
|
-
const result = yield (0, render_1.renderLayout)(templateContent, zoneContents, {});
|
|
131
|
-
expect(result).toContain('<div class="error">');
|
|
132
|
-
expect(result).toContain('Template execution error');
|
|
133
|
-
}));
|
|
134
|
-
});
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ExtendedLayoutDefinition } from './render';
|
|
2
|
-
interface DevServerOptions {
|
|
3
|
-
configPath: string;
|
|
4
|
-
layoutDefinition: ExtendedLayoutDefinition;
|
|
5
|
-
zoneContent: Record<string, string[]>;
|
|
6
|
-
layoutProperties: Record<string, string | boolean>;
|
|
7
|
-
stylesheet?: string;
|
|
8
|
-
port: number;
|
|
9
|
-
openBrowser: boolean;
|
|
10
|
-
}
|
|
11
|
-
export declare function startDevServer(options: DevServerOptions): Promise<void>;
|
|
12
|
-
export {};
|