@salesforce/b2c-tooling-sdk 1.10.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (638) hide show
  1. package/data/content-schemas/componenttype.json +37 -0
  2. package/dist/esm/operations/content/validate.js +46 -4
  3. package/dist/esm/operations/content/validate.js.map +1 -1
  4. package/dist/esm/operations/jobs/site-archive.d.ts +12 -0
  5. package/dist/esm/operations/jobs/site-archive.js +107 -3
  6. package/dist/esm/operations/jobs/site-archive.js.map +1 -1
  7. package/package.json +73 -285
  8. package/dist/cjs/auth/api-key.d.ts +0 -28
  9. package/dist/cjs/auth/api-key.js +0 -45
  10. package/dist/cjs/auth/api-key.js.map +0 -1
  11. package/dist/cjs/auth/basic.d.ts +0 -7
  12. package/dist/cjs/auth/basic.js +0 -20
  13. package/dist/cjs/auth/basic.js.map +0 -1
  14. package/dist/cjs/auth/index.d.ts +0 -74
  15. package/dist/cjs/auth/index.js +0 -76
  16. package/dist/cjs/auth/index.js.map +0 -1
  17. package/dist/cjs/auth/jwt-utils.d.ts +0 -25
  18. package/dist/cjs/auth/jwt-utils.js +0 -66
  19. package/dist/cjs/auth/jwt-utils.js.map +0 -1
  20. package/dist/cjs/auth/middleware.d.ts +0 -196
  21. package/dist/cjs/auth/middleware.js +0 -190
  22. package/dist/cjs/auth/middleware.js.map +0 -1
  23. package/dist/cjs/auth/oauth-implicit.d.ts +0 -89
  24. package/dist/cjs/auth/oauth-implicit.js +0 -350
  25. package/dist/cjs/auth/oauth-implicit.js.map +0 -1
  26. package/dist/cjs/auth/oauth-jwt.d.ts +0 -99
  27. package/dist/cjs/auth/oauth-jwt.js +0 -343
  28. package/dist/cjs/auth/oauth-jwt.js.map +0 -1
  29. package/dist/cjs/auth/oauth.d.ts +0 -88
  30. package/dist/cjs/auth/oauth.js +0 -252
  31. package/dist/cjs/auth/oauth.js.map +0 -1
  32. package/dist/cjs/auth/resolve.d.ts +0 -100
  33. package/dist/cjs/auth/resolve.js +0 -175
  34. package/dist/cjs/auth/resolve.js.map +0 -1
  35. package/dist/cjs/auth/stateful-oauth-strategy.d.ts +0 -39
  36. package/dist/cjs/auth/stateful-oauth-strategy.js +0 -130
  37. package/dist/cjs/auth/stateful-oauth-strategy.js.map +0 -1
  38. package/dist/cjs/auth/stateful-store.d.ts +0 -49
  39. package/dist/cjs/auth/stateful-store.js +0 -166
  40. package/dist/cjs/auth/stateful-store.js.map +0 -1
  41. package/dist/cjs/auth/types.d.ts +0 -124
  42. package/dist/cjs/auth/types.js +0 -8
  43. package/dist/cjs/auth/types.js.map +0 -1
  44. package/dist/cjs/cli/am-command.d.ts +0 -74
  45. package/dist/cjs/cli/am-command.js +0 -199
  46. package/dist/cjs/cli/am-command.js.map +0 -1
  47. package/dist/cjs/cli/base-command.d.ts +0 -232
  48. package/dist/cjs/cli/base-command.js +0 -695
  49. package/dist/cjs/cli/base-command.js.map +0 -1
  50. package/dist/cjs/cli/cartridge-command.d.ts +0 -67
  51. package/dist/cjs/cli/cartridge-command.js +0 -146
  52. package/dist/cjs/cli/cartridge-command.js.map +0 -1
  53. package/dist/cjs/cli/cartridge-providers.d.ts +0 -149
  54. package/dist/cjs/cli/cartridge-providers.js +0 -103
  55. package/dist/cjs/cli/cartridge-providers.js.map +0 -1
  56. package/dist/cjs/cli/columns.d.ts +0 -128
  57. package/dist/cjs/cli/columns.js +0 -128
  58. package/dist/cjs/cli/columns.js.map +0 -1
  59. package/dist/cjs/cli/config.d.ts +0 -159
  60. package/dist/cjs/cli/config.js +0 -185
  61. package/dist/cjs/cli/config.js.map +0 -1
  62. package/dist/cjs/cli/details.d.ts +0 -69
  63. package/dist/cjs/cli/details.js +0 -72
  64. package/dist/cjs/cli/details.js.map +0 -1
  65. package/dist/cjs/cli/hooks.d.ts +0 -324
  66. package/dist/cjs/cli/hooks.js +0 -3
  67. package/dist/cjs/cli/hooks.js.map +0 -1
  68. package/dist/cjs/cli/index.d.ts +0 -108
  69. package/dist/cjs/cli/index.js +0 -111
  70. package/dist/cjs/cli/index.js.map +0 -1
  71. package/dist/cjs/cli/instance-command.d.ts +0 -131
  72. package/dist/cjs/cli/instance-command.js +0 -214
  73. package/dist/cjs/cli/instance-command.js.map +0 -1
  74. package/dist/cjs/cli/job-command.d.ts +0 -32
  75. package/dist/cjs/cli/job-command.js +0 -60
  76. package/dist/cjs/cli/job-command.js.map +0 -1
  77. package/dist/cjs/cli/lifecycle.d.ts +0 -189
  78. package/dist/cjs/cli/lifecycle.js +0 -130
  79. package/dist/cjs/cli/lifecycle.js.map +0 -1
  80. package/dist/cjs/cli/mrt-command.d.ts +0 -57
  81. package/dist/cjs/cli/mrt-command.js +0 -95
  82. package/dist/cjs/cli/mrt-command.js.map +0 -1
  83. package/dist/cjs/cli/oauth-command.d.ts +0 -122
  84. package/dist/cjs/cli/oauth-command.js +0 -311
  85. package/dist/cjs/cli/oauth-command.js.map +0 -1
  86. package/dist/cjs/cli/ods-command.d.ts +0 -97
  87. package/dist/cjs/cli/ods-command.js +0 -136
  88. package/dist/cjs/cli/ods-command.js.map +0 -1
  89. package/dist/cjs/cli/table.d.ts +0 -113
  90. package/dist/cjs/cli/table.js +0 -175
  91. package/dist/cjs/cli/table.js.map +0 -1
  92. package/dist/cjs/cli/webdav-command.d.ts +0 -110
  93. package/dist/cjs/cli/webdav-command.js +0 -106
  94. package/dist/cjs/cli/webdav-command.js.map +0 -1
  95. package/dist/cjs/clients/am-api.d.ts +0 -521
  96. package/dist/cjs/clients/am-api.js +0 -992
  97. package/dist/cjs/clients/am-api.js.map +0 -1
  98. package/dist/cjs/clients/am-apiclients-api.generated.d.ts +0 -803
  99. package/dist/cjs/clients/am-apiclients-api.generated.js +0 -6
  100. package/dist/cjs/clients/am-apiclients-api.generated.js.map +0 -1
  101. package/dist/cjs/clients/am-roles-api.generated.d.ts +0 -298
  102. package/dist/cjs/clients/am-roles-api.generated.js +0 -6
  103. package/dist/cjs/clients/am-roles-api.generated.js.map +0 -1
  104. package/dist/cjs/clients/am-users-api.generated.d.ts +0 -954
  105. package/dist/cjs/clients/am-users-api.generated.js +0 -6
  106. package/dist/cjs/clients/am-users-api.generated.js.map +0 -1
  107. package/dist/cjs/clients/cdn-zones.d.ts +0 -186
  108. package/dist/cjs/clients/cdn-zones.generated.d.ts +0 -8330
  109. package/dist/cjs/clients/cdn-zones.generated.js +0 -6
  110. package/dist/cjs/clients/cdn-zones.generated.js.map +0 -1
  111. package/dist/cjs/clients/cdn-zones.js +0 -103
  112. package/dist/cjs/clients/cdn-zones.js.map +0 -1
  113. package/dist/cjs/clients/cip.d.ts +0 -162
  114. package/dist/cjs/clients/cip.js +0 -572
  115. package/dist/cjs/clients/cip.js.map +0 -1
  116. package/dist/cjs/clients/custom-apis.d.ts +0 -174
  117. package/dist/cjs/clients/custom-apis.generated.d.ts +0 -202
  118. package/dist/cjs/clients/custom-apis.generated.js +0 -6
  119. package/dist/cjs/clients/custom-apis.generated.js.map +0 -1
  120. package/dist/cjs/clients/custom-apis.js +0 -140
  121. package/dist/cjs/clients/custom-apis.js.map +0 -1
  122. package/dist/cjs/clients/error-utils.d.ts +0 -35
  123. package/dist/cjs/clients/error-utils.js +0 -69
  124. package/dist/cjs/clients/error-utils.js.map +0 -1
  125. package/dist/cjs/clients/granular-replications.d.ts +0 -70
  126. package/dist/cjs/clients/granular-replications.generated.d.ts +0 -416
  127. package/dist/cjs/clients/granular-replications.generated.js +0 -6
  128. package/dist/cjs/clients/granular-replications.generated.js.map +0 -1
  129. package/dist/cjs/clients/granular-replications.js +0 -73
  130. package/dist/cjs/clients/granular-replications.js.map +0 -1
  131. package/dist/cjs/clients/index.d.ts +0 -145
  132. package/dist/cjs/clients/index.js +0 -137
  133. package/dist/cjs/clients/index.js.map +0 -1
  134. package/dist/cjs/clients/middleware-registry.d.ts +0 -184
  135. package/dist/cjs/clients/middleware-registry.js +0 -104
  136. package/dist/cjs/clients/middleware-registry.js.map +0 -1
  137. package/dist/cjs/clients/middleware.d.ts +0 -183
  138. package/dist/cjs/clients/middleware.js +0 -465
  139. package/dist/cjs/clients/middleware.js.map +0 -1
  140. package/dist/cjs/clients/mrt-b2c.d.ts +0 -138
  141. package/dist/cjs/clients/mrt-b2c.generated.d.ts +0 -176
  142. package/dist/cjs/clients/mrt-b2c.generated.js +0 -6
  143. package/dist/cjs/clients/mrt-b2c.generated.js.map +0 -1
  144. package/dist/cjs/clients/mrt-b2c.js +0 -86
  145. package/dist/cjs/clients/mrt-b2c.js.map +0 -1
  146. package/dist/cjs/clients/mrt.d.ts +0 -143
  147. package/dist/cjs/clients/mrt.generated.d.ts +0 -3806
  148. package/dist/cjs/clients/mrt.generated.js +0 -6
  149. package/dist/cjs/clients/mrt.generated.js.map +0 -1
  150. package/dist/cjs/clients/mrt.js +0 -93
  151. package/dist/cjs/clients/mrt.js.map +0 -1
  152. package/dist/cjs/clients/ocapi.d.ts +0 -128
  153. package/dist/cjs/clients/ocapi.generated.d.ts +0 -26052
  154. package/dist/cjs/clients/ocapi.generated.js +0 -6
  155. package/dist/cjs/clients/ocapi.generated.js.map +0 -1
  156. package/dist/cjs/clients/ocapi.js +0 -78
  157. package/dist/cjs/clients/ocapi.js.map +0 -1
  158. package/dist/cjs/clients/ods.d.ts +0 -160
  159. package/dist/cjs/clients/ods.generated.d.ts +0 -2860
  160. package/dist/cjs/clients/ods.generated.js +0 -6
  161. package/dist/cjs/clients/ods.generated.js.map +0 -1
  162. package/dist/cjs/clients/ods.js +0 -103
  163. package/dist/cjs/clients/ods.js.map +0 -1
  164. package/dist/cjs/clients/scapi-schemas.d.ts +0 -161
  165. package/dist/cjs/clients/scapi-schemas.generated.d.ts +0 -328
  166. package/dist/cjs/clients/scapi-schemas.generated.js +0 -6
  167. package/dist/cjs/clients/scapi-schemas.generated.js.map +0 -1
  168. package/dist/cjs/clients/scapi-schemas.js +0 -98
  169. package/dist/cjs/clients/scapi-schemas.js.map +0 -1
  170. package/dist/cjs/clients/slas-admin.d.ts +0 -132
  171. package/dist/cjs/clients/slas-admin.generated.d.ts +0 -1434
  172. package/dist/cjs/clients/slas-admin.generated.js +0 -6
  173. package/dist/cjs/clients/slas-admin.generated.js.map +0 -1
  174. package/dist/cjs/clients/slas-admin.js +0 -79
  175. package/dist/cjs/clients/slas-admin.js.map +0 -1
  176. package/dist/cjs/clients/tls-dispatcher.d.ts +0 -42
  177. package/dist/cjs/clients/tls-dispatcher.js +0 -107
  178. package/dist/cjs/clients/tls-dispatcher.js.map +0 -1
  179. package/dist/cjs/clients/user-agent.d.ts +0 -43
  180. package/dist/cjs/clients/user-agent.js +0 -87
  181. package/dist/cjs/clients/user-agent.js.map +0 -1
  182. package/dist/cjs/clients/webdav.d.ts +0 -186
  183. package/dist/cjs/clients/webdav.js +0 -395
  184. package/dist/cjs/clients/webdav.js.map +0 -1
  185. package/dist/cjs/config/config-source-registry.d.ts +0 -115
  186. package/dist/cjs/config/config-source-registry.js +0 -103
  187. package/dist/cjs/config/config-source-registry.js.map +0 -1
  188. package/dist/cjs/config/dw-json.d.ts +0 -274
  189. package/dist/cjs/config/dw-json.js +0 -333
  190. package/dist/cjs/config/dw-json.js.map +0 -1
  191. package/dist/cjs/config/index.d.ts +0 -100
  192. package/dist/cjs/config/index.js +0 -110
  193. package/dist/cjs/config/index.js.map +0 -1
  194. package/dist/cjs/config/instance-manager.d.ts +0 -97
  195. package/dist/cjs/config/instance-manager.js +0 -166
  196. package/dist/cjs/config/instance-manager.js.map +0 -1
  197. package/dist/cjs/config/mapping.d.ts +0 -199
  198. package/dist/cjs/config/mapping.js +0 -540
  199. package/dist/cjs/config/mapping.js.map +0 -1
  200. package/dist/cjs/config/resolved-config.d.ts +0 -29
  201. package/dist/cjs/config/resolved-config.js +0 -81
  202. package/dist/cjs/config/resolved-config.js.map +0 -1
  203. package/dist/cjs/config/resolver.d.ts +0 -191
  204. package/dist/cjs/config/resolver.js +0 -406
  205. package/dist/cjs/config/resolver.js.map +0 -1
  206. package/dist/cjs/config/sources/dw-json-source.d.ts +0 -27
  207. package/dist/cjs/config/sources/dw-json-source.js +0 -106
  208. package/dist/cjs/config/sources/dw-json-source.js.map +0 -1
  209. package/dist/cjs/config/sources/env-source.d.ts +0 -32
  210. package/dist/cjs/config/sources/env-source.js +0 -116
  211. package/dist/cjs/config/sources/env-source.js.map +0 -1
  212. package/dist/cjs/config/sources/index.d.ts +0 -9
  213. package/dist/cjs/config/sources/index.js +0 -15
  214. package/dist/cjs/config/sources/index.js.map +0 -1
  215. package/dist/cjs/config/sources/mobify-source.d.ts +0 -25
  216. package/dist/cjs/config/sources/mobify-source.js +0 -84
  217. package/dist/cjs/config/sources/mobify-source.js.map +0 -1
  218. package/dist/cjs/config/sources/package-json-source.d.ts +0 -14
  219. package/dist/cjs/config/sources/package-json-source.js +0 -97
  220. package/dist/cjs/config/sources/package-json-source.js.map +0 -1
  221. package/dist/cjs/config/types.d.ts +0 -428
  222. package/dist/cjs/config/types.js +0 -2
  223. package/dist/cjs/config/types.js.map +0 -1
  224. package/dist/cjs/defaults.d.ts +0 -36
  225. package/dist/cjs/defaults.js +0 -54
  226. package/dist/cjs/defaults.js.map +0 -1
  227. package/dist/cjs/discovery/detector.d.ts +0 -75
  228. package/dist/cjs/discovery/detector.js +0 -108
  229. package/dist/cjs/discovery/detector.js.map +0 -1
  230. package/dist/cjs/discovery/index.d.ts +0 -63
  231. package/dist/cjs/discovery/index.js +0 -70
  232. package/dist/cjs/discovery/index.js.map +0 -1
  233. package/dist/cjs/discovery/patterns/cartridges.d.ts +0 -16
  234. package/dist/cjs/discovery/patterns/cartridges.js +0 -16
  235. package/dist/cjs/discovery/patterns/cartridges.js.map +0 -1
  236. package/dist/cjs/discovery/patterns/index.d.ts +0 -21
  237. package/dist/cjs/discovery/patterns/index.js +0 -16
  238. package/dist/cjs/discovery/patterns/index.js.map +0 -1
  239. package/dist/cjs/discovery/patterns/pwa-kit.d.ts +0 -15
  240. package/dist/cjs/discovery/patterns/pwa-kit.js +0 -26
  241. package/dist/cjs/discovery/patterns/pwa-kit.js.map +0 -1
  242. package/dist/cjs/discovery/patterns/sfra.d.ts +0 -34
  243. package/dist/cjs/discovery/patterns/sfra.js +0 -50
  244. package/dist/cjs/discovery/patterns/sfra.js.map +0 -1
  245. package/dist/cjs/discovery/patterns/storefront-next.d.ts +0 -10
  246. package/dist/cjs/discovery/patterns/storefront-next.js +0 -65
  247. package/dist/cjs/discovery/patterns/storefront-next.js.map +0 -1
  248. package/dist/cjs/discovery/types.d.ts +0 -47
  249. package/dist/cjs/discovery/types.js +0 -12
  250. package/dist/cjs/discovery/types.js.map +0 -1
  251. package/dist/cjs/discovery/utils.d.ts +0 -44
  252. package/dist/cjs/discovery/utils.js +0 -82
  253. package/dist/cjs/discovery/utils.js.map +0 -1
  254. package/dist/cjs/docs/download.d.ts +0 -45
  255. package/dist/cjs/docs/download.js +0 -96
  256. package/dist/cjs/docs/download.js.map +0 -1
  257. package/dist/cjs/docs/index.d.ts +0 -44
  258. package/dist/cjs/docs/index.js +0 -12
  259. package/dist/cjs/docs/index.js.map +0 -1
  260. package/dist/cjs/docs/schema.d.ts +0 -26
  261. package/dist/cjs/docs/schema.js +0 -92
  262. package/dist/cjs/docs/schema.js.map +0 -1
  263. package/dist/cjs/docs/search.d.ts +0 -67
  264. package/dist/cjs/docs/search.js +0 -128
  265. package/dist/cjs/docs/search.js.map +0 -1
  266. package/dist/cjs/docs/types.d.ts +0 -64
  267. package/dist/cjs/docs/types.js +0 -15
  268. package/dist/cjs/docs/types.js.map +0 -1
  269. package/dist/cjs/errors/http-error.d.ts +0 -34
  270. package/dist/cjs/errors/http-error.js +0 -45
  271. package/dist/cjs/errors/http-error.js.map +0 -1
  272. package/dist/cjs/errors/index.d.ts +0 -12
  273. package/dist/cjs/errors/index.js +0 -18
  274. package/dist/cjs/errors/index.js.map +0 -1
  275. package/dist/cjs/i18n/index.d.ts +0 -144
  276. package/dist/cjs/i18n/index.js +0 -245
  277. package/dist/cjs/i18n/index.js.map +0 -1
  278. package/dist/cjs/i18n/locales/de.d.ts +0 -13
  279. package/dist/cjs/i18n/locales/de.js +0 -19
  280. package/dist/cjs/i18n/locales/de.js.map +0 -1
  281. package/dist/cjs/i18n/locales/index.d.ts +0 -28
  282. package/dist/cjs/i18n/locales/index.js +0 -25
  283. package/dist/cjs/i18n/locales/index.js.map +0 -1
  284. package/dist/cjs/index.d.ts +0 -33
  285. package/dist/cjs/index.js +0 -41
  286. package/dist/cjs/index.js.map +0 -1
  287. package/dist/cjs/instance/index.d.ts +0 -136
  288. package/dist/cjs/instance/index.js +0 -131
  289. package/dist/cjs/instance/index.js.map +0 -1
  290. package/dist/cjs/logging/index.d.ts +0 -116
  291. package/dist/cjs/logging/index.js +0 -121
  292. package/dist/cjs/logging/index.js.map +0 -1
  293. package/dist/cjs/logging/logger.d.ts +0 -9
  294. package/dist/cjs/logging/logger.js +0 -138
  295. package/dist/cjs/logging/logger.js.map +0 -1
  296. package/dist/cjs/logging/types.d.ts +0 -45
  297. package/dist/cjs/logging/types.js +0 -10
  298. package/dist/cjs/logging/types.js.map +0 -1
  299. package/dist/cjs/operations/bm-roles/index.d.ts +0 -52
  300. package/dist/cjs/operations/bm-roles/index.js +0 -57
  301. package/dist/cjs/operations/bm-roles/index.js.map +0 -1
  302. package/dist/cjs/operations/bm-roles/roles.d.ts +0 -155
  303. package/dist/cjs/operations/bm-roles/roles.js +0 -194
  304. package/dist/cjs/operations/bm-roles/roles.js.map +0 -1
  305. package/dist/cjs/operations/bm-users/index.d.ts +0 -50
  306. package/dist/cjs/operations/bm-users/index.js +0 -55
  307. package/dist/cjs/operations/bm-users/index.js.map +0 -1
  308. package/dist/cjs/operations/bm-users/users.d.ts +0 -189
  309. package/dist/cjs/operations/bm-users/users.js +0 -229
  310. package/dist/cjs/operations/bm-users/users.js.map +0 -1
  311. package/dist/cjs/operations/cap/index.d.ts +0 -56
  312. package/dist/cjs/operations/cap/index.js +0 -57
  313. package/dist/cjs/operations/cap/index.js.map +0 -1
  314. package/dist/cjs/operations/cap/install.d.ts +0 -53
  315. package/dist/cjs/operations/cap/install.js +0 -181
  316. package/dist/cjs/operations/cap/install.js.map +0 -1
  317. package/dist/cjs/operations/cap/list.d.ts +0 -92
  318. package/dist/cjs/operations/cap/list.js +0 -230
  319. package/dist/cjs/operations/cap/list.js.map +0 -1
  320. package/dist/cjs/operations/cap/package.d.ts +0 -39
  321. package/dist/cjs/operations/cap/package.js +0 -77
  322. package/dist/cjs/operations/cap/package.js.map +0 -1
  323. package/dist/cjs/operations/cap/pull.d.ts +0 -21
  324. package/dist/cjs/operations/cap/pull.js +0 -77
  325. package/dist/cjs/operations/cap/pull.js.map +0 -1
  326. package/dist/cjs/operations/cap/uninstall.d.ts +0 -46
  327. package/dist/cjs/operations/cap/uninstall.js +0 -87
  328. package/dist/cjs/operations/cap/uninstall.js.map +0 -1
  329. package/dist/cjs/operations/cap/validate.d.ts +0 -47
  330. package/dist/cjs/operations/cap/validate.js +0 -235
  331. package/dist/cjs/operations/cap/validate.js.map +0 -1
  332. package/dist/cjs/operations/cip/index.d.ts +0 -35
  333. package/dist/cjs/operations/cip/index.js +0 -128
  334. package/dist/cjs/operations/cip/index.js.map +0 -1
  335. package/dist/cjs/operations/cip/reports.d.ts +0 -2
  336. package/dist/cjs/operations/cip/reports.js +0 -210
  337. package/dist/cjs/operations/cip/reports.js.map +0 -1
  338. package/dist/cjs/operations/cip/types.d.ts +0 -97
  339. package/dist/cjs/operations/cip/types.js +0 -7
  340. package/dist/cjs/operations/cip/types.js.map +0 -1
  341. package/dist/cjs/operations/code/cartridges.d.ts +0 -46
  342. package/dist/cjs/operations/code/cartridges.js +0 -69
  343. package/dist/cjs/operations/code/cartridges.js.map +0 -1
  344. package/dist/cjs/operations/code/deploy.d.ts +0 -121
  345. package/dist/cjs/operations/code/deploy.js +0 -255
  346. package/dist/cjs/operations/code/deploy.js.map +0 -1
  347. package/dist/cjs/operations/code/download.d.ts +0 -77
  348. package/dist/cjs/operations/code/download.js +0 -300
  349. package/dist/cjs/operations/code/download.js.map +0 -1
  350. package/dist/cjs/operations/code/index.d.ts +0 -74
  351. package/dist/cjs/operations/code/index.js +0 -80
  352. package/dist/cjs/operations/code/index.js.map +0 -1
  353. package/dist/cjs/operations/code/upload-files.d.ts +0 -47
  354. package/dist/cjs/operations/code/upload-files.js +0 -116
  355. package/dist/cjs/operations/code/upload-files.js.map +0 -1
  356. package/dist/cjs/operations/code/versions.d.ts +0 -99
  357. package/dist/cjs/operations/code/versions.js +0 -156
  358. package/dist/cjs/operations/code/versions.js.map +0 -1
  359. package/dist/cjs/operations/code/watch.d.ts +0 -58
  360. package/dist/cjs/operations/code/watch.js +0 -175
  361. package/dist/cjs/operations/code/watch.js.map +0 -1
  362. package/dist/cjs/operations/content/asset-query.d.ts +0 -22
  363. package/dist/cjs/operations/content/asset-query.js +0 -77
  364. package/dist/cjs/operations/content/asset-query.js.map +0 -1
  365. package/dist/cjs/operations/content/export.d.ts +0 -57
  366. package/dist/cjs/operations/content/export.js +0 -221
  367. package/dist/cjs/operations/content/export.js.map +0 -1
  368. package/dist/cjs/operations/content/index.d.ts +0 -56
  369. package/dist/cjs/operations/content/index.js +0 -60
  370. package/dist/cjs/operations/content/index.js.map +0 -1
  371. package/dist/cjs/operations/content/library.d.ts +0 -137
  372. package/dist/cjs/operations/content/library.js +0 -396
  373. package/dist/cjs/operations/content/library.js.map +0 -1
  374. package/dist/cjs/operations/content/types.d.ts +0 -144
  375. package/dist/cjs/operations/content/types.js +0 -7
  376. package/dist/cjs/operations/content/types.js.map +0 -1
  377. package/dist/cjs/operations/content/validate.d.ts +0 -64
  378. package/dist/cjs/operations/content/validate.js +0 -170
  379. package/dist/cjs/operations/content/validate.js.map +0 -1
  380. package/dist/cjs/operations/debug/dap-adapter.d.ts +0 -72
  381. package/dist/cjs/operations/debug/dap-adapter.js +0 -505
  382. package/dist/cjs/operations/debug/dap-adapter.js.map +0 -1
  383. package/dist/cjs/operations/debug/debug-session.d.ts +0 -51
  384. package/dist/cjs/operations/debug/debug-session.js +0 -234
  385. package/dist/cjs/operations/debug/debug-session.js.map +0 -1
  386. package/dist/cjs/operations/debug/index.d.ts +0 -20
  387. package/dist/cjs/operations/debug/index.js +0 -21
  388. package/dist/cjs/operations/debug/index.js.map +0 -1
  389. package/dist/cjs/operations/debug/projections.d.ts +0 -72
  390. package/dist/cjs/operations/debug/projections.js +0 -84
  391. package/dist/cjs/operations/debug/projections.js.map +0 -1
  392. package/dist/cjs/operations/debug/resolve-path.d.ts +0 -15
  393. package/dist/cjs/operations/debug/resolve-path.js +0 -52
  394. package/dist/cjs/operations/debug/resolve-path.js.map +0 -1
  395. package/dist/cjs/operations/debug/sdapi-client.d.ts +0 -44
  396. package/dist/cjs/operations/debug/sdapi-client.js +0 -169
  397. package/dist/cjs/operations/debug/sdapi-client.js.map +0 -1
  398. package/dist/cjs/operations/debug/source-mapping.d.ts +0 -13
  399. package/dist/cjs/operations/debug/source-mapping.js +0 -57
  400. package/dist/cjs/operations/debug/source-mapping.js.map +0 -1
  401. package/dist/cjs/operations/debug/types.d.ts +0 -95
  402. package/dist/cjs/operations/debug/types.js +0 -2
  403. package/dist/cjs/operations/debug/types.js.map +0 -1
  404. package/dist/cjs/operations/debug/variable-store.d.ts +0 -35
  405. package/dist/cjs/operations/debug/variable-store.js +0 -52
  406. package/dist/cjs/operations/debug/variable-store.js.map +0 -1
  407. package/dist/cjs/operations/jobs/index.d.ts +0 -66
  408. package/dist/cjs/operations/jobs/index.js +0 -72
  409. package/dist/cjs/operations/jobs/index.js.map +0 -1
  410. package/dist/cjs/operations/jobs/run.d.ts +0 -239
  411. package/dist/cjs/operations/jobs/run.js +0 -324
  412. package/dist/cjs/operations/jobs/run.js.map +0 -1
  413. package/dist/cjs/operations/jobs/site-archive.d.ts +0 -267
  414. package/dist/cjs/operations/jobs/site-archive.js +0 -423
  415. package/dist/cjs/operations/jobs/site-archive.js.map +0 -1
  416. package/dist/cjs/operations/logs/index.d.ts +0 -65
  417. package/dist/cjs/operations/logs/index.js +0 -73
  418. package/dist/cjs/operations/logs/index.js.map +0 -1
  419. package/dist/cjs/operations/logs/list.d.ts +0 -35
  420. package/dist/cjs/operations/logs/list.js +0 -144
  421. package/dist/cjs/operations/logs/list.js.map +0 -1
  422. package/dist/cjs/operations/logs/path-normalizer.d.ts +0 -82
  423. package/dist/cjs/operations/logs/path-normalizer.js +0 -190
  424. package/dist/cjs/operations/logs/path-normalizer.js.map +0 -1
  425. package/dist/cjs/operations/logs/tail.d.ts +0 -92
  426. package/dist/cjs/operations/logs/tail.js +0 -525
  427. package/dist/cjs/operations/logs/tail.js.map +0 -1
  428. package/dist/cjs/operations/logs/types.d.ts +0 -132
  429. package/dist/cjs/operations/logs/types.js +0 -7
  430. package/dist/cjs/operations/logs/types.js.map +0 -1
  431. package/dist/cjs/operations/mrt/access-control.d.ts +0 -192
  432. package/dist/cjs/operations/mrt/access-control.js +0 -152
  433. package/dist/cjs/operations/mrt/access-control.js.map +0 -1
  434. package/dist/cjs/operations/mrt/b2c-config.d.ts +0 -201
  435. package/dist/cjs/operations/mrt/b2c-config.js +0 -210
  436. package/dist/cjs/operations/mrt/b2c-config.js.map +0 -1
  437. package/dist/cjs/operations/mrt/bundle.d.ts +0 -114
  438. package/dist/cjs/operations/mrt/bundle.js +0 -166
  439. package/dist/cjs/operations/mrt/bundle.js.map +0 -1
  440. package/dist/cjs/operations/mrt/cache.d.ts +0 -80
  441. package/dist/cjs/operations/mrt/cache.js +0 -65
  442. package/dist/cjs/operations/mrt/cache.js.map +0 -1
  443. package/dist/cjs/operations/mrt/certificate.d.ts +0 -60
  444. package/dist/cjs/operations/mrt/certificate.js +0 -76
  445. package/dist/cjs/operations/mrt/certificate.js.map +0 -1
  446. package/dist/cjs/operations/mrt/deployment.d.ts +0 -157
  447. package/dist/cjs/operations/mrt/deployment.js +0 -109
  448. package/dist/cjs/operations/mrt/deployment.js.map +0 -1
  449. package/dist/cjs/operations/mrt/env-var.d.ts +0 -176
  450. package/dist/cjs/operations/mrt/env-var.js +0 -231
  451. package/dist/cjs/operations/mrt/env-var.js.map +0 -1
  452. package/dist/cjs/operations/mrt/env.d.ts +0 -491
  453. package/dist/cjs/operations/mrt/env.js +0 -425
  454. package/dist/cjs/operations/mrt/env.js.map +0 -1
  455. package/dist/cjs/operations/mrt/index.d.ts +0 -75
  456. package/dist/cjs/operations/mrt/index.js +0 -81
  457. package/dist/cjs/operations/mrt/index.js.map +0 -1
  458. package/dist/cjs/operations/mrt/member.d.ts +0 -281
  459. package/dist/cjs/operations/mrt/member.js +0 -244
  460. package/dist/cjs/operations/mrt/member.js.map +0 -1
  461. package/dist/cjs/operations/mrt/notification.d.ts +0 -252
  462. package/dist/cjs/operations/mrt/notification.js +0 -206
  463. package/dist/cjs/operations/mrt/notification.js.map +0 -1
  464. package/dist/cjs/operations/mrt/organization-member.d.ts +0 -68
  465. package/dist/cjs/operations/mrt/organization-member.js +0 -88
  466. package/dist/cjs/operations/mrt/organization-member.js.map +0 -1
  467. package/dist/cjs/operations/mrt/organization.d.ts +0 -80
  468. package/dist/cjs/operations/mrt/organization.js +0 -53
  469. package/dist/cjs/operations/mrt/organization.js.map +0 -1
  470. package/dist/cjs/operations/mrt/project.d.ts +0 -261
  471. package/dist/cjs/operations/mrt/project.js +0 -232
  472. package/dist/cjs/operations/mrt/project.js.map +0 -1
  473. package/dist/cjs/operations/mrt/push.d.ts +0 -290
  474. package/dist/cjs/operations/mrt/push.js +0 -288
  475. package/dist/cjs/operations/mrt/push.js.map +0 -1
  476. package/dist/cjs/operations/mrt/redirect.d.ts +0 -337
  477. package/dist/cjs/operations/mrt/redirect.js +0 -256
  478. package/dist/cjs/operations/mrt/redirect.js.map +0 -1
  479. package/dist/cjs/operations/mrt/tail-logs.d.ts +0 -130
  480. package/dist/cjs/operations/mrt/tail-logs.js +0 -224
  481. package/dist/cjs/operations/mrt/tail-logs.js.map +0 -1
  482. package/dist/cjs/operations/mrt/user.d.ts +0 -135
  483. package/dist/cjs/operations/mrt/user.js +0 -153
  484. package/dist/cjs/operations/mrt/user.js.map +0 -1
  485. package/dist/cjs/operations/ods/index.d.ts +0 -10
  486. package/dist/cjs/operations/ods/index.js +0 -14
  487. package/dist/cjs/operations/ods/index.js.map +0 -1
  488. package/dist/cjs/operations/ods/sandbox-lookup.d.ts +0 -63
  489. package/dist/cjs/operations/ods/sandbox-lookup.js +0 -130
  490. package/dist/cjs/operations/ods/sandbox-lookup.js.map +0 -1
  491. package/dist/cjs/operations/ods/wait-for-clone.d.ts +0 -46
  492. package/dist/cjs/operations/ods/wait-for-clone.js +0 -100
  493. package/dist/cjs/operations/ods/wait-for-clone.js.map +0 -1
  494. package/dist/cjs/operations/ods/wait-for-sandbox.d.ts +0 -64
  495. package/dist/cjs/operations/ods/wait-for-sandbox.js +0 -114
  496. package/dist/cjs/operations/ods/wait-for-sandbox.js.map +0 -1
  497. package/dist/cjs/operations/orgs/index.d.ts +0 -74
  498. package/dist/cjs/operations/orgs/index.js +0 -33
  499. package/dist/cjs/operations/orgs/index.js.map +0 -1
  500. package/dist/cjs/operations/roles/index.d.ts +0 -43
  501. package/dist/cjs/operations/roles/index.js +0 -48
  502. package/dist/cjs/operations/roles/index.js.map +0 -1
  503. package/dist/cjs/operations/sites/cartridges.d.ts +0 -114
  504. package/dist/cjs/operations/sites/cartridges.js +0 -378
  505. package/dist/cjs/operations/sites/cartridges.js.map +0 -1
  506. package/dist/cjs/operations/sites/index.d.ts +0 -46
  507. package/dist/cjs/operations/sites/index.js +0 -51
  508. package/dist/cjs/operations/sites/index.js.map +0 -1
  509. package/dist/cjs/operations/users/index.d.ts +0 -153
  510. package/dist/cjs/operations/users/index.js +0 -139
  511. package/dist/cjs/operations/users/index.js.map +0 -1
  512. package/dist/cjs/operations/util/zip.d.ts +0 -5
  513. package/dist/cjs/operations/util/zip.js +0 -25
  514. package/dist/cjs/operations/util/zip.js.map +0 -1
  515. package/dist/cjs/package.json +0 -1
  516. package/dist/cjs/plugins/discovery.d.ts +0 -46
  517. package/dist/cjs/plugins/discovery.js +0 -122
  518. package/dist/cjs/plugins/discovery.js.map +0 -1
  519. package/dist/cjs/plugins/index.d.ts +0 -26
  520. package/dist/cjs/plugins/index.js +0 -32
  521. package/dist/cjs/plugins/index.js.map +0 -1
  522. package/dist/cjs/plugins/loader.d.ts +0 -34
  523. package/dist/cjs/plugins/loader.js +0 -59
  524. package/dist/cjs/plugins/loader.js.map +0 -1
  525. package/dist/cjs/plugins/manager.d.ts +0 -70
  526. package/dist/cjs/plugins/manager.js +0 -173
  527. package/dist/cjs/plugins/manager.js.map +0 -1
  528. package/dist/cjs/safety/index.d.ts +0 -12
  529. package/dist/cjs/safety/index.js +0 -11
  530. package/dist/cjs/safety/index.js.map +0 -1
  531. package/dist/cjs/safety/safety-guard.d.ts +0 -92
  532. package/dist/cjs/safety/safety-guard.js +0 -270
  533. package/dist/cjs/safety/safety-guard.js.map +0 -1
  534. package/dist/cjs/safety/safety-middleware.d.ts +0 -130
  535. package/dist/cjs/safety/safety-middleware.js +0 -248
  536. package/dist/cjs/safety/safety-middleware.js.map +0 -1
  537. package/dist/cjs/safety/types.d.ts +0 -81
  538. package/dist/cjs/safety/types.js +0 -16
  539. package/dist/cjs/safety/types.js.map +0 -1
  540. package/dist/cjs/safety/with-confirmation.d.ts +0 -58
  541. package/dist/cjs/safety/with-confirmation.js +0 -67
  542. package/dist/cjs/safety/with-confirmation.js.map +0 -1
  543. package/dist/cjs/scaffold/engine.d.ts +0 -68
  544. package/dist/cjs/scaffold/engine.js +0 -149
  545. package/dist/cjs/scaffold/engine.js.map +0 -1
  546. package/dist/cjs/scaffold/executor.d.ts +0 -36
  547. package/dist/cjs/scaffold/executor.js +0 -293
  548. package/dist/cjs/scaffold/executor.js.map +0 -1
  549. package/dist/cjs/scaffold/index.d.ts +0 -76
  550. package/dist/cjs/scaffold/index.js +0 -23
  551. package/dist/cjs/scaffold/index.js.map +0 -1
  552. package/dist/cjs/scaffold/merge.d.ts +0 -63
  553. package/dist/cjs/scaffold/merge.js +0 -192
  554. package/dist/cjs/scaffold/merge.js.map +0 -1
  555. package/dist/cjs/scaffold/parameter-resolver.d.ts +0 -86
  556. package/dist/cjs/scaffold/parameter-resolver.js +0 -191
  557. package/dist/cjs/scaffold/parameter-resolver.js.map +0 -1
  558. package/dist/cjs/scaffold/registry.d.ts +0 -60
  559. package/dist/cjs/scaffold/registry.js +0 -225
  560. package/dist/cjs/scaffold/registry.js.map +0 -1
  561. package/dist/cjs/scaffold/sources.d.ts +0 -83
  562. package/dist/cjs/scaffold/sources.js +0 -236
  563. package/dist/cjs/scaffold/sources.js.map +0 -1
  564. package/dist/cjs/scaffold/types.d.ts +0 -282
  565. package/dist/cjs/scaffold/types.js +0 -14
  566. package/dist/cjs/scaffold/types.js.map +0 -1
  567. package/dist/cjs/scaffold/validation.d.ts +0 -81
  568. package/dist/cjs/scaffold/validation.js +0 -250
  569. package/dist/cjs/scaffold/validation.js.map +0 -1
  570. package/dist/cjs/scaffold/validators.d.ts +0 -33
  571. package/dist/cjs/scaffold/validators.js +0 -340
  572. package/dist/cjs/scaffold/validators.js.map +0 -1
  573. package/dist/cjs/schemas/collapse.d.ts +0 -150
  574. package/dist/cjs/schemas/collapse.js +0 -180
  575. package/dist/cjs/schemas/collapse.js.map +0 -1
  576. package/dist/cjs/schemas/index.d.ts +0 -58
  577. package/dist/cjs/schemas/index.js +0 -65
  578. package/dist/cjs/schemas/index.js.map +0 -1
  579. package/dist/cjs/schemas/security-schemes.d.ts +0 -26
  580. package/dist/cjs/schemas/security-schemes.js +0 -44
  581. package/dist/cjs/schemas/security-schemes.js.map +0 -1
  582. package/dist/cjs/skills/agents.d.ts +0 -42
  583. package/dist/cjs/skills/agents.js +0 -200
  584. package/dist/cjs/skills/agents.js.map +0 -1
  585. package/dist/cjs/skills/github.d.ts +0 -31
  586. package/dist/cjs/skills/github.js +0 -450
  587. package/dist/cjs/skills/github.js.map +0 -1
  588. package/dist/cjs/skills/index.d.ts +0 -43
  589. package/dist/cjs/skills/index.js +0 -16
  590. package/dist/cjs/skills/index.js.map +0 -1
  591. package/dist/cjs/skills/installer.d.ts +0 -35
  592. package/dist/cjs/skills/installer.js +0 -182
  593. package/dist/cjs/skills/installer.js.map +0 -1
  594. package/dist/cjs/skills/parser.d.ts +0 -39
  595. package/dist/cjs/skills/parser.js +0 -126
  596. package/dist/cjs/skills/parser.js.map +0 -1
  597. package/dist/cjs/skills/sources.d.ts +0 -4
  598. package/dist/cjs/skills/sources.js +0 -52
  599. package/dist/cjs/skills/sources.js.map +0 -1
  600. package/dist/cjs/skills/types.d.ts +0 -153
  601. package/dist/cjs/skills/types.js +0 -7
  602. package/dist/cjs/skills/types.js.map +0 -1
  603. package/dist/cjs/slas/index.d.ts +0 -12
  604. package/dist/cjs/slas/index.js +0 -8
  605. package/dist/cjs/slas/index.js.map +0 -1
  606. package/dist/cjs/slas/pkce.d.ts +0 -13
  607. package/dist/cjs/slas/pkce.js +0 -35
  608. package/dist/cjs/slas/pkce.js.map +0 -1
  609. package/dist/cjs/slas/token.d.ts +0 -24
  610. package/dist/cjs/slas/token.js +0 -261
  611. package/dist/cjs/slas/token.js.map +0 -1
  612. package/dist/cjs/slas/types.d.ts +0 -43
  613. package/dist/cjs/slas/types.js +0 -7
  614. package/dist/cjs/slas/types.js.map +0 -1
  615. package/dist/cjs/telemetry/index.d.ts +0 -34
  616. package/dist/cjs/telemetry/index.js +0 -32
  617. package/dist/cjs/telemetry/index.js.map +0 -1
  618. package/dist/cjs/telemetry/telemetry.d.ts +0 -88
  619. package/dist/cjs/telemetry/telemetry.js +0 -298
  620. package/dist/cjs/telemetry/telemetry.js.map +0 -1
  621. package/dist/cjs/telemetry/types.d.ts +0 -62
  622. package/dist/cjs/telemetry/types.js +0 -7
  623. package/dist/cjs/telemetry/types.js.map +0 -1
  624. package/dist/cjs/test-utils/config-isolation.d.ts +0 -2
  625. package/dist/cjs/test-utils/config-isolation.js +0 -48
  626. package/dist/cjs/test-utils/config-isolation.js.map +0 -1
  627. package/dist/cjs/test-utils/index.d.ts +0 -1
  628. package/dist/cjs/test-utils/index.js +0 -7
  629. package/dist/cjs/test-utils/index.js.map +0 -1
  630. package/dist/cjs/ux/confirm.d.ts +0 -14
  631. package/dist/cjs/ux/confirm.js +0 -36
  632. package/dist/cjs/ux/confirm.js.map +0 -1
  633. package/dist/cjs/ux/index.d.ts +0 -1
  634. package/dist/cjs/ux/index.js +0 -7
  635. package/dist/cjs/ux/index.js.map +0 -1
  636. package/dist/cjs/version.d.ts +0 -14
  637. package/dist/cjs/version.js +0 -29
  638. package/dist/cjs/version.js.map +0 -1
@@ -1,77 +0,0 @@
1
- /*
2
- * Copyright (c) 2025, Salesforce, Inc.
3
- * SPDX-License-Identifier: Apache-2
4
- * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- /**
7
- * Commerce App Package (CAP) packaging.
8
- *
9
- * Zips a CAP directory into a distributable .zip file with the correct
10
- * root directory naming convention ({id}-v{version}/).
11
- */
12
- import * as fs from 'node:fs';
13
- import * as path from 'node:path';
14
- import JSZip from 'jszip';
15
- import { getLogger } from '../../logging/logger.js';
16
- import { addDirectoryToZip } from '../util/zip.js';
17
- import { readManifest } from './install.js';
18
- /**
19
- * Packages a CAP directory into a distributable .zip file.
20
- *
21
- * The zip root directory is named `{id}-v{version}/` as required by the CAP spec.
22
- * Reads commerce-app.json to determine the app name and version.
23
- *
24
- * @param sourceDir - Path to the CAP directory
25
- * @param options - Packaging options
26
- * @returns Result with the output zip path and manifest
27
- *
28
- * @example
29
- * ```typescript
30
- * const result = await commerceAppPackage('./commerce-avalara-tax-app-v0.2.5');
31
- * console.log(`Packaged to: ${result.outputPath}`);
32
- * ```
33
- */
34
- export async function commerceAppPackage(sourceDir, options = {}) {
35
- const logger = getLogger();
36
- if (!fs.existsSync(sourceDir)) {
37
- throw new Error(`Source directory not found: ${sourceDir}`);
38
- }
39
- if (!fs.statSync(sourceDir).isDirectory()) {
40
- throw new Error(`Source must be a directory: ${sourceDir}`);
41
- }
42
- const manifest = readManifest(sourceDir);
43
- if (!manifest.id || !manifest.version) {
44
- throw new Error('commerce-app.json must have "id" and "version" fields');
45
- }
46
- const archiveDirName = `${manifest.id}-v${manifest.version}`;
47
- const zipFilename = `${archiveDirName}.zip`;
48
- // Determine output path
49
- let outputZipPath;
50
- if (!options.outputPath) {
51
- outputZipPath = path.resolve(process.cwd(), zipFilename);
52
- }
53
- else {
54
- const resolved = path.resolve(options.outputPath);
55
- if (resolved.endsWith('.zip')) {
56
- outputZipPath = resolved;
57
- }
58
- else {
59
- outputZipPath = path.join(resolved, zipFilename);
60
- }
61
- }
62
- // Ensure output directory exists
63
- await fs.promises.mkdir(path.dirname(outputZipPath), { recursive: true });
64
- logger.debug({ sourceDir, outputPath: outputZipPath }, `Packaging CAP: ${archiveDirName}`);
65
- const zip = new JSZip();
66
- const rootFolder = zip.folder(archiveDirName);
67
- await addDirectoryToZip(rootFolder, sourceDir);
68
- const buffer = await zip.generateAsync({
69
- type: 'nodebuffer',
70
- compression: 'DEFLATE',
71
- compressionOptions: { level: 9 },
72
- });
73
- await fs.promises.writeFile(outputZipPath, buffer);
74
- logger.debug({ outputPath: outputZipPath }, `CAP packaged to: ${outputZipPath}`);
75
- return { outputPath: outputZipPath, manifest };
76
- }
77
- //# sourceMappingURL=package.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package.js","sourceRoot":"","sources":["../../../../src/operations/cap/package.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- import { B2CInstance } from '../../instance/index.js';
2
- import type { CommerceFeatureState } from './list.js';
3
- export interface PullCommerceAppsOptions {
4
- outputDir?: string;
5
- }
6
- export type PullSource = 'instance' | 'github';
7
- export interface PulledApp {
8
- featureName: string;
9
- version: string;
10
- domain: string;
11
- source: PullSource;
12
- extractedPath: string;
13
- }
14
- export interface PullCommerceAppsResult {
15
- pulled: PulledApp[];
16
- failed: Array<{
17
- featureName: string;
18
- error: string;
19
- }>;
20
- }
21
- export declare function pullCommerceApps(instance: B2CInstance, features: CommerceFeatureState[], options?: PullCommerceAppsOptions): Promise<PullCommerceAppsResult>;
@@ -1,77 +0,0 @@
1
- /*
2
- * Copyright (c) 2025, Salesforce, Inc.
3
- * SPDX-License-Identifier: Apache-2
4
- * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- import * as fs from 'node:fs';
7
- import * as path from 'node:path';
8
- import JSZip from 'jszip';
9
- import { getLogger } from '../../logging/logger.js';
10
- const GITHUB_RAW_BASE = 'https://raw.githubusercontent.com/SalesforceCommerceCloud/commerce-apps/main';
11
- export async function pullCommerceApps(instance, features, options = {}) {
12
- const logger = getLogger();
13
- const outputDir = path.resolve(options.outputDir ?? 'commerce-apps');
14
- await fs.promises.mkdir(outputDir, { recursive: true });
15
- const pulled = [];
16
- const failed = [];
17
- for (const feature of features) {
18
- const { featureName, featureVersionId, featureDomain } = feature;
19
- if (!featureVersionId) {
20
- failed.push({ featureName, error: 'No version available' });
21
- continue;
22
- }
23
- const zipFilename = `${featureName}-v${featureVersionId}.zip`;
24
- const webdavPath = `Impex/commerce-apps/${zipFilename}`;
25
- let zipData = null;
26
- let source = 'instance';
27
- // Try instance first
28
- if (await instance.webdav.exists(webdavPath)) {
29
- logger.debug({ path: webdavPath }, `Downloading ${zipFilename} from instance`);
30
- zipData = Buffer.from(await instance.webdav.get(webdavPath));
31
- }
32
- // Fall back to GitHub
33
- if (!zipData) {
34
- const githubUrl = `${GITHUB_RAW_BASE}/${featureDomain}/${featureName}/${zipFilename}`;
35
- logger.warn({ url: githubUrl }, `${zipFilename} not found on instance, trying GitHub`);
36
- source = 'github';
37
- try {
38
- const response = await fetch(githubUrl);
39
- if (!response.ok) {
40
- failed.push({ featureName, error: `Not found on instance or GitHub (${githubUrl})` });
41
- continue;
42
- }
43
- zipData = Buffer.from(await response.arrayBuffer());
44
- }
45
- catch (err) {
46
- const msg = err instanceof Error ? err.message : String(err);
47
- failed.push({ featureName, error: `GitHub download failed: ${msg}` });
48
- continue;
49
- }
50
- }
51
- // Extract zip
52
- const zip = await JSZip.loadAsync(zipData);
53
- const extractDir = path.join(outputDir, featureName);
54
- await fs.promises.mkdir(extractDir, { recursive: true });
55
- for (const [filePath, entry] of Object.entries(zip.files)) {
56
- if (entry.dir)
57
- continue;
58
- // Strip the top-level archive directory (e.g. "avalara-tax-v1.1.0/...")
59
- const parts = filePath.split('/');
60
- const relativePath = parts.length > 1 ? parts.slice(1).join('/') : filePath;
61
- const fullPath = path.join(extractDir, relativePath);
62
- await fs.promises.mkdir(path.dirname(fullPath), { recursive: true });
63
- const content = await entry.async('nodebuffer');
64
- await fs.promises.writeFile(fullPath, content);
65
- }
66
- logger.debug({ featureName, extractDir }, `Extracted ${featureName} to ${extractDir}`);
67
- pulled.push({
68
- featureName,
69
- version: featureVersionId,
70
- domain: featureDomain,
71
- source,
72
- extractedPath: extractDir,
73
- });
74
- }
75
- return { pulled, failed };
76
- }
77
- //# sourceMappingURL=pull.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../../src/operations/cap/pull.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Commerce App Package (CAP) uninstallation.
3
- *
4
- * Runs the sfcc-uninstall-commerce-app system job to remove an installed CAP.
5
- */
6
- import { B2CInstance } from '../../instance/index.js';
7
- import { type JobExecution, type WaitForJobOptions } from '../jobs/run.js';
8
- /**
9
- * Options for CAP uninstallation.
10
- */
11
- export interface CommerceAppUninstallOptions {
12
- /** Target site ID to uninstall the app from. */
13
- siteId: string;
14
- /** Wait options for job completion. */
15
- waitOptions?: WaitForJobOptions;
16
- }
17
- /**
18
- * Result of a CAP uninstallation.
19
- */
20
- export interface CommerceAppUninstallResult {
21
- /** Job execution details. */
22
- execution: JobExecution;
23
- /** App name that was uninstalled. */
24
- appName: string;
25
- }
26
- /**
27
- * Uninstalls a Commerce App from a B2C Commerce instance.
28
- *
29
- * Executes the sfcc-uninstall-commerce-app system job which removes cartridges,
30
- * IMPEX data, and configuration associated with the app from the target site.
31
- *
32
- * @param instance - B2C instance to uninstall from
33
- * @param appName - App ID (from commerce-app.json "id" field, e.g. "avalara-tax")
34
- * @param appDomain - App domain (e.g. "tax", "shipping")
35
- * @param options - Uninstall options including required siteId
36
- * @returns Uninstall result with job execution details
37
- * @throws JobExecutionError if the uninstall job fails
38
- *
39
- * @example
40
- * ```typescript
41
- * const result = await commerceAppUninstall(instance, 'avalara-tax', 'tax', {
42
- * siteId: 'RefArch',
43
- * });
44
- * ```
45
- */
46
- export declare function commerceAppUninstall(instance: B2CInstance, appName: string, appDomain: string, options: CommerceAppUninstallOptions): Promise<CommerceAppUninstallResult>;
@@ -1,87 +0,0 @@
1
- import { getLogger } from '../../logging/logger.js';
2
- import { waitForJob, JobExecutionError, getJobLog } from '../jobs/run.js';
3
- import { normalizeSiteId } from './install.js';
4
- const UNINSTALL_JOB_ID = 'sfcc-uninstall-commerce-app';
5
- /**
6
- * Uninstalls a Commerce App from a B2C Commerce instance.
7
- *
8
- * Executes the sfcc-uninstall-commerce-app system job which removes cartridges,
9
- * IMPEX data, and configuration associated with the app from the target site.
10
- *
11
- * @param instance - B2C instance to uninstall from
12
- * @param appName - App ID (from commerce-app.json "id" field, e.g. "avalara-tax")
13
- * @param appDomain - App domain (e.g. "tax", "shipping")
14
- * @param options - Uninstall options including required siteId
15
- * @returns Uninstall result with job execution details
16
- * @throws JobExecutionError if the uninstall job fails
17
- *
18
- * @example
19
- * ```typescript
20
- * const result = await commerceAppUninstall(instance, 'avalara-tax', 'tax', {
21
- * siteId: 'RefArch',
22
- * });
23
- * ```
24
- */
25
- export async function commerceAppUninstall(instance, appName, appDomain, options) {
26
- const logger = getLogger();
27
- const { siteId: rawSiteId, waitOptions } = options;
28
- const siteId = normalizeSiteId(rawSiteId);
29
- logger.debug({ jobId: UNINSTALL_JOB_ID, appName, siteId }, `Executing ${UNINSTALL_JOB_ID} job`);
30
- let execution;
31
- // Try direct body format first (standard OCAPI format)
32
- const { data, error } = await instance.ocapi.POST('/jobs/{job_id}/executions', {
33
- params: { path: { job_id: UNINSTALL_JOB_ID } },
34
- body: {
35
- app_name: appName,
36
- app_domain: appDomain,
37
- site_id: siteId,
38
- },
39
- });
40
- if (error?.fault?.type === 'UnknownPropertyException' &&
41
- error.fault.arguments?.document === 'job_execution_request') {
42
- // Retry with parameters format (internal/support users)
43
- logger.warn('Retrying with parameters format for internal users');
44
- const { data: retryData, error: retryError } = await instance.ocapi.POST('/jobs/{job_id}/executions', {
45
- params: { path: { job_id: UNINSTALL_JOB_ID } },
46
- body: {
47
- parameters: [
48
- { name: 'AppName', value: appName },
49
- { name: 'AppDomain', value: appDomain },
50
- { name: 'SiteId', value: siteId },
51
- ],
52
- },
53
- });
54
- if (retryError || !retryData) {
55
- throw new Error(retryError?.fault?.message ?? 'Failed to start uninstall job');
56
- }
57
- execution = retryData;
58
- }
59
- else if (error || !data) {
60
- throw new Error(error?.fault?.message ?? 'Failed to start uninstall job');
61
- }
62
- else {
63
- execution = data;
64
- }
65
- logger.debug({ jobId: UNINSTALL_JOB_ID, executionId: execution.id }, `Uninstall job started: ${execution.id}`);
66
- let finalExecution;
67
- try {
68
- finalExecution = await waitForJob(instance, UNINSTALL_JOB_ID, execution.id, waitOptions);
69
- }
70
- catch (err) {
71
- if (err instanceof JobExecutionError) {
72
- try {
73
- const log = await getJobLog(instance, err.execution);
74
- logger.error({ jobId: UNINSTALL_JOB_ID, log }, `Job log:\n${log}`);
75
- }
76
- catch {
77
- logger.error({ jobId: UNINSTALL_JOB_ID }, 'Could not retrieve job log');
78
- }
79
- }
80
- throw err;
81
- }
82
- return {
83
- execution: finalExecution,
84
- appName,
85
- };
86
- }
87
- //# sourceMappingURL=uninstall.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../src/operations/cap/uninstall.ts"],"names":[],"mappings":"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"}
@@ -1,47 +0,0 @@
1
- /**
2
- * Manifest from commerce-app.json.
3
- */
4
- export interface CommerceAppManifest {
5
- id: string;
6
- name: string;
7
- version: string;
8
- domain: string;
9
- description?: string;
10
- publisher?: {
11
- name: string;
12
- url?: string;
13
- support?: string;
14
- };
15
- dependencies?: Record<string, string>;
16
- }
17
- /**
18
- * Result of CAP validation.
19
- */
20
- export interface CapValidationResult {
21
- /** Whether the CAP is valid (no errors). */
22
- valid: boolean;
23
- /** Blocking errors — a CAP with errors cannot be installed. */
24
- errors: string[];
25
- /** Advisory warnings — a CAP with warnings can still be installed. */
26
- warnings: string[];
27
- /** Parsed manifest from commerce-app.json (if parseable). */
28
- manifest?: CommerceAppManifest;
29
- }
30
- /**
31
- * Validates a Commerce App Package (CAP) directory or zip file.
32
- *
33
- * Checks required files, manifest schema, and cartridge structure rules.
34
- * This is a purely local operation — no B2C instance required.
35
- *
36
- * @param target - Path to a CAP directory or .zip file
37
- * @returns Validation result with errors and warnings
38
- *
39
- * @example
40
- * ```typescript
41
- * const result = await validateCap('./my-commerce-app-v1.0.0');
42
- * if (!result.valid) {
43
- * console.error('Validation errors:', result.errors);
44
- * }
45
- * ```
46
- */
47
- export declare function validateCap(target: string): Promise<CapValidationResult>;
@@ -1,235 +0,0 @@
1
- /*
2
- * Copyright (c) 2025, Salesforce, Inc.
3
- * SPDX-License-Identifier: Apache-2
4
- * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- /**
7
- * Validation logic for Commerce App Packages (CAPs).
8
- *
9
- * Performs structural and schema validation of a CAP directory or zip file
10
- * without requiring a live B2C instance.
11
- */
12
- import * as fs from 'node:fs';
13
- import * as os from 'node:os';
14
- import * as path from 'node:path';
15
- import JSZip from 'jszip';
16
- const SEMVER_RE = /^\d+\.\d+\.\d+(-[\w.]+)?(\+[\w.]+)?$/;
17
- /**
18
- * Validates a Commerce App Package (CAP) directory or zip file.
19
- *
20
- * Checks required files, manifest schema, and cartridge structure rules.
21
- * This is a purely local operation — no B2C instance required.
22
- *
23
- * @param target - Path to a CAP directory or .zip file
24
- * @returns Validation result with errors and warnings
25
- *
26
- * @example
27
- * ```typescript
28
- * const result = await validateCap('./my-commerce-app-v1.0.0');
29
- * if (!result.valid) {
30
- * console.error('Validation errors:', result.errors);
31
- * }
32
- * ```
33
- */
34
- export async function validateCap(target) {
35
- const errors = [];
36
- const warnings = [];
37
- let manifest;
38
- if (!fs.existsSync(target)) {
39
- return { valid: false, errors: [`Target not found: ${target}`], warnings };
40
- }
41
- const stat = fs.statSync(target);
42
- let capDir;
43
- let tempDir;
44
- if (stat.isDirectory()) {
45
- capDir = target;
46
- }
47
- else if (stat.isFile() && target.endsWith('.zip')) {
48
- // Extract zip to temp dir for inspection
49
- tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'b2c-cap-validate-'));
50
- try {
51
- await extractZipToDir(target, tempDir);
52
- // The zip root should be a single directory
53
- const entries = fs.readdirSync(tempDir);
54
- if (entries.length === 1 && fs.statSync(path.join(tempDir, entries[0])).isDirectory()) {
55
- capDir = path.join(tempDir, entries[0]);
56
- }
57
- else {
58
- capDir = tempDir;
59
- }
60
- }
61
- catch (err) {
62
- const msg = err instanceof Error ? err.message : String(err);
63
- cleanupTemp(tempDir);
64
- return { valid: false, errors: [`Failed to read zip: ${msg}`], warnings };
65
- }
66
- }
67
- else {
68
- return { valid: false, errors: [`Target must be a directory or .zip file: ${target}`], warnings };
69
- }
70
- try {
71
- // --- commerce-app.json ---
72
- const manifestPath = path.join(capDir, 'commerce-app.json');
73
- if (!fs.existsSync(manifestPath)) {
74
- errors.push('Missing required file: commerce-app.json');
75
- }
76
- else {
77
- try {
78
- const raw = JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
79
- const requiredFields = ['id', 'name', 'version', 'domain'];
80
- for (const field of requiredFields) {
81
- if (!raw[field] || typeof raw[field] !== 'string') {
82
- errors.push(`commerce-app.json: missing or invalid field "${field}"`);
83
- }
84
- }
85
- if (raw.version && typeof raw.version === 'string' && !SEMVER_RE.test(raw.version)) {
86
- errors.push(`commerce-app.json: "version" must be a valid semver string (got "${raw.version}")`);
87
- }
88
- if (errors.filter((e) => e.startsWith('commerce-app.json:')).length === 0) {
89
- manifest = raw;
90
- }
91
- // Check root dir naming convention
92
- const dirName = path.basename(capDir);
93
- if (manifest && dirName !== '.' && dirName !== tempDir) {
94
- const expectedName = `${manifest.id}-v${manifest.version}`;
95
- if (dirName !== expectedName) {
96
- warnings.push(`Root directory "${dirName}" does not match expected convention "${expectedName}"`);
97
- }
98
- }
99
- }
100
- catch {
101
- errors.push('commerce-app.json: file exists but is not valid JSON');
102
- }
103
- }
104
- // --- README.md ---
105
- if (!fs.existsSync(path.join(capDir, 'README.md'))) {
106
- errors.push('Missing required file: README.md');
107
- }
108
- // --- app-configuration/tasksList.json ---
109
- const tasksListPath = path.join(capDir, 'app-configuration', 'tasksList.json');
110
- if (!fs.existsSync(tasksListPath)) {
111
- errors.push('Missing required file: app-configuration/tasksList.json');
112
- }
113
- else {
114
- try {
115
- const tasks = JSON.parse(fs.readFileSync(tasksListPath, 'utf-8'));
116
- if (!Array.isArray(tasks)) {
117
- errors.push('app-configuration/tasksList.json: must be a JSON array');
118
- }
119
- else {
120
- for (let i = 0; i < tasks.length; i++) {
121
- const task = tasks[i];
122
- for (const field of ['taskNumber', 'name', 'description', 'link']) {
123
- if (!task[field]) {
124
- errors.push(`app-configuration/tasksList.json: task[${i}] missing field "${field}"`);
125
- }
126
- }
127
- }
128
- }
129
- }
130
- catch {
131
- errors.push('app-configuration/tasksList.json: file exists but is not valid JSON');
132
- }
133
- }
134
- // --- At least one substantive directory ---
135
- const hasCartridges = fs.existsSync(path.join(capDir, 'cartridges'));
136
- const hasStorefrontNext = fs.existsSync(path.join(capDir, 'storefront-next'));
137
- const hasImpex = fs.existsSync(path.join(capDir, 'impex'));
138
- if (!hasCartridges && !hasStorefrontNext && !hasImpex) {
139
- errors.push('CAP must contain at least one of: cartridges/, storefront-next/, impex/');
140
- }
141
- // --- Cartridge rules ---
142
- if (hasCartridges) {
143
- const cartridgesDir = path.join(capDir, 'cartridges');
144
- validateCartridges(cartridgesDir, errors);
145
- }
146
- // --- Optional warnings ---
147
- if (!fs.existsSync(path.join(capDir, 'icons', 'icon.png'))) {
148
- warnings.push('icons/icon.png not found (recommended for marketplace listing)');
149
- }
150
- if (hasImpex && !fs.existsSync(path.join(capDir, 'impex', 'uninstall'))) {
151
- warnings.push('impex/uninstall/ not found (recommended for clean removal)');
152
- }
153
- }
154
- finally {
155
- cleanupTemp(tempDir);
156
- }
157
- return { valid: errors.length === 0, errors, warnings, manifest };
158
- }
159
- /**
160
- * Validates cartridge structure and rules.
161
- * - No pipeline/ directories
162
- * - No *.ds pipeline descriptor files
163
- * - Site cartridges must not have controllers/
164
- */
165
- function validateCartridges(cartridgesDir, errors) {
166
- // Check entire cartridges tree for pipelines
167
- walkDir(cartridgesDir, (filePath, name, isDir) => {
168
- if (isDir && name === 'pipeline') {
169
- const rel = path.relative(cartridgesDir, filePath);
170
- errors.push(`Pipelines not allowed in CAPs: cartridges/${rel}`);
171
- }
172
- if (!isDir && name.endsWith('.ds')) {
173
- const rel = path.relative(cartridgesDir, filePath);
174
- errors.push(`Pipeline descriptor files not allowed in CAPs: cartridges/${rel}`);
175
- }
176
- });
177
- // Site cartridges must not contain controllers/
178
- const siteCartridgesDir = path.join(cartridgesDir, 'site_cartridges');
179
- if (fs.existsSync(siteCartridgesDir)) {
180
- walkDir(siteCartridgesDir, (filePath, name, isDir) => {
181
- if (isDir && name === 'controllers') {
182
- const rel = path.relative(siteCartridgesDir, filePath);
183
- errors.push(`Site cartridges must not contain controllers/ (use BM cartridges instead): site_cartridges/${rel}`);
184
- }
185
- });
186
- }
187
- }
188
- /**
189
- * Walks a directory tree, calling callback for each entry.
190
- * Stops recursing into a directory if callback returns false.
191
- */
192
- function walkDir(dir, cb) {
193
- if (!fs.existsSync(dir))
194
- return;
195
- let entries;
196
- try {
197
- entries = fs.readdirSync(dir, { withFileTypes: true });
198
- }
199
- catch {
200
- return;
201
- }
202
- for (const entry of entries) {
203
- const fullPath = path.join(dir, entry.name);
204
- cb(fullPath, entry.name, entry.isDirectory());
205
- if (entry.isDirectory()) {
206
- walkDir(fullPath, cb);
207
- }
208
- }
209
- }
210
- async function extractZipToDir(zipPath, destDir) {
211
- const data = await fs.promises.readFile(zipPath);
212
- const zip = await JSZip.loadAsync(data);
213
- for (const [relPath, entry] of Object.entries(zip.files)) {
214
- const fullPath = path.join(destDir, relPath);
215
- if (entry.dir) {
216
- await fs.promises.mkdir(fullPath, { recursive: true });
217
- }
218
- else {
219
- await fs.promises.mkdir(path.dirname(fullPath), { recursive: true });
220
- const content = await entry.async('nodebuffer');
221
- await fs.promises.writeFile(fullPath, content);
222
- }
223
- }
224
- }
225
- function cleanupTemp(tempDir) {
226
- if (tempDir) {
227
- try {
228
- fs.rmSync(tempDir, { recursive: true, force: true });
229
- }
230
- catch {
231
- // ignore cleanup errors
232
- }
233
- }
234
- }
235
- //# sourceMappingURL=validate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../src/operations/cap/validate.ts"],"names":[],"mappings":"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"}