@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,300 +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 path from 'node:path';
7
- import fs from 'node:fs';
8
- import JSZip from 'jszip';
9
- import { getLogger } from '../../logging/logger.js';
10
- import { getActiveCodeVersion } from './versions.js';
11
- const ZIP_BODY = new URLSearchParams({ method: 'ZIP' }).toString();
12
- // 10 minutes — server-side zipping and large downloads can take a long time
13
- const LONG_OPERATION_TIMEOUT_MS = 600_000;
14
- // Progress helper: fires immediately (0s) then every 5s until stopped
15
- const PROGRESS_INTERVAL_MS = 5_000;
16
- function startProgress(phase, onProgress) {
17
- const start = Date.now();
18
- onProgress?.({ phase, elapsedSeconds: 0 });
19
- if (!onProgress)
20
- return () => { };
21
- const interval = setInterval(() => {
22
- onProgress({ phase, elapsedSeconds: Math.round((Date.now() - start) / 1000) });
23
- }, PROGRESS_INTERVAL_MS);
24
- return () => clearInterval(interval);
25
- }
26
- /**
27
- * Resolves code version from instance config or OCAPI auto-discovery.
28
- */
29
- async function resolveCodeVersion(instance) {
30
- const logger = getLogger();
31
- let codeVersion = instance.config.codeVersion;
32
- if (!codeVersion) {
33
- logger.debug('No code version configured, attempting to discover active version...');
34
- try {
35
- const activeVersion = await getActiveCodeVersion(instance);
36
- if (activeVersion?.id) {
37
- codeVersion = activeVersion.id;
38
- instance.config.codeVersion = codeVersion;
39
- }
40
- }
41
- catch (error) {
42
- logger.debug({ error }, 'Failed to discover active code version');
43
- }
44
- if (!codeVersion) {
45
- throw new Error('Code version required for download. Configure --code-version or ensure OAuth credentials are available for auto-discovery.');
46
- }
47
- }
48
- return codeVersion;
49
- }
50
- /**
51
- * Extracts files from a ZIP archive to disk.
52
- *
53
- * @param zip - Loaded JSZip instance
54
- * @param options - Extraction options
55
- * @param options.stripPrefix - Number of path segments to strip from ZIP entry paths (e.g. 1 to remove codeVersion, 2 to remove codeVersion + cartridgeName)
56
- * @param options.outputDirectory - Base output directory
57
- * @param options.mirror - Map of cartridge names to local paths for mirror extraction
58
- * @param options.include - Cartridge names to include
59
- * @param options.exclude - Cartridge names to exclude
60
- * @returns Set of extracted cartridge names
61
- */
62
- async function extractZip(zip, options) {
63
- const extractedCartridges = new Set();
64
- const entries = Object.values(zip.files).filter((entry) => !entry.dir);
65
- for (const entry of entries) {
66
- const parts = entry.name.split('/');
67
- if (parts.length < options.stripPrefix + 1) {
68
- continue;
69
- }
70
- // Strip the prefix segments
71
- for (let i = 0; i < options.stripPrefix; i++) {
72
- parts.shift();
73
- }
74
- // Determine cartridge name: either from the next segment or from the option
75
- const cartridgeName = options.cartridgeName ?? parts.shift();
76
- const relativePath = options.cartridgeName ? parts.join('/') : parts.join('/');
77
- // Apply filters
78
- if (options.include?.length && !options.include.includes(cartridgeName)) {
79
- continue;
80
- }
81
- if (options.exclude?.length && options.exclude.includes(cartridgeName)) {
82
- continue;
83
- }
84
- let targetPath;
85
- if (options.mirror?.has(cartridgeName)) {
86
- targetPath = path.join(options.mirror.get(cartridgeName), relativePath);
87
- }
88
- else {
89
- targetPath = path.join(options.outputDirectory, cartridgeName, relativePath);
90
- }
91
- // Preserve existing file permissions
92
- let existingMode = null;
93
- try {
94
- const stat = await fs.promises.stat(targetPath);
95
- existingMode = stat.mode;
96
- }
97
- catch {
98
- // File doesn't exist yet
99
- }
100
- await fs.promises.mkdir(path.dirname(targetPath), { recursive: true });
101
- const content = await entry.async('nodebuffer');
102
- await fs.promises.writeFile(targetPath, content);
103
- if (existingMode !== null) {
104
- await fs.promises.chmod(targetPath, existingMode);
105
- }
106
- extractedCartridges.add(cartridgeName);
107
- }
108
- return extractedCartridges;
109
- }
110
- /**
111
- * Downloads a single cartridge from an instance via WebDAV.
112
- *
113
- * This is more efficient than downloading the entire code version when only
114
- * one cartridge is needed, as it ZIPs only the cartridge subdirectory on the server.
115
- *
116
- * @param instance - B2C instance to download from
117
- * @param codeVersion - Code version containing the cartridge
118
- * @param cartridgeName - Name of the cartridge to download
119
- * @param outputPath - Local path to extract the cartridge into
120
- * @param onProgress - Optional progress callback
121
- */
122
- export async function downloadSingleCartridge(instance, codeVersion, cartridgeName, outputPath, onProgress) {
123
- const logger = getLogger();
124
- const webdav = instance.webdav;
125
- const cartridgePath = `Cartridges/${codeVersion}/${cartridgeName}`;
126
- const zipPath = `${cartridgePath}.zip`;
127
- let stopProgress = startProgress('zipping', onProgress);
128
- logger.debug({ cartridgeName, codeVersion }, 'Requesting server-side zip for single cartridge...');
129
- let zipResponse;
130
- try {
131
- zipResponse = await webdav.request(cartridgePath, {
132
- method: 'POST',
133
- body: ZIP_BODY,
134
- headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
135
- signal: AbortSignal.timeout(LONG_OPERATION_TIMEOUT_MS),
136
- });
137
- }
138
- finally {
139
- stopProgress();
140
- }
141
- if (!zipResponse.ok) {
142
- const text = await zipResponse.text();
143
- throw new Error(`Failed to create server-side zip: ${zipResponse.status} ${zipResponse.statusText} - ${text}`);
144
- }
145
- stopProgress = startProgress('downloading', onProgress);
146
- let buffer;
147
- try {
148
- const dlResponse = await webdav.request(zipPath, {
149
- method: 'GET',
150
- signal: AbortSignal.timeout(LONG_OPERATION_TIMEOUT_MS),
151
- });
152
- if (!dlResponse.ok) {
153
- throw new Error(`Failed to download zip: ${dlResponse.status} ${dlResponse.statusText}`);
154
- }
155
- buffer = await dlResponse.arrayBuffer();
156
- }
157
- finally {
158
- stopProgress();
159
- }
160
- logger.debug({ size: buffer.byteLength }, `Archive downloaded: ${buffer.byteLength} bytes`);
161
- // Cleanup server-side zip (best effort)
162
- onProgress?.({ phase: 'cleanup', elapsedSeconds: 0 });
163
- try {
164
- await webdav.delete(zipPath);
165
- }
166
- catch (error) {
167
- logger.warn({ error, zipPath }, 'Failed to clean up server-side zip (non-fatal)');
168
- }
169
- // Extract
170
- onProgress?.({ phase: 'extracting', elapsedSeconds: 0 });
171
- const zip = await JSZip.loadAsync(buffer);
172
- // Single cartridge ZIP contains: cartridgeName/relative/path...
173
- await extractZip(zip, {
174
- stripPrefix: 1,
175
- outputDirectory: path.dirname(outputPath),
176
- cartridgeName,
177
- });
178
- logger.debug({ cartridgeName, codeVersion }, `Downloaded cartridge ${cartridgeName}`);
179
- }
180
- /**
181
- * Downloads cartridges from an instance via WebDAV.
182
- *
183
- * When `include` specifies cartridges, each is downloaded individually using
184
- * per-cartridge server-side zipping for efficiency. When downloading all
185
- * cartridges (no include filter), the entire code version is zipped at once.
186
- *
187
- * If `instance.config.codeVersion` is not set, attempts to discover the active
188
- * code version via OCAPI. If that also fails, throws an error.
189
- *
190
- * @param instance - B2C instance to download from
191
- * @param outputDirectory - Directory to extract cartridges into
192
- * @param options - Download options (filters, mirror)
193
- * @returns Download result with cartridge names and metadata
194
- * @throws Error if code version cannot be determined or download fails
195
- *
196
- * @example
197
- * ```typescript
198
- * // Download all cartridges
199
- * const result = await downloadCartridges(instance, './output');
200
- *
201
- * // Download specific cartridges (efficient per-cartridge download)
202
- * const result = await downloadCartridges(instance, './output', {
203
- * include: ['app_storefront_base'],
204
- * });
205
- *
206
- * // Mirror to local project locations
207
- * const mirror = new Map([['app_storefront_base', '/project/cartridges/app_storefront_base']]);
208
- * const result = await downloadCartridges(instance, '.', { mirror });
209
- * ```
210
- */
211
- export async function downloadCartridges(instance, outputDirectory, options = {}) {
212
- const logger = getLogger();
213
- const codeVersion = await resolveCodeVersion(instance);
214
- const resolvedOutput = path.resolve(outputDirectory);
215
- const { include, exclude, mirror, onProgress } = options;
216
- // When specific cartridges are requested, download each individually
217
- if (include?.length) {
218
- const allExtracted = new Set();
219
- for (const cartridgeName of include) {
220
- if (exclude?.length && exclude.includes(cartridgeName))
221
- continue;
222
- const outputPath = mirror?.has(cartridgeName)
223
- ? mirror.get(cartridgeName)
224
- : path.join(resolvedOutput, cartridgeName);
225
- await downloadSingleCartridge(instance, codeVersion, cartridgeName, outputPath, onProgress);
226
- allExtracted.add(cartridgeName);
227
- }
228
- const cartridgeList = [...allExtracted].sort();
229
- return { cartridges: cartridgeList, codeVersion, outputDirectory: resolvedOutput };
230
- }
231
- // Full code version download
232
- const webdav = instance.webdav;
233
- const zipPath = `Cartridges/${codeVersion}.zip`;
234
- let stopProgress = startProgress('zipping', onProgress);
235
- logger.debug({ codeVersion }, 'Requesting server-side zip...');
236
- let zipResponse;
237
- try {
238
- zipResponse = await webdav.request(`Cartridges/${codeVersion}`, {
239
- method: 'POST',
240
- body: ZIP_BODY,
241
- headers: {
242
- 'Content-Type': 'application/x-www-form-urlencoded',
243
- },
244
- signal: AbortSignal.timeout(LONG_OPERATION_TIMEOUT_MS),
245
- });
246
- }
247
- finally {
248
- stopProgress();
249
- }
250
- if (!zipResponse.ok) {
251
- const text = await zipResponse.text();
252
- throw new Error(`Failed to create server-side zip: ${zipResponse.status} ${zipResponse.statusText} - ${text}`);
253
- }
254
- logger.debug('Server-side zip created');
255
- stopProgress = startProgress('downloading', onProgress);
256
- logger.debug({ zipPath }, 'Downloading zip archive...');
257
- let buffer;
258
- try {
259
- const downloadResponse = await webdav.request(zipPath, {
260
- method: 'GET',
261
- signal: AbortSignal.timeout(LONG_OPERATION_TIMEOUT_MS),
262
- });
263
- if (!downloadResponse.ok) {
264
- throw new Error(`Failed to download zip: ${downloadResponse.status} ${downloadResponse.statusText}`);
265
- }
266
- buffer = await downloadResponse.arrayBuffer();
267
- }
268
- finally {
269
- stopProgress();
270
- }
271
- logger.debug({ size: buffer.byteLength }, `Archive downloaded: ${buffer.byteLength} bytes`);
272
- // Cleanup server-side zip (best-effort)
273
- onProgress?.({ phase: 'cleanup', elapsedSeconds: 0 });
274
- try {
275
- await webdav.delete(zipPath);
276
- logger.debug('Server-side zip cleaned up');
277
- }
278
- catch (error) {
279
- logger.warn({ error, zipPath }, 'Failed to clean up server-side zip (non-fatal)');
280
- }
281
- // Extract
282
- onProgress?.({ phase: 'extracting', elapsedSeconds: 0 });
283
- logger.debug('Extracting archive...');
284
- const zip = await JSZip.loadAsync(buffer);
285
- // Full code version ZIP: {codeVersion}/{cartridgeName}/{relativePath...}
286
- const extractedCartridges = await extractZip(zip, {
287
- stripPrefix: 1,
288
- outputDirectory: resolvedOutput,
289
- mirror,
290
- exclude,
291
- });
292
- const cartridgeList = [...extractedCartridges].sort();
293
- logger.debug({ server: instance.config.hostname, codeVersion, cartridgeCount: cartridgeList.length }, `Downloaded ${cartridgeList.length} cartridge(s) from ${instance.config.hostname}`);
294
- return {
295
- cartridges: cartridgeList,
296
- codeVersion,
297
- outputDirectory: resolvedOutput,
298
- };
299
- }
300
- //# sourceMappingURL=download.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"download.js","sourceRoot":"","sources":["../../../../src/operations/code/download.ts"],"names":[],"mappings":"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"}
@@ -1,74 +0,0 @@
1
- /**
2
- * Code deployment operations for B2C Commerce.
3
- *
4
- * This module provides functions for managing cartridge code versions
5
- * on B2C Commerce instances via WebDAV and OCAPI.
6
- *
7
- * ## Cartridge Discovery
8
- *
9
- * - {@link findCartridges} - Find cartridges by .project files
10
- *
11
- * ## Code Versions
12
- *
13
- * - {@link listCodeVersions} - List all code versions on an instance
14
- * - {@link getActiveCodeVersion} - Get the currently active code version
15
- * - {@link activateCodeVersion} - Activate a code version
16
- * - {@link reloadCodeVersion} - Reload (re-activate) a code version
17
- * - {@link deleteCodeVersion} - Delete a code version
18
- * - {@link createCodeVersion} - Create a new code version
19
- *
20
- * ## Deployment
21
- *
22
- * - {@link findAndDeployCartridges} - Find and deploy cartridges to an instance
23
- * - {@link uploadCartridges} - Low-level cartridge upload
24
- * - {@link deleteCartridges} - Low-level cartridge deletion
25
- * - {@link watchCartridges} - Watch and sync file changes
26
- *
27
- * ## Download
28
- *
29
- * - {@link downloadCartridges} - Download cartridges from an instance
30
- *
31
- * ## Usage
32
- *
33
- * ```typescript
34
- * import {
35
- * findCartridges,
36
- * findAndDeployCartridges,
37
- * listCodeVersions,
38
- * activateCodeVersion,
39
- * watchCartridges,
40
- * } from '@salesforce/b2c-tooling-sdk/operations/code';
41
- * import { resolveConfig } from '@salesforce/b2c-tooling-sdk/config';
42
- *
43
- * const config = resolveConfig();
44
- * const instance = config.createB2CInstance();
45
- *
46
- * // Deploy cartridges (requires instance.config.codeVersion to be set)
47
- * await findAndDeployCartridges(instance, './cartridges', { reload: true });
48
- *
49
- * // List code versions
50
- * const versions = await listCodeVersions(instance);
51
- *
52
- * // Watch for changes
53
- * const watcher = await watchCartridges(instance, './cartridges');
54
- * ```
55
- *
56
- * ## Authentication
57
- *
58
- * - WebDAV operations support both Basic Auth and OAuth
59
- * - OCAPI operations (code versions) require OAuth
60
- *
61
- * @module operations/code
62
- */
63
- export { findCartridges } from './cartridges.js';
64
- export type { CartridgeMapping, FindCartridgesOptions } from './cartridges.js';
65
- export { listCodeVersions, getActiveCodeVersion, activateCodeVersion, reloadCodeVersion, deleteCodeVersion, createCodeVersion, } from './versions.js';
66
- export type { CodeVersion, CodeVersionResult } from './versions.js';
67
- export { findAndDeployCartridges, uploadCartridges, deleteCartridges } from './deploy.js';
68
- export type { DeployOptions, DeployResult, UploadOptions, UploadProgressInfo } from './deploy.js';
69
- export { downloadCartridges, downloadSingleCartridge } from './download.js';
70
- export type { DownloadOptions, DownloadProgressInfo, DownloadResult } from './download.js';
71
- export { uploadFiles, fileToCartridgePath } from './upload-files.js';
72
- export type { FileChange, UploadFilesOptions } from './upload-files.js';
73
- export { watchCartridges } from './watch.js';
74
- export type { WatchOptions, WatchResult } from './watch.js';
@@ -1,80 +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
- * Code deployment operations for B2C Commerce.
8
- *
9
- * This module provides functions for managing cartridge code versions
10
- * on B2C Commerce instances via WebDAV and OCAPI.
11
- *
12
- * ## Cartridge Discovery
13
- *
14
- * - {@link findCartridges} - Find cartridges by .project files
15
- *
16
- * ## Code Versions
17
- *
18
- * - {@link listCodeVersions} - List all code versions on an instance
19
- * - {@link getActiveCodeVersion} - Get the currently active code version
20
- * - {@link activateCodeVersion} - Activate a code version
21
- * - {@link reloadCodeVersion} - Reload (re-activate) a code version
22
- * - {@link deleteCodeVersion} - Delete a code version
23
- * - {@link createCodeVersion} - Create a new code version
24
- *
25
- * ## Deployment
26
- *
27
- * - {@link findAndDeployCartridges} - Find and deploy cartridges to an instance
28
- * - {@link uploadCartridges} - Low-level cartridge upload
29
- * - {@link deleteCartridges} - Low-level cartridge deletion
30
- * - {@link watchCartridges} - Watch and sync file changes
31
- *
32
- * ## Download
33
- *
34
- * - {@link downloadCartridges} - Download cartridges from an instance
35
- *
36
- * ## Usage
37
- *
38
- * ```typescript
39
- * import {
40
- * findCartridges,
41
- * findAndDeployCartridges,
42
- * listCodeVersions,
43
- * activateCodeVersion,
44
- * watchCartridges,
45
- * } from '@salesforce/b2c-tooling-sdk/operations/code';
46
- * import { resolveConfig } from '@salesforce/b2c-tooling-sdk/config';
47
- *
48
- * const config = resolveConfig();
49
- * const instance = config.createB2CInstance();
50
- *
51
- * // Deploy cartridges (requires instance.config.codeVersion to be set)
52
- * await findAndDeployCartridges(instance, './cartridges', { reload: true });
53
- *
54
- * // List code versions
55
- * const versions = await listCodeVersions(instance);
56
- *
57
- * // Watch for changes
58
- * const watcher = await watchCartridges(instance, './cartridges');
59
- * ```
60
- *
61
- * ## Authentication
62
- *
63
- * - WebDAV operations support both Basic Auth and OAuth
64
- * - OCAPI operations (code versions) require OAuth
65
- *
66
- * @module operations/code
67
- */
68
- // Cartridge discovery
69
- export { findCartridges } from './cartridges.js';
70
- // Code version management
71
- export { listCodeVersions, getActiveCodeVersion, activateCodeVersion, reloadCodeVersion, deleteCodeVersion, createCodeVersion, } from './versions.js';
72
- // Deployment
73
- export { findAndDeployCartridges, uploadCartridges, deleteCartridges } from './deploy.js';
74
- // Download
75
- export { downloadCartridges, downloadSingleCartridge } from './download.js';
76
- // File upload pipeline
77
- export { uploadFiles, fileToCartridgePath } from './upload-files.js';
78
- // Watch
79
- export { watchCartridges } from './watch.js';
80
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/operations/code/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAEH,sBAAsB;AACtB,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAG/C,0BAA0B;AAC1B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,aAAa;AACb,OAAO,EAAC,uBAAuB,EAAE,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAGxF,WAAW;AACX,OAAO,EAAC,kBAAkB,EAAE,uBAAuB,EAAC,MAAM,eAAe,CAAC;AAG1E,uBAAuB;AACvB,OAAO,EAAC,WAAW,EAAE,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAGnE,QAAQ;AACR,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC"}
@@ -1,47 +0,0 @@
1
- import type { B2CInstance } from '../../instance/index.js';
2
- import type { CartridgeMapping } from './cartridges.js';
3
- /**
4
- * Represents a file to upload or delete, with source and destination paths.
5
- */
6
- export interface FileChange {
7
- /** Absolute path to the file on disk */
8
- src: string;
9
- /** Cartridge-relative destination path (e.g. "cartridgeName/path/to/file.js") */
10
- dest: string;
11
- }
12
- /**
13
- * Callbacks for file upload/delete operations.
14
- */
15
- export interface UploadFilesOptions {
16
- /** Called after files are successfully uploaded */
17
- onUpload?: (files: string[]) => void;
18
- /** Called after files are successfully deleted */
19
- onDelete?: (files: string[]) => void;
20
- /** Called when an error occurs */
21
- onError?: (error: Error) => void;
22
- }
23
- /**
24
- * Maps an absolute file path to its cartridge-relative destination.
25
- *
26
- * @param absolutePath - The absolute path to a file
27
- * @param cartridges - The list of discovered cartridge mappings
28
- * @returns The file change with src and dest, or undefined if the path is not inside any cartridge
29
- */
30
- export declare function fileToCartridgePath(absolutePath: string, cartridges: CartridgeMapping[]): FileChange | undefined;
31
- /**
32
- * Uploads and deletes files on an instance via WebDAV.
33
- *
34
- * This is the core batch-upload pipeline used by both `watchCartridges` and
35
- * the VS Code extension. It:
36
- * 1. Filters out non-existent upload files
37
- * 2. Creates a ZIP archive of upload files
38
- * 3. Uploads via WebDAV PUT and unzips on server
39
- * 4. Deletes files (skipping any that were also uploaded in the same batch)
40
- *
41
- * @param instance - B2C instance to sync to
42
- * @param codeVersion - Code version to deploy to
43
- * @param uploads - Files to upload
44
- * @param deletes - Files to delete
45
- * @param options - Callbacks for upload/delete/error events
46
- */
47
- export declare function uploadFiles(instance: B2CInstance, codeVersion: string, uploads: FileChange[], deletes: FileChange[], options?: UploadFilesOptions): Promise<void>;
@@ -1,116 +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 path from 'node:path';
7
- import fs from 'node:fs';
8
- import JSZip from 'jszip';
9
- import { getLogger } from '../../logging/logger.js';
10
- const UNZIP_BODY = new URLSearchParams({ method: 'UNZIP' }).toString();
11
- /**
12
- * Maps an absolute file path to its cartridge-relative destination.
13
- *
14
- * @param absolutePath - The absolute path to a file
15
- * @param cartridges - The list of discovered cartridge mappings
16
- * @returns The file change with src and dest, or undefined if the path is not inside any cartridge
17
- */
18
- export function fileToCartridgePath(absolutePath, cartridges) {
19
- const cartridge = cartridges.find((c) => absolutePath.startsWith(c.src));
20
- if (!cartridge) {
21
- return undefined;
22
- }
23
- const relativePath = absolutePath.substring(cartridge.src.length);
24
- const destPath = path.join(cartridge.dest, relativePath);
25
- return {
26
- src: absolutePath,
27
- dest: destPath,
28
- };
29
- }
30
- /**
31
- * Uploads and deletes files on an instance via WebDAV.
32
- *
33
- * This is the core batch-upload pipeline used by both `watchCartridges` and
34
- * the VS Code extension. It:
35
- * 1. Filters out non-existent upload files
36
- * 2. Creates a ZIP archive of upload files
37
- * 3. Uploads via WebDAV PUT and unzips on server
38
- * 4. Deletes files (skipping any that were also uploaded in the same batch)
39
- *
40
- * @param instance - B2C instance to sync to
41
- * @param codeVersion - Code version to deploy to
42
- * @param uploads - Files to upload
43
- * @param deletes - Files to delete
44
- * @param options - Callbacks for upload/delete/error events
45
- */
46
- export async function uploadFiles(instance, codeVersion, uploads, deletes, options) {
47
- const logger = getLogger();
48
- const webdav = instance.webdav;
49
- const webdavLocation = `Cartridges/${codeVersion}`;
50
- const validUploadFiles = uploads.filter((f) => {
51
- if (!fs.existsSync(f.src)) {
52
- logger.debug({ file: f.src }, 'Skipping missing file');
53
- return false;
54
- }
55
- return true;
56
- });
57
- if (validUploadFiles.length > 0) {
58
- const uploadPath = `${webdavLocation}/_upload-${Date.now()}.zip`;
59
- try {
60
- const zip = new JSZip();
61
- for (const f of validUploadFiles) {
62
- try {
63
- const content = await fs.promises.readFile(f.src);
64
- zip.file(f.dest, content);
65
- }
66
- catch (error) {
67
- logger.warn({ file: f.src, error }, 'Failed to add file to archive');
68
- }
69
- }
70
- const buffer = await zip.generateAsync({
71
- type: 'nodebuffer',
72
- compression: 'DEFLATE',
73
- compressionOptions: { level: 5 },
74
- });
75
- await webdav.put(uploadPath, buffer, 'application/zip');
76
- logger.debug({ uploadPath }, 'Archive uploaded');
77
- const response = await webdav.request(uploadPath, {
78
- method: 'POST',
79
- body: UNZIP_BODY,
80
- headers: {
81
- 'Content-Type': 'application/x-www-form-urlencoded',
82
- },
83
- });
84
- if (!response.ok) {
85
- throw new Error(`Unzip failed: ${response.status}`);
86
- }
87
- await webdav.delete(uploadPath);
88
- logger.debug({ fileCount: validUploadFiles.length, server: instance.config.hostname }, `Uploaded ${validUploadFiles.length} file(s)`);
89
- options?.onUpload?.(validUploadFiles.map((f) => f.dest));
90
- }
91
- catch (error) {
92
- const err = error instanceof Error ? error : new Error(String(error));
93
- logger.error({ error: err }, `Upload error: ${err.message}`);
94
- options?.onError?.(err);
95
- throw err;
96
- }
97
- }
98
- // Skip deletes for any file that was also uploaded in this batch (disk state wins)
99
- const uploadedPaths = new Set(validUploadFiles.map((f) => f.dest));
100
- const filesToDeleteFiltered = deletes.filter((f) => !uploadedPaths.has(f.dest));
101
- if (filesToDeleteFiltered.length > 0) {
102
- logger.debug({ fileCount: filesToDeleteFiltered.length }, `Deleting ${filesToDeleteFiltered.length} file(s)`);
103
- for (const f of filesToDeleteFiltered) {
104
- const deletePath = `${webdavLocation}/${f.dest}`;
105
- try {
106
- await webdav.delete(deletePath);
107
- logger.info({ path: deletePath }, `Deleted: ${deletePath}`);
108
- }
109
- catch (error) {
110
- logger.debug({ path: deletePath, error }, `Failed to delete ${deletePath}`);
111
- }
112
- }
113
- options?.onDelete?.(filesToDeleteFiltered.map((f) => f.dest));
114
- }
115
- }
116
- //# sourceMappingURL=upload-files.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"upload-files.js","sourceRoot":"","sources":["../../../../src/operations/code/upload-files.ts"],"names":[],"mappings":"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"}