@squiz/dxp-cli-next 5.33.0-develop.1 → 5.33.0-develop.11

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.
Files changed (370) hide show
  1. package/README.md +1 -0
  2. package/bin/dxp.js +6 -1
  3. package/dist/dxp.js +4480 -0
  4. package/package.json +36 -30
  5. package/lib/ApiService.d.ts +0 -39
  6. package/lib/ApiService.js +0 -120
  7. package/lib/ApiService.spec.d.ts +0 -1
  8. package/lib/ApiService.spec.js +0 -182
  9. package/lib/ApplicationConfig.d.ts +0 -7
  10. package/lib/ApplicationConfig.js +0 -38
  11. package/lib/ApplicationConfig.spec.d.ts +0 -1
  12. package/lib/ApplicationConfig.spec.js +0 -84
  13. package/lib/ApplicationStore.d.ts +0 -13
  14. package/lib/ApplicationStore.js +0 -53
  15. package/lib/__tests__/cmp/dev-mode.spec.d.ts +0 -1
  16. package/lib/__tests__/cmp/dev-mode.spec.js +0 -54
  17. package/lib/__tests__/helpers.d.ts +0 -17
  18. package/lib/__tests__/helpers.js +0 -54
  19. package/lib/__tests__/integration/main.spec.d.ts +0 -1
  20. package/lib/__tests__/integration/main.spec.js +0 -45
  21. package/lib/__tests__/smoke/validate.spec.d.ts +0 -1
  22. package/lib/__tests__/smoke/validate.spec.js +0 -37
  23. package/lib/__tests__/unit/cli.d.ts +0 -0
  24. package/lib/__tests__/unit/cli.js +0 -7
  25. package/lib/auth/index.d.ts +0 -3
  26. package/lib/auth/index.js +0 -14
  27. package/lib/auth/login/login.d.ts +0 -22
  28. package/lib/auth/login/login.js +0 -268
  29. package/lib/auth/login/login.spec.d.ts +0 -1
  30. package/lib/auth/login/login.spec.js +0 -179
  31. package/lib/auth/logout/logout.d.ts +0 -3
  32. package/lib/auth/logout/logout.js +0 -115
  33. package/lib/auth/logout/logout.spec.d.ts +0 -1
  34. package/lib/auth/logout/logout.spec.js +0 -67
  35. package/lib/cdp/constants.d.ts +0 -1
  36. package/lib/cdp/constants.js +0 -4
  37. package/lib/cdp/index.d.ts +0 -3
  38. package/lib/cdp/index.js +0 -16
  39. package/lib/cdp/instance/activate/activate.d.ts +0 -5
  40. package/lib/cdp/instance/activate/activate.js +0 -107
  41. package/lib/cdp/instance/activate/activate.spec.d.ts +0 -1
  42. package/lib/cdp/instance/activate/activate.spec.js +0 -274
  43. package/lib/cdp/instance/instanceCommand.d.ts +0 -3
  44. package/lib/cdp/instance/instanceCommand.js +0 -15
  45. package/lib/cdp/schema/deploy/deploy.const.d.ts +0 -5
  46. package/lib/cdp/schema/deploy/deploy.const.js +0 -8
  47. package/lib/cdp/schema/deploy/deploy.d.ts +0 -4
  48. package/lib/cdp/schema/deploy/deploy.js +0 -107
  49. package/lib/cdp/schema/deploy/deploy.spec.d.ts +0 -1
  50. package/lib/cdp/schema/deploy/deploy.spec.js +0 -137
  51. package/lib/cdp/schema/schemaCommand.d.ts +0 -3
  52. package/lib/cdp/schema/schemaCommand.js +0 -15
  53. package/lib/cdp/utils.d.ts +0 -23
  54. package/lib/cdp/utils.js +0 -133
  55. package/lib/cmp/deploy.d.ts +0 -3
  56. package/lib/cmp/deploy.js +0 -124
  57. package/lib/cmp/dev-mode-ui.d.ts +0 -4
  58. package/lib/cmp/dev-mode-ui.js +0 -51
  59. package/lib/cmp/dev-mode.d.ts +0 -4
  60. package/lib/cmp/dev-mode.js +0 -58
  61. package/lib/cmp/edge-components/compiler.d.ts +0 -13
  62. package/lib/cmp/edge-components/compiler.js +0 -55
  63. package/lib/cmp/index.d.ts +0 -3
  64. package/lib/cmp/index.js +0 -18
  65. package/lib/cmp/init.d.ts +0 -3
  66. package/lib/cmp/init.js +0 -105
  67. package/lib/cmp/utils/definitions.d.ts +0 -481
  68. package/lib/cmp/utils/definitions.js +0 -262
  69. package/lib/cmp/utils/definitions.spec.d.ts +0 -1
  70. package/lib/cmp/utils/definitions.spec.js +0 -503
  71. package/lib/constants.d.ts +0 -1
  72. package/lib/constants.js +0 -4
  73. package/lib/datastore/blueprint/add/add.d.ts +0 -3
  74. package/lib/datastore/blueprint/add/add.js +0 -119
  75. package/lib/datastore/blueprint/add/add.spec.d.ts +0 -1
  76. package/lib/datastore/blueprint/add/add.spec.js +0 -134
  77. package/lib/datastore/blueprint/blueprintCommand.d.ts +0 -3
  78. package/lib/datastore/blueprint/blueprintCommand.js +0 -21
  79. package/lib/datastore/blueprint/list/list.d.ts +0 -3
  80. package/lib/datastore/blueprint/list/list.js +0 -76
  81. package/lib/datastore/blueprint/list/list.spec.d.ts +0 -1
  82. package/lib/datastore/blueprint/list/list.spec.js +0 -51
  83. package/lib/datastore/blueprint/rename/rename.d.ts +0 -3
  84. package/lib/datastore/blueprint/rename/rename.js +0 -93
  85. package/lib/datastore/blueprint/rename/rename.spec.d.ts +0 -1
  86. package/lib/datastore/blueprint/rename/rename.spec.js +0 -142
  87. package/lib/datastore/blueprint/update/update.d.ts +0 -3
  88. package/lib/datastore/blueprint/update/update.js +0 -89
  89. package/lib/datastore/blueprint/update/update.spec.d.ts +0 -1
  90. package/lib/datastore/blueprint/update/update.spec.js +0 -99
  91. package/lib/datastore/bundle/bundle.d.ts +0 -3
  92. package/lib/datastore/bundle/bundle.js +0 -176
  93. package/lib/datastore/bundle/bundle.spec.d.ts +0 -1
  94. package/lib/datastore/bundle/bundle.spec.js +0 -94
  95. package/lib/datastore/index.d.ts +0 -3
  96. package/lib/datastore/index.js +0 -16
  97. package/lib/datastore/simulator/add/add.d.ts +0 -3
  98. package/lib/datastore/simulator/add/add.js +0 -125
  99. package/lib/datastore/simulator/add/add.spec.d.ts +0 -1
  100. package/lib/datastore/simulator/add/add.spec.js +0 -114
  101. package/lib/datastore/simulator/clear/clear.d.ts +0 -3
  102. package/lib/datastore/simulator/clear/clear.js +0 -70
  103. package/lib/datastore/simulator/clear/clear.spec.d.ts +0 -1
  104. package/lib/datastore/simulator/clear/clear.spec.js +0 -224
  105. package/lib/datastore/simulator/list/list.d.ts +0 -3
  106. package/lib/datastore/simulator/list/list.js +0 -115
  107. package/lib/datastore/simulator/list/list.spec.d.ts +0 -1
  108. package/lib/datastore/simulator/list/list.spec.js +0 -95
  109. package/lib/datastore/simulator/pause/pause.d.ts +0 -3
  110. package/lib/datastore/simulator/pause/pause.js +0 -84
  111. package/lib/datastore/simulator/pause/pause.spec.d.ts +0 -1
  112. package/lib/datastore/simulator/pause/pause.spec.js +0 -90
  113. package/lib/datastore/simulator/remove/remove.d.ts +0 -3
  114. package/lib/datastore/simulator/remove/remove.js +0 -68
  115. package/lib/datastore/simulator/remove/remove.spec.d.ts +0 -1
  116. package/lib/datastore/simulator/remove/remove.spec.js +0 -224
  117. package/lib/datastore/simulator/resume/resume.d.ts +0 -3
  118. package/lib/datastore/simulator/resume/resume.js +0 -84
  119. package/lib/datastore/simulator/resume/resume.spec.d.ts +0 -1
  120. package/lib/datastore/simulator/resume/resume.spec.js +0 -90
  121. package/lib/datastore/simulator/simulatorCommand.d.ts +0 -3
  122. package/lib/datastore/simulator/simulatorCommand.js +0 -27
  123. package/lib/datastore/simulator/upgrade/upgrade.d.ts +0 -3
  124. package/lib/datastore/simulator/upgrade/upgrade.js +0 -157
  125. package/lib/datastore/simulator/upgrade/upgrade.spec.d.ts +0 -1
  126. package/lib/datastore/simulator/upgrade/upgrade.spec.js +0 -199
  127. package/lib/datastore/simulator/utils.d.ts +0 -29
  128. package/lib/datastore/simulator/utils.js +0 -218
  129. package/lib/datastore/simulator/utils.spec.d.ts +0 -1
  130. package/lib/datastore/simulator/utils.spec.js +0 -201
  131. package/lib/datastore/utils.d.ts +0 -20
  132. package/lib/datastore/utils.js +0 -241
  133. package/lib/datastore/utils.spec.d.ts +0 -1
  134. package/lib/datastore/utils.spec.js +0 -113
  135. package/lib/dxp.d.ts +0 -1
  136. package/lib/dxp.js +0 -57
  137. package/lib/job-runner/index.d.ts +0 -3
  138. package/lib/job-runner/index.js +0 -22
  139. package/lib/job-runner/job/listJobs/listJobs.d.ts +0 -3
  140. package/lib/job-runner/job/listJobs/listJobs.js +0 -66
  141. package/lib/job-runner/job/listJobs/listJobs.spec.d.ts +0 -1
  142. package/lib/job-runner/job/listJobs/listJobs.spec.js +0 -42
  143. package/lib/job-runner/job/uploadJob/uploadJob.d.ts +0 -3
  144. package/lib/job-runner/job/uploadJob/uploadJob.js +0 -56
  145. package/lib/job-runner/job/uploadJob/uploadJob.spec.d.ts +0 -1
  146. package/lib/job-runner/job/uploadJob/uploadJob.spec.js +0 -42
  147. package/lib/job-runner/jobContext/listJobContexts.d.ts +0 -3
  148. package/lib/job-runner/jobContext/listJobContexts.js +0 -66
  149. package/lib/job-runner/jobContext/listJobContexts.spec.d.ts +0 -1
  150. package/lib/job-runner/jobContext/listJobContexts.spec.js +0 -58
  151. package/lib/job-runner/jobExecution/beginJob/beginJob.d.ts +0 -3
  152. package/lib/job-runner/jobExecution/beginJob/beginJob.js +0 -68
  153. package/lib/job-runner/jobExecution/beginJob/beginJob.spec.d.ts +0 -1
  154. package/lib/job-runner/jobExecution/beginJob/beginJob.spec.js +0 -62
  155. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.d.ts +0 -3
  156. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.js +0 -67
  157. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.spec.d.ts +0 -1
  158. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.spec.js +0 -64
  159. package/lib/job-runner/jobExecution/terminateJob/terminateJob.d.ts +0 -3
  160. package/lib/job-runner/jobExecution/terminateJob/terminateJob.js +0 -64
  161. package/lib/job-runner/jobExecution/terminateJob/terminateJob.spec.d.ts +0 -1
  162. package/lib/job-runner/jobExecution/terminateJob/terminateJob.spec.js +0 -61
  163. package/lib/job-runner/utils.d.ts +0 -19
  164. package/lib/job-runner/utils.js +0 -145
  165. package/lib/job-runner/utils.spec.d.ts +0 -1
  166. package/lib/job-runner/utils.spec.js +0 -116
  167. package/lib/migration/create/create.d.ts +0 -3
  168. package/lib/migration/create/create.js +0 -56
  169. package/lib/migration/create/create.spec.d.ts +0 -1
  170. package/lib/migration/create/create.spec.js +0 -280
  171. package/lib/migration/get/get.d.ts +0 -3
  172. package/lib/migration/get/get.js +0 -46
  173. package/lib/migration/get/get.spec.d.ts +0 -1
  174. package/lib/migration/get/get.spec.js +0 -287
  175. package/lib/migration/index.d.ts +0 -3
  176. package/lib/migration/index.js +0 -24
  177. package/lib/migration/list/list.d.ts +0 -3
  178. package/lib/migration/list/list.js +0 -45
  179. package/lib/migration/list/list.spec.d.ts +0 -1
  180. package/lib/migration/list/list.spec.js +0 -138
  181. package/lib/migration/next/next.d.ts +0 -3
  182. package/lib/migration/next/next.js +0 -75
  183. package/lib/migration/next/next.spec.d.ts +0 -1
  184. package/lib/migration/next/next.spec.js +0 -253
  185. package/lib/migration/pre/pre.d.ts +0 -3
  186. package/lib/migration/pre/pre.js +0 -54
  187. package/lib/migration/pre/pre.spec.d.ts +0 -1
  188. package/lib/migration/pre/pre.spec.js +0 -269
  189. package/lib/migration/revert/revert.d.ts +0 -3
  190. package/lib/migration/revert/revert.js +0 -47
  191. package/lib/migration/revert/revert.spec.d.ts +0 -1
  192. package/lib/migration/revert/revert.spec.js +0 -153
  193. package/lib/migration/settings/settings.d.ts +0 -3
  194. package/lib/migration/settings/settings.js +0 -63
  195. package/lib/migration/settings/settings.spec.d.ts +0 -1
  196. package/lib/migration/settings/settings.spec.js +0 -339
  197. package/lib/migration/types/common.types.d.ts +0 -29
  198. package/lib/migration/types/common.types.js +0 -2
  199. package/lib/migration/types/createMigration.types.d.ts +0 -10
  200. package/lib/migration/types/createMigration.types.js +0 -2
  201. package/lib/migration/types/getMigration.types.d.ts +0 -5
  202. package/lib/migration/types/getMigration.types.js +0 -2
  203. package/lib/migration/types/index.d.ts +0 -7
  204. package/lib/migration/types/index.js +0 -23
  205. package/lib/migration/types/listMigrations.types.d.ts +0 -2
  206. package/lib/migration/types/listMigrations.types.js +0 -2
  207. package/lib/migration/types/nextStage.types.d.ts +0 -10
  208. package/lib/migration/types/nextStage.types.js +0 -2
  209. package/lib/migration/types/preMigration.types.d.ts +0 -10
  210. package/lib/migration/types/preMigration.types.js +0 -2
  211. package/lib/migration/types/revert.types.d.ts +0 -6
  212. package/lib/migration/types/revert.types.js +0 -2
  213. package/lib/migration/types/settings.types.d.ts +0 -15
  214. package/lib/migration/types/settings.types.js +0 -2
  215. package/lib/migration/utils/common.d.ts +0 -39
  216. package/lib/migration/utils/common.js +0 -134
  217. package/lib/migration/utils/common.spec.d.ts +0 -1
  218. package/lib/migration/utils/common.spec.js +0 -165
  219. package/lib/migration/utils/createMigration.d.ts +0 -33
  220. package/lib/migration/utils/createMigration.js +0 -125
  221. package/lib/migration/utils/createMigration.spec.d.ts +0 -1
  222. package/lib/migration/utils/createMigration.spec.js +0 -259
  223. package/lib/migration/utils/getMigration.d.ts +0 -2
  224. package/lib/migration/utils/getMigration.js +0 -41
  225. package/lib/migration/utils/getMigration.spec.d.ts +0 -1
  226. package/lib/migration/utils/getMigration.spec.js +0 -156
  227. package/lib/migration/utils/index.d.ts +0 -9
  228. package/lib/migration/utils/index.js +0 -25
  229. package/lib/migration/utils/listMigrations.d.ts +0 -3
  230. package/lib/migration/utils/listMigrations.js +0 -41
  231. package/lib/migration/utils/listMigrations.spec.d.ts +0 -1
  232. package/lib/migration/utils/listMigrations.spec.js +0 -108
  233. package/lib/migration/utils/loadCctIdsFromFile.d.ts +0 -1
  234. package/lib/migration/utils/loadCctIdsFromFile.js +0 -32
  235. package/lib/migration/utils/loadCctIdsFromFile.spec.d.ts +0 -1
  236. package/lib/migration/utils/loadCctIdsFromFile.spec.js +0 -91
  237. package/lib/migration/utils/loadStageOptionsFromFile.d.ts +0 -1
  238. package/lib/migration/utils/loadStageOptionsFromFile.js +0 -32
  239. package/lib/migration/utils/loadStageOptionsFromFile.spec.d.ts +0 -1
  240. package/lib/migration/utils/loadStageOptionsFromFile.spec.js +0 -77
  241. package/lib/migration/utils/nextStage.d.ts +0 -2
  242. package/lib/migration/utils/nextStage.js +0 -45
  243. package/lib/migration/utils/nextStage.spec.d.ts +0 -1
  244. package/lib/migration/utils/nextStage.spec.js +0 -151
  245. package/lib/migration/utils/options.d.ts +0 -15
  246. package/lib/migration/utils/options.js +0 -106
  247. package/lib/migration/utils/options.spec.d.ts +0 -1
  248. package/lib/migration/utils/options.spec.js +0 -115
  249. package/lib/migration/utils/promptForMorphConfirmation.d.ts +0 -5
  250. package/lib/migration/utils/promptForMorphConfirmation.js +0 -55
  251. package/lib/migration/utils/promptForMorphConfirmation.spec.d.ts +0 -1
  252. package/lib/migration/utils/promptForMorphConfirmation.spec.js +0 -101
  253. package/lib/migration/utils/revertMigration.d.ts +0 -2
  254. package/lib/migration/utils/revertMigration.js +0 -38
  255. package/lib/migration/utils/revertMigration.spec.d.ts +0 -1
  256. package/lib/migration/utils/revertMigration.spec.js +0 -95
  257. package/lib/migration/utils/setMigrationSettings.d.ts +0 -2
  258. package/lib/migration/utils/setMigrationSettings.js +0 -52
  259. package/lib/migration/utils/setMigrationSettings.spec.d.ts +0 -1
  260. package/lib/migration/utils/setMigrationSettings.spec.js +0 -163
  261. package/lib/page/index.d.ts +0 -3
  262. package/lib/page/index.js +0 -12
  263. package/lib/page/layouts/deploy/deploy.d.ts +0 -5
  264. package/lib/page/layouts/deploy/deploy.js +0 -157
  265. package/lib/page/layouts/deploy/deploy.spec.d.ts +0 -1
  266. package/lib/page/layouts/deploy/deploy.spec.js +0 -319
  267. package/lib/page/layouts/dev/dev.d.ts +0 -5
  268. package/lib/page/layouts/dev/dev.js +0 -84
  269. package/lib/page/layouts/dev/dev.spec.d.ts +0 -1
  270. package/lib/page/layouts/dev/dev.spec.js +0 -271
  271. package/lib/page/layouts/layouts.d.ts +0 -3
  272. package/lib/page/layouts/layouts.js +0 -17
  273. package/lib/page/layouts/layouts.spec.d.ts +0 -1
  274. package/lib/page/layouts/layouts.spec.js +0 -29
  275. package/lib/page/layouts/validation/index.d.ts +0 -3
  276. package/lib/page/layouts/validation/index.js +0 -9
  277. package/lib/page/layouts/validation/property-consistency.d.ts +0 -7
  278. package/lib/page/layouts/validation/property-consistency.js +0 -92
  279. package/lib/page/layouts/validation/property-consistency.spec.d.ts +0 -1
  280. package/lib/page/layouts/validation/property-consistency.spec.js +0 -305
  281. package/lib/page/layouts/validation/validateLayoutFormat.d.ts +0 -2
  282. package/lib/page/layouts/validation/validateLayoutFormat.js +0 -27
  283. package/lib/page/layouts/validation/validateLayoutFormat.spec.d.ts +0 -1
  284. package/lib/page/layouts/validation/validateLayoutFormat.spec.js +0 -42
  285. package/lib/page/layouts/validation/zone-consistency.d.ts +0 -7
  286. package/lib/page/layouts/validation/zone-consistency.js +0 -50
  287. package/lib/page/layouts/validation/zone-consistency.spec.d.ts +0 -1
  288. package/lib/page/layouts/validation/zone-consistency.spec.js +0 -99
  289. package/lib/page/templates/validation.d.ts +0 -11
  290. package/lib/page/templates/validation.js +0 -30
  291. package/lib/page/templates/validation.spec.d.ts +0 -1
  292. package/lib/page/templates/validation.spec.js +0 -89
  293. package/lib/page/utils/definitions.d.ts +0 -552
  294. package/lib/page/utils/definitions.js +0 -241
  295. package/lib/page/utils/definitions.spec.d.ts +0 -1
  296. package/lib/page/utils/definitions.spec.js +0 -749
  297. package/lib/page/utils/normalize.d.ts +0 -8
  298. package/lib/page/utils/normalize.js +0 -54
  299. package/lib/page/utils/normalize.spec.d.ts +0 -1
  300. package/lib/page/utils/normalize.spec.js +0 -315
  301. package/lib/page/utils/parse-args.d.ts +0 -44
  302. package/lib/page/utils/parse-args.js +0 -119
  303. package/lib/page/utils/parse-args.spec.d.ts +0 -1
  304. package/lib/page/utils/parse-args.spec.js +0 -284
  305. package/lib/page/utils/render.d.ts +0 -51
  306. package/lib/page/utils/render.js +0 -112
  307. package/lib/page/utils/render.spec.d.ts +0 -1
  308. package/lib/page/utils/render.spec.js +0 -134
  309. package/lib/page/utils/server.d.ts +0 -12
  310. package/lib/page/utils/server.js +0 -201
  311. package/lib/page/utils/server.spec.d.ts +0 -1
  312. package/lib/page/utils/server.spec.js +0 -275
  313. package/lib/porter/constants.d.ts +0 -11
  314. package/lib/porter/constants.js +0 -14
  315. package/lib/porter/index.d.ts +0 -3
  316. package/lib/porter/index.js +0 -24
  317. package/lib/porter/port/abort/abort.d.ts +0 -3
  318. package/lib/porter/port/abort/abort.js +0 -80
  319. package/lib/porter/port/abort/abort.spec.d.ts +0 -1
  320. package/lib/porter/port/abort/abort.spec.js +0 -182
  321. package/lib/porter/port/get/get.d.ts +0 -3
  322. package/lib/porter/port/get/get.js +0 -96
  323. package/lib/porter/port/get/get.spec.d.ts +0 -1
  324. package/lib/porter/port/get/get.spec.js +0 -277
  325. package/lib/porter/port/start/start.d.ts +0 -3
  326. package/lib/porter/port/start/start.js +0 -82
  327. package/lib/porter/port/start/start.spec.d.ts +0 -1
  328. package/lib/porter/port/start/start.spec.js +0 -198
  329. package/lib/porter/project/add/add.d.ts +0 -3
  330. package/lib/porter/project/add/add.js +0 -138
  331. package/lib/porter/project/add/add.spec.d.ts +0 -1
  332. package/lib/porter/project/add/add.spec.js +0 -269
  333. package/lib/porter/project/get/get.d.ts +0 -3
  334. package/lib/porter/project/get/get.js +0 -65
  335. package/lib/porter/project/get/get.spec.d.ts +0 -1
  336. package/lib/porter/project/get/get.spec.js +0 -185
  337. package/lib/porter/project/remove/remove.d.ts +0 -3
  338. package/lib/porter/project/remove/remove.js +0 -69
  339. package/lib/porter/project/remove/remove.spec.d.ts +0 -1
  340. package/lib/porter/project/remove/remove.spec.js +0 -201
  341. package/lib/porter/types.d.ts +0 -5
  342. package/lib/porter/types.js +0 -2
  343. package/lib/porter/utils/BuildDXPUrl/BuildDXPUrl.d.ts +0 -4
  344. package/lib/porter/utils/BuildDXPUrl/BuildDXPUrl.js +0 -34
  345. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.d.ts +0 -1
  346. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.js +0 -21
  347. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.spec.d.ts +0 -1
  348. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.spec.js +0 -52
  349. package/lib/porter/utils/CoreUtils/CoreUtils.d.ts +0 -2
  350. package/lib/porter/utils/CoreUtils/CoreUtils.js +0 -13
  351. package/lib/porter/utils/CoreUtils/CoreUtils.spec.d.ts +0 -1
  352. package/lib/porter/utils/CoreUtils/CoreUtils.spec.js +0 -36
  353. package/lib/porter/utils/DoesPathExist/DoesPathExist.d.ts +0 -1
  354. package/lib/porter/utils/DoesPathExist/DoesPathExist.js +0 -27
  355. package/lib/porter/utils/DoesPathExist/DoesPathExist.spec.d.ts +0 -1
  356. package/lib/porter/utils/DoesPathExist/DoesPathExist.spec.js +0 -40
  357. package/lib/porter/utils/ErrorUtils/ErrorUtils.d.ts +0 -4
  358. package/lib/porter/utils/ErrorUtils/ErrorUtils.js +0 -66
  359. package/lib/porter/utils/ErrorUtils/ErrorUtils.spec.d.ts +0 -1
  360. package/lib/porter/utils/ErrorUtils/ErrorUtils.spec.js +0 -176
  361. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.d.ts +0 -2
  362. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.js +0 -33
  363. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.spec.d.ts +0 -1
  364. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.spec.js +0 -50
  365. package/lib/porter/utils/GetProjectName/GetProjectName.d.ts +0 -4
  366. package/lib/porter/utils/GetProjectName/GetProjectName.js +0 -30
  367. package/lib/porter/utils/GetProjectName/GetProjectName.spec.d.ts +0 -1
  368. package/lib/porter/utils/GetProjectName/GetProjectName.spec.js +0 -91
  369. package/lib/porter/utils/index.d.ts +0 -7
  370. package/lib/porter/utils/index.js +0 -23
@@ -1,198 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- Object.defineProperty(exports, "__esModule", { value: true });
35
- const axios_1 = require("axios");
36
- const ApiService = __importStar(require("../../../ApiService"));
37
- const PorterUtils = __importStar(require("../../utils"));
38
- const fsp = __importStar(require("fs/promises"));
39
- // const logSpy = jest.spyOn(global.console, 'log');
40
- jest.mock('../../utils');
41
- jest.mock('fs/promises');
42
- describe('startPort', () => {
43
- let projectName;
44
- let portId;
45
- let baseUrl;
46
- let mockHandleCommandError;
47
- let mockHandleError;
48
- let mockBuildPorterUrl;
49
- let mockResponse;
50
- let mockClient;
51
- beforeEach(() => {
52
- jest.resetAllMocks();
53
- jest.clearAllMocks();
54
- projectName = 'mock-project';
55
- portId = '1234-5678-1234-5678';
56
- baseUrl = 'mock-url';
57
- mockHandleCommandError = jest.fn(() => Promise.resolve());
58
- mockHandleError = jest.fn();
59
- mockBuildPorterUrl = jest.fn(() => Promise.resolve(baseUrl));
60
- mockResponse = {
61
- data: {},
62
- status: 200,
63
- };
64
- mockClient = {
65
- post: jest.fn().mockImplementationOnce(() => mockResponse),
66
- };
67
- jest.spyOn(PorterUtils, 'throwErrorIfNotLoggedIn').mockImplementation();
68
- jest
69
- .spyOn(PorterUtils, 'buildPorterUrl')
70
- .mockImplementationOnce(mockBuildPorterUrl);
71
- jest
72
- .spyOn(PorterUtils, 'getProjectName')
73
- .mockImplementation(() => Promise.resolve(projectName));
74
- jest
75
- .spyOn(fsp, 'readdir')
76
- .mockImplementationOnce(() => Promise.resolve([
77
- 'crawl',
78
- 'index',
79
- 'template-dedupe',
80
- 'validation',
81
- 'report',
82
- ]));
83
- jest
84
- .spyOn(fsp, 'readFile')
85
- .mockImplementation(() => Promise.resolve(JSON.stringify({ run: true })));
86
- jest
87
- .spyOn(PorterUtils, 'handleCommandError')
88
- .mockImplementationOnce(mockHandleCommandError);
89
- jest
90
- .spyOn(PorterUtils, 'handleError')
91
- .mockImplementationOnce(mockHandleError);
92
- jest.spyOn(process, 'exit').mockImplementation();
93
- jest.spyOn(ApiService, 'ApiService').mockImplementationOnce(() => {
94
- return {
95
- client: mockClient,
96
- };
97
- });
98
- });
99
- it('should throw an error if not logged in', () => __awaiter(void 0, void 0, void 0, function* () {
100
- const mockError = new Error('Error not logged in');
101
- jest
102
- .spyOn(PorterUtils, 'throwErrorIfNotLoggedIn')
103
- .mockImplementationOnce(() => {
104
- throw mockError;
105
- });
106
- const { default: createStartCommand } = require('./start');
107
- const program = createStartCommand();
108
- yield expect(() => program.parseAsync(['port', 'startPort', portId])).rejects.toThrow(mockError);
109
- const opts = program.opts();
110
- expect(opts).toStrictEqual({});
111
- expect(PorterUtils.buildPorterUrl).not.toHaveBeenCalled();
112
- }));
113
- it('should throw an error if project name could not be found', () => __awaiter(void 0, void 0, void 0, function* () {
114
- jest.spyOn(PorterUtils, 'getProjectName').mockImplementationOnce(() => {
115
- throw new Error();
116
- });
117
- const { default: createStartCommand } = require('./start');
118
- const program = createStartCommand();
119
- yield program.parseAsync(['port', 'startPort', portId]);
120
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
121
- expect(mockClient.post).not.toHaveBeenCalled();
122
- expect(PorterUtils.handleCommandError).toHaveBeenCalled();
123
- }));
124
- it('should handle errors reading stage config files', () => __awaiter(void 0, void 0, void 0, function* () {
125
- jest
126
- .spyOn(fsp, 'readdir')
127
- .mockReset()
128
- .mockImplementationOnce(() => {
129
- throw new Error('ENOENT: no such file or directory');
130
- });
131
- const { default: createStartCommand } = require('./start');
132
- const program = createStartCommand();
133
- yield program.parseAsync(['port', 'startPort', portId]);
134
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
135
- expect(mockClient.post).not.toHaveBeenCalled();
136
- expect(PorterUtils.handleCommandError).toHaveBeenCalled();
137
- }));
138
- it('should handle 400 error from the porter service', () => __awaiter(void 0, void 0, void 0, function* () {
139
- mockClient.post = jest.fn(() => {
140
- throw new axios_1.AxiosError('Bad request', '400', undefined, undefined, {
141
- data: {
142
- status: 400,
143
- title: 'Bad request',
144
- 'invalid-params': [
145
- { name: 'crawl.run', reason: 'crawl.run is required in the body' },
146
- ],
147
- },
148
- });
149
- });
150
- const { default: createStartCommand } = require('./start');
151
- const program = createStartCommand();
152
- yield program.parseAsync(['port', 'startPort', portId]);
153
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
154
- expect(mockClient.post).toHaveBeenCalled();
155
- expect(PorterUtils.handleCommandError).toHaveBeenCalled();
156
- }));
157
- it('should handle unexpected errors', () => __awaiter(void 0, void 0, void 0, function* () {
158
- mockClient.post = jest.fn(() => {
159
- throw new axios_1.AxiosError('Internal server error', '500', undefined, undefined, {
160
- data: { status: 500 },
161
- });
162
- });
163
- const { default: createStartCommand } = require('./start');
164
- const program = createStartCommand();
165
- yield program.parseAsync(['port', 'startPort', portId]);
166
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
167
- expect(mockClient.post).toHaveBeenCalled();
168
- expect(PorterUtils.handleError).not.toHaveBeenCalled();
169
- expect(PorterUtils.handleCommandError).toHaveBeenCalled();
170
- }));
171
- it('should successfully start a website port and log to the console', () => __awaiter(void 0, void 0, void 0, function* () {
172
- const uuid = '1234-1234-1234-1234';
173
- const mockPostResponse = {
174
- portid: uuid,
175
- };
176
- mockResponse = {
177
- data: mockPostResponse,
178
- status: 200,
179
- };
180
- const { default: createStartCommand } = require('./start');
181
- const program = createStartCommand();
182
- yield program.parseAsync(['port', 'startPort', portId]);
183
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
184
- expect(mockClient.post).toHaveBeenCalledWith(`/projects/${projectName}/ports`, {
185
- 'stage-settings': {
186
- crawl: { run: true },
187
- index: { run: true },
188
- 'component-transform': { run: false },
189
- 'design-dedupe': { run: false },
190
- 'template-dedupe': { run: true },
191
- validation: { run: true },
192
- report: { run: true },
193
- },
194
- });
195
- expect(PorterUtils.handleError).not.toHaveBeenCalled();
196
- expect(PorterUtils.handleCommandError).not.toHaveBeenCalled();
197
- }));
198
- });
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- declare const createAddProjectCommand: () => Command;
3
- export default createAddProjectCommand;
@@ -1,138 +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 commander_1 = require("commander");
16
- const chalk_1 = __importDefault(require("chalk"));
17
- const promises_1 = __importDefault(require("fs/promises"));
18
- const path_1 = __importDefault(require("path"));
19
- const ora_1 = __importDefault(require("ora"));
20
- const ApiService_1 = require("../../../ApiService");
21
- const utils_1 = require("../../utils");
22
- const dxp_porter_shared_1 = require("@squiz/dxp-porter-shared");
23
- const constants_1 = require("../../constants");
24
- const { version: cliVersion } = require('../../../../package.json');
25
- const allPortStages = Object.values(dxp_porter_shared_1.Stage);
26
- const stagesToSkip = [
27
- dxp_porter_shared_1.Stage.componentTransform,
28
- dxp_porter_shared_1.Stage.designDedupe,
29
- dxp_porter_shared_1.Stage.validation,
30
- ];
31
- const stageDirsToCreate = allPortStages.filter(stage => !stagesToSkip.includes(stage));
32
- const createAddProjectCommand = () => {
33
- const addCommand = new commander_1.Command('addProject')
34
- .description('Adds a new project')
35
- .addOption(new commander_1.Option('--project-name <string>', 'project name')
36
- .makeOptionMandatory()
37
- .argParser(name => {
38
- // Project name validation
39
- const regex = /^[a-zA-Z0-9\-_]+$/;
40
- if (!regex.test(name)) {
41
- throw new commander_1.InvalidArgumentError('Project name can only contain letters, numbers, hyphen and underscore');
42
- }
43
- return name;
44
- }))
45
- .addOption(new commander_1.Option('--path <string>', 'path to store the project').makeOptionMandatory())
46
- .configureOutput({
47
- outputError(str, write) {
48
- write(chalk_1.default.red(str));
49
- },
50
- })
51
- .action((options) => __awaiter(void 0, void 0, void 0, function* () {
52
- var _a, _b;
53
- yield (0, utils_1.throwErrorIfNotLoggedIn)(addCommand);
54
- const baseUrl = yield (0, utils_1.buildPorterUrl)();
55
- const projectName = options.projectName;
56
- const projectPath = options.path;
57
- const spinner = (0, ora_1.default)();
58
- // Local filesystem validation
59
- const projectDir = path_1.default.resolve(projectPath);
60
- try {
61
- const pathExists = yield (0, utils_1.doesPathExist)(projectPath);
62
- if (pathExists) {
63
- throw new Error(constants_1.PORTER_ERRORS.projectAlreadyExists);
64
- }
65
- const parentDir = path_1.default.dirname(projectDir);
66
- try {
67
- yield promises_1.default.access(parentDir);
68
- }
69
- catch (_c) {
70
- throw new Error(`Project parent directory "${parentDir}" does not exist`);
71
- }
72
- spinner.start('Creating a new project..');
73
- const apiService = new ApiService_1.ApiService({
74
- validateStatus: utils_1.validateAxiosStatus,
75
- baseUrl,
76
- });
77
- const requestBody = { 'new-project': true };
78
- const response = yield apiService.client.put(`/projects/${projectName}`, requestBody);
79
- (0, utils_1.logDebug)(response.data);
80
- yield promises_1.default.mkdir(projectDir);
81
- (0, utils_1.logDebug)(`Directory created successfully at ${projectDir}`);
82
- const configJsonFile = path_1.default.join(projectDir, 'config.json');
83
- yield promises_1.default.writeFile(configJsonFile, JSON.stringify({
84
- service: 'dxp-porter',
85
- projectName,
86
- version: cliVersion,
87
- }, null, 2));
88
- (0, utils_1.logDebug)(`File created successfully at ${configJsonFile}`);
89
- const stageConfigDir = path_1.default.join(projectDir, 'stage-configs');
90
- yield promises_1.default.mkdir(stageConfigDir);
91
- (0, utils_1.logDebug)(`Directory created successfully at ${stageConfigDir}`);
92
- yield Promise.all(stageDirsToCreate.map((stage) => __awaiter(void 0, void 0, void 0, function* () {
93
- const stageDir = path_1.default.join(stageConfigDir, stage);
94
- yield promises_1.default.mkdir(stageDir);
95
- (0, utils_1.logDebug)(`Directory created successfully at ${stageDir}`);
96
- })));
97
- const crawlConfigExample = path_1.default.join(stageConfigDir, dxp_porter_shared_1.Stage.crawl, 'config.json.example');
98
- yield promises_1.default.writeFile(crawlConfigExample, `{
99
- "start_urls": ["https://...", "https://..."],
100
- "exclude_patterns": ["https://...", "https://..."],
101
- "max_download_size": INT (MB),
102
- "request_delay": INT (ms),
103
- "max_dir_depth": INT,
104
- "max_files_stored": INT,
105
- "run": true
106
- }`);
107
- (0, utils_1.logDebug)(`File created successfully at ${crawlConfigExample}`);
108
- const templateDedupeConfigExample = path_1.default.join(stageConfigDir, dxp_porter_shared_1.Stage.templateDedupe, 'config.json.example');
109
- yield promises_1.default.writeFile(templateDedupeConfigExample, `{
110
- "sensitivity": INT,
111
- "run": true
112
- }`);
113
- (0, utils_1.logDebug)(`File created successfully at ${templateDedupeConfigExample}`);
114
- // Default example configs for other stages
115
- stageDirsToCreate
116
- .filter(dir => dir !== dxp_porter_shared_1.Stage.crawl && dir !== dxp_porter_shared_1.Stage.templateDedupe)
117
- .map((dir) => __awaiter(void 0, void 0, void 0, function* () {
118
- const configExample = path_1.default.join(stageConfigDir, dir, 'config.json.example');
119
- yield promises_1.default.writeFile(configExample, JSON.stringify({ run: true }, null, 2));
120
- (0, utils_1.logDebug)(`File created successfully at ${configExample}`);
121
- }));
122
- spinner.succeed(`Project "${projectName}" created. Project directory initialized`);
123
- }
124
- catch (error) {
125
- (0, utils_1.logDebug)(`ERROR: ${error instanceof Error ? `${error.message}` : JSON.stringify(error)}`);
126
- if (spinner.isSpinning) {
127
- spinner.fail();
128
- }
129
- if (((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.status) === 409) {
130
- const errorMessage = `Project "${projectName}" already exists. Try a different project name`;
131
- return (0, utils_1.handleError)(addCommand, errorMessage);
132
- }
133
- (0, utils_1.handleCommandError)(addCommand, error);
134
- }
135
- }));
136
- return addCommand;
137
- };
138
- exports.default = createAddProjectCommand;
@@ -1 +0,0 @@
1
- export {};
@@ -1,269 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- var __importDefault = (this && this.__importDefault) || function (mod) {
35
- return (mod && mod.__esModule) ? mod : { "default": mod };
36
- };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- const commander_1 = require("commander");
39
- const promises_1 = __importDefault(require("fs/promises"));
40
- const axios_1 = require("axios");
41
- const ApiService = __importStar(require("../../../ApiService"));
42
- const PorterUtils = __importStar(require("../../utils"));
43
- const mockCliVersion = '1.2.3';
44
- jest.mock('../../../../package.json', () => {
45
- return {
46
- version: mockCliVersion,
47
- };
48
- });
49
- jest.mock('fs/promises', () => {
50
- return {
51
- access: jest.fn(),
52
- mkdir: jest.fn(),
53
- rm: jest.fn(),
54
- writeFile: jest.fn(),
55
- };
56
- });
57
- jest.mock('../../utils');
58
- describe('addProject', () => {
59
- let projectName;
60
- let projectPath;
61
- let baseUrl;
62
- let mockHandleCommandError;
63
- let mockHandleError;
64
- let mockBuildPorterUrl;
65
- let mockResponse;
66
- let mockClient;
67
- beforeEach(() => {
68
- jest.resetAllMocks();
69
- jest.clearAllMocks();
70
- projectName = 'porter-project';
71
- projectPath = 'tmp/project-dir';
72
- baseUrl = 'mock-url';
73
- mockHandleCommandError = jest.fn(() => Promise.resolve());
74
- mockHandleError = jest.fn();
75
- mockBuildPorterUrl = jest.fn(() => Promise.resolve(baseUrl));
76
- mockResponse = {
77
- data: {},
78
- status: 200,
79
- };
80
- mockClient = {
81
- put: jest.fn().mockImplementationOnce(() => mockResponse),
82
- };
83
- jest.spyOn(PorterUtils, 'throwErrorIfNotLoggedIn').mockImplementation();
84
- jest
85
- .spyOn(PorterUtils, 'doesPathExist')
86
- .mockImplementationOnce(() => Promise.resolve(false));
87
- jest
88
- .spyOn(PorterUtils, 'buildPorterUrl')
89
- .mockImplementationOnce(mockBuildPorterUrl);
90
- jest
91
- .spyOn(PorterUtils, 'handleCommandError')
92
- .mockImplementationOnce(mockHandleCommandError);
93
- jest
94
- .spyOn(PorterUtils, 'handleError')
95
- .mockImplementationOnce(mockHandleError);
96
- jest.spyOn(process, 'exit').mockImplementation();
97
- jest.spyOn(ApiService, 'ApiService').mockImplementationOnce(() => {
98
- return {
99
- client: mockClient,
100
- };
101
- });
102
- });
103
- it('should throw an error if project name is invalid', () => __awaiter(void 0, void 0, void 0, function* () {
104
- // Project name can only contain letters, numbers, hyphens and underscores'
105
- const projectNameInvalid = '!@#$';
106
- const { default: createAddCommand } = require('./add');
107
- const program = createAddCommand();
108
- yield expect(() => program.parseAsync([
109
- '',
110
- 'addProject',
111
- '--project-name',
112
- projectNameInvalid,
113
- '--path',
114
- projectPath,
115
- ])).rejects.toThrow(commander_1.InvalidArgumentError);
116
- expect(process.exit).toHaveBeenCalled();
117
- }));
118
- it('should throw an error if not logged in', () => __awaiter(void 0, void 0, void 0, function* () {
119
- const mockError = new Error('Error not logged in');
120
- jest
121
- .spyOn(PorterUtils, 'throwErrorIfNotLoggedIn')
122
- .mockImplementationOnce(() => {
123
- throw mockError;
124
- });
125
- const { default: createAddCommand } = require('./add');
126
- const program = createAddCommand();
127
- yield expect(() => program.parseAsync([
128
- '',
129
- 'addProject',
130
- '--project-name',
131
- projectName,
132
- '--path',
133
- projectPath,
134
- ])).rejects.toThrow(mockError);
135
- const opts = program.opts();
136
- expect(opts.projectName).toEqual(projectName);
137
- expect(opts.path).toEqual(projectPath);
138
- expect(PorterUtils.buildPorterUrl).not.toHaveBeenCalled();
139
- }));
140
- it('should throw an error if project directory already exists', () => __awaiter(void 0, void 0, void 0, function* () {
141
- jest
142
- .spyOn(PorterUtils, 'doesPathExist')
143
- .mockReset()
144
- .mockImplementationOnce(() => Promise.resolve(true));
145
- const { default: createAddCommand } = require('./add');
146
- const program = createAddCommand();
147
- yield program.parseAsync([
148
- '',
149
- 'addProject',
150
- '--project-name',
151
- projectName,
152
- '--path',
153
- projectPath,
154
- ]);
155
- const opts = program.opts();
156
- expect(opts.projectName).toEqual(projectName);
157
- expect(opts.path).toEqual(projectPath);
158
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
159
- expect(PorterUtils.doesPathExist).toHaveBeenCalled();
160
- expect(mockClient.put).not.toHaveBeenCalled();
161
- expect(PorterUtils.handleCommandError).toHaveBeenCalled();
162
- }));
163
- it('should throw an error if parent directory does not exist', () => __awaiter(void 0, void 0, void 0, function* () {
164
- jest.spyOn(promises_1.default, 'access').mockImplementationOnce(() => {
165
- throw new Error();
166
- });
167
- const { default: createAddCommand } = require('./add');
168
- const program = createAddCommand();
169
- yield program.parseAsync([
170
- '',
171
- 'addProject',
172
- '--project-name',
173
- projectName,
174
- '--path',
175
- projectPath,
176
- ]);
177
- const opts = program.opts();
178
- expect(opts.projectName).toEqual(projectName);
179
- expect(opts.path).toEqual(projectPath);
180
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
181
- expect(PorterUtils.doesPathExist).toHaveBeenCalled();
182
- expect(promises_1.default.access).toHaveBeenCalled();
183
- expect(mockClient.put).not.toHaveBeenCalled();
184
- expect(PorterUtils.handleCommandError).toHaveBeenCalled();
185
- }));
186
- it('should handle 409 error if project already exists', () => __awaiter(void 0, void 0, void 0, function* () {
187
- mockClient.put = jest.fn(() => {
188
- throw new axios_1.AxiosError('Project already exists', '409', undefined, undefined, {
189
- data: { status: 409 },
190
- });
191
- });
192
- const { default: createAddCommand } = require('./add');
193
- const program = createAddCommand();
194
- yield program.parseAsync([
195
- '',
196
- 'addProject',
197
- '--project-name',
198
- projectName,
199
- '--path',
200
- projectPath,
201
- ]);
202
- const opts = program.opts();
203
- expect(opts.projectName).toEqual(projectName);
204
- expect(opts.path).toEqual(projectPath);
205
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
206
- expect(PorterUtils.doesPathExist).toHaveBeenCalled();
207
- expect(promises_1.default.access).toHaveBeenCalled();
208
- expect(mockClient.put).toHaveBeenCalled();
209
- expect(promises_1.default.mkdir).not.toHaveBeenCalled();
210
- expect(PorterUtils.handleError).toHaveBeenCalled();
211
- expect(PorterUtils.handleCommandError).not.toHaveBeenCalled();
212
- }));
213
- it('should handle unexpected errors', () => __awaiter(void 0, void 0, void 0, function* () {
214
- const { default: createAddCommand } = require('./add');
215
- const program = createAddCommand();
216
- yield program.parseAsync([
217
- '',
218
- 'addProject',
219
- '--project-name',
220
- projectName,
221
- '--path',
222
- projectPath,
223
- ]);
224
- const opts = program.opts();
225
- expect(opts.projectName).toEqual(projectName);
226
- expect(opts.path).toEqual(projectPath);
227
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
228
- expect(PorterUtils.doesPathExist).toHaveBeenCalled();
229
- expect(promises_1.default.access).toHaveBeenCalled();
230
- // Create project dir, create "stage-configs" directory, create directories for (crawl, index, template-dedupe, validation, report)
231
- // But validation stage is not created (PERSONIZE-771)
232
- expect(promises_1.default.mkdir).toHaveBeenCalledTimes(6);
233
- // Create project config.json as well as 4 example config.json (for each stage)
234
- // But validation stage is not created (PERSONIZE-771)
235
- expect(promises_1.default.writeFile).toHaveBeenCalledTimes(5);
236
- expect(promises_1.default.writeFile).toHaveBeenNthCalledWith(1, expect.any(String), expect.stringContaining(mockCliVersion));
237
- expect(mockClient.put).toHaveBeenCalled();
238
- expect(PorterUtils.handleCommandError).not.toHaveBeenCalled();
239
- }));
240
- it('should successfully initialise the project directory and the porter project', () => __awaiter(void 0, void 0, void 0, function* () {
241
- const { default: createAddCommand } = require('./add');
242
- const program = createAddCommand();
243
- yield program.parseAsync([
244
- '',
245
- 'addProject',
246
- '--project-name',
247
- projectName,
248
- '--path',
249
- projectPath,
250
- ]);
251
- const opts = program.opts();
252
- expect(opts.projectName).toEqual(projectName);
253
- expect(opts.path).toEqual(projectPath);
254
- expect(PorterUtils.buildPorterUrl).toHaveBeenCalled();
255
- expect(PorterUtils.doesPathExist).toHaveBeenCalled();
256
- expect(promises_1.default.access).toHaveBeenCalled();
257
- // Create project dir, create "stage-configs" directory, create directories for (crawl, index, template-dedupe, validation, report)
258
- // But validation stage is not created (PERSONIZE-771)
259
- expect(promises_1.default.mkdir).toHaveBeenCalledTimes(6);
260
- // Create project config.json as well as 4 example config.json (for each stage)
261
- // But validation stage is not created (PERSONIZE-771)
262
- expect(promises_1.default.writeFile).toHaveBeenCalledTimes(5);
263
- expect(promises_1.default.writeFile).toHaveBeenNthCalledWith(1, expect.any(String), expect.stringContaining(mockCliVersion));
264
- expect(mockClient.put).toHaveBeenCalled();
265
- expect(promises_1.default.rm).not.toHaveBeenCalled();
266
- expect(PorterUtils.handleError).not.toHaveBeenCalled();
267
- expect(PorterUtils.handleCommandError).not.toHaveBeenCalled();
268
- }));
269
- });
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- declare const createGetProjectCommand: () => Command;
3
- export default createGetProjectCommand;